| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef CHROME_BROWSER_SSL_CLIENT_CERTIFICATE_SELECTOR_H_ | 5 #ifndef CHROME_BROWSER_SSL_CLIENT_CERTIFICATE_SELECTOR_H_ |
| 6 #define CHROME_BROWSER_SSL_CLIENT_CERTIFICATE_SELECTOR_H_ | 6 #define CHROME_BROWSER_SSL_CLIENT_CERTIFICATE_SELECTOR_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 class SSLClientAuthHandler; | 9 #include "base/callback_forward.h" |
| 10 |
| 10 class TabContentsWrapper; | 11 class TabContentsWrapper; |
| 11 | 12 |
| 12 namespace net { | 13 namespace net { |
| 14 class HttpNetworkSession; |
| 13 class SSLCertRequestInfo; | 15 class SSLCertRequestInfo; |
| 16 class X509Certificate; |
| 14 } | 17 } |
| 15 | 18 |
| 16 namespace browser { | 19 namespace browser { |
| 17 | 20 |
| 18 // Opens a constrained SSL client certificate selection dialog under |parent|, | 21 // Opens a constrained SSL client certificate selection dialog under |parent|, |
| 19 // offering certificates from |cert_request_info|. When the user has made a | 22 // offering certificates from |cert_request_info|. When the user has made a |
| 20 // selection, the dialog will report back to |delegate|. |delegate| is notified | 23 // selection, the dialog will report back to |callback|. |callback| is notified |
| 21 // when the dialog closes in call cases; if the user cancels the dialog, we call | 24 // when the dialog closes in call cases; if the user cancels the dialog, we call |
| 22 // with a NULL certificate. | 25 // with a NULL certificate. |
| 23 void ShowSSLClientCertificateSelector( | 26 void ShowSSLClientCertificateSelector( |
| 24 TabContentsWrapper* wrapper, | 27 TabContentsWrapper* wrapper, |
| 28 const net::HttpNetworkSession* network_session, |
| 25 net::SSLCertRequestInfo* cert_request_info, | 29 net::SSLCertRequestInfo* cert_request_info, |
| 26 SSLClientAuthHandler* delegate); | 30 const base::Callback<void(net::X509Certificate*)>& callback); |
| 27 | 31 |
| 28 // Same as above, but doesn't check the UseMoreWebUI flag. It just calls the | 32 // Same as above, but doesn't check the UseMoreWebUI flag. It just calls the |
| 29 // native implementation. This lets us have both the WebUI implementation and | 33 // native implementation. This lets us have both the WebUI implementation and |
| 30 // the native implementation linked in at the same time and switchable behind | 34 // the native implementation linked in at the same time and switchable behind |
| 31 // a run-time flag. | 35 // a run-time flag. |
| 32 void ShowNativeSSLClientCertificateSelector( | 36 void ShowNativeSSLClientCertificateSelector( |
| 33 TabContentsWrapper* wrapper, | 37 TabContentsWrapper* wrapper, |
| 38 const net::HttpNetworkSession* network_session, |
| 34 net::SSLCertRequestInfo* cert_request_info, | 39 net::SSLCertRequestInfo* cert_request_info, |
| 35 SSLClientAuthHandler* delegate); | 40 const base::Callback<void(net::X509Certificate*)>& callback); |
| 36 | 41 |
| 37 } // namespace browser | 42 } // namespace browser |
| 38 | 43 |
| 39 #endif // CHROME_BROWSER_SSL_CLIENT_CERTIFICATE_SELECTOR_H_ | 44 #endif // CHROME_BROWSER_SSL_CLIENT_CERTIFICATE_SELECTOR_H_ |
| OLD | NEW |