mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
Add CefHandler::HandleAuthenticationRequest for handling authentication requests (issue #150).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@158 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
@@ -54,6 +54,7 @@
|
||||
#include "base/timer.h"
|
||||
#include "base/thread.h"
|
||||
#include "base/waitable_event.h"
|
||||
#include "net/base/auth.h"
|
||||
#include "net/base/cookie_store.h"
|
||||
#include "net/base/file_stream.h"
|
||||
#include "net/base/io_buffer.h"
|
||||
@@ -552,6 +553,26 @@ class RequestProxy : public net::URLRequest::Delegate,
|
||||
}
|
||||
}
|
||||
|
||||
virtual void OnAuthRequired(net::URLRequest* request,
|
||||
net::AuthChallengeInfo* auth_info) {
|
||||
if (browser_.get()) {
|
||||
CefRefPtr<CefHandler> handler = browser_->GetHandler();
|
||||
if(handler.get()) {
|
||||
CefString username, password;
|
||||
CefHandler::RetVal rv = handler->HandleAuthenticationRequest(
|
||||
browser_, auth_info->is_proxy,
|
||||
auth_info->host_and_port, auth_info->realm,
|
||||
auth_info->scheme, username, password);
|
||||
if (rv == RV_HANDLED) {
|
||||
request->SetAuth(username, password);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
request->CancelAuth();
|
||||
}
|
||||
|
||||
virtual void OnSSLCertificateError(net::URLRequest* request,
|
||||
int cert_error,
|
||||
net::X509Certificate* cert) {
|
||||
|
Reference in New Issue
Block a user