Index: net/dns/host_resolver_proc.cc |
diff --git a/net/dns/host_resolver_proc.cc b/net/dns/host_resolver_proc.cc |
index f2b10c649bad49e5d083024a45e04594f91324f6..98b98125c1b1e2e71f12508681fa218dc10158d6 100644 |
--- a/net/dns/host_resolver_proc.cc |
+++ b/net/dns/host_resolver_proc.cc |
@@ -10,6 +10,7 @@ |
#include "base/sys_byteorder.h" |
#include "net/base/address_list.h" |
#include "net/base/dns_reloader.h" |
+#include "net/base/dns_util.h" |
#include "net/base/net_errors.h" |
#include "net/base/sys_addrinfo.h" |
@@ -124,6 +125,13 @@ int SystemHostResolverCall(const std::string& host, |
HostResolverFlags host_resolver_flags, |
AddressList* addrlist, |
int* os_error) { |
+ // Make sure |host| is properly formed. |
+ { |
+ std::string out_ignored; |
+ if (!DNSDomainFromDot(host, &out_ignored)) |
+ return ERR_NAME_NOT_RESOLVED; |
+ } |
Ryan Sleevi
2015/03/06 22:11:36
Don't use { } here.
|
+ |
if (os_error) |
*os_error = 0; |