summaryrefslogtreecommitdiffstats
path: root/src/network/socket
diff options
context:
space:
mode:
authorMartin Petersson <Martin.Petersson@nokia.com>2012-07-03 10:46:36 +0200
committerQt by Nokia <qt-info@nokia.com>2012-07-03 14:39:27 +0200
commit4d145e3ffae60fa007f547c21e5b4eb8998de60a (patch)
treef50bce109cd929fb227e94ea8474e82cb8b335d3 /src/network/socket
parentee4f50b2e78e1d8b4200866fa88dbf7dc5cffe26 (diff)
SocketEngine Windows: If not dual stack, use IPv4 for AnyIPProtocol
If the Windows version doesn't support dual stack then we should bind to IPv4. So we should change the socketProtocol to QAbstractSocket::IPv4Protocol as well. Change-Id: I7f9d0bdd861f82d720e347d3fa968198de720d1a Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Diffstat (limited to 'src/network/socket')
-rw-r--r--src/network/socket/qnativesocketengine_win.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/network/socket/qnativesocketengine_win.cpp b/src/network/socket/qnativesocketengine_win.cpp
index 8b354a8c50..74983d2109 100644
--- a/src/network/socket/qnativesocketengine_win.cpp
+++ b/src/network/socket/qnativesocketengine_win.cpp
@@ -793,7 +793,10 @@ bool QNativeSocketEnginePrivate::nativeBind(const QHostAddress &a, quint16 port)
ipv6only = ::setsockopt(socketDescriptor, IPPROTO_IPV6, IPV6_V6ONLY, (char*)&ipv6only, sizeof(ipv6only) );
else
#endif
+ {
address = QHostAddress(QHostAddress::AnyIPv4); //xp/WS2003 and earlier don't support dual stack, so bind to IPv4
+ socketProtocol = QAbstractSocket::IPv4Protocol;
+ }
break;
default:
break;