summaryrefslogtreecommitdiffstats
path: root/net/base/net_util.h
diff options
context:
space:
mode:
authorwtc@chromium.org <wtc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-05-05 15:27:50 +0000
committerwtc@chromium.org <wtc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-05-05 15:27:50 +0000
commit0d1f4c47457e4f38ff79433783d79795eb5aad59 (patch)
tree11ee74402900880cf69d79441caaaa629ad5ce1f /net/base/net_util.h
parentca1abf67762946dca6b8988a16d027b650c9042e (diff)
downloadchromium_src-0d1f4c47457e4f38ff79433783d79795eb5aad59.zip
chromium_src-0d1f4c47457e4f38ff79433783d79795eb5aad59.tar.gz
chromium_src-0d1f4c47457e4f38ff79433783d79795eb5aad59.tar.bz2
Prefer IPv4 in the ConnectBackupJob to work around broken IPv6 networks
where connects take a long time to fail. R=eroman@chromium.org,mbelshe@chromium.org BUG=none TEST=none Review URL: http://codereview.chromium.org/6905080 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84251 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/base/net_util.h')
-rw-r--r--net/base/net_util.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/net/base/net_util.h b/net/base/net_util.h
index 3f36182..fa7733e 100644
--- a/net/base/net_util.h
+++ b/net/base/net_util.h
@@ -402,6 +402,16 @@ bool IPNumberMatchesPrefix(const IPAddressNumber& ip_number,
const IPAddressNumber& ip_prefix,
size_t prefix_length_in_bits);
+// Makes a copy of |info|. The dynamically-allocated parts are copied as well.
+// If |recursive| is true, chained entries via ai_next are copied too.
+// The copy returned by this function should be freed using
+// FreeCopyOfAddrinfo(), and NOT freeaddrinfo().
+struct addrinfo* CreateCopyOfAddrinfo(const struct addrinfo* info,
+ bool recursive);
+
+// Frees an addrinfo that was created by CreateCopyOfAddrinfo().
+void FreeCopyOfAddrinfo(struct addrinfo* info);
+
// Returns the port field of the sockaddr in |info|.
const uint16* GetPortFieldFromAddrinfo(const struct addrinfo* info);
uint16* GetPortFieldFromAddrinfo(struct addrinfo* info);