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

Unified Diff: net/dns/host_resolver.cc

Issue 238433003: Provide Shill IP Address to myIpAddress() (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/dns/host_resolver.cc
diff --git a/net/dns/host_resolver.cc b/net/dns/host_resolver.cc
index 0435091a54f3d1291c8780ab3b22b0ac90c08236..76fb8fd4f8c716bdad5bf5143e182e4dd7c98457 100644
--- a/net/dns/host_resolver.cc
+++ b/net/dns/host_resolver.cc
@@ -115,6 +115,31 @@ base::Value* HostResolver::GetDnsConfigAsValue() const {
return NULL;
}
+void HostResolver::SetMyIpAddresses(const std::string& ipv4_address,
+ const std::string& ipv6_address) {
+ my_ipv4_address_ = ipv4_address;
+ my_ipv6_address_ = ipv6_address;
+}
+
+bool HostResolver::ResolveFromMyIpAddress(bool include_ipv6,
+ AddressList* addresses) const {
+ addresses->clear();
+ if (include_ipv6 && !my_ipv6_address_.empty()) {
+ IPAddressNumber ipv6;
+ if (ParseIPLiteralToNumber(my_ipv6_address_, &ipv6))
+ addresses->push_back(IPEndPoint(ipv6, 0));
+ }
+ if (!my_ipv4_address_.empty()) {
+ IPAddressNumber ipv4;
+ if (ParseIPLiteralToNumber(my_ipv4_address_, &ipv4))
+ addresses->push_back(IPEndPoint(ipv4, 0));
+ }
+ if (addresses->empty())
+ return false;
+ addresses->SetDefaultCanonicalName();
+ return true;
+}
+
// static
scoped_ptr<HostResolver>
HostResolver::CreateSystemResolver(const Options& options, NetLog* net_log) {

Powered by Google App Engine
This is Rietveld 408576698