From: Michael Graff Date: Wed, 10 Sep 2008 22:49:47 +0000 (+0000) Subject: fix a bug related to 0 byte UDP packets X-Git-Tag: v9.3.5-P2-W2~3 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=d52223bb461f22716b916a0b51c4195f76f63648;p=thirdparty%2Fbind9.git fix a bug related to 0 byte UDP packets --- diff --git a/lib/isc/win32/socket.c b/lib/isc/win32/socket.c index 24dbd973c0f..320c85c054f 100644 --- a/lib/isc/win32/socket.c +++ b/lib/isc/win32/socket.c @@ -15,7 +15,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: socket.c,v 1.5.2.13.2.24.4.6.4.2 2008/09/04 16:42:46 each Exp $ */ +/* $Id: socket.c,v 1.5.2.13.2.24.4.6.4.3 2008/09/10 22:49:47 explorer Exp $ */ /* This code uses functions which are only available on Server 2003 and * higher, and Windows XP and higher. @@ -2166,7 +2166,7 @@ internal_recv(isc_socket_t *sock, int nbytes) * We do check for a recv() of 0 bytes on a TCP stream. This means the remote end * has closed. */ - if (nbytes == 0) { + if (nbytes == 0 && sock->type == isc_sockettype_tcp) { send_recvdone_abort(sock, ISC_R_EOF); maybe_free_socket(&sock, __LINE__); return;