diff options
author | agl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-01 17:04:52 +0000 |
---|---|---|
committer | agl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-01 17:04:52 +0000 |
commit | a0709c0dafd07a463a1e9b3553554a0be6cec862 (patch) | |
tree | 8932d493f7de30dd1a2beabe6c405747aeabbdd2 /net/base/ssl_config_service.cc | |
parent | 442845aaeb4720a9a8cc46a8230e93cad1112bfd (diff) | |
download | chromium_src-a0709c0dafd07a463a1e9b3553554a0be6cec862.zip chromium_src-a0709c0dafd07a463a1e9b3553554a0be6cec862.tar.gz chromium_src-a0709c0dafd07a463a1e9b3553554a0be6cec862.tar.bz2 |
net: add *.yodlee.com to False Start blacklist
(At the request of A10 networks.)
BUG=53690
TEST=net_unittests
http://codereview.chromium.org/3235009/show
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58191 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/base/ssl_config_service.cc')
-rw-r--r-- | net/base/ssl_config_service.cc | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/net/base/ssl_config_service.cc b/net/base/ssl_config_service.cc index d677c81..4fc738a 100644 --- a/net/base/ssl_config_service.cc +++ b/net/base/ssl_config_service.cc @@ -60,17 +60,32 @@ bool SSLConfigService::IsKnownFalseStartIncompatibleServer( const std::string& hostname) { // If this list starts growing, it'll need to be something more efficient // than a linear list. - static const char kFalseStartIncompatibleServers[][23] = { - "moneycenter.yodlee.com", + static const char kFalseStartIncompatibleServers[][15] = { "www.picnik.com", }; + static const char kFalseStartIncompatibleDomains[][11] = { + // Added at the request of A10. + "yodlee.com", + }; + + // Note that the hostname is normalised to lower-case by this point. for (size_t i = 0; i < arraysize(kFalseStartIncompatibleServers); i++) { - // Note that the hostname is normalised to lower-case by this point. if (strcmp(hostname.c_str(), kFalseStartIncompatibleServers[i]) == 0) return true; } + for (size_t i = 0; i < arraysize(kFalseStartIncompatibleDomains); i++) { + const char* domain = kFalseStartIncompatibleDomains[i]; + const size_t len = strlen(domain); + if (hostname.size() >= len && + memcmp(&hostname[hostname.size() - len], domain, len) == 0 && + (hostname.size() == len || + hostname[hostname.size() - len - 1] == '.')) { + return true; + } + } + return false; } |