]> git.xonotic.org Git - xonotic/darkplaces.git/commitdiff
Win32: ioctl SIO_UDP_CONNRESET <- FALSE
authordivverent <divverent@d7cf8633-e32d-0410-b094-e92efae38249>
Tue, 22 May 2007 08:07:34 +0000 (08:07 +0000)
committerdivverent <divverent@d7cf8633-e32d-0410-b094-e92efae38249>
Tue, 22 May 2007 08:07:34 +0000 (08:07 +0000)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@7336 d7cf8633-e32d-0410-b094-e92efae38249

lhnet.c

diff --git a/lhnet.c b/lhnet.c
index 65b9f8276b45b301be726d245ab5783fc209cde5..bc6f53c54980d92d165a60a3358e56a230a4379b 100644 (file)
--- a/lhnet.c
+++ b/lhnet.c
 
 #define SOCKETERRNO WSAGetLastError()
 
 
 #define SOCKETERRNO WSAGetLastError()
 
+#define IOC_VENDOR 0x18000000
+#define _WSAIOW(x,y) (IOC_IN|(x)|(y))
+#define SIO_UDP_CONNRESET _WSAIOW(IOC_VENDOR,12)
+
 #define SOCKLEN_T int
 #elif defined(__MORPHOS__)
 #define ioctlsocket IoctlSocket
 #define SOCKLEN_T int
 #elif defined(__MORPHOS__)
 #define ioctlsocket IoctlSocket
@@ -571,6 +575,7 @@ lhnetsocket_t *LHNET_OpenSocket_Connectionless(lhnetaddress_t *address)
                                {
 #ifdef WIN32
                                        u_long _true = 1;
                                {
 #ifdef WIN32
                                        u_long _true = 1;
+                                       u_long _false = 0;
 #else
                                        char _true = 1;
 #endif
 #else
                                        char _true = 1;
 #endif
@@ -588,6 +593,10 @@ lhnetsocket_t *LHNET_OpenSocket_Connectionless(lhnetaddress_t *address)
                                                        lhnetsocket->prev = lhnetsocket->next->prev;
                                                        lhnetsocket->next->prev = lhnetsocket;
                                                        lhnetsocket->prev->next = lhnetsocket;
                                                        lhnetsocket->prev = lhnetsocket->next->prev;
                                                        lhnetsocket->next->prev = lhnetsocket;
                                                        lhnetsocket->prev->next = lhnetsocket;
+#ifdef WIN32
+                                                       if (ioctlsocket(lhnetsocket->inetsocket, SIO_UDP_CONNRESET, &_false) == -1)
+                                                               Con_DPrintf("LHNET_OpenSocket_Connectionless: ioctlsocket SIO_UDP_CONNRESET returned error: %s\n", LHNETPRIVATE_StrError());
+#endif
                                                        return lhnetsocket;
                                                }
                                                else
                                                        return lhnetsocket;
                                                }
                                                else