summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2001-05-15 08:42:15 +0000
committerCorinna Vinschen <corinna@vinschen.de>2001-05-15 08:42:15 +0000
commitde81c0465d3d6ad8c1f86281d24260968db74fb7 (patch)
tree85b84b0f7596fc6c353df0ed40b4d1c9f8f6d1bb
parenta2cdb048f6d311c6d5b59efa76343006553f8438 (diff)
downloadcygnal-de81c0465d3d6ad8c1f86281d24260968db74fb7.tar.gz
cygnal-de81c0465d3d6ad8c1f86281d24260968db74fb7.tar.bz2
cygnal-de81c0465d3d6ad8c1f86281d24260968db74fb7.zip
* fhandler_socket.cc (fhandler_socket::ioctl): Convert s_addr
field to host byte order before comparing with INADDR_LOOPBACK.
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/fhandler_socket.cc3
2 files changed, 7 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 062a0c6df..2c51ffd7b 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,8 @@
+Tue May 15 10:20:00 2001 Corinna Vinschen <corinna@vinschen.de>
+
+ * fhandler_socket.cc (fhandler_socket::ioctl): Convert s_addr
+ field to host byte order before comparing with INADDR_LOOPBACK.
+
Tue May 15 9:03:00 2001 Corinna Vinschen <corinna@vinschen.de>
* autoload.cc: Add autoload statements for ws2_32 functions
diff --git a/winsup/cygwin/fhandler_socket.cc b/winsup/cygwin/fhandler_socket.cc
index eb6f36a2e..288b4f4e5 100644
--- a/winsup/cygwin/fhandler_socket.cc
+++ b/winsup/cygwin/fhandler_socket.cc
@@ -15,6 +15,7 @@
#include "winsup.h"
#include <errno.h>
#include <sys/socket.h>
+#include <asm/byteorder.h>
#include <stdlib.h>
#include <unistd.h>
@@ -291,7 +292,7 @@ fhandler_socket::ioctl (unsigned int cmd, void *p)
return -1;
}
ifr->ifr_flags = IFF_NOTRAILERS | IFF_UP | IFF_RUNNING;
- if (((struct sockaddr_in *) &ifr->ifr_addr)->sin_addr.s_addr
+ if (ntohl (((struct sockaddr_in *) &ifr->ifr_addr)->sin_addr.s_addr)
== INADDR_LOOPBACK)
ifr->ifr_flags |= IFF_LOOPBACK;
else