| Index: net/websockets/websocket_handshake_handler.cc
|
| diff --git a/net/websockets/websocket_handshake_handler.cc b/net/websockets/websocket_handshake_handler.cc
|
| index 787dde682e784471b3cd1919633859f698a0fb57..1ca9c3d20e9d7e79619640a306fdb460e60ef8f8 100644
|
| --- a/net/websockets/websocket_handshake_handler.cc
|
| +++ b/net/websockets/websocket_handshake_handler.cc
|
| @@ -27,10 +27,10 @@ const int kVersionHeaderValueForRFC6455 = 13;
|
| // Splits |handshake_message| into Status-Line or Request-Line (including CRLF)
|
| // and headers (excluding 2nd CRLF of double CRLFs at the end of a handshake
|
| // response).
|
| -void ParseHandshakeHeader(
|
| - const char* handshake_message, int len,
|
| - std::string* request_line,
|
| - std::string* headers) {
|
| +void ParseHandshakeHeader(const char* handshake_message,
|
| + int len,
|
| + std::string* request_line,
|
| + std::string* headers) {
|
| size_t i = base::StringPiece(handshake_message, len).find_first_of("\r\n");
|
| if (i == base::StringPiece::npos) {
|
| *request_line = std::string(handshake_message, len);
|
| @@ -57,8 +57,8 @@ void FetchHeaders(const std::string& headers,
|
| net::HttpUtil::HeadersIterator iter(headers.begin(), headers.end(), "\r\n");
|
| while (iter.GetNext()) {
|
| for (size_t i = 0; i < headers_to_get_len; i++) {
|
| - if (LowerCaseEqualsASCII(iter.name_begin(), iter.name_end(),
|
| - headers_to_get[i])) {
|
| + if (LowerCaseEqualsASCII(
|
| + iter.name_begin(), iter.name_end(), headers_to_get[i])) {
|
| values->push_back(iter.values());
|
| }
|
| }
|
| @@ -83,10 +83,9 @@ bool GetHeaderName(std::string::const_iterator line_begin,
|
|
|
| // Similar to HttpUtil::StripHeaders, but it preserves malformed headers, that
|
| // is, lines that are not formatted as "<name>: <value>\r\n".
|
| -std::string FilterHeaders(
|
| - const std::string& headers,
|
| - const char* const headers_to_remove[],
|
| - size_t headers_to_remove_len) {
|
| +std::string FilterHeaders(const std::string& headers,
|
| + const char* const headers_to_remove[],
|
| + size_t headers_to_remove_len) {
|
| std::string filtered_headers;
|
|
|
| base::StringTokenizer lines(headers.begin(), headers.end(), "\r\n");
|
| @@ -115,7 +114,7 @@ std::string FilterHeaders(
|
| bool CheckVersionInRequest(const std::string& request_headers) {
|
| std::vector<std::string> values;
|
| const char* const headers_to_get[1] = {
|
| - websockets::kSecWebSocketVersionLowercase};
|
| + websockets::kSecWebSocketVersionLowercase};
|
| FetchHeaders(request_headers, headers_to_get, 1, &values);
|
| DCHECK_LE(values.size(), 1U);
|
| if (values.empty())
|
| @@ -152,11 +151,11 @@ void AppendHeader(const base::StringPiece& header,
|
| } // namespace
|
|
|
| WebSocketHandshakeRequestHandler::WebSocketHandshakeRequestHandler()
|
| - : original_length_(0),
|
| - raw_length_(0) {}
|
| + : original_length_(0), raw_length_(0) {
|
| +}
|
|
|
| -bool WebSocketHandshakeRequestHandler::ParseRequest(
|
| - const char* data, int length) {
|
| +bool WebSocketHandshakeRequestHandler::ParseRequest(const char* data,
|
| + int length) {
|
| DCHECK_GT(length, 0);
|
| std::string input(data, length);
|
| int input_header_length =
|
| @@ -164,10 +163,8 @@ bool WebSocketHandshakeRequestHandler::ParseRequest(
|
| if (input_header_length <= 0)
|
| return false;
|
|
|
| - ParseHandshakeHeader(input.data(),
|
| - input_header_length,
|
| - &request_line_,
|
| - &headers_);
|
| + ParseHandshakeHeader(
|
| + input.data(), input_header_length, &request_line_, &headers_);
|
|
|
| if (!CheckVersionInRequest(headers_)) {
|
| NOTREACHED();
|
| @@ -183,7 +180,8 @@ size_t WebSocketHandshakeRequestHandler::original_length() const {
|
| }
|
|
|
| void WebSocketHandshakeRequestHandler::AppendHeaderIfMissing(
|
| - const std::string& name, const std::string& value) {
|
| + const std::string& name,
|
| + const std::string& value) {
|
| DCHECK(!headers_.empty());
|
| HttpUtil::AppendHeaderIfMissing(name.c_str(), value, &headers_);
|
| }
|
| @@ -192,12 +190,12 @@ void WebSocketHandshakeRequestHandler::RemoveHeaders(
|
| const char* const headers_to_remove[],
|
| size_t headers_to_remove_len) {
|
| DCHECK(!headers_.empty());
|
| - headers_ = FilterHeaders(
|
| - headers_, headers_to_remove, headers_to_remove_len);
|
| + headers_ = FilterHeaders(headers_, headers_to_remove, headers_to_remove_len);
|
| }
|
|
|
| HttpRequestInfo WebSocketHandshakeRequestHandler::GetRequestInfo(
|
| - const GURL& url, std::string* challenge) {
|
| + const GURL& url,
|
| + std::string* challenge) {
|
| HttpRequestInfo request_info;
|
| request_info.url = url;
|
| size_t method_end = base::StringPiece(request_line_).find_first_of(" ");
|
| @@ -211,8 +209,8 @@ HttpRequestInfo WebSocketHandshakeRequestHandler::GetRequestInfo(
|
| request_info.extra_headers.RemoveHeader(HttpRequestHeaders::kConnection);
|
|
|
| std::string key;
|
| - bool header_present = request_info.extra_headers.GetHeader(
|
| - websockets::kSecWebSocketKey, &key);
|
| + bool header_present =
|
| + request_info.extra_headers.GetHeader(websockets::kSecWebSocketKey, &key);
|
| DCHECK(header_present);
|
| request_info.extra_headers.RemoveHeader(websockets::kSecWebSocketKey);
|
| *challenge = key;
|
| @@ -306,12 +304,14 @@ size_t WebSocketHandshakeRequestHandler::raw_length() const {
|
| }
|
|
|
| WebSocketHandshakeResponseHandler::WebSocketHandshakeResponseHandler()
|
| - : original_header_length_(0) {}
|
| + : original_header_length_(0) {
|
| +}
|
|
|
| -WebSocketHandshakeResponseHandler::~WebSocketHandshakeResponseHandler() {}
|
| +WebSocketHandshakeResponseHandler::~WebSocketHandshakeResponseHandler() {
|
| +}
|
|
|
| -size_t WebSocketHandshakeResponseHandler::ParseRawResponse(
|
| - const char* data, int length) {
|
| +size_t WebSocketHandshakeResponseHandler::ParseRawResponse(const char* data,
|
| + int length) {
|
| DCHECK_GT(length, 0);
|
| if (HasResponse()) {
|
| DCHECK(!status_line_.empty());
|
| @@ -324,15 +324,13 @@ size_t WebSocketHandshakeResponseHandler::ParseRawResponse(
|
|
|
| original_.append(data, length);
|
| // TODO(ukai): fail fast when response gives wrong status code.
|
| - original_header_length_ = HttpUtil::LocateEndOfHeaders(
|
| - original_.data(), original_.size(), 0);
|
| + original_header_length_ =
|
| + HttpUtil::LocateEndOfHeaders(original_.data(), original_.size(), 0);
|
| if (!HasResponse())
|
| return length;
|
|
|
| - ParseHandshakeHeader(original_.data(),
|
| - original_header_length_,
|
| - &status_line_,
|
| - &headers_);
|
| + ParseHandshakeHeader(
|
| + original_.data(), original_header_length_, &status_line_, &headers_);
|
| int header_size = status_line_.size() + headers_.size();
|
| DCHECK_GE(original_header_length_, header_size);
|
| header_separator_ = std::string(original_.data() + header_size,
|
| @@ -342,15 +340,13 @@ size_t WebSocketHandshakeResponseHandler::ParseRawResponse(
|
|
|
| bool WebSocketHandshakeResponseHandler::HasResponse() const {
|
| return original_header_length_ > 0 &&
|
| - static_cast<size_t>(original_header_length_) <= original_.size();
|
| + static_cast<size_t>(original_header_length_) <= original_.size();
|
| }
|
|
|
| -void ComputeSecWebSocketAccept(const std::string& key,
|
| - std::string* accept) {
|
| +void ComputeSecWebSocketAccept(const std::string& key, std::string* accept) {
|
| DCHECK(accept);
|
|
|
| - std::string hash =
|
| - base::SHA1HashString(key + websockets::kWebSocketGuid);
|
| + std::string hash = base::SHA1HashString(key + websockets::kWebSocketGuid);
|
| base::Base64Encode(hash, accept);
|
| }
|
|
|
| @@ -365,9 +361,8 @@ bool WebSocketHandshakeResponseHandler::ParseResponseInfo(
|
| response_message = response_info.headers->GetStatusLine();
|
| response_message += "\r\n";
|
|
|
| - AppendHeader(websockets::kUpgrade,
|
| - websockets::kWebSocketLowercase,
|
| - &response_message);
|
| + AppendHeader(
|
| + websockets::kUpgrade, websockets::kWebSocketLowercase, &response_message);
|
|
|
| AppendHeader(
|
| HttpRequestHeaders::kConnection, websockets::kUpgrade, &response_message);
|
| @@ -385,8 +380,8 @@ bool WebSocketHandshakeResponseHandler::ParseResponseInfo(
|
| }
|
| response_message += "\r\n";
|
|
|
| - return ParseRawResponse(response_message.data(),
|
| - response_message.size()) == response_message.size();
|
| + return ParseRawResponse(response_message.data(), response_message.size()) ==
|
| + response_message.size();
|
| }
|
|
|
| bool WebSocketHandshakeResponseHandler::ParseResponseHeaderBlock(
|
| @@ -453,8 +448,8 @@ bool WebSocketHandshakeResponseHandler::ParseResponseHeaderBlock(
|
| }
|
| response_message += "\r\n";
|
|
|
| - return ParseRawResponse(response_message.data(),
|
| - response_message.size()) == response_message.size();
|
| + return ParseRawResponse(response_message.data(), response_message.size()) ==
|
| + response_message.size();
|
| }
|
|
|
| void WebSocketHandshakeResponseHandler::GetHeaders(
|
|
|