OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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_EXTENSIONS_API_PLATFORM_KEYS_PLATFORM_KEYS_API_H_ | 5 #ifndef CHROME_BROWSER_EXTENSIONS_API_PLATFORM_KEYS_PLATFORM_KEYS_API_H_ |
6 #define CHROME_BROWSER_EXTENSIONS_API_PLATFORM_KEYS_PLATFORM_KEYS_API_H_ | 6 #define CHROME_BROWSER_EXTENSIONS_API_PLATFORM_KEYS_PLATFORM_KEYS_API_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
| 9 #include <vector> |
9 | 10 |
10 #include "chrome/browser/extensions/chrome_extension_function.h" | 11 #include "chrome/browser/extensions/chrome_extension_function.h" |
11 | 12 |
| 13 namespace net { |
| 14 class X509Certificate; |
| 15 typedef std::vector<scoped_refptr<X509Certificate>> CertificateList; |
| 16 } |
| 17 |
12 namespace extensions { | 18 namespace extensions { |
13 namespace platform_keys { | 19 namespace platform_keys { |
14 | 20 |
15 extern const char kErrorInvalidToken[]; | 21 extern const char kErrorInvalidToken[]; |
16 | 22 |
17 // Returns whether |token_id| references a known Token. | 23 // Returns whether |token_id| references a known Token. |
18 bool ValidateToken(const std::string& token_id, | 24 bool ValidateToken(const std::string& token_id, |
19 std::string* platform_keys_token_id); | 25 std::string* platform_keys_token_id); |
20 | 26 |
21 // Converts a token id from ::chromeos::platform_keys to the platformKeys API | 27 // Converts a token id from ::chromeos::platform_keys to the platformKeys API |
22 // token id. | 28 // token id. |
23 std::string PlatformKeysTokenIdToApiId( | 29 std::string PlatformKeysTokenIdToApiId( |
24 const std::string& platform_keys_token_id); | 30 const std::string& platform_keys_token_id); |
25 | 31 |
26 } // namespace platform_keys | 32 } // namespace platform_keys |
27 | 33 |
| 34 class PlatformKeysInternalSelectClientCertificatesFunction |
| 35 : public ChromeUIThreadExtensionFunction { |
| 36 private: |
| 37 ~PlatformKeysInternalSelectClientCertificatesFunction() override; |
| 38 ResponseAction Run() override; |
| 39 |
| 40 // Called when the certificates were selected. If an error occurred, |certs| |
| 41 // will be null and instead |error_message| be set. |
| 42 void OnSelectedCertificates(scoped_ptr<net::CertificateList> matches, |
| 43 const std::string& error_message); |
| 44 |
| 45 DECLARE_EXTENSION_FUNCTION("platformKeysInternal.selectClientCertificates", |
| 46 PLATFORMKEYSINTERNAL_SELECTCLIENTCERTIFICATES); |
| 47 }; |
| 48 |
28 class PlatformKeysInternalSignFunction | 49 class PlatformKeysInternalSignFunction |
29 : public ChromeUIThreadExtensionFunction { | 50 : public ChromeUIThreadExtensionFunction { |
30 private: | 51 private: |
31 ~PlatformKeysInternalSignFunction() override; | 52 ~PlatformKeysInternalSignFunction() override; |
32 ResponseAction Run() override; | 53 ResponseAction Run() override; |
33 | 54 |
34 // Called when the signature was generated. If an error occurred, | 55 // Called when the signature was generated. If an error occurred, |
35 // |signature| will be empty and instead |error_message| be set. | 56 // |signature| will be empty and instead |error_message| be set. |
36 void OnSigned(const std::string& signature, const std::string& error_message); | 57 void OnSigned(const std::string& signature, const std::string& error_message); |
37 | 58 |
38 DECLARE_EXTENSION_FUNCTION("platformKeysInternal.sign", | 59 DECLARE_EXTENSION_FUNCTION("platformKeysInternal.sign", |
39 PLATFORMKEYSINTERNAL_SIGN); | 60 PLATFORMKEYSINTERNAL_SIGN); |
40 }; | 61 }; |
41 | 62 |
42 } // namespace extensions | 63 } // namespace extensions |
43 | 64 |
44 #endif // CHROME_BROWSER_EXTENSIONS_API_PLATFORM_KEYS_PLATFORM_KEYS_API_H_ | 65 #endif // CHROME_BROWSER_EXTENSIONS_API_PLATFORM_KEYS_PLATFORM_KEYS_API_H_ |
OLD | NEW |