From eb8ff9ad746569746612d4d866d3994e9c38b791 Mon Sep 17 00:00:00 2001 From: Jens Ahrensfeld Date: Wed, 24 Nov 2021 19:58:34 +0000 Subject: [PATCH] - dhcp: send secs - test: send burst of 3 git-svn-id: http://moon:8086/svn/mips@216 a8ebac50-d88d-4704-bea3-6648445a41b3 --- src/common/network/dhcp.c | 3 ++- src/test_emac.c | 18 +++++++++++------- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/src/common/network/dhcp.c b/src/common/network/dhcp.c index 2d9f98e..ed557bd 100644 --- a/src/common/network/dhcp.c +++ b/src/common/network/dhcp.c @@ -5,6 +5,7 @@ // // ------------------------------------------------------------------------- #include +#include #include #include "ethernet.h" #include "ipv4.h" @@ -32,7 +33,7 @@ void DHCP_request_send(packet_t *pPacket, uint32_t dhcp_msg_type, uint8_t *mac_a pDHCP->htype = TYPE_HW_ETH10; pDHCP->hlen = 6; pDHCP->hops = 0; - pDHCP->secs = 0; + pDHCP->secs = clock()/CLOCKS_PER_SEC; pDHCP->flags = DHCP_FLAGS_BROADCAST; memcpy(pDHCP->chaddr, mac_addr_src, pDHCP->hlen); diff --git a/src/test_emac.c b/src/test_emac.c index b3d0845..1d2ccb2 100644 --- a/src/test_emac.c +++ b/src/test_emac.c @@ -338,13 +338,17 @@ int main() DHCP *pDHCP; if (dhcp_state == 1) { - printf("---------------------------------------------------------------\n"); - printf("- Send DHCP Discover ------------------------------------------\n"); - printf("---------------------------------------------------------------\n"); - Eth_pkt_create(&packet, TYPE_PROTO_IP, eth_myself, eth_bcst); - DHCP_request_send(&packet, DHCP_MSG_DHCPDISCOVER, eth_myself, ip_zero, ip_bcast, NULL); - PrintBuffer8((uint8_t*)packet.pkt_buf, 16, packet.size); - Eth_pkt_send(&packet); + for (int kk=0; kk < 3; kk++) + { + printf("---------------------------------------------------------------\n"); + printf("- Send DHCP Discover ------------------------------------------\n"); + printf("---------------------------------------------------------------\n"); + Eth_pkt_create(&packet, TYPE_PROTO_IP, eth_myself, eth_bcst); + DHCP_request_send(&packet, DHCP_MSG_DHCPDISCOVER, eth_myself, ip_zero, ip_bcast, NULL); + PrintBuffer8((uint8_t*)packet.pkt_buf, 16, packet.size); + Eth_pkt_send(&packet); + sleep(3000); + } dhcp_state = 0; }