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 NSSPKI_H
6 #include "nsspki.h"
7 #endif /* NSSPKI_H */
8 
9 #ifndef BASE_H
10 #include "base.h"
11 #endif /* BASE_H */
12 
13 extern const NSSError NSS_ERROR_NOT_FOUND;
14 
15 NSS_IMPLEMENT PRStatus
NSSPrivateKey_Destroy(NSSPrivateKey * vk)16 NSSPrivateKey_Destroy(
17     NSSPrivateKey *vk)
18 {
19     nss_SetError(NSS_ERROR_NOT_FOUND);
20     return PR_FAILURE;
21 }
22 
23 NSS_IMPLEMENT PRStatus
NSSPrivateKey_DeleteStoredObject(NSSPrivateKey * vk,NSSCallback * uhh)24 NSSPrivateKey_DeleteStoredObject(
25     NSSPrivateKey *vk,
26     NSSCallback *uhh)
27 {
28     nss_SetError(NSS_ERROR_NOT_FOUND);
29     return PR_FAILURE;
30 }
31 
32 NSS_IMPLEMENT PRUint32
NSSPrivateKey_GetSignatureLength(NSSPrivateKey * vk)33 NSSPrivateKey_GetSignatureLength(
34     NSSPrivateKey *vk)
35 {
36     nss_SetError(NSS_ERROR_NOT_FOUND);
37     return -1;
38 }
39 
40 NSS_IMPLEMENT PRUint32
NSSPrivateKey_GetPrivateModulusLength(NSSPrivateKey * vk)41 NSSPrivateKey_GetPrivateModulusLength(
42     NSSPrivateKey *vk)
43 {
44     nss_SetError(NSS_ERROR_NOT_FOUND);
45     return -1;
46 }
47 
48 NSS_IMPLEMENT PRBool
NSSPrivateKey_IsStillPresent(NSSPrivateKey * vk,PRStatus * statusOpt)49 NSSPrivateKey_IsStillPresent(
50     NSSPrivateKey *vk,
51     PRStatus *statusOpt)
52 {
53     nss_SetError(NSS_ERROR_NOT_FOUND);
54     return PR_FALSE;
55 }
56 
57 NSS_IMPLEMENT NSSItem *
NSSPrivateKey_Encode(NSSPrivateKey * vk,NSSAlgorithmAndParameters * ap,NSSItem * passwordOpt,NSSCallback * uhhOpt,NSSItem * rvOpt,NSSArena * arenaOpt)58 NSSPrivateKey_Encode(
59     NSSPrivateKey *vk,
60     NSSAlgorithmAndParameters *ap,
61     NSSItem *passwordOpt, /* NULL will cause a callback; "" for no password */
62     NSSCallback *uhhOpt,
63     NSSItem *rvOpt,
64     NSSArena *arenaOpt)
65 {
66     nss_SetError(NSS_ERROR_NOT_FOUND);
67     return NULL;
68 }
69 
70 NSS_IMPLEMENT NSSTrustDomain *
NSSPrivateKey_GetTrustDomain(NSSPrivateKey * vk,PRStatus * statusOpt)71 NSSPrivateKey_GetTrustDomain(
72     NSSPrivateKey *vk,
73     PRStatus *statusOpt)
74 {
75     nss_SetError(NSS_ERROR_NOT_FOUND);
76     return NULL;
77 }
78 
79 NSS_IMPLEMENT NSSToken *
NSSPrivateKey_GetToken(NSSPrivateKey * vk)80 NSSPrivateKey_GetToken(NSSPrivateKey *vk)
81 {
82     nss_SetError(NSS_ERROR_NOT_FOUND);
83     return NULL;
84 }
85 
86 NSS_IMPLEMENT NSSSlot *
NSSPrivateKey_GetSlot(NSSPrivateKey * vk)87 NSSPrivateKey_GetSlot(NSSPrivateKey *vk)
88 {
89     nss_SetError(NSS_ERROR_NOT_FOUND);
90     return NULL;
91 }
92 
93 NSS_IMPLEMENT NSSModule *
NSSPrivateKey_GetModule(NSSPrivateKey * vk)94 NSSPrivateKey_GetModule(
95     NSSPrivateKey *vk)
96 {
97     nss_SetError(NSS_ERROR_NOT_FOUND);
98     return NULL;
99 }
100 
101 NSS_IMPLEMENT NSSItem *
NSSPrivateKey_Decrypt(NSSPrivateKey * vk,NSSAlgorithmAndParameters * apOpt,NSSItem * encryptedData,NSSCallback * uhh,NSSItem * rvOpt,NSSArena * arenaOpt)102 NSSPrivateKey_Decrypt(
103     NSSPrivateKey *vk,
104     NSSAlgorithmAndParameters *apOpt,
105     NSSItem *encryptedData,
106     NSSCallback *uhh,
107     NSSItem *rvOpt,
108     NSSArena *arenaOpt)
109 {
110     nss_SetError(NSS_ERROR_NOT_FOUND);
111     return NULL;
112 }
113 
114 NSS_IMPLEMENT NSSItem *
NSSPrivateKey_Sign(NSSPrivateKey * vk,NSSAlgorithmAndParameters * apOpt,NSSItem * data,NSSCallback * uhh,NSSItem * rvOpt,NSSArena * arenaOpt)115 NSSPrivateKey_Sign(
116     NSSPrivateKey *vk,
117     NSSAlgorithmAndParameters *apOpt,
118     NSSItem *data,
119     NSSCallback *uhh,
120     NSSItem *rvOpt,
121     NSSArena *arenaOpt)
122 {
123     nss_SetError(NSS_ERROR_NOT_FOUND);
124     return NULL;
125 }
126 
127 NSS_IMPLEMENT NSSItem *
NSSPrivateKey_SignRecover(NSSPrivateKey * vk,NSSAlgorithmAndParameters * apOpt,NSSItem * data,NSSCallback * uhh,NSSItem * rvOpt,NSSArena * arenaOpt)128 NSSPrivateKey_SignRecover(
129     NSSPrivateKey *vk,
130     NSSAlgorithmAndParameters *apOpt,
131     NSSItem *data,
132     NSSCallback *uhh,
133     NSSItem *rvOpt,
134     NSSArena *arenaOpt)
135 {
136     nss_SetError(NSS_ERROR_NOT_FOUND);
137     return NULL;
138 }
139 
140 NSS_IMPLEMENT NSSSymmetricKey *
NSSPrivateKey_UnwrapSymmetricKey(NSSPrivateKey * vk,NSSAlgorithmAndParameters * apOpt,NSSItem * wrappedKey,NSSCallback * uhh)141 NSSPrivateKey_UnwrapSymmetricKey(
142     NSSPrivateKey *vk,
143     NSSAlgorithmAndParameters *apOpt,
144     NSSItem *wrappedKey,
145     NSSCallback *uhh)
146 {
147     nss_SetError(NSS_ERROR_NOT_FOUND);
148     return NULL;
149 }
150 
151 NSS_IMPLEMENT NSSSymmetricKey *
NSSPrivateKey_DeriveSymmetricKey(NSSPrivateKey * vk,NSSPublicKey * bk,NSSAlgorithmAndParameters * apOpt,NSSOID * target,PRUint32 keySizeOpt,NSSOperations operations,NSSCallback * uhh)152 NSSPrivateKey_DeriveSymmetricKey(
153     NSSPrivateKey *vk,
154     NSSPublicKey *bk,
155     NSSAlgorithmAndParameters *apOpt,
156     NSSOID *target,
157     PRUint32 keySizeOpt, /* zero for best allowed */
158     NSSOperations operations,
159     NSSCallback *uhh)
160 {
161     nss_SetError(NSS_ERROR_NOT_FOUND);
162     return NULL;
163 }
164 
165 NSS_IMPLEMENT NSSPublicKey *
NSSPrivateKey_FindPublicKey(NSSPrivateKey * vk)166 NSSPrivateKey_FindPublicKey(
167     NSSPrivateKey *vk
168     /* { don't need the callback here, right? } */
169     )
170 {
171     nss_SetError(NSS_ERROR_NOT_FOUND);
172     return NULL;
173 }
174 
175 NSS_IMPLEMENT NSSCryptoContext *
NSSPrivateKey_CreateCryptoContext(NSSPrivateKey * vk,NSSAlgorithmAndParameters * apOpt,NSSCallback * uhh)176 NSSPrivateKey_CreateCryptoContext(
177     NSSPrivateKey *vk,
178     NSSAlgorithmAndParameters *apOpt,
179     NSSCallback *uhh)
180 {
181     nss_SetError(NSS_ERROR_NOT_FOUND);
182     return NULL;
183 }
184 
185 NSS_IMPLEMENT NSSCertificate **
NSSPrivateKey_FindCertificates(NSSPrivateKey * vk,NSSCertificate * rvOpt[],PRUint32 maximumOpt,NSSArena * arenaOpt)186 NSSPrivateKey_FindCertificates(
187     NSSPrivateKey *vk,
188     NSSCertificate *rvOpt[],
189     PRUint32 maximumOpt, /* 0 for no max */
190     NSSArena *arenaOpt)
191 {
192     nss_SetError(NSS_ERROR_NOT_FOUND);
193     return NULL;
194 }
195 
196 NSS_IMPLEMENT NSSCertificate *
NSSPrivateKey_FindBestCertificate(NSSPrivateKey * vk,NSSTime * timeOpt,NSSUsage * usageOpt,NSSPolicies * policiesOpt)197 NSSPrivateKey_FindBestCertificate(
198     NSSPrivateKey *vk,
199     NSSTime *timeOpt,
200     NSSUsage *usageOpt,
201     NSSPolicies *policiesOpt)
202 {
203     nss_SetError(NSS_ERROR_NOT_FOUND);
204     return NULL;
205 }
206 
207 NSS_IMPLEMENT PRStatus
NSSPublicKey_Destroy(NSSPublicKey * bk)208 NSSPublicKey_Destroy(NSSPublicKey *bk)
209 {
210     nss_SetError(NSS_ERROR_NOT_FOUND);
211     return PR_FAILURE;
212 }
213 
214 NSS_IMPLEMENT PRStatus
NSSPublicKey_DeleteStoredObject(NSSPublicKey * bk,NSSCallback * uhh)215 NSSPublicKey_DeleteStoredObject(
216     NSSPublicKey *bk,
217     NSSCallback *uhh)
218 {
219     nss_SetError(NSS_ERROR_NOT_FOUND);
220     return PR_FAILURE;
221 }
222 
223 NSS_IMPLEMENT NSSItem *
NSSPublicKey_Encode(NSSPublicKey * bk,NSSAlgorithmAndParameters * ap,NSSCallback * uhhOpt,NSSItem * rvOpt,NSSArena * arenaOpt)224 NSSPublicKey_Encode(
225     NSSPublicKey *bk,
226     NSSAlgorithmAndParameters *ap,
227     NSSCallback *uhhOpt,
228     NSSItem *rvOpt,
229     NSSArena *arenaOpt)
230 {
231     nss_SetError(NSS_ERROR_NOT_FOUND);
232     return NULL;
233 }
234 
235 NSS_IMPLEMENT NSSTrustDomain *
NSSPublicKey_GetTrustDomain(NSSPublicKey * bk,PRStatus * statusOpt)236 NSSPublicKey_GetTrustDomain(
237     NSSPublicKey *bk,
238     PRStatus *statusOpt)
239 {
240     nss_SetError(NSS_ERROR_NOT_FOUND);
241     return NULL;
242 }
243 
244 NSS_IMPLEMENT NSSToken *
NSSPublicKey_GetToken(NSSPublicKey * bk,PRStatus * statusOpt)245 NSSPublicKey_GetToken(
246     NSSPublicKey *bk,
247     PRStatus *statusOpt)
248 {
249     nss_SetError(NSS_ERROR_NOT_FOUND);
250     return NULL;
251 }
252 
253 NSS_IMPLEMENT NSSSlot *
NSSPublicKey_GetSlot(NSSPublicKey * bk,PRStatus * statusOpt)254 NSSPublicKey_GetSlot(
255     NSSPublicKey *bk,
256     PRStatus *statusOpt)
257 {
258     nss_SetError(NSS_ERROR_NOT_FOUND);
259     return NULL;
260 }
261 
262 NSS_IMPLEMENT NSSModule *
NSSPublicKey_GetModule(NSSPublicKey * bk,PRStatus * statusOpt)263 NSSPublicKey_GetModule(
264     NSSPublicKey *bk,
265     PRStatus *statusOpt)
266 {
267     nss_SetError(NSS_ERROR_NOT_FOUND);
268     return NULL;
269 }
270 
271 NSS_IMPLEMENT NSSItem *
NSSPublicKey_Encrypt(NSSPublicKey * bk,NSSAlgorithmAndParameters * apOpt,NSSItem * data,NSSCallback * uhh,NSSItem * rvOpt,NSSArena * arenaOpt)272 NSSPublicKey_Encrypt(
273     NSSPublicKey *bk,
274     NSSAlgorithmAndParameters *apOpt,
275     NSSItem *data,
276     NSSCallback *uhh,
277     NSSItem *rvOpt,
278     NSSArena *arenaOpt)
279 {
280     nss_SetError(NSS_ERROR_NOT_FOUND);
281     return NULL;
282 }
283 
284 NSS_IMPLEMENT PRStatus
NSSPublicKey_Verify(NSSPublicKey * bk,NSSAlgorithmAndParameters * apOpt,NSSItem * data,NSSItem * signature,NSSCallback * uhh)285 NSSPublicKey_Verify(
286     NSSPublicKey *bk,
287     NSSAlgorithmAndParameters *apOpt,
288     NSSItem *data,
289     NSSItem *signature,
290     NSSCallback *uhh)
291 {
292     nss_SetError(NSS_ERROR_NOT_FOUND);
293     return PR_FAILURE;
294 }
295 
296 NSS_IMPLEMENT NSSItem *
NSSPublicKey_VerifyRecover(NSSPublicKey * bk,NSSAlgorithmAndParameters * apOpt,NSSItem * signature,NSSCallback * uhh,NSSItem * rvOpt,NSSArena * arenaOpt)297 NSSPublicKey_VerifyRecover(
298     NSSPublicKey *bk,
299     NSSAlgorithmAndParameters *apOpt,
300     NSSItem *signature,
301     NSSCallback *uhh,
302     NSSItem *rvOpt,
303     NSSArena *arenaOpt)
304 {
305     nss_SetError(NSS_ERROR_NOT_FOUND);
306     return NULL;
307 }
308 
309 NSS_IMPLEMENT NSSItem *
NSSPublicKey_WrapSymmetricKey(NSSPublicKey * bk,NSSAlgorithmAndParameters * apOpt,NSSSymmetricKey * keyToWrap,NSSCallback * uhh,NSSItem * rvOpt,NSSArena * arenaOpt)310 NSSPublicKey_WrapSymmetricKey(
311     NSSPublicKey *bk,
312     NSSAlgorithmAndParameters *apOpt,
313     NSSSymmetricKey *keyToWrap,
314     NSSCallback *uhh,
315     NSSItem *rvOpt,
316     NSSArena *arenaOpt)
317 {
318     nss_SetError(NSS_ERROR_NOT_FOUND);
319     return NULL;
320 }
321 
322 NSS_IMPLEMENT NSSCryptoContext *
NSSPublicKey_CreateCryptoContext(NSSPublicKey * bk,NSSAlgorithmAndParameters * apOpt,NSSCallback * uhh)323 NSSPublicKey_CreateCryptoContext(
324     NSSPublicKey *bk,
325     NSSAlgorithmAndParameters *apOpt,
326     NSSCallback *uhh)
327 {
328     nss_SetError(NSS_ERROR_NOT_FOUND);
329     return NULL;
330 }
331 
332 NSS_IMPLEMENT NSSCertificate **
NSSPublicKey_FindCertificates(NSSPublicKey * bk,NSSCertificate * rvOpt[],PRUint32 maximumOpt,NSSArena * arenaOpt)333 NSSPublicKey_FindCertificates(
334     NSSPublicKey *bk,
335     NSSCertificate *rvOpt[],
336     PRUint32 maximumOpt, /* 0 for no max */
337     NSSArena *arenaOpt)
338 {
339     nss_SetError(NSS_ERROR_NOT_FOUND);
340     return NULL;
341 }
342 
343 NSS_IMPLEMENT NSSCertificate *
NSSPublicKey_FindBestCertificate(NSSPublicKey * bk,NSSTime * timeOpt,NSSUsage * usageOpt,NSSPolicies * policiesOpt)344 NSSPublicKey_FindBestCertificate(
345     NSSPublicKey *bk,
346     NSSTime *timeOpt,
347     NSSUsage *usageOpt,
348     NSSPolicies *policiesOpt)
349 {
350     nss_SetError(NSS_ERROR_NOT_FOUND);
351     return NULL;
352 }
353 
354 NSS_IMPLEMENT NSSPrivateKey *
NSSPublicKey_FindPrivateKey(NSSPublicKey * bk,NSSCallback * uhh)355 NSSPublicKey_FindPrivateKey(
356     NSSPublicKey *bk,
357     NSSCallback *uhh)
358 {
359     nss_SetError(NSS_ERROR_NOT_FOUND);
360     return NULL;
361 }
362