Merge pull request #14504 from treysis/ipv6-outgoing-interfaces

Fix bad IPv6 address format for outgoingInterfaces
This commit is contained in:
Mike Tzou 2021-03-23 18:58:22 +08:00 committed by GitHub
commit 4bf4d45389
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1457,12 +1457,14 @@ void Session::configureNetworkInterfaces(lt::settings_pack &settingsPack)
const QHostAddress addr {ip};
if (!addr.isNull())
{
const QString ip = ((addr.protocol() == QAbstractSocket::IPv6Protocol)
? ('[' + Utils::Net::canonicalIPv6Addr(addr).toString() + ']')
: addr.toString());
endpoints << (ip + portString);
const bool isIPv6 = (addr.protocol() == QAbstractSocket::IPv6Protocol);
const QString ip = isIPv6
? Utils::Net::canonicalIPv6Addr(addr).toString()
: addr.toString();
if ((ip != "0.0.0.0") && (ip != "[::]"))
endpoints << ((isIPv6 ? ('[' + ip + ']') : ip) + portString);
if ((ip != QLatin1String("0.0.0.0")) && (ip != QLatin1String("::")))
outgoingInterfaces << ip;
}
else