diff options
Diffstat (limited to 'net/url_request')
-rw-r--r-- | net/url_request/url_request.cc | 6 | ||||
-rw-r--r-- | net/url_request/url_request.h | 2 | ||||
-rw-r--r-- | net/url_request/url_request_ftp_job.cc | 18 | ||||
-rw-r--r-- | net/url_request/url_request_ftp_job.h | 16 | ||||
-rw-r--r-- | net/url_request/url_request_http_job.cc | 20 | ||||
-rw-r--r-- | net/url_request/url_request_http_job.h | 11 | ||||
-rw-r--r-- | net/url_request/url_request_job.cc | 3 | ||||
-rw-r--r-- | net/url_request/url_request_job.h | 5 | ||||
-rw-r--r-- | net/url_request/url_request_test_util.cc | 4 | ||||
-rw-r--r-- | net/url_request/url_request_test_util.h | 9 | ||||
-rw-r--r-- | net/url_request/url_request_unittest.cc | 33 |
11 files changed, 47 insertions, 80 deletions
diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc index b46b6cc..20f0b9c 100644 --- a/net/url_request/url_request.cc +++ b/net/url_request/url_request.cc @@ -616,11 +616,11 @@ void URLRequest::FollowDeferredRedirect() { job_->FollowDeferredRedirect(); } -void URLRequest::SetAuth(const string16& username, const string16& password) { +void URLRequest::SetAuth(const AuthCredentials& credentials) { DCHECK(job_); DCHECK(job_->NeedsAuth()); - job_->SetAuth(username, password); + job_->SetAuth(credentials); } void URLRequest::CancelAuth() { @@ -819,7 +819,7 @@ void URLRequest::NotifyAuthRequiredComplete( break; case NetworkDelegate::AUTH_REQUIRED_RESPONSE_SET_AUTH: - SetAuth(credentials.username, credentials.password); + SetAuth(credentials); break; case NetworkDelegate::AUTH_REQUIRED_RESPONSE_CANCEL_AUTH: diff --git a/net/url_request/url_request.h b/net/url_request/url_request.h index 6b23f54..712460b 100644 --- a/net/url_request/url_request.h +++ b/net/url_request/url_request.h @@ -604,7 +604,7 @@ class NET_EXPORT URLRequest : NON_EXPORTED_BASE(public base::NonThreadSafe) { // OnAuthRequired() callback (and only then). // SetAuth will reissue the request with the given credentials. // CancelAuth will give up and display the error page. - void SetAuth(const string16& username, const string16& password); + void SetAuth(const AuthCredentials& credentials); void CancelAuth(); // This method can be called after the user selects a client certificate to diff --git a/net/url_request/url_request_ftp_job.cc b/net/url_request/url_request_ftp_job.cc index b14d88d..669a889 100644 --- a/net/url_request/url_request_ftp_job.cc +++ b/net/url_request/url_request_ftp_job.cc @@ -107,9 +107,7 @@ void URLRequestFtpJob::OnStartCompleted(int result) { GURL origin = request_->url().GetOrigin(); if (server_auth_ && server_auth_->state == AUTH_STATE_HAVE_AUTH) { request_->context()->ftp_auth_cache()->Remove( - origin, - server_auth_->credentials.username, - server_auth_->credentials.password); + origin, server_auth_->credentials); } else if (!server_auth_) { server_auth_ = new AuthData(); } @@ -120,8 +118,7 @@ void URLRequestFtpJob::OnStartCompleted(int result) { if (cached_auth) { // Retry using cached auth data. - SetAuth(cached_auth->username, - cached_auth->password); + SetAuth(cached_auth->credentials); } else { // Prompt for a username/password. NotifyHeadersComplete(); @@ -151,8 +148,7 @@ void URLRequestFtpJob::RestartTransactionWithAuth() { // be notifying our consumer asynchronously via OnStartCompleted. SetStatus(URLRequestStatus(URLRequestStatus::IO_PENDING, 0)); - int rv = transaction_->RestartWithAuth(server_auth_->credentials.username, - server_auth_->credentials.password, + int rv = transaction_->RestartWithAuth(server_auth_->credentials, &start_callback_); if (rv == ERR_IO_PENDING) return; @@ -203,15 +199,13 @@ void URLRequestFtpJob::GetAuthChallengeInfo( result->swap(auth_info); } -void URLRequestFtpJob::SetAuth(const string16& username, - const string16& password) { +void URLRequestFtpJob::SetAuth(const AuthCredentials& credentials) { DCHECK(NeedsAuth()); server_auth_->state = AUTH_STATE_HAVE_AUTH; - server_auth_->credentials.username = username; - server_auth_->credentials.password = password; + server_auth_->credentials = credentials; request_->context()->ftp_auth_cache()->Add(request_->url().GetOrigin(), - username, password); + server_auth_->credentials); RestartTransactionWithAuth(); } diff --git a/net/url_request/url_request_ftp_job.h b/net/url_request/url_request_ftp_job.h index 1285d7b..5cee887 100644 --- a/net/url_request/url_request_ftp_job.h +++ b/net/url_request/url_request_ftp_job.h @@ -8,7 +8,6 @@ #include <string> -#include "base/string16.h" #include "base/task.h" #include "net/base/auth.h" #include "net/base/completion_callback.h" @@ -46,15 +45,14 @@ class URLRequestFtpJob : public URLRequestJob { void LogFtpServerType(char server_type); // Overridden from URLRequestJob: - virtual void Start(); - virtual void Kill(); - virtual LoadState GetLoadState() const; - virtual bool NeedsAuth(); + virtual void Start() OVERRIDE; + virtual void Kill() OVERRIDE; + virtual LoadState GetLoadState() const OVERRIDE; + virtual bool NeedsAuth() OVERRIDE; virtual void GetAuthChallengeInfo( - scoped_refptr<AuthChallengeInfo>* auth_info); - virtual void SetAuth(const string16& username, - const string16& password); - virtual void CancelAuth(); + scoped_refptr<AuthChallengeInfo>* auth_info) OVERRIDE; + virtual void SetAuth(const AuthCredentials& credentials) OVERRIDE; + virtual void CancelAuth() OVERRIDE; // TODO(ibrar): Yet to give another look at this function. virtual uint64 GetUploadProgress() const; diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_request_http_job.cc index 7e0d8da..7fca837a 100644 --- a/net/url_request/url_request_http_job.cc +++ b/net/url_request/url_request_http_job.cc @@ -282,7 +282,7 @@ void URLRequestHttpJob::NotifyHeadersComplete() { // URLRequestTestHTTP.BasicAuthWithCookies // where OnBeforeSendHeaders -> OnSendHeaders -> OnBeforeSendHeaders // occurs. - RestartTransactionWithAuth(string16(), string16()); + RestartTransactionWithAuth(AuthCredentials()); return; } @@ -334,7 +334,7 @@ void URLRequestHttpJob::StartTransactionInternal() { // NOTE: This method assumes that request_info_ is already setup properly. // If we already have a transaction, then we should restart the transaction - // with auth provided by username_ and password_. + // with auth provided by auth_credentials_. int rv; @@ -344,9 +344,8 @@ void URLRequestHttpJob::StartTransactionInternal() { } if (transaction_.get()) { - rv = transaction_->RestartWithAuth(username_, password_, &start_callback_); - username_.clear(); - password_.clear(); + rv = transaction_->RestartWithAuth(auth_credentials_, &start_callback_); + auth_credentials_ = AuthCredentials(); } else { DCHECK(request_->context()); DCHECK(request_->context()->http_transaction_factory()); @@ -765,10 +764,8 @@ void URLRequestHttpJob::OnReadCompleted(int result) { } void URLRequestHttpJob::RestartTransactionWithAuth( - const string16& username, - const string16& password) { - username_ = username; - password_ = password; + const AuthCredentials& credentials) { + auth_credentials_ = credentials; // These will be reset in OnStartCompleted. response_info_ = NULL; @@ -997,8 +994,7 @@ void URLRequestHttpJob::GetAuthChallengeInfo( *result = response_info_->auth_challenge; } -void URLRequestHttpJob::SetAuth(const string16& username, - const string16& password) { +void URLRequestHttpJob::SetAuth(const AuthCredentials& credentials) { DCHECK(transaction_.get()); // Proxy gets set first, then WWW. @@ -1009,7 +1005,7 @@ void URLRequestHttpJob::SetAuth(const string16& username, server_auth_state_ = AUTH_STATE_HAVE_AUTH; } - RestartTransactionWithAuth(username, password); + RestartTransactionWithAuth(credentials); } void URLRequestHttpJob::CancelAuth() { diff --git a/net/url_request/url_request_http_job.h b/net/url_request/url_request_http_job.h index d8e8e19..d1594dd 100644 --- a/net/url_request/url_request_http_job.h +++ b/net/url_request/url_request_http_job.h @@ -12,7 +12,6 @@ #include "base/compiler_specific.h" #include "base/memory/scoped_ptr.h" #include "base/memory/weak_ptr.h" -#include "base/string16.h" #include "base/task.h" #include "base/time.h" #include "net/base/auth.h" @@ -62,8 +61,7 @@ class URLRequestHttpJob : public URLRequestJob { void OnReadCompleted(int result); void NotifyBeforeSendHeadersCallback(int result); - void RestartTransactionWithAuth(const string16& username, - const string16& password); + void RestartTransactionWithAuth(const AuthCredentials& credentials); // Overridden from URLRequestJob: virtual void SetUpload(UploadData* upload) OVERRIDE; @@ -82,8 +80,7 @@ class URLRequestHttpJob : public URLRequestJob { virtual bool IsSafeRedirect(const GURL& location) OVERRIDE; virtual bool NeedsAuth() OVERRIDE; virtual void GetAuthChallengeInfo(scoped_refptr<AuthChallengeInfo>*) OVERRIDE; - virtual void SetAuth(const string16& username, - const string16& password) OVERRIDE; + virtual void SetAuth(const AuthCredentials& credentials) OVERRIDE; virtual void CancelAuth() OVERRIDE; virtual void ContinueWithCertificate(X509Certificate* client_cert) OVERRIDE; virtual void ContinueDespiteLastError() OVERRIDE; @@ -107,9 +104,7 @@ class URLRequestHttpJob : public URLRequestJob { // Auth states for proxy and origin server. AuthState proxy_auth_state_; AuthState server_auth_state_; - - string16 username_; - string16 password_; + AuthCredentials auth_credentials_; OldCompletionCallbackImpl<URLRequestHttpJob> start_callback_; OldCompletionCallbackImpl<URLRequestHttpJob> read_callback_; diff --git a/net/url_request/url_request_job.cc b/net/url_request/url_request_job.cc index 8390d8c..a9e9627 100644 --- a/net/url_request/url_request_job.cc +++ b/net/url_request/url_request_job.cc @@ -153,8 +153,7 @@ void URLRequestJob::GetAuthChallengeInfo( NOTREACHED(); } -void URLRequestJob::SetAuth(const string16& username, - const string16& password) { +void URLRequestJob::SetAuth(const AuthCredentials& credentials) { // This will only be called if NeedsAuth() returns true, in which // case the derived class should implement this! NOTREACHED(); diff --git a/net/url_request/url_request_job.h b/net/url_request/url_request_job.h index c219a3a..26d46d4 100644 --- a/net/url_request/url_request_job.h +++ b/net/url_request/url_request_job.h @@ -11,7 +11,6 @@ #include "base/memory/ref_counted.h" #include "base/memory/scoped_ptr.h" -#include "base/string16.h" #include "base/system_monitor/system_monitor.h" #include "base/task.h" #include "base/time.h" @@ -24,6 +23,7 @@ namespace net { class AuthChallengeInfo; +class AuthCredentials; class CookieList; class CookieOptions; class HttpRequestHeaders; @@ -152,8 +152,7 @@ class NET_EXPORT URLRequestJob : public base::RefCounted<URLRequestJob>, scoped_refptr<AuthChallengeInfo>* auth_info); // Resend the request with authentication credentials. - virtual void SetAuth(const string16& username, - const string16& password); + virtual void SetAuth(const AuthCredentials& credentials); // Display the error page without asking for credentials again. virtual void CancelAuth(); diff --git a/net/url_request/url_request_test_util.cc b/net/url_request/url_request_test_util.cc index 768e520..3a75332 100644 --- a/net/url_request/url_request_test_util.cc +++ b/net/url_request/url_request_test_util.cc @@ -195,8 +195,8 @@ void TestDelegate::OnReceivedRedirect(net::URLRequest* request, void TestDelegate::OnAuthRequired(net::URLRequest* request, net::AuthChallengeInfo* auth_info) { auth_required_ = true; - if (!username_.empty() || !password_.empty()) { - request->SetAuth(username_, password_); + if (!credentials_.Empty()) { + request->SetAuth(credentials_); } else { request->CancelAuth(); } diff --git a/net/url_request/url_request_test_util.h b/net/url_request/url_request_test_util.h index 56a8973..7ad071a 100644 --- a/net/url_request/url_request_test_util.h +++ b/net/url_request/url_request_test_util.h @@ -107,8 +107,9 @@ class TestDelegate : public net::URLRequest::Delegate { allow_certificate_errors_ = val; } void set_cookie_options(int o) {cookie_options_bit_mask_ = o; } - void set_username(const string16& u) { username_ = u; } - void set_password(const string16& p) { password_ = p; } + void set_credentials(const net::AuthCredentials& credentials) { + credentials_ = credentials; + } // query state const std::string& data_received() const { return data_received_; } @@ -156,9 +157,7 @@ class TestDelegate : public net::URLRequest::Delegate { bool quit_on_redirect_; bool allow_certificate_errors_; int cookie_options_bit_mask_; - - string16 username_; - string16 password_; + net::AuthCredentials credentials_; // tracks status of callbacks int response_started_count_; diff --git a/net/url_request/url_request_unittest.cc b/net/url_request/url_request_unittest.cc index 53ba466..fbd6d27 100644 --- a/net/url_request/url_request_unittest.cc +++ b/net/url_request/url_request_unittest.cc @@ -599,8 +599,7 @@ TEST_F(URLRequestTestHTTP, NetworkDelegateOnAuthRequiredSyncNoAction) { context->set_network_delegate(&network_delegate); context->Init(); - d.set_username(kUser); - d.set_password(kSecret); + d.set_credentials(AuthCredentials(kUser, kSecret)); { GURL url(test_server_.GetURL("auth-basic")); @@ -629,10 +628,7 @@ TEST_F(URLRequestTestHTTP, NetworkDelegateOnAuthRequiredSyncSetAuth) { network_delegate.set_auth_retval( NetworkDelegate::AUTH_REQUIRED_RESPONSE_SET_AUTH); - AuthCredentials auth_credentials; - auth_credentials.username = kUser; - auth_credentials.password = kSecret; - network_delegate.set_auth_credentials(auth_credentials); + network_delegate.set_auth_credentials(AuthCredentials(kUser, kSecret)); scoped_refptr<TestURLRequestContext> context(new TestURLRequestContext(true)); context->set_network_delegate(&network_delegate); @@ -704,8 +700,7 @@ TEST_F(URLRequestTestHTTP, NetworkDelegateOnAuthRequiredAsyncNoAction) { context->set_network_delegate(&network_delegate); context->Init(); - d.set_username(kUser); - d.set_password(kSecret); + d.set_credentials(AuthCredentials(kUser, kSecret)); { GURL url(test_server_.GetURL("auth-basic")); @@ -736,9 +731,7 @@ TEST_F(URLRequestTestHTTP, NetworkDelegateOnAuthRequiredAsyncSetAuth) { network_delegate.set_auth_callback_retval( NetworkDelegate::AUTH_REQUIRED_RESPONSE_SET_AUTH); - AuthCredentials auth_credentials; - auth_credentials.username = kUser; - auth_credentials.password = kSecret; + AuthCredentials auth_credentials(kUser, kSecret); network_delegate.set_auth_credentials(auth_credentials); scoped_refptr<TestURLRequestContext> context(new TestURLRequestContext(true)); @@ -1951,8 +1944,7 @@ TEST_F(URLRequestTestHTTP, BasicAuth) { // populate the cache { TestDelegate d; - d.set_username(kUser); - d.set_password(kSecret); + d.set_credentials(AuthCredentials(kUser, kSecret)); URLRequest r(test_server_.GetURL("auth-basic"), &d); r.set_context(default_context_); @@ -1968,8 +1960,7 @@ TEST_F(URLRequestTestHTTP, BasicAuth) { // response should be fetched from the cache. { TestDelegate d; - d.set_username(kUser); - d.set_password(kSecret); + d.set_credentials(AuthCredentials(kUser, kSecret)); URLRequest r(test_server_.GetURL("auth-basic"), &d); r.set_context(default_context_); @@ -2003,8 +1994,7 @@ TEST_F(URLRequestTestHTTP, BasicAuthWithCookies) { context->Init(); TestDelegate d; - d.set_username(kUser); - d.set_password(kSecret); + d.set_credentials(AuthCredentials(kUser, kSecret)); URLRequest r(url_requiring_auth, &d); r.set_context(context); @@ -3270,8 +3260,7 @@ TEST_F(URLRequestTestFTP, FLAKY_FTPCheckWrongPasswordRestart) { TestDelegate d; // Set correct login credentials. The delegate will be asked for them when // the initial login with wrong credentials will fail. - d.set_username(kChrome); - d.set_password(kChrome); + d.set_credentials(AuthCredentials(kChrome, kChrome)); { TestURLRequest r( test_server_.GetURLWithUserAndPassword("/LICENSE", @@ -3334,8 +3323,7 @@ TEST_F(URLRequestTestFTP, FLAKY_FTPCheckWrongUserRestart) { TestDelegate d; // Set correct login credentials. The delegate will be asked for them when // the initial login with wrong credentials will fail. - d.set_username(kChrome); - d.set_password(kChrome); + d.set_credentials(AuthCredentials(kChrome, kChrome)); { TestURLRequest r( test_server_.GetURLWithUserAndPassword("/LICENSE", @@ -3420,8 +3408,7 @@ TEST_F(URLRequestTestFTP, FLAKY_FTPCacheLoginBoxCredentials) { scoped_ptr<TestDelegate> d(new TestDelegate); // Set correct login credentials. The delegate will be asked for them when // the initial login with wrong credentials will fail. - d->set_username(kChrome); - d->set_password(kChrome); + d->set_credentials(AuthCredentials(kChrome, kChrome)); { TestURLRequest r( test_server_.GetURLWithUserAndPassword("/LICENSE", |