gecko/security/nss/lib/crmf/cmmfit.h
Brian Smith 4453811aee Bug 795972: Upgrade NSS to NSS_3_14_BETA1, r=me
--HG--
rename : security/nss/lib/freebl/sechash.h => security/nss/lib/cryptohi/sechash.h
rename : security/nss/lib/softoken/secmodt.h => security/nss/lib/pk11wrap/secmodt.h
rename : security/nss/lib/freebl/hasht.h => security/nss/lib/util/hasht.h
extra : rebase_source : 7da6cd73ca2605a261085ad7fb3b90315e38ad6b
2012-10-01 11:02:15 -07:00

117 lines
3.4 KiB
C

/* -*- Mode: C; tab-width: 8 -*-*/
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef _CMMFIT_H_
#define _CMMFIT_H_
/*
* All fields marked by a PKIStausInfo in comments is an integer
* with the following possible values.
*
* Integer Value Meaning
* ------------- -------
* 0 granted- got exactly what you asked for.
*
* 1 grantedWithMods-got something like what you asked
* for;requester is responsible for ascertainging the
* differences.
*
* 2 rejection-you don't get what you asked for; more
* information elsewhere in the message
*
* 3 waiting-the request body part has not yet been
* processed, expect to hear more later.
*
* 4 revocationWarning-this message contains a warning
* that a revocation is imminent.
*
* 5 revocationNotification-notification that a
* revocation has occurred.
*
* 6 keyUpdateWarning-update already done for the
* oldCertId specified in FullCertTemplate.
*/
struct CMMFPKIStatusInfoStr {
SECItem status;
SECItem statusString;
SECItem failInfo;
};
struct CMMFCertOrEncCertStr {
union {
CERTCertificate *certificate;
CRMFEncryptedValue *encryptedCert;
} cert;
CMMFCertOrEncCertChoice choice;
SECItem derValue;
};
struct CMMFCertifiedKeyPairStr {
CMMFCertOrEncCert certOrEncCert;
CRMFEncryptedValue *privateKey;
SECItem derPublicationInfo; /* We aren't creating
* PKIPublicationInfo's, so
* we'll store away the der
* here if we decode one that
* does have pubInfo.
*/
SECItem unwrappedPrivKey;
};
struct CMMFCertResponseStr {
SECItem certReqId;
CMMFPKIStatusInfo status; /*PKIStatusInfo*/
CMMFCertifiedKeyPair *certifiedKeyPair;
};
struct CMMFCertRepContentStr {
CERTCertificate **caPubs;
CMMFCertResponse **response;
PRArenaPool *poolp;
PRBool isDecoded;
};
struct CMMFChallengeStr {
SECAlgorithmID *owf;
SECItem witness;
SECItem senderDER;
SECItem key;
SECItem challenge;
SECItem randomNumber;
};
struct CMMFRandStr {
SECItem integer;
SECItem senderHash;
CERTGeneralName *sender;
};
struct CMMFPOPODecKeyChallContentStr {
CMMFChallenge **challenges;
PRArenaPool *poolp;
int numChallenges;
int numAllocated;
};
struct CMMFPOPODecKeyRespContentStr {
SECItem **responses;
PRArenaPool *poolp;
};
struct CMMFKeyRecRepContentStr {
CMMFPKIStatusInfo status; /* PKIStatusInfo */
CERTCertificate *newSigCert;
CERTCertificate **caCerts;
CMMFCertifiedKeyPair **keyPairHist;
PRArenaPool *poolp;
int numKeyPairs;
int allocKeyPairs;
PRBool isDecoded;
};
#endif /* _CMMFIT_H_ */