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

Unified Diff: content/browser/renderer_host/x509_user_cert_resource_handler.cc

Issue 6487012: Clear the SSL Client Auth cache when a new SSL Client Certificate is... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 10 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
Index: content/browser/renderer_host/x509_user_cert_resource_handler.cc
===================================================================
--- content/browser/renderer_host/x509_user_cert_resource_handler.cc (revision 75583)
+++ content/browser/renderer_host/x509_user_cert_resource_handler.cc (working copy)
@@ -15,8 +15,11 @@
#include "net/base/mime_sniffer.h"
#include "net/base/mime_util.h"
#include "net/base/x509_certificate.h"
+#include "net/http/http_network_session.h"
#include "net/http/http_response_headers.h"
+#include "net/http/http_transaction_factory.h"
#include "net/url_request/url_request.h"
+#include "net/url_request/url_request_context.h"
#include "net/url_request/url_request_status.h"
X509UserCertResourceHandler::X509UserCertResourceHandler(
@@ -107,6 +110,13 @@
// The handler will run the UI and delete itself when it's finished.
new SSLAddCertHandler(request_, cert, render_process_host_id_,
render_view_id_);
+ // Force all new SSL connects to renegotiate, and hence use this new
+ // certificate if necessary.
+ if (request_->context()->http_transaction_factory()) {
+ net::HttpNetworkSession* session =
+ request_->context()->http_transaction_factory()->GetSession();
+ session->ResetSSLState();
wtc 2011/02/23 00:38:38 I think it's better to call session->ResetSSLState
+ }
return true;
}

Powered by Google App Engine
This is Rietveld 408576698