summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorjww@chromium.org <jww@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-11 16:16:30 +0000
committerjww@chromium.org <jww@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-11 16:16:30 +0000
commit9f6e673c7f43f6ee414f72a74585dad8ebaceec3 (patch)
treec44dc742a1dd1ad6c226ab58847e066ba26a6f49 /net
parentf57d57d8e63e8dbb267dbe0ff98ff4f4e4033140 (diff)
downloadchromium_src-9f6e673c7f43f6ee414f72a74585dad8ebaceec3.zip
chromium_src-9f6e673c7f43f6ee414f72a74585dad8ebaceec3.tar.gz
chromium_src-9f6e673c7f43f6ee414f72a74585dad8ebaceec3.tar.bz2
Updated control chars in cookies histogram group to 'Cookie' and added histograms to histograms.xml for previously added UMA experiments.
BUG=238041 Review URL: https://chromiumcodereview.appspot.com/15941021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205558 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net')
-rw-r--r--net/cookies/parsed_cookie.cc43
1 files changed, 24 insertions, 19 deletions
diff --git a/net/cookies/parsed_cookie.cc b/net/cookies/parsed_cookie.cc
index 6d94076..125d3d9 100644
--- a/net/cookies/parsed_cookie.cc
+++ b/net/cookies/parsed_cookie.cc
@@ -194,26 +194,25 @@ CookiePriority ParsedCookie::Priority() const {
}
bool ParsedCookie::SetName(const std::string& name) {
- if (!IsValidToken(name)) {
- UMA_HISTOGRAM_BOOLEAN("Cookies.SetNameInvalidToken", true);
+ bool valid_token = IsValidToken(name);
+ UMA_HISTOGRAM_BOOLEAN("Cookie.SetNameVaildity", valid_token);
+ if (!valid_token)
return false;
- }
if (pairs_.empty())
pairs_.push_back(std::make_pair("", ""));
pairs_[0].first = name;
- UMA_HISTOGRAM_BOOLEAN("Cookies.SetNameInvalidToken", false);
return true;
}
bool ParsedCookie::SetValue(const std::string& value) {
- if (!IsValidCookieValue(value)) {
- UMA_HISTOGRAM_BOOLEAN("Cookies.SetValueInvalidCookieValue", true);
+ bool valid_cookie_value = IsValidCookieValue(value);
+ UMA_HISTOGRAM_BOOLEAN("Cookie.SetValueCookieValueValidity",
+ valid_cookie_value);
+ if (!valid_cookie_value)
return false;
- }
if (pairs_.empty())
pairs_.push_back(std::make_pair("", ""));
pairs_[0].second = value;
- UMA_HISTOGRAM_BOOLEAN("Cookies.SetValueInvalidCookieValue", false);
return true;
}
@@ -355,8 +354,14 @@ std::string ParsedCookie::ParseValueString(const std::string& value) {
// Parse all token/value pairs and populate pairs_.
void ParsedCookie::ParseTokenValuePairs(const std::string& cookie_line) {
- bool parsed_invalid_control_char = false;
- bool parsed_invalid_token = false;
+ enum ParsedCookieStatus {
+ PARSED_COOKIE_STATUS_NOTHING = 0x0,
+ PARSED_COOKIE_STATUS_CONTROL_CHAR = 0x1,
+ PARSED_COOKIE_STATUS_INVALID = 0x2,
+ PARSED_COOKIE_STATUS_BOTH =
+ PARSED_COOKIE_STATUS_CONTROL_CHAR | PARSED_COOKIE_STATUS_INVALID
+ };
+ int parsed_cookie_status = PARSED_COOKIE_STATUS_NOTHING;
pairs_.clear();
@@ -406,9 +411,9 @@ void ParsedCookie::ParseTokenValuePairs(const std::string& cookie_line) {
pair.second = std::string(value_start, value_end);
if (!IsValidCookieAttributeValue(pair.second))
- parsed_invalid_control_char = true;
+ parsed_cookie_status |= PARSED_COOKIE_STATUS_CONTROL_CHAR;
if (!IsValidToken(pair.second))
- parsed_invalid_token = true;
+ parsed_cookie_status |= PARSED_COOKIE_STATUS_INVALID;
// From RFC2109: "Attributes (names) (attr) are case-insensitive."
if (pair_num != 0)
@@ -421,9 +426,8 @@ void ParsedCookie::ParseTokenValuePairs(const std::string& cookie_line) {
++it;
}
- UMA_HISTOGRAM_BOOLEAN("Cookies.ParsedInvalidControlCharacter",
- parsed_invalid_control_char);
- UMA_HISTOGRAM_BOOLEAN("Cookies.ParsedInvalidToken", parsed_invalid_token);
+ UMA_HISTOGRAM_ENUMERATION("Cookie.ParsedCookieStatus", parsed_cookie_status,
+ PARSED_COOKIE_STATUS_BOTH + 1);
}
void ParsedCookie::SetupAttributes() {
@@ -474,11 +478,12 @@ bool ParsedCookie::SetBool(size_t* index,
bool ParsedCookie::SetAttributePair(size_t* index,
const std::string& key,
const std::string& value) {
- if (!IsValidToken(key) || !IsValidCookieAttributeValue(value)) {
- UMA_HISTOGRAM_BOOLEAN("Cookies.SetAttributePairInvalidChars", true);
+ bool valid_attribute_pair = IsValidToken(key) &&
+ IsValidCookieAttributeValue(value);
+ UMA_HISTOGRAM_BOOLEAN("Cookie.SetAttributePairCharsValidity",
+ valid_attribute_pair);
+ if (!valid_attribute_pair)
return false;
- }
- UMA_HISTOGRAM_BOOLEAN("Cookies.SetAttributePairInvalidChars", false);
if (!IsValid())
return false;
if (*index) {