Mercurial > trustbridge > nss-cmake-static
comparison nss/lib/softoken/lowkeyi.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 _LOWKEYI_H_ | |
6 #define _LOWKEYI_H_ | |
7 | |
8 #include "prtypes.h" | |
9 #include "seccomon.h" | |
10 #include "secoidt.h" | |
11 #include "lowkeyti.h" | |
12 | |
13 SEC_BEGIN_PROTOS | |
14 | |
15 /* | |
16 * See bugzilla bug 125359 | |
17 * Since NSS (via PKCS#11) wants to handle big integers as unsigned ints, | |
18 * all of the templates above that en/decode into integers must be converted | |
19 * from ASN.1's signed integer type. This is done by marking either the | |
20 * source or destination (encoding or decoding, respectively) type as | |
21 * siUnsignedInteger. | |
22 */ | |
23 extern void prepare_low_rsa_priv_key_for_asn1(NSSLOWKEYPrivateKey *key); | |
24 extern void prepare_low_pqg_params_for_asn1(PQGParams *params); | |
25 extern void prepare_low_dsa_priv_key_for_asn1(NSSLOWKEYPrivateKey *key); | |
26 extern void prepare_low_dsa_priv_key_export_for_asn1(NSSLOWKEYPrivateKey *key); | |
27 extern void prepare_low_dh_priv_key_for_asn1(NSSLOWKEYPrivateKey *key); | |
28 #ifndef NSS_DISABLE_ECC | |
29 extern void prepare_low_ec_priv_key_for_asn1(NSSLOWKEYPrivateKey *key); | |
30 extern void prepare_low_ecparams_for_asn1(ECParams *params); | |
31 #endif /* NSS_DISABLE_ECC */ | |
32 | |
33 /* | |
34 ** Destroy a private key object. | |
35 ** "key" the object | |
36 ** "freeit" if PR_TRUE then free the object as well as its sub-objects | |
37 */ | |
38 extern void nsslowkey_DestroyPrivateKey(NSSLOWKEYPrivateKey *key); | |
39 | |
40 /* | |
41 ** Destroy a public key object. | |
42 ** "key" the object | |
43 ** "freeit" if PR_TRUE then free the object as well as its sub-objects | |
44 */ | |
45 extern void nsslowkey_DestroyPublicKey(NSSLOWKEYPublicKey *key); | |
46 | |
47 /* | |
48 ** Return the modulus length of "pubKey". | |
49 */ | |
50 extern unsigned int nsslowkey_PublicModulusLen(NSSLOWKEYPublicKey *pubKey); | |
51 | |
52 | |
53 /* | |
54 ** Return the modulus length of "privKey". | |
55 */ | |
56 extern unsigned int nsslowkey_PrivateModulusLen(NSSLOWKEYPrivateKey *privKey); | |
57 | |
58 | |
59 /* | |
60 ** Convert a low private key "privateKey" into a public low key | |
61 */ | |
62 extern NSSLOWKEYPublicKey | |
63 *nsslowkey_ConvertToPublicKey(NSSLOWKEYPrivateKey *privateKey); | |
64 | |
65 /* Make a copy of a low private key in it's own arena. | |
66 * a return of NULL indicates an error. | |
67 */ | |
68 extern NSSLOWKEYPrivateKey * | |
69 nsslowkey_CopyPrivateKey(NSSLOWKEYPrivateKey *privKey); | |
70 | |
71 | |
72 SEC_END_PROTOS | |
73 | |
74 #endif /* _LOWKEYI_H_ */ |