From 148788eb0ee96026105755cf3fd1ad3d94f49cd2 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Thu, 21 Jun 2018 17:36:22 +0200 Subject: udhcpc: remove code which requires server ID to be on local network This reverts "udhcpc: paranoia when using kernel UDP mode for sending renew: server ID may be bogus". Users complain that they do have servers behind routers (with DHCP relays). function old new delta send_packet 168 166 -2 bcast_or_ucast 25 23 -2 udhcp_send_kernel_packet 301 295 -6 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-10) Total: -10 bytes Signed-off-by: Denys Vlasenko --- networking/udhcp/packet.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'networking/udhcp/packet.c') diff --git a/networking/udhcp/packet.c b/networking/udhcp/packet.c index fc2bb5416..ff16904f7 100644 --- a/networking/udhcp/packet.c +++ b/networking/udhcp/packet.c @@ -189,8 +189,7 @@ int FAST_FUNC udhcp_send_raw_packet(struct dhcp_packet *dhcp_pkt, /* Let the kernel do all the work for packet generation */ int FAST_FUNC udhcp_send_kernel_packet(struct dhcp_packet *dhcp_pkt, uint32_t source_nip, int source_port, - uint32_t dest_nip, int dest_port, - int send_flags) + uint32_t dest_nip, int dest_port) { struct sockaddr_in sa; unsigned padding; @@ -227,8 +226,8 @@ int FAST_FUNC udhcp_send_kernel_packet(struct dhcp_packet *dhcp_pkt, padding = DHCP_OPTIONS_BUFSIZE - 1 - udhcp_end_option(dhcp_pkt->options); if (padding > DHCP_SIZE - 300) padding = DHCP_SIZE - 300; - result = send(fd, dhcp_pkt, DHCP_SIZE - padding, send_flags); - msg = "send"; + result = safe_write(fd, dhcp_pkt, DHCP_SIZE - padding); + msg = "write"; ret_close: close(fd); if (result < 0) { -- cgit v1.2.3