OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 BASE_NSS_UTIL_H_ | 5 #ifndef BASE_NSS_UTIL_H_ |
6 #define BASE_NSS_UTIL_H_ | 6 #define BASE_NSS_UTIL_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 | 9 |
10 // This file specifically doesn't depend on any NSS or NSPR headers because it | 10 // This file specifically doesn't depend on any NSS or NSPR headers because it |
11 // is included by various (non-crypto) parts of chrome to call the | 11 // is included by various (non-crypto) parts of chrome to call the |
12 // initialization functions. | 12 // initialization functions. |
13 namespace base { | 13 namespace base { |
14 | 14 |
15 class Time; | 15 class Time; |
16 | 16 |
17 // Initialize NRPR if it isn't already initialized. This function is | 17 // Initialize NRPR if it isn't already initialized. This function is |
18 // thread-safe, and NSPR will only ever be initialized once. NSPR will be | 18 // thread-safe, and NSPR will only ever be initialized once. NSPR will be |
19 // properly shut down on program exit. | 19 // properly shut down on program exit. |
20 void EnsureNSPRInit(); | 20 void EnsureNSPRInit(); |
21 | 21 |
22 // Initialize NSS if it isn't already initialized. This must be called before | 22 // Initialize NSS if it isn't already initialized. This must be called before |
23 // any other NSS functions. This function is thread-safe, and NSS will only | 23 // any other NSS functions. This function is thread-safe, and NSS will only |
24 // ever be initialized once. NSS will be properly shut down on program exit. | 24 // ever be initialized once. NSS will be properly shut down on program exit. |
25 void EnsureNSSInit(); | 25 void EnsureNSSInit(); |
26 | 26 |
| 27 #if defined(OS_CHROMEOS) |
| 28 // Open the r/w nssdb that's stored inside the user's encrypted home directory. |
| 29 void OpenPersistentNSSDB(); |
| 30 #endif |
| 31 |
27 // Convert a NSS PRTime value into a base::Time object. | 32 // Convert a NSS PRTime value into a base::Time object. |
28 // We use a int64 instead of PRTime here to avoid depending on NSPR headers. | 33 // We use a int64 instead of PRTime here to avoid depending on NSPR headers. |
29 Time PRTimeToBaseTime(int64 prtime); | 34 Time PRTimeToBaseTime(int64 prtime); |
30 | 35 |
31 } // namespace base | 36 } // namespace base |
32 | 37 |
33 #endif // BASE_NSS_UTIL_H_ | 38 #endif // BASE_NSS_UTIL_H_ |
OLD | NEW |