diff options
author | sergeyu <sergeyu@chromium.org> | 2015-07-08 18:46:00 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-07-09 01:46:41 +0000 |
commit | a113092147851769526ab89197b64d10d221c9d4 (patch) | |
tree | aa0546a1c03588f7b618b5f80ce627123aac46b5 /extensions/browser/api/socket/socket_api.h | |
parent | 3e7847fcfb33dd0aa06fea2ccbf02f5c07e2b5ea (diff) | |
download | chromium_src-a113092147851769526ab89197b64d10d221c9d4.zip chromium_src-a113092147851769526ab89197b64d10d221c9d4.tar.gz chromium_src-a113092147851769526ab89197b64d10d221c9d4.tar.bz2 |
Fix chrome.socket.tcp API to use all addresses received from DNS.
Previously chrome.socket.tcp API was using only one IP address it
receives from DNS. Fixed it to pass all addresses to TCPClientSocket so
it attempts to connect to all of them before failing.
BUG=508210
Review URL: https://codereview.chromium.org/1229763002
Cr-Commit-Position: refs/heads/master@{#337962}
Diffstat (limited to 'extensions/browser/api/socket/socket_api.h')
-rw-r--r-- | extensions/browser/api/socket/socket_api.h | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/extensions/browser/api/socket/socket_api.h b/extensions/browser/api/socket/socket_api.h index d6e4736..9f4fda7 100644 --- a/extensions/browser/api/socket/socket_api.h +++ b/extensions/browser/api/socket/socket_api.h @@ -147,19 +147,16 @@ class SocketExtensionWithDnsLookupFunction : public SocketAsyncApiFunction { // AsyncApiFunction: bool PrePrepare() override; - void StartDnsLookup(const std::string& hostname); + void StartDnsLookup(const net::HostPortPair& host_port_pair); virtual void AfterDnsLookup(int lookup_result) = 0; - std::string resolved_address_; + net::AddressList addresses_; private: void OnDnsLookup(int resolve_result); // Weak pointer to the resource context. content::ResourceContext* resource_context_; - - scoped_ptr<net::HostResolver::RequestHandle> request_handle_; - scoped_ptr<net::AddressList> addresses_; }; class SocketCreateFunction : public SocketAsyncApiFunction { |