summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjar@chromium.org <jar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-09 00:19:27 +0000
committerjar@chromium.org <jar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-09 00:19:27 +0000
commitd6dfff40bb1d5f9c2bf55b8bb9c3b1aa64159c9c (patch)
treead01f9880aa1bdaf6597a66e781ada50ba26ff3c
parent7f44366f060d940f587d14be88540f18504d7e81 (diff)
downloadchromium_src-d6dfff40bb1d5f9c2bf55b8bb9c3b1aa64159c9c.zip
chromium_src-d6dfff40bb1d5f9c2bf55b8bb9c3b1aa64159c9c.tar.gz
chromium_src-d6dfff40bb1d5f9c2bf55b8bb9c3b1aa64159c9c.tar.bz2
Don't do dynamic IPv6 probe on Windows
On Windows, the OS does not appear to properly support the call to list interfaces. As a result, it is only returning IPv4 interfaces, even if there are valid IPv6 interfaces. This in turned caused IPv6 to be disabled on windows. This patch tentatively allows IPv6 rather than performing probe. BUG=40851 r=wtc Review URL: http://codereview.chromium.org/1564020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44031 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--net/base/net_util.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/net/base/net_util.cc b/net/base/net_util.cc
index b78b525..a66d27a 100644
--- a/net/base/net_util.cc
+++ b/net/base/net_util.cc
@@ -1563,7 +1563,7 @@ void SetExplicitlyAllowedPorts(const std::wstring& allowed_ports) {
enum IPv6SupportStatus {
IPV6_CANNOT_CREATE_SOCKETS,
- IPV6_CAN_CREATE_SOCKETS, // Deprecated: No longer used.
+ IPV6_CAN_CREATE_SOCKETS,
IPV6_GETIFADDRS_FAILED,
IPV6_GLOBAL_ADDRESS_MISSING,
IPV6_GLOBAL_ADDRESS_PRESENT,
@@ -1641,9 +1641,13 @@ bool IPv6Supported() {
}
closesocket(test_socket);
+ // TODO(jar): Bug 40851: The remainder of probe is not working.
+ IPv6SupportResults(IPV6_CAN_CREATE_SOCKETS); // Record status.
+ return true; // Don't disable IPv6 yet.
+
// Check to see if any interface has a IPv6 address.
// Note: The original IPv6 socket can't be used here, as WSAIoctl() will fail.
- test_socket = WSASocket(AF_INET, SOCK_DGRAM, 0, NULL, 0, 0);
+ test_socket = socket(AF_INET, SOCK_STREAM, 0);
DCHECK(test_socket != INVALID_SOCKET);
INTERFACE_INFO interfaces[128];
DWORD bytes_written = 0;