diff options
author | Liang Qi <liang.qi@qt.io> | 2020-02-18 09:26:53 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2020-02-18 09:26:53 +0100 |
commit | b9585277e78f0571933706507ba2024c68d6df19 (patch) | |
tree | c98577aae762b75d0ac6437c1ec68da0ddb4426b /src/network/socket | |
parent | eb2af9d923923255b276c6549ada1ed7839d5dd8 (diff) | |
parent | d7b6c4288f2de8b0123c888e83a3fbcd84ed906f (diff) |
Merge remote-tracking branch 'origin/5.14' into 5.15
Conflicts:
src/corelib/tools/qlinkedlist.h
src/plugins/platforms/wasm/qwasmintegration.cpp
src/plugins/platforms/wasm/qwasmscreen.cpp
Change-Id: Iefca7f9f4966bdc20e7052aca736874861055738
Diffstat (limited to 'src/network/socket')
-rw-r--r-- | src/network/socket/qnativesocketengine_win.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/network/socket/qnativesocketengine_win.cpp b/src/network/socket/qnativesocketengine_win.cpp index dd115c33dc..2581fc048e 100644 --- a/src/network/socket/qnativesocketengine_win.cpp +++ b/src/network/socket/qnativesocketengine_win.cpp @@ -590,7 +590,8 @@ bool QNativeSocketEnginePrivate::fetchConnectionParameters() // local address of the socket which bound on both IPv4 and IPv6 interfaces. // This address does not match to any special address and should not be used // to send the data. So, replace it with QHostAddress::Any. - if (socketProtocol == QAbstractSocket::IPv6Protocol) { + const uchar ipv6MappedNet[] = {0,0,0,0, 0,0,0,0, 0,0,0xff,0xff, 0,0,0,0}; + if (localAddress.isInSubnet(QHostAddress(ipv6MappedNet), 128 - 32)) { bool ok = false; const quint32 localIPv4 = localAddress.toIPv4Address(&ok); if (ok && localIPv4 == INADDR_ANY) { |