From 21a2261d16303cf05e836cdb08f49ff7ffcf879d Mon Sep 17 00:00:00 2001 From: "relyea%netscape.com" Date: Wed, 21 Nov 2001 18:00:28 +0000 Subject: changes for PSM to compile against NSS shared libraries. Move SSL and S/MIME to the new common MAPFILE usage --- security/nss/lib/crmf/asn1cmn.c | 8 +++++--- security/nss/lib/crmf/cmmfi.h | 1 + security/nss/lib/crmf/crmfcont.c | 4 ++-- security/nss/lib/crmf/crmftmpl.c | 19 ++++++++++++------- security/nss/lib/crmf/respcmn.c | 2 +- 5 files changed, 21 insertions(+), 13 deletions(-) (limited to 'security/nss/lib/crmf') diff --git a/security/nss/lib/crmf/asn1cmn.c b/security/nss/lib/crmf/asn1cmn.c index 0cb0c3c41..de7152e1c 100644 --- a/security/nss/lib/crmf/asn1cmn.c +++ b/security/nss/lib/crmf/asn1cmn.c @@ -37,6 +37,7 @@ SEC_ASN1_MKSUB(SECOID_AlgorithmIDTemplate) SEC_ASN1_MKSUB(SEC_AnyTemplate) SEC_ASN1_MKSUB(SEC_IntegerTemplate) +SEC_ASN1_MKSUB(SEC_SignedCertificateTemplate) static const SEC_ASN1Template CMMFCertResponseTemplate[] = { { SEC_ASN1_SEQUENCE, 0, NULL, sizeof(CMMFCertResponse)}, @@ -80,7 +81,8 @@ const SEC_ASN1Template CMMFPKIStatusInfoTemplate[] = { }; const SEC_ASN1Template CMMFSequenceOfCertsTemplate[] = { - { SEC_ASN1_SEQUENCE_OF, 0, SEC_SignedCertificateTemplate} + { SEC_ASN1_SEQUENCE_OF| SEC_ASN1_XTRN, 0, + SEC_ASN1_SUB(SEC_SignedCertificateTemplate)} }; const SEC_ASN1Template CMMFRandTemplate[] = { @@ -106,9 +108,9 @@ const SEC_ASN1Template CMMFCertOrEncCertEncryptedCertTemplate[] = { }; const SEC_ASN1Template CMMFCertOrEncCertCertificateTemplate[] = { - { SEC_ASN1_CONTEXT_SPECIFIC | 0, + { SEC_ASN1_CONTEXT_SPECIFIC | SEC_ASN1_XTRN | 0, 0, - SEC_SignedCertificateTemplate}, + SEC_ASN1_SUB(SEC_SignedCertificateTemplate)}, { 0 } }; diff --git a/security/nss/lib/crmf/cmmfi.h b/security/nss/lib/crmf/cmmfi.h index 0a476badd..ddd82810c 100644 --- a/security/nss/lib/crmf/cmmfi.h +++ b/security/nss/lib/crmf/cmmfi.h @@ -41,6 +41,7 @@ #define _CMMFI_H_ #include "cmmfit.h" #include "crmfi.h" +#include "nssrenam.h" #define CMMF_MAX_CHALLENGES 10 #define CMMF_MAX_KEY_PAIRS 50 diff --git a/security/nss/lib/crmf/crmfcont.c b/security/nss/lib/crmf/crmfcont.c index c4381e9da..3b4b9a98b 100644 --- a/security/nss/lib/crmf/crmfcont.c +++ b/security/nss/lib/crmf/crmfcont.c @@ -361,7 +361,7 @@ crmf_create_arch_rem_gen_privkey(PRBool archiveRemGenPrivKey) } dummy = SEC_ASN1EncodeItem(NULL, &newArchOptions->option.archiveRemGenPrivKey, - &value, SEC_BooleanTemplate); + &value, SEC_ASN1_GET(SEC_BooleanTemplate)); PORT_Assert (dummy == &newArchOptions->option.archiveRemGenPrivKey); if (dummy != &newArchOptions->option.archiveRemGenPrivKey) { SECITEM_FreeItem (dummy, PR_TRUE); @@ -999,7 +999,7 @@ crmf_get_pkiarchiveoptions_subtemplate(CRMFControl *inControl) switch (inControl->tag) { case SEC_OID_PKIX_REGCTRL_REGTOKEN: case SEC_OID_PKIX_REGCTRL_AUTHENTICATOR: - retTemplate = SEC_UTF8StringTemplate; + retTemplate = SEC_ASN1_GET(SEC_UTF8StringTemplate); break; case SEC_OID_PKIX_REGCTRL_PKI_ARCH_OPTIONS: retTemplate = crmf_get_pkiarchive_subtemplate(inControl); diff --git a/security/nss/lib/crmf/crmftmpl.c b/security/nss/lib/crmf/crmftmpl.c index 7dffb6e80..a65a074a1 100644 --- a/security/nss/lib/crmf/crmftmpl.c +++ b/security/nss/lib/crmf/crmftmpl.c @@ -39,10 +39,13 @@ SEC_ASN1_MKSUB(SECOID_AlgorithmIDTemplate) SEC_ASN1_MKSUB(SEC_AnyTemplate) +SEC_ASN1_MKSUB(SEC_NullTemplate) SEC_ASN1_MKSUB(SEC_BitStringTemplate) SEC_ASN1_MKSUB(SEC_IntegerTemplate) SEC_ASN1_MKSUB(SEC_OctetStringTemplate) SEC_ASN1_MKSUB(SEC_UTCTimeTemplate) +SEC_ASN1_MKSUB(CERT_SubjectPublicKeyInfoTemplate) +SEC_ASN1_MKSUB(CERT_NameTemplate) /* * It's all implicit tagging. @@ -85,7 +88,7 @@ static const SEC_ASN1Template CRMFOptionalValidityTemplate[] = { }; static const SEC_ASN1Template crmfPointerToNameTemplate[] = { - { SEC_ASN1_POINTER, 0, CERT_NameTemplate}, + { SEC_ASN1_POINTER | SEC_ASN1_XTRN, 0, SEC_ASN1_SUB(CERT_NameTemplate)}, { 0 } }; @@ -110,9 +113,10 @@ static const SEC_ASN1Template CRMFCertTemplateTemplate[] = { { SEC_ASN1_OPTIONAL | SEC_ASN1_CONTEXT_SPECIFIC | SEC_ASN1_EXPLICIT | SEC_ASN1_CONSTRUCTED | 5, offsetof (CRMFCertTemplate, subject), crmfPointerToNameTemplate }, - { SEC_ASN1_OPTIONAL | SEC_ASN1_CONTEXT_SPECIFIC | SEC_ASN1_POINTER | 6, + { SEC_ASN1_OPTIONAL | SEC_ASN1_CONTEXT_SPECIFIC | SEC_ASN1_POINTER | + SEC_ASN1_XTRN | 6, offsetof (CRMFCertTemplate, publicKey), - CERT_SubjectPublicKeyInfoTemplate }, + SEC_ASN1_SUB(CERT_SubjectPublicKeyInfoTemplate) }, { SEC_ASN1_NO_STREAM | SEC_ASN1_CONTEXT_SPECIFIC | SEC_ASN1_OPTIONAL | SEC_ASN1_XTRN | 7, offsetof (CRMFCertTemplate, issuerUID), @@ -170,15 +174,16 @@ static const SEC_ASN1Template CRMFPOPOSigningKeyInputTemplate[] = { offsetof(CRMFPOPOSigningKeyInput, authInfo.sender) }, { SEC_ASN1_BIT_STRING | SEC_ASN1_OPTIONAL | 1, offsetof (CRMFPOPOSigningKeyInput, authInfo.publicKeyMAC) }, - { SEC_ASN1_INLINE, offsetof(CRMFPOPOSigningKeyInput, publicKey), - CERT_SubjectPublicKeyInfoTemplate }, + { SEC_ASN1_INLINE | SEC_ASN1_XTRN, + offsetof(CRMFPOPOSigningKeyInput, publicKey), + SEC_ASN1_SUB(CERT_SubjectPublicKeyInfoTemplate) }, { 0 } }; const SEC_ASN1Template CRMFRAVerifiedTemplate[] = { - { SEC_ASN1_CONTEXT_SPECIFIC | 0, + { SEC_ASN1_CONTEXT_SPECIFIC | 0 | SEC_ASN1_XTRN, 0, - SEC_NullTemplate }, + SEC_ASN1_SUB(SEC_NullTemplate) }, { 0 } }; diff --git a/security/nss/lib/crmf/respcmn.c b/security/nss/lib/crmf/respcmn.c index 66d55a9c3..5fa017a05 100644 --- a/security/nss/lib/crmf/respcmn.c +++ b/security/nss/lib/crmf/respcmn.c @@ -147,7 +147,7 @@ static SECItem* cmmf_encode_certificate(CERTCertificate *inCert) { return SEC_ASN1EncodeItem(NULL, NULL, inCert, - SEC_SignedCertificateTemplate); + SEC_ASN1_GET(SEC_SignedCertificateTemplate)); } CERTCertList* -- cgit v1.2.1