From: Roy Marples Date: Fri, 31 Jan 2014 12:03:54 +0000 (+0000) Subject: As we need to actuall drain the kernel buffer, don't bother setting the receive buffe... X-Git-Tag: v6.3.0~74 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=54b371af1cbb9f4aeb99b511e5981153aab47575;p=thirdparty%2Fdhcpcd.git As we need to actuall drain the kernel buffer, don't bother setting the receive buffer size --- diff --git a/dhcp.c b/dhcp.c index 21b152a3..4abd4d4d 100644 --- a/dhcp.c +++ b/dhcp.c @@ -1367,11 +1367,6 @@ dhcp_openudp(struct interface *iface) sizeof(ifr)) == -1) goto eexit; #endif - /* As we don't use this socket for receiving, set the - * receive buffer to 1 */ - n = 1; - if (setsockopt(s, SOL_SOCKET, SO_RCVBUF, &n, sizeof(n)) == -1) - goto eexit; state = D_STATE(iface); memset(&sin, 0, sizeof(sin)); sin.sin_family = AF_INET; @@ -2510,9 +2505,9 @@ dhcp_handleudp(void *arg) ifp = arg; state = D_CSTATE(ifp); - bytes = read(state->udp_fd, buffer, sizeof(buffer)); /* Just read what's in the UDP fd and discard it as we always read * from the raw fd */ + bytes = read(state->udp_fd, buffer, sizeof(buffer)); } static int