Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(285)

Issue 13812002: [net/dns] Test IPv6 support via UDP connect (measurement) (Closed)

Created:
7 years, 8 months ago by szym
Modified:
7 years, 8 months ago
Reviewers:
mmenke, lorenzo
CC:
chromium-reviews, cbentzel+watch_chromium.org
Visibility:
Public.

Description

[net/dns] Test IPv6 support via UDP connect (measurement) Network interface enumeration is expensive and requires absolutely no false negatives in network change detection. In contrast bionic (Android libc) connects a UDP socket to an IPv6 address which confirms that the kernel can route to such address. This CL adds the UDP connect test to measure its performance compared to the probe. BUG=223876 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=193421

Patch Set 1 #

Patch Set 2 : Use old probe for assignment, but measure performance of new test #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+37 lines, -0 lines) Patch
M net/dns/host_resolver_impl.cc View 1 5 chunks +37 lines, -0 lines 1 comment Download

Messages

Total messages: 5 (0 generated)
szym
7 years, 8 months ago (2013-04-09 23:06:52 UTC) #1
mmenke
LGTM
7 years, 8 months ago (2013-04-10 16:03:25 UTC) #2
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/szym@chromium.org/13812002/2001
7 years, 8 months ago (2013-04-10 16:05:15 UTC) #3
commit-bot: I haz the power
Change committed as 193421
7 years, 8 months ago (2013-04-10 18:10:52 UTC) #4
lorenzo
7 years, 8 months ago (2013-04-11 07:28:14 UTC) #5
Message was sent while issue was closed.
https://chromiumcodereview.appspot.com/13812002/diff/2001/net/dns/host_resolv...
File net/dns/host_resolver_impl.cc (right):

https://chromiumcodereview.appspot.com/13812002/diff/2001/net/dns/host_resolv...
net/dns/host_resolver_impl.cc:180: return socket->Connect(IPEndPoint(dest, 80));
Do you need to check that the address is a global address as well? That's what
the existing IPv6 probe does I think.

It's possible that some operating systems (perhaps OS X; Linux doesn't do this),
will try to connect to a global address even if they only have a link-local
address (which is very unlikely to work). On these systems, the connection probe
could return success even if there was no global address present on the machine.

If that's the case, you can call getsockname() to get the IP address the OS
picked for the connection and see if it's a global address.

Powered by Google App Engine
This is Rietveld 408576698