comparison nss/lib/pki/pki.h @ 0:1e5118fa0cb1

This is NSS with a Cmake Buildsyste To compile a static NSS library for Windows we've used the Chromium-NSS fork and added a Cmake buildsystem to compile it statically for Windows. See README.chromium for chromium changes and README.trustbridge for our modifications.
author Andre Heinecke <andre.heinecke@intevation.de>
date Mon, 28 Jul 2014 10:47:06 +0200
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:1e5118fa0cb1
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
4
5 #ifndef PKI_H
6 #define PKI_H
7
8 #ifndef NSSDEVT_H
9 #include "nssdevt.h"
10 #endif /* NSSDEVT_H */
11
12 #ifndef NSSPKI_H
13 #include "nsspki.h"
14 #endif /* NSSPKI_H */
15
16 #ifndef PKIT_H
17 #include "pkit.h"
18 #endif /* PKIT_H */
19
20 PR_BEGIN_EXTERN_C
21
22 NSS_EXTERN NSSCallback *
23 nssTrustDomain_GetDefaultCallback
24 (
25 NSSTrustDomain *td,
26 PRStatus *statusOpt
27 );
28
29 NSS_EXTERN NSSCertificate **
30 nssTrustDomain_FindCertificatesBySubject
31 (
32 NSSTrustDomain *td,
33 NSSDER *subject,
34 NSSCertificate *rvOpt[],
35 PRUint32 maximumOpt,
36 NSSArena *arenaOpt
37 );
38
39 NSS_EXTERN NSSTrust *
40 nssTrustDomain_FindTrustForCertificate
41 (
42 NSSTrustDomain *td,
43 NSSCertificate *c
44 );
45
46 NSS_EXTERN NSSCertificate *
47 nssCertificate_AddRef
48 (
49 NSSCertificate *c
50 );
51
52 NSS_EXTERN PRStatus
53 nssCertificate_Destroy
54 (
55 NSSCertificate *c
56 );
57
58 NSS_EXTERN NSSDER *
59 nssCertificate_GetEncoding
60 (
61 NSSCertificate *c
62 );
63
64 NSS_EXTERN NSSDER *
65 nssCertificate_GetIssuer
66 (
67 NSSCertificate *c
68 );
69
70 NSS_EXTERN NSSDER *
71 nssCertificate_GetSerialNumber
72 (
73 NSSCertificate *c
74 );
75
76 NSS_EXTERN NSSDER *
77 nssCertificate_GetSubject
78 (
79 NSSCertificate *c
80 );
81
82 /* Returns a copy, Caller must free using nss_ZFreeIf */
83 NSS_EXTERN NSSUTF8 *
84 nssCertificate_GetNickname
85 (
86 NSSCertificate *c,
87 NSSToken *tokenOpt
88 );
89
90 NSS_EXTERN NSSASCII7 *
91 nssCertificate_GetEmailAddress
92 (
93 NSSCertificate *c
94 );
95
96 NSS_EXTERN PRBool
97 nssCertificate_IssuerAndSerialEqual
98 (
99 NSSCertificate *c1,
100 NSSCertificate *c2
101 );
102
103 NSS_EXTERN NSSPrivateKey *
104 nssPrivateKey_AddRef
105 (
106 NSSPrivateKey *vk
107 );
108
109 NSS_EXTERN PRStatus
110 nssPrivateKey_Destroy
111 (
112 NSSPrivateKey *vk
113 );
114
115 NSS_EXTERN NSSItem *
116 nssPrivateKey_GetID
117 (
118 NSSPrivateKey *vk
119 );
120
121 NSS_EXTERN NSSUTF8 *
122 nssPrivateKey_GetNickname
123 (
124 NSSPrivateKey *vk,
125 NSSToken *tokenOpt
126 );
127
128 NSS_EXTERN PRStatus
129 nssPublicKey_Destroy
130 (
131 NSSPublicKey *bk
132 );
133
134 NSS_EXTERN NSSItem *
135 nssPublicKey_GetID
136 (
137 NSSPublicKey *vk
138 );
139
140 NSS_EXTERN NSSCertificate **
141 nssCryptoContext_FindCertificatesBySubject
142 (
143 NSSCryptoContext *cc,
144 NSSDER *subject,
145 NSSCertificate *rvOpt[],
146 PRUint32 maximumOpt, /* 0 for no max */
147 NSSArena *arenaOpt
148 );
149
150 /* putting here for now, needs more thought */
151 NSS_EXTERN PRStatus
152 nssCryptoContext_ImportTrust
153 (
154 NSSCryptoContext *cc,
155 NSSTrust *trust
156 );
157
158 NSS_EXTERN NSSTrust *
159 nssCryptoContext_FindTrustForCertificate
160 (
161 NSSCryptoContext *cc,
162 NSSCertificate *cert
163 );
164
165 NSS_EXTERN PRStatus
166 nssCryptoContext_ImportSMIMEProfile
167 (
168 NSSCryptoContext *cc,
169 nssSMIMEProfile *profile
170 );
171
172 NSS_EXTERN nssSMIMEProfile *
173 nssCryptoContext_FindSMIMEProfileForCertificate
174 (
175 NSSCryptoContext *cc,
176 NSSCertificate *cert
177 );
178
179 NSS_EXTERN NSSTrust *
180 nssTrust_AddRef
181 (
182 NSSTrust *trust
183 );
184
185 NSS_EXTERN PRStatus
186 nssTrust_Destroy
187 (
188 NSSTrust *trust
189 );
190
191 NSS_EXTERN nssSMIMEProfile *
192 nssSMIMEProfile_AddRef
193 (
194 nssSMIMEProfile *profile
195 );
196
197 NSS_EXTERN PRStatus
198 nssSMIMEProfile_Destroy
199 (
200 nssSMIMEProfile *profile
201 );
202
203 NSS_EXTERN nssSMIMEProfile *
204 nssSMIMEProfile_Create
205 (
206 NSSCertificate *cert,
207 NSSItem *profileTime,
208 NSSItem *profileData
209 );
210
211 PR_END_EXTERN_C
212
213 #endif /* PKI_H */
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)