Back to index

lightning-sunbird  0.9+nobinonly
Classes | Defines | Typedefs | Enumerations
pcertt.h File Reference
#include "prclist.h"
#include "pkcs11t.h"
#include "seccomon.h"
#include "secoidt.h"
#include "plarena.h"
#include "prcvar.h"
#include "nssilock.h"
#include "prio.h"
#include "prmon.h"
#include "secasn1t.h"
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  NSSLOWCERTValidityStr
struct  NSSLOWCERTCertKeyStr
struct  NSSLOWCERTSignedDataStr
struct  NSSLOWCERTSubjectPublicKeyInfoStr
struct  NSSLOWCERTCertTrustStr
struct  NSSLOWCERTTrustStr
struct  NSSLOWCERTCertificateStr
struct  NSSLOWCERTIssuerAndSNStr
struct  certDBEntryCommon
struct  _certDBEntryCert
struct  certDBEntryNickname
struct  _certDBEntrySubject
struct  certDBEntrySMime
struct  _certDBEntryRevocation
struct  certDBEntryVersion
struct  certDBEntryContentVersion
union  certDBEntry

Defines

#define SEC_CERTIFICATE_VERSION_1   0 /* default created */
#define SEC_CERTIFICATE_VERSION_2   1 /* v2 */
#define SEC_CERTIFICATE_VERSION_3   2 /* v3 extensions */
#define SEC_CRL_VERSION_1   0 /* default */
#define SEC_CRL_VERSION_2   1 /* v2 extensions */
#define CERT_DB_FILE_VERSION   8
#define CERT_DB_V7_FILE_VERSION   7
#define CERT_DB_CONTENT_VERSION   2
#define SEC_DB_ENTRY_HEADER_LEN   3
#define SEC_DB_KEY_HEADER_LEN   1
#define DB_NICKNAME_ENTRY_HEADER_LEN   2
#define DB_SUBJECT_ENTRY_HEADER_LEN   6
#define DB_SMIME_ENTRY_HEADER_LEN   6
#define DB_CRL_ENTRY_HEADER_LEN   4
#define SEC_DB_VERSION_KEY   "Version"
#define SEC_DB_VERSION_KEY_LEN   sizeof(SEC_DB_VERSION_KEY)
#define SEC_DB_CONTENT_VERSION_KEY   "ContentVersion"
#define SEC_DB_CONTENT_VERSION_KEY_LEN   sizeof(SEC_DB_CONTENT_VERSION_KEY)
#define DBCERT_V4_HEADER_LEN   7
#define DB_CERT_V5_ENTRY_HEADER_LEN   7
#define DB_CERT_V6_ENTRY_HEADER_LEN   7
#define DB_CERT_ENTRY_HEADER_LEN   10
#define CERTDB_VALID_PEER   (1<<0)
#define CERTDB_TRUSTED   (1<<1)
#define CERTDB_SEND_WARN   (1<<2)
#define CERTDB_VALID_CA   (1<<3)
#define CERTDB_TRUSTED_CA   (1<<4) /* trusted for issuing server certs */
#define CERTDB_NS_TRUSTED_CA   (1<<5)
#define CERTDB_USER   (1<<6)
#define CERTDB_TRUSTED_CLIENT_CA   (1<<7) /* trusted for issuing client certs */
#define CERTDB_INVISIBLE_CA   (1<<8) /* don't show in UI */
#define CERTDB_GOVT_APPROVED_CA   (1<<9) /* can do strong crypto in export ver */
#define CERTDB_NOT_TRUSTED   (1<<10) /* explicitly don't trust this cert */
#define CERTDB_TRUSTED_UNKNOWN   (1<<11) /* accept trust from another source */
#define CERTDB_PRESERVE_TRUST_BITS

Typedefs

typedef struct NSSLOWCERTCertDBHandleStr
typedef struct NSSLOWCERTCertKeyStr
typedef struct NSSLOWCERTTrustStr
typedef struct NSSLOWCERTCertTrustStr
typedef struct NSSLOWCERTCertificateStr
typedef struct NSSLOWCERTCertificateListStr
typedef struct NSSLOWCERTIssuerAndSNStr
typedef struct NSSLOWCERTSignedDataStr
typedef struct NSSLOWCERTSubjectPublicKeyInfoStr
typedef struct NSSLOWCERTValidityStr
typedef struct _certDBEntryCert
typedef struct _certDBEntryRevocation
typedef SECStatus(* NSSLOWCERTCertCallback )(NSSLOWCERTCertificate *cert, void *arg)
typedef char *(* NSSLOWCERTDBNameFunc )(void *arg, int dbVersion)
typedef struct _certDBEntrySubject certDBEntrySubject

Enumerations

enum  certDBEntryType {
  certDBEntryTypeVersion = 0, certDBEntryTypeCert = 1, certDBEntryTypeNickname = 2, certDBEntryTypeSubject = 3,
  certDBEntryTypeRevocation = 4, certDBEntryTypeKeyRevocation = 5, certDBEntryTypeSMimeProfile = 6, certDBEntryTypeContentVersion = 7,
  certDBEntryTypeBlob = 8, certDBEntryTypeVersion = 0, certDBEntryTypeCert = 1, certDBEntryTypeNickname = 2,
  certDBEntryTypeSubject = 3, certDBEntryTypeRevocation = 4, certDBEntryTypeKeyRevocation = 5, certDBEntryTypeSMimeProfile = 6,
  certDBEntryTypeContentVersion = 7, certDBEntryTypeBlob = 8
}

Class Documentation

struct NSSLOWCERTValidityStr

Definition at line 70 of file pcertt.h.

Class Members
PRArenaPool * arena
SECItem notAfter
SECItem notBefore
struct NSSLOWCERTCertKeyStr

Definition at line 79 of file pcertt.h.

Class Members
SECItem derIssuer
SECItem serialNumber
struct NSSLOWCERTSignedDataStr

Definition at line 88 of file pcertt.h.

Class Members
SECItem data
SECItem signature
SECAlgorithmID signatureAlgorithm
struct NSSLOWCERTSubjectPublicKeyInfoStr

Definition at line 97 of file pcertt.h.

Class Members
SECAlgorithmID algorithm
PRArenaPool * arena
SECItem subjectPublicKey
struct NSSLOWCERTCertTrustStr

Definition at line 106 of file pcertt.h.

Class Members
unsigned int emailFlags
unsigned int objectSigningFlags
unsigned int sslFlags
struct NSSLOWCERTTrustStr

Definition at line 115 of file pcertt.h.

Class Members
certDBEntryCert * dbEntry
NSSLOWCERTCertDBHandle * dbhandle
SECItem dbKey
unsigned char dbKeySpace
SECItem * derCert
NSSLOWCERTTrust * next
NSSLOWCERTCertTrust * trust
struct NSSLOWCERTCertificateStr

Definition at line 128 of file pcertt.h.

Collaboration diagram for NSSLOWCERTCertificateStr:
Class Members
SECItem certKey
unsigned char certKeySpace
certDBEntryCert * dbEntry
NSSLOWCERTCertDBHandle * dbhandle
SECItem derCert
SECItem derIssuer
SECItem derSN
SECItem derSubject
SECItem derSubjKeyInfo
char * emailAddr
NSSLOWCERTCertificate * next
char * nickname
char nicknameSpace
int referenceCount
SECItem serialNumber
SECItem subjectKeyID
NSSLOWCERTSubjectPublicKeyInfo * subjectPublicKeyInfo
NSSLOWCERTCertTrust * trust
SECItem validity
struct NSSLOWCERTIssuerAndSNStr

Definition at line 169 of file pcertt.h.

Class Members
SECItem derIssuer
SECItem serialNumber
struct certDBEntryCommon

Definition at line 219 of file pcertt.h.

Class Members
PRArenaPool * arena
unsigned int flags
certDBEntryType type
unsigned int version
struct _certDBEntryCert

Definition at line 250 of file pcertt.h.

Collaboration diagram for _certDBEntryCert:
Class Members
certDBEntryCommon common
SECItem derCert
unsigned char derCertSpace
certDBEntryCert * next
char * nickname
char nicknameSpace
NSSLOWCERTCertTrust trust
struct certDBEntryNickname

Definition at line 273 of file pcertt.h.

Collaboration diagram for certDBEntryNickname:
Class Members
certDBEntryCommon common
char * nickname
SECItem subjectName
struct _certDBEntrySubject

Definition at line 307 of file pcertt.h.

Collaboration diagram for _certDBEntrySubject:
Class Members
SECItem * certKeys
certDBEntryCommon common
SECItem derSubject
char ** emailAddrs
SECItem * keyIDs
unsigned int ncerts
unsigned int nemailAddrs
char * nickname
struct certDBEntrySMime

Definition at line 344 of file pcertt.h.

Collaboration diagram for certDBEntrySMime:
Class Members
certDBEntryCommon common
char * emailAddr
SECItem optionsDate
SECItem smimeOptions
SECItem subjectName
struct _certDBEntryRevocation

Definition at line 373 of file pcertt.h.

Collaboration diagram for _certDBEntryRevocation:
Class Members
certDBEntryCommon common
SECItem derCrl
char * url
struct certDBEntryVersion

Definition at line 388 of file pcertt.h.

Collaboration diagram for certDBEntryVersion:
Class Members
certDBEntryCommon common
struct certDBEntryContentVersion

Definition at line 404 of file pcertt.h.

Collaboration diagram for certDBEntryContentVersion:
Class Members
certDBEntryCommon common
char contentVersion
union certDBEntry

Definition at line 412 of file pcertt.h.

Collaboration diagram for certDBEntry:
Class Members
certDBEntryCert cert
certDBEntryCommon common
certDBEntryContentVersion content
certDBEntryNickname nickname
certDBEntryRevocation revocation
certDBEntrySMime smime
certDBEntrySubject subject
certDBEntryVersion version

Define Documentation

Definition at line 192 of file pcertt.h.

Definition at line 190 of file pcertt.h.

Definition at line 191 of file pcertt.h.

#define CERTDB_GOVT_APPROVED_CA   (1<<9) /* can do strong crypto in export ver */

Definition at line 439 of file pcertt.h.

#define CERTDB_INVISIBLE_CA   (1<<8) /* don't show in UI */

Definition at line 438 of file pcertt.h.

#define CERTDB_NOT_TRUSTED   (1<<10) /* explicitly don't trust this cert */

Definition at line 440 of file pcertt.h.

Definition at line 435 of file pcertt.h.

Value:
(CERTDB_USER | CERTDB_VALID_PEER | \
        CERTDB_NS_TRUSTED_CA | CERTDB_VALID_CA | CERTDB_INVISIBLE_CA | \
                                        CERTDB_GOVT_APPROVED_CA)

Definition at line 444 of file pcertt.h.

#define CERTDB_SEND_WARN   (1<<2)

Definition at line 432 of file pcertt.h.

#define CERTDB_TRUSTED   (1<<1)

Definition at line 431 of file pcertt.h.

#define CERTDB_TRUSTED_CA   (1<<4) /* trusted for issuing server certs */

Definition at line 434 of file pcertt.h.

#define CERTDB_TRUSTED_CLIENT_CA   (1<<7) /* trusted for issuing client certs */

Definition at line 437 of file pcertt.h.

#define CERTDB_TRUSTED_UNKNOWN   (1<<11) /* accept trust from another source */

Definition at line 441 of file pcertt.h.

#define CERTDB_USER   (1<<6)

Definition at line 436 of file pcertt.h.

#define CERTDB_VALID_CA   (1<<3)

Definition at line 433 of file pcertt.h.

#define CERTDB_VALID_PEER   (1<<0)

Definition at line 430 of file pcertt.h.

Definition at line 427 of file pcertt.h.

Definition at line 425 of file pcertt.h.

Definition at line 426 of file pcertt.h.

Definition at line 372 of file pcertt.h.

Definition at line 279 of file pcertt.h.

Definition at line 352 of file pcertt.h.

Definition at line 318 of file pcertt.h.

Definition at line 424 of file pcertt.h.

#define SEC_CERTIFICATE_VERSION_1   0 /* default created */

Definition at line 162 of file pcertt.h.

Definition at line 163 of file pcertt.h.

Definition at line 164 of file pcertt.h.

#define SEC_CRL_VERSION_1   0 /* default */

Definition at line 166 of file pcertt.h.

Definition at line 167 of file pcertt.h.

#define SEC_DB_CONTENT_VERSION_KEY   "ContentVersion"

Definition at line 409 of file pcertt.h.

Definition at line 410 of file pcertt.h.

Definition at line 194 of file pcertt.h.

Definition at line 195 of file pcertt.h.

#define SEC_DB_VERSION_KEY   "Version"

Definition at line 392 of file pcertt.h.

Definition at line 393 of file pcertt.h.


Typedef Documentation

typedef struct _certDBEntryCert

Definition at line 103 of file pcertt.h.

typedef struct _certDBEntryRevocation

Definition at line 104 of file pcertt.h.

typedef SECStatus(* NSSLOWCERTCertCallback)(NSSLOWCERTCertificate *cert, void *arg)

Definition at line 174 of file pcertt.h.

typedef struct NSSLOWCERTCertDBHandleStr

Definition at line 55 of file pcertt.h.

Definition at line 61 of file pcertt.h.

typedef struct NSSLOWCERTCertificateStr

Definition at line 60 of file pcertt.h.

typedef struct NSSLOWCERTCertKeyStr

Definition at line 56 of file pcertt.h.

typedef struct NSSLOWCERTCertTrustStr

Definition at line 59 of file pcertt.h.

typedef char*(* NSSLOWCERTDBNameFunc)(void *arg, int dbVersion)

Definition at line 178 of file pcertt.h.

typedef struct NSSLOWCERTIssuerAndSNStr

Definition at line 62 of file pcertt.h.

typedef struct NSSLOWCERTSignedDataStr

Definition at line 63 of file pcertt.h.

Definition at line 64 of file pcertt.h.

typedef struct NSSLOWCERTTrustStr

Definition at line 58 of file pcertt.h.

typedef struct NSSLOWCERTValidityStr

Definition at line 65 of file pcertt.h.


Enumeration Type Documentation

Enumerator:
certDBEntryTypeVersion 
certDBEntryTypeCert 
certDBEntryTypeNickname 
certDBEntryTypeSubject 
certDBEntryTypeRevocation 
certDBEntryTypeKeyRevocation 
certDBEntryTypeSMimeProfile 
certDBEntryTypeContentVersion 
certDBEntryTypeBlob 
certDBEntryTypeVersion 
certDBEntryTypeCert 
certDBEntryTypeNickname 
certDBEntryTypeSubject 
certDBEntryTypeRevocation 
certDBEntryTypeKeyRevocation 
certDBEntryTypeSMimeProfile 
certDBEntryTypeContentVersion 
certDBEntryTypeBlob 

Definition at line 207 of file pcertt.h.