summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
authorJose <pepone@users.noreply.github.com>2023-09-18 17:07:45 +0200
committerGitHub <noreply@github.com>2023-09-18 17:07:45 +0200
commit24e6ac1659defa5cd8c60edde0392b3685f460a2 (patch)
treecfd2dbcfce30dda01cd8812c9f95602e78197b89 /cpp/src
parentRemove uwp (#1504) (diff)
downloadice-24e6ac1659defa5cd8c60edde0392b3685f460a2.tar.bz2
ice-24e6ac1659defa5cd8c60edde0392b3685f460a2.tar.xz
ice-24e6ac1659defa5cd8c60edde0392b3685f460a2.zip
Remove loopback fastpath - Fix #1480 (#1508)
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/Ice/Network.cpp40
1 files changed, 0 insertions, 40 deletions
diff --git a/cpp/src/Ice/Network.cpp b/cpp/src/Ice/Network.cpp
index 4e42cafc811..ccf78cc66bd 100644
--- a/cpp/src/Ice/Network.cpp
+++ b/cpp/src/Ice/Network.cpp
@@ -54,12 +54,6 @@
# pragma GCC diagnostic ignored "-Wmissing-field-initializers"
#endif
-#if defined(_WIN32)
-# ifndef SIO_LOOPBACK_FAST_PATH
-# define SIO_LOOPBACK_FAST_PATH _WSAIOW(IOC_VENDOR,16)
-# endif
-#endif
-
#if defined(__MINGW32__)
//
// Work-around for missing definitions in MinGW Windows headers
@@ -182,28 +176,6 @@ setKeepAlive(SOCKET fd)
}
}
-#if defined(_WIN32)
-void
-setTcpLoopbackFastPath(SOCKET fd)
-{
- int OptionValue = 1;
- DWORD NumberOfBytesReturned = 0;
-
- int status =
- WSAIoctl(fd, SIO_LOOPBACK_FAST_PATH, &OptionValue, sizeof(OptionValue), ICE_NULLPTR, 0, &NumberOfBytesReturned, 0, 0);
- if(status == SOCKET_ERROR)
- {
- // On platforms that do not support fast path (< Windows 8), WSAEONOTSUPP is expected.
- DWORD LastError = ::GetLastError();
- if(LastError != WSAEOPNOTSUPP)
- {
- closeSocketNoThrow(fd);
- throw SocketException(__FILE__, __LINE__, getSocketErrno());
- }
- }
-}
-#endif
-
SOCKET
createSocketImpl(bool udp, int family)
{
@@ -226,18 +198,6 @@ createSocketImpl(bool udp, int family)
{
setTcpNoDelay(fd);
setKeepAlive(fd);
-
-#if defined(_WIN32)
- //
- // FIX: the fast path loopback appears to cause issues with
- // connection closure when it's enabled. Sometime, a peer
- // doesn't receive the TCP/IP connection closure (RST) from
- // the other peer and it ends up hanging. This is showing up
- // with the background test when ran with WS. The test
- // sporadically hangs on exit. See bug #6093.
- //
- //setTcpLoopbackFastPath(fd);
-#endif
}
return fd;