Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(878)

Unified Diff: net/http/http_auth_handler_digest.cc

Issue 1383613002: [net/http auth] Cleanup. Method names, and constness. Base URL: https://chromium.googlesource.com/chromium/src.git@mock-auth-handler-generalization
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/http/http_auth_handler_digest.h ('k') | net/http/http_auth_handler_digest_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/http/http_auth_handler_digest.cc
diff --git a/net/http/http_auth_handler_digest.cc b/net/http/http_auth_handler_digest.cc
index c3d5e1a13b45a72fd1e1384c19c51cbbfeb7b7ca..c74b3da58c43905d1b600a5816fc96bf51854e08 100644
--- a/net/http/http_auth_handler_digest.cc
+++ b/net/http/http_auth_handler_digest.cc
@@ -92,7 +92,7 @@ void HttpAuthHandlerDigest::Factory::set_nonce_generator(
}
int HttpAuthHandlerDigest::Factory::CreateAuthHandler(
- HttpAuthChallengeTokenizer* challenge,
+ const HttpAuthChallengeTokenizer& challenge,
HttpAuth::Target target,
const GURL& origin,
CreateReason reason,
@@ -103,22 +103,23 @@ int HttpAuthHandlerDigest::Factory::CreateAuthHandler(
// method and only constructing when valid.
scoped_ptr<HttpAuthHandler> tmp_handler(
new HttpAuthHandlerDigest(digest_nonce_count, nonce_generator_.get()));
- if (!tmp_handler->InitFromChallenge(challenge, target, origin, net_log))
- return ERR_INVALID_RESPONSE;
- handler->swap(tmp_handler);
- return OK;
+ int result =
+ tmp_handler->HandleInitialChallenge(challenge, target, origin, net_log);
+ if (result == OK)
+ handler->swap(tmp_handler);
+ return result;
}
HttpAuth::AuthorizationResult HttpAuthHandlerDigest::HandleAnotherChallenge(
- HttpAuthChallengeTokenizer* challenge) {
+ const HttpAuthChallengeTokenizer& challenge) {
// Even though Digest is not connection based, a "second round" is parsed
// to differentiate between stale and rejected responses.
// Note that the state of the current handler is not mutated - this way if
// there is a rejection the realm hasn't changed.
- if (!challenge->SchemeIs(kDigestSchemeName))
+ if (!challenge.SchemeIs(kDigestSchemeName))
return HttpAuth::AUTHORIZATION_RESULT_INVALID;
- HttpUtil::NameValuePairsIterator parameters = challenge->param_pairs();
+ HttpUtil::NameValuePairsIterator parameters = challenge.param_pairs();
// Try to find the "stale" value, and also keep track of the realm
// for the new challenge.
@@ -136,13 +137,15 @@ HttpAuth::AuthorizationResult HttpAuthHandlerDigest::HandleAnotherChallenge(
HttpAuth::AUTHORIZATION_RESULT_REJECT;
}
-bool HttpAuthHandlerDigest::Init(HttpAuthChallengeTokenizer* challenge) {
- return ParseChallenge(challenge);
+int HttpAuthHandlerDigest::Init(const HttpAuthChallengeTokenizer& challenge) {
+ return ParseChallenge(challenge) ? OK : ERR_INVALID_RESPONSE;
}
int HttpAuthHandlerDigest::GenerateAuthTokenImpl(
- const AuthCredentials* credentials, const HttpRequestInfo* request,
- const CompletionCallback& callback, std::string* auth_token) {
+ const AuthCredentials* credentials,
+ const HttpRequestInfo& request,
+ const CompletionCallback& callback,
+ std::string* auth_token) {
// Generate a random client nonce.
std::string cnonce = nonce_generator_->GenerateNonce();
@@ -189,7 +192,7 @@ HttpAuthHandlerDigest::~HttpAuthHandlerDigest() {
// send the realm (See http://crbug.com/20984 for an instance where a
// webserver was not sending the realm with a BASIC challenge).
bool HttpAuthHandlerDigest::ParseChallenge(
- HttpAuthChallengeTokenizer* challenge) {
+ const HttpAuthChallengeTokenizer& challenge) {
auth_scheme_ = kDigestSchemeName;
// Initialize to defaults.
@@ -199,10 +202,10 @@ bool HttpAuthHandlerDigest::ParseChallenge(
realm_ = original_realm_ = nonce_ = domain_ = opaque_ = std::string();
// FAIL -- Couldn't match auth-scheme.
- if (!challenge->SchemeIs(kDigestSchemeName))
+ if (!challenge.SchemeIs(kDigestSchemeName))
return false;
- HttpUtil::NameValuePairsIterator parameters = challenge->param_pairs();
+ HttpUtil::NameValuePairsIterator parameters = challenge.param_pairs();
// Loop through all the properties.
while (parameters.GetNext()) {
@@ -298,19 +301,17 @@ std::string HttpAuthHandlerDigest::AlgorithmToString(
}
void HttpAuthHandlerDigest::GetRequestMethodAndPath(
- const HttpRequestInfo* request,
+ const HttpRequestInfo& request,
std::string* method,
std::string* path) const {
- DCHECK(request);
-
- const GURL& url = request->url;
+ const GURL& url = request.url;
if (target_ == HttpAuth::AUTH_PROXY &&
(url.SchemeIs("https") || url.SchemeIsWSOrWSS())) {
*method = "CONNECT";
*path = GetHostAndPort(url);
} else {
- *method = request->method;
+ *method = request.method;
*path = url.PathForRequest();
}
}
« no previous file with comments | « net/http/http_auth_handler_digest.h ('k') | net/http/http_auth_handler_digest_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698