summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchrisk%netscape.com <devnull@localhost>2000-05-22 15:28:22 +0000
committerchrisk%netscape.com <devnull@localhost>2000-05-22 15:28:22 +0000
commitc87b7f9cf23d36dcd77d22475e54a20ecb7f8590 (patch)
tree92185d87e0ffba5aaf7289f2a47652bc89141128
parent6999240342cbbd146dc984f8db721557b28255c0 (diff)
downloadnss-hg-c87b7f9cf23d36dcd77d22475e54a20ecb7f8590.tar.gz
Added RFC2630 OID values:
SEC_OID_CMS_EPHEMERAL_STATIC_DIFFIE_HELLMAN = id-alg-ESDH SEC_OID_CMS_3DES_KEY_WRAP = id-alg-CMS3DESwrap SEC_OID_CMS_RC2_KEY_WRAP = id-alg-CMSRC2wrap
-rw-r--r--security/nss/lib/util/secoid.c24
-rw-r--r--security/nss/lib/util/secoidt.h5
2 files changed, 29 insertions, 0 deletions
diff --git a/security/nss/lib/util/secoid.c b/security/nss/lib/util/secoid.c
index 320f19fd9..737a24ffd 100644
--- a/security/nss/lib/util/secoid.c
+++ b/security/nss/lib/util/secoid.c
@@ -126,6 +126,8 @@
#define PKCS12_V2_PBE_IDS PKCS12, 0x01
#define PKCS9_CERT_TYPES PKCS9, 0x16
#define PKCS9_CRL_TYPES PKCS9, 0x17
+#define PKCS9_SMIME_IDS PKCS9, 0x10
+#define PKCS9_SMIME_ALGS PKCS9_SMIME_IDS, 3
#define PKCS12_VERSION1 PKCS12, 0x0a
#define PKCS12_V1_BAG_IDS PKCS12_VERSION1, 1
@@ -384,6 +386,11 @@ static unsigned char netscapeNickname[] = { NETSCAPE_NAME_COMPONENTS, 0x01};
static unsigned char netscapeRecoveryRequest[] =
{ NETSCAPE_CERT_SERVER_CRMF, 0x01 };
+/* RFC2630 (CMS) OIDs */
+static unsigned char cmsESDH[] = { PKCS9_SMIME_ALGS, 5 };
+static unsigned char cms3DESwrap[] = { PKCS9_SMIME_ALGS, 6 };
+static unsigned char cmsRC2wrap[] = { PKCS9_SMIME_ALGS, 7 };
+
/*
* NOTE: the order of these entries must mach the SECOidTag enum in secoidt.h!
*/
@@ -1181,6 +1188,23 @@ static SECOidData oids[] = {
SEC_OID_NS_CERT_EXT_SCOPE_OF_USE,
"Certificate Scope-of-Use Extension", CKM_INVALID_MECHANISM,
SUPPORTED_CERT_EXTENSION },
+
+ /* CMS stuff */
+ { { siDEROID, cmsESDH,
+ sizeof(cmsESDH) },
+ SEC_OID_CMS_EPHEMERAL_STATIC_DIFFIE_HELLMAN,
+ "Ephemeral-Static Diffie-Hellman", CKM_INVALID_MECHANISM /* XXX */,
+ INVALID_CERT_EXTENSION },
+ { { siDEROID, cms3DESwrap,
+ sizeof(cms3DESwrap) },
+ SEC_OID_CMS_3DES_KEY_WRAP,
+ "CMS 3DES Key Wrap", CKM_INVALID_MECHANISM /* XXX */,
+ INVALID_CERT_EXTENSION },
+ { { siDEROID, cmsRC2wrap,
+ sizeof(cmsRC2wrap) },
+ SEC_OID_CMS_RC2_KEY_WRAP,
+ "CMS RC2 Key Wrap", CKM_INVALID_MECHANISM /* XXX */,
+ INVALID_CERT_EXTENSION },
};
/*
diff --git a/security/nss/lib/util/secoidt.h b/security/nss/lib/util/secoidt.h
index 51368180f..f3a1b7c59 100644
--- a/security/nss/lib/util/secoidt.h
+++ b/security/nss/lib/util/secoidt.h
@@ -275,6 +275,11 @@ typedef enum {
/* New PSM certificate management OIDs */
SEC_OID_CERT_RENEWAL_LOCATOR,
SEC_OID_NS_CERT_EXT_SCOPE_OF_USE,
+
+ /* CMS (RFC2630) OIDs */
+ SEC_OID_CMS_EPHEMERAL_STATIC_DIFFIE_HELLMAN,
+ SEC_OID_CMS_3DES_KEY_WRAP,
+ SEC_OID_CMS_RC2_KEY_WRAP,
SEC_OID_TOTAL
} SECOidTag;