summaryrefslogtreecommitdiffstats
path: root/base/crypto
diff options
context:
space:
mode:
authorrafaelw@chromium.org <rafaelw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-08 01:18:02 +0000
committerrafaelw@chromium.org <rafaelw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-08 01:18:02 +0000
commit13555c122fbc9ec2a6c1a4cbace288ec7892be6e (patch)
treeb78bb0337bf633e7ecff2adc004c4a93542bdba9 /base/crypto
parent2c8311e9badbe99ba50d6429a2c13bb8be89ff80 (diff)
downloadchromium_src-13555c122fbc9ec2a6c1a4cbace288ec7892be6e.zip
chromium_src-13555c122fbc9ec2a6c1a4cbace288ec7892be6e.tar.gz
chromium_src-13555c122fbc9ec2a6c1a4cbace288ec7892be6e.tar.bz2
Reland: HTML Pack Extension Dialog / Linux & Mac Packaging Support.
original issue: http://codereview.chromium.org/207062 The issue had to do with a symbol collison with the nss libraries (which are currently out-of-date) on the build bots. HTML Pack Extension Dialog. This removes the views implementation of the ExtensionPackDialog, and implements the dialog in html in the extensions_ui DOMUI. Additionally, support is added for packaging extensions via ---pack-extension on linux and mac BUG=20668, 20669 TBR=aa,wtc Review URL: http://codereview.chromium.org/265032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28365 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/crypto')
-rw-r--r--base/crypto/rsa_private_key.h11
-rw-r--r--base/crypto/rsa_private_key_nss.cc4
-rw-r--r--base/crypto/signature_creator.h5
-rw-r--r--base/crypto/signature_creator_nss.cc4
4 files changed, 17 insertions, 7 deletions
diff --git a/base/crypto/rsa_private_key.h b/base/crypto/rsa_private_key.h
index 3f07188..5ce3839 100644
--- a/base/crypto/rsa_private_key.h
+++ b/base/crypto/rsa_private_key.h
@@ -8,8 +8,9 @@
#include "build/build_config.h"
#if defined(USE_NSS)
-#include <cryptoht.h>
-#include <keythi.h>
+// Forward declaration.
+struct SECKEYPrivateKeyStr;
+struct SECKEYPublicKeyStr;
#elif defined(OS_MACOSX)
#include <Security/cssm.h>
#elif defined(OS_WIN)
@@ -166,7 +167,7 @@ class RSAPrivateKey {
~RSAPrivateKey();
#if defined(USE_NSS)
- SECKEYPrivateKey* key() { return key_; }
+ SECKEYPrivateKeyStr* key() { return key_; }
#elif defined(OS_WIN)
HCRYPTPROV provider() { return provider_; }
HCRYPTKEY key() { return key_; }
@@ -187,8 +188,8 @@ private:
RSAPrivateKey();
#if defined(USE_NSS)
- SECKEYPrivateKey* key_;
- SECKEYPublicKey* public_key_;
+ SECKEYPrivateKeyStr* key_;
+ SECKEYPublicKeyStr* public_key_;
#elif defined(OS_WIN)
bool InitProvider();
diff --git a/base/crypto/rsa_private_key_nss.cc b/base/crypto/rsa_private_key_nss.cc
index 7e10b36..e48a195 100644
--- a/base/crypto/rsa_private_key_nss.cc
+++ b/base/crypto/rsa_private_key_nss.cc
@@ -4,9 +4,13 @@
#include "base/crypto/rsa_private_key.h"
+// Work around https://bugzilla.mozilla.org/show_bug.cgi?id=455424
+// until NSS 3.12.2 comes out and we update to it.
+#define Lock FOO_NSS_Lock
#include <cryptohi.h>
#include <keyhi.h>
#include <pk11pub.h>
+#undef Lock
#include <iostream>
#include <list>
diff --git a/base/crypto/signature_creator.h b/base/crypto/signature_creator.h
index 97a6e79..a2d5cf6 100644
--- a/base/crypto/signature_creator.h
+++ b/base/crypto/signature_creator.h
@@ -8,7 +8,8 @@
#include "build/build_config.h"
#if defined(USE_NSS)
-#include <cryptoht.h>
+// Forward declaration.
+struct SGNContextStr;
#elif defined(OS_MACOSX)
#include <Security/cssm.h>
#elif defined(OS_WIN)
@@ -46,7 +47,7 @@ class SignatureCreator {
RSAPrivateKey* key_;
#if defined(USE_NSS)
- SGNContext* sign_context_;
+ SGNContextStr* sign_context_;
#elif defined(OS_MACOSX)
CSSM_CSP_HANDLE csp_handle_;
CSSM_CC_HANDLE sig_handle_;
diff --git a/base/crypto/signature_creator_nss.cc b/base/crypto/signature_creator_nss.cc
index e0de4b7..3ca4ff7 100644
--- a/base/crypto/signature_creator_nss.cc
+++ b/base/crypto/signature_creator_nss.cc
@@ -4,9 +4,13 @@
#include "base/crypto/signature_creator.h"
+// Work around https://bugzilla.mozilla.org/show_bug.cgi?id=455424
+// until NSS 3.12.2 comes out and we update to it.
+#define Lock FOO_NSS_Lock
#include <cryptohi.h>
#include <keyhi.h>
#include <stdlib.h>
+#undef Lock
#include "base/logging.h"
#include "base/nss_init.h"