Chromium Code Reviews| Index: chrome/browser/chromeos/platform_keys/platform_keys.h |
| diff --git a/chrome/browser/chromeos/platform_keys/platform_keys.h b/chrome/browser/chromeos/platform_keys/platform_keys.h |
| index b16504e9b5f443de5e8eb97b63d7369b23189afb..0e836f2df652fc705c32de4ae13ecf26e642ea3f 100644 |
| --- a/chrome/browser/chromeos/platform_keys/platform_keys.h |
| +++ b/chrome/browser/chromeos/platform_keys/platform_keys.h |
| @@ -12,6 +12,7 @@ |
| #include "base/macros.h" |
| #include "base/memory/ref_counted.h" |
| #include "base/memory/scoped_ptr.h" |
| +#include "net/ssl/ssl_client_cert_type.h" |
| namespace content { |
| class BrowserContext; |
| @@ -43,6 +44,19 @@ enum HashAlgorithm { |
| HASH_ALGORITHM_SHA512 |
| }; |
| +struct ClientCertificateRequest { |
| + ClientCertificateRequest(); |
| + ~ClientCertificateRequest(); |
| + |
| + // The list of the types of certificates requested, sorted in order of the |
| + // server's preference. |
| + std::vector<net::SSLClientCertType> certificate_key_types; |
| + |
| + // List of distinguished names of certificate authorities allowed by the |
| + // server. Each entry must be a DER-encoded X.509 DistinguishedName. |
| + std::vector<std::string> certificate_authorities; |
| +}; |
| + |
| namespace subtle { |
| // Functions of this namespace shouldn't be called directly from the context of |
| // an extension. Instead use PlatformKeysService which enforces restrictions |
| @@ -77,6 +91,20 @@ void Sign(const std::string& token_id, |
| const SignCallback& callback, |
| content::BrowserContext* browser_context); |
| +// If the certificate request could be processed successfully, |matches| will |
| +// contain the list of matching certificates (maybe empty) and |error_message| |
|
Ryan Sleevi
2015/02/02 22:42:15
comment nit: s/maybe empty/which may be empty/
pneubeck (no reviews)
2015/02/03 10:13:58
Done.
|
| +// will be empty. If an error occurred, |matches| will be null and |
| +// |error_message| contain an error message. |
| +typedef base::Callback<void(scoped_ptr<net::CertificateList> matches, |
| + const std::string& error_message)> |
| + SelectCertificatesCallback; |
| + |
| +// Returns the list of all certificates that match |request|. |callback| will be |
| +// invoked with these matches or an error message. |
| +void SelectClientCertificates(const ClientCertificateRequest& request, |
| + const SelectCertificatesCallback& callback, |
| + content::BrowserContext* browser_context); |
| + |
| } // namespace subtle |
| // If the list of certificates could be successfully retrieved, |certs| will |