1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
/* 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 _CERTUTIL_H
#define _CERTUTIL_H
extern SECKEYPrivateKey *
CERTUTIL_GeneratePrivateKey(KeyType keytype,
PK11SlotInfo *slot,
int rsasize,
int publicExponent,
char *noise,
SECKEYPublicKey **pubkeyp,
char *pqgFile,
PK11AttrFlags attrFlags,
CK_FLAGS opFlagsOn,
CK_FLAGS opFlagsOff,
secuPWData *pwdata);
extern char *progName;
enum certutilExtns {
ext_keyUsage = 0,
ext_basicConstraint,
ext_authorityKeyID,
ext_CRLDistPts,
ext_NSCertType,
ext_extKeyUsage,
ext_authInfoAcc,
ext_subjInfoAcc,
ext_certPolicies,
ext_policyMappings,
ext_policyConstr,
ext_inhibitAnyPolicy,
ext_subjectKeyID,
ext_nameConstraints,
ext_subjectAltName,
ext_End
};
typedef struct ExtensionEntryStr {
PRBool activated;
const char *arg;
} ExtensionEntry;
typedef ExtensionEntry certutilExtnList[ext_End];
extern SECStatus
AddExtensions(void *extHandle, const char *emailAddrs, const char *dnsNames,
certutilExtnList extList, const char *extGeneric);
extern SECStatus
GetOidFromString(PLArenaPool *arena, SECItem *to,
const char *from, size_t fromLen);
#endif /* _CERTUTIL_H */
|