summaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorevan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-12 17:19:58 +0000
committerevan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-12 17:19:58 +0000
commitdb7a78c5e9bd35c11393377d91b3792c456de115 (patch)
treeb8fa7fad6d9c563b4c3b13a80c19cf0d5cc0229b /crypto
parent5458863bbbec73cb21a6c368c34a1bab153ac79c (diff)
downloadchromium_src-db7a78c5e9bd35c11393377d91b3792c456de115.zip
chromium_src-db7a78c5e9bd35c11393377d91b3792c456de115.tar.gz
chromium_src-db7a78c5e9bd35c11393377d91b3792c456de115.tar.bz2
crypto: enable components build for Linux
Expose some more API via CRYPTO_API and refactor gyp file. Review URL: http://codereview.chromium.org/7336009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92188 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'crypto')
-rw-r--r--crypto/crypto.gyp8
-rw-r--r--crypto/nss_util.h16
-rw-r--r--crypto/openpgp_symmetric_encryption.h3
3 files changed, 13 insertions, 14 deletions
diff --git a/crypto/crypto.gyp b/crypto/crypto.gyp
index 53a41ef5..a6df806 100644
--- a/crypto/crypto.gyp
+++ b/crypto/crypto.gyp
@@ -9,6 +9,7 @@
'targets': [
{
'target_name': 'crypto',
+ 'type': '<(component)',
'product_name': 'crcrypto', # Avoid colliding with OpenSSL's libcrypto
'dependencies': [
'../base/base.gyp:base',
@@ -67,16 +68,13 @@
'../third_party/nss/nss.gyp:nss',
],
}],
- [ 'OS == "win"', {
- 'type': '<(component)',
- }, { # else OS != "win"
- 'type': 'static_library',
+ [ 'OS != "win"', {
'sources!': [
'capi_util.h',
'capi_util.cc',
],
}],
- [ 'OS == "win" and component == "shared_library"', {
+ [ 'component == "shared_library"', {
'defines': [
'CRYPTO_DLL',
'CRYPTO_IMPLEMENTATION',
diff --git a/crypto/nss_util.h b/crypto/nss_util.h
index 19298ca..4513abc 100644
--- a/crypto/nss_util.h
+++ b/crypto/nss_util.h
@@ -28,7 +28,7 @@ namespace crypto {
// EarlySetupForNSSInit performs lightweight setup which must occur before the
// process goes multithreaded. This does not initialise NSS. For test, see
// EnsureNSSInit.
-void EarlySetupForNSSInit();
+CRYPTO_API void EarlySetupForNSSInit();
#endif
// Initialize NRPR if it isn't already initialized. This function is
@@ -55,7 +55,7 @@ void CRYPTO_API EnsureNSSInit();
// Calling this method only has effect on Linux.
//
// WARNING: Use this with caution.
-void ForceNSSNoDBInit();
+CRYPTO_API void ForceNSSNoDBInit();
// This methods is used to disable checks in NSS when used in a forked process.
// NSS checks whether it is running a forked process to avoid problems when
@@ -66,7 +66,7 @@ void ForceNSSNoDBInit();
// This method must be called before EnsureNSSInit() to take effect.
//
// WARNING: Use this with caution.
-void DisableNSSForkCheck();
+CRYPTO_API void DisableNSSForkCheck();
// Load NSS library files. This function has no effect on Mac and Windows.
// This loads the necessary NSS library files so that NSS can be initialized
@@ -75,7 +75,7 @@ void DisableNSSForkCheck();
//
// Note that this does not load libnssckbi.so which contains the root
// certificates.
-void LoadNSSLibraries();
+CRYPTO_API void LoadNSSLibraries();
// Check if the current NSS version is greater than or equals to |version|.
// A sample version string is "3.12.3".
@@ -136,14 +136,14 @@ bool EnsureTPMTokenReady();
// Convert a NSS PRTime value into a base::Time object.
// We use a int64 instead of PRTime here to avoid depending on NSPR headers.
-base::Time PRTimeToBaseTime(int64 prtime);
+CRYPTO_API base::Time PRTimeToBaseTime(int64 prtime);
#if defined(USE_NSS)
// Exposed for unittests only. |path| should be an existing directory under
// which the DB files will be placed. |description| is a user-visible name for
// the DB, as a utf8 string, which will be truncated at 32 bytes.
-bool OpenTestNSSDB(const FilePath& path, const char* description);
-void CloseTestNSSDB();
+CRYPTO_API bool OpenTestNSSDB(const FilePath& path, const char* description);
+CRYPTO_API void CloseTestNSSDB();
// NSS has a bug which can cause a deadlock or stall in some cases when writing
// to the certDB and keyDB. It also has a bug which causes concurrent key pair
@@ -157,7 +157,7 @@ base::Lock* GetNSSWriteLock();
// A helper class that acquires the NSS write Lock while the AutoNSSWriteLock
// is in scope.
-class AutoNSSWriteLock {
+class CRYPTO_API AutoNSSWriteLock {
public:
AutoNSSWriteLock();
~AutoNSSWriteLock();
diff --git a/crypto/openpgp_symmetric_encryption.h b/crypto/openpgp_symmetric_encryption.h
index d49d216..e2a4bbd 100644
--- a/crypto/openpgp_symmetric_encryption.h
+++ b/crypto/openpgp_symmetric_encryption.h
@@ -9,6 +9,7 @@
#include <string>
#include "base/string_piece.h"
+#include "crypto/crypto_api.h"
namespace crypto {
@@ -19,7 +20,7 @@ namespace crypto {
//
// Likewise, the output of this can be decrypted on the command line with:
// gpg < input
-class OpenPGPSymmetricEncrytion {
+class CRYPTO_API OpenPGPSymmetricEncrytion {
public:
enum Result {
OK,