| Index: url/url_canon.h
 | 
| diff --git a/url/url_canon.h b/url/url_canon.h
 | 
| index 95d53453f64362efc98d8141c11691573eaae165..c4852e490b05b0286b463ab23eca0c238eeec52a 100644
 | 
| --- a/url/url_canon.h
 | 
| +++ b/url/url_canon.h
 | 
| @@ -379,6 +379,33 @@ URL_EXPORT void CanonicalizeHostVerbose(const base::char16* spec,
 | 
|                                          CanonOutput* output,
 | 
|                                          CanonHostInfo* host_info);
 | 
|  
 | 
| +// Canonicalizes a string according to the host canonicalization rules. Unlike
 | 
| +// CanonicalizeHost, this will not check for IP addresses which can change the
 | 
| +// meaning (and canonicalization) of the components. This means it is possible
 | 
| +// to call this for sub-components of a host name without corruption.
 | 
| +//
 | 
| +// As an example, "01.02.03.04.com" is a canonical hostname. If you called
 | 
| +// CanonicalizeHost on the substring "01.02.03.04" it will get "fixed" to
 | 
| +// "1.2.3.4" which will produce an invalid host name when reassembled. This
 | 
| +// can happen more than one might think because all numbers by themselves are
 | 
| +// considered IP addresses; so "5" canonicalizes to "0.0.0.5".
 | 
| +//
 | 
| +// Be careful: Because Punycode works on each dot-separated substring as a
 | 
| +// unit, you should only pass this function substrings that represent complete
 | 
| +// dot-separated subcomponents of the original host. Even if you have ASCII
 | 
| +// input, percent-escaped characters will have different meanings if split in
 | 
| +// the middle.
 | 
| +//
 | 
| +// Returns true if the host was valid. This function will treat a 0-length
 | 
| +// host as valid (because it's designed to be used for substrings) while the
 | 
| +// full version above will mark empty hosts as broken.
 | 
| +URL_EXPORT bool CanonicalizeHostSubstring(const char* spec,
 | 
| +                                          const Component& host,
 | 
| +                                          CanonOutput* output);
 | 
| +URL_EXPORT bool CanonicalizeHostSubstring(const base::char16* spec,
 | 
| +                                          const Component& host,
 | 
| +                                          CanonOutput* output);
 | 
| +
 | 
|  // IP addresses.
 | 
|  //
 | 
|  // Tries to interpret the given host name as an IPv4 or IPv6 address. If it is
 | 
| 
 |