1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_SSL_SSL_CLIENT_CERTIFICATE_SELECTOR_H_
6 #define CHROME_BROWSER_SSL_SSL_CLIENT_CERTIFICATE_SELECTOR_H_
8 #include "base/callback_forward.h"
15 class HttpNetworkSession
;
16 class SSLCertRequestInfo
;
17 class X509Certificate
;
22 typedef base::Callback
<void(net::X509Certificate
*)> SelectCertificateCallback
;
24 // Opens a constrained SSL client certificate selection dialog under |parent|,
25 // offering certificates from |cert_request_info|. When the user has made a
26 // selection, the dialog will report back to |callback|. |callback| is notified
27 // when the dialog closes in call cases; if the user cancels the dialog, we call
28 // with a NULL certificate.
29 void ShowSSLClientCertificateSelector(
30 content::WebContents
* contents
,
31 const net::HttpNetworkSession
* network_session
,
32 net::SSLCertRequestInfo
* cert_request_info
,
33 const SelectCertificateCallback
& callback
);
37 #endif // CHROME_BROWSER_SSL_SSL_CLIENT_CERTIFICATE_SELECTOR_H_