summaryrefslogtreecommitdiffstats
path: root/chromium/net/server/http_server_request_info.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/net/server/http_server_request_info.cc')
-rw-r--r--chromium/net/server/http_server_request_info.cc17
1 files changed, 17 insertions, 0 deletions
diff --git a/chromium/net/server/http_server_request_info.cc b/chromium/net/server/http_server_request_info.cc
index 67965f29aa3..8b65bee50c1 100644
--- a/chromium/net/server/http_server_request_info.cc
+++ b/chromium/net/server/http_server_request_info.cc
@@ -22,4 +22,21 @@ std::string HttpServerRequestInfo::GetHeaderValue(
return std::string();
}
+bool HttpServerRequestInfo::HasHeaderValue(
+ const std::string& header_name,
+ const std::string& header_value) const {
+ DCHECK_EQ(StringToLowerASCII(header_value), header_value);
+ std::string complete_value = GetHeaderValue(header_name);
+ StringToLowerASCII(&complete_value);
+ std::vector<std::string> value_items;
+ Tokenize(complete_value, ",", &value_items);
+ for (std::vector<std::string>::iterator it = value_items.begin();
+ it != value_items.end(); ++it) {
+ base::TrimString(*it, " \t", &*it);
+ if (*it == header_value)
+ return true;
+ }
+ return false;
+}
+
} // namespace net