[newlib-cygwin] Make sure to use the Winsock definition of FIONREAD in ioctlsocket call

Corinna Vinschen corinna@sourceware.org
Fri Jul 1 14:56:00 GMT 2016


https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=29600e04e3408a83e4989d9ebce7f80ff3aaea61

commit 29600e04e3408a83e4989d9ebce7f80ff3aaea61
Author: Corinna Vinschen <corinna@vinschen.de>
Date:   Fri Jul 1 16:56:07 2016 +0200

    Make sure to use the Winsock definition of FIONREAD in ioctlsocket call
    
    Commit b1b46d45 introduced a regression.  After redefining FIONREAD
    as part of restructuring newlib/Cygwin headers, the call to ioctlsocket
    in the FIONREAD branch of fhandler_socket::ioctl should have been
    changed to use the Winsock definition of FIONREAD, which I neglected.
    This only affects 64 bit Cygwin.
    
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>

Diff:
---
 winsup/cygwin/fhandler_socket.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/winsup/cygwin/fhandler_socket.cc b/winsup/cygwin/fhandler_socket.cc
index 71a7bdc..9ada469 100644
--- a/winsup/cygwin/fhandler_socket.cc
+++ b/winsup/cygwin/fhandler_socket.cc
@@ -2259,7 +2259,8 @@ fhandler_socket::ioctl (unsigned int cmd, void *p)
 #ifdef __x86_64__
     case _IOR('f', 127, u_long):
 #endif
-      res = ioctlsocket (get_socket (), FIONREAD, (u_long *) p);
+      /* Make sure to use the Winsock definition of FIONREAD. */
+      res = ioctlsocket (get_socket (), _IOR('f', 127, u_long), (u_long *) p);
       if (res == SOCKET_ERROR)
 	set_winsock_errno ();
       break;



More information about the Cygwin-cvs mailing list