OLD | NEW |
1 /* This Source Code Form is subject to the terms of the Mozilla Public | 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 | 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/. */ | 3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
4 #ifndef _PK11PUB_H_ | 4 #ifndef _PK11PUB_H_ |
5 #define _PK11PUB_H_ | 5 #define _PK11PUB_H_ |
6 #include "plarena.h" | 6 #include "plarena.h" |
7 #include "seccomon.h" | 7 #include "seccomon.h" |
8 #include "secoidt.h" | 8 #include "secoidt.h" |
9 #include "secdert.h" | 9 #include "secdert.h" |
10 #include "keyt.h" | 10 #include "keyt.h" |
(...skipping 691 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
702 * Return the length in bytes of a signature generated with the | 702 * Return the length in bytes of a signature generated with the |
703 * private key. | 703 * private key. |
704 * | 704 * |
705 * Return 0 or -1 on failure. (XXX Should we fix it to always return | 705 * Return 0 or -1 on failure. (XXX Should we fix it to always return |
706 * -1 on failure?) | 706 * -1 on failure?) |
707 */ | 707 */ |
708 int PK11_SignatureLen(SECKEYPrivateKey *key); | 708 int PK11_SignatureLen(SECKEYPrivateKey *key); |
709 PK11SlotInfo * PK11_GetSlotFromPrivateKey(SECKEYPrivateKey *key); | 709 PK11SlotInfo * PK11_GetSlotFromPrivateKey(SECKEYPrivateKey *key); |
710 SECStatus PK11_Sign(SECKEYPrivateKey *key, SECItem *sig, | 710 SECStatus PK11_Sign(SECKEYPrivateKey *key, SECItem *sig, |
711 const SECItem *hash); | 711 const SECItem *hash); |
| 712 SECStatus PK11_SignWithMechanism(SECKEYPrivateKey *key, |
| 713 CK_MECHANISM_TYPE mechanism, |
| 714 const SECItem *param, SECItem *sig, |
| 715 const SECItem *hash); |
712 SECStatus PK11_SignWithSymKey(PK11SymKey *symKey, CK_MECHANISM_TYPE mechanism, | 716 SECStatus PK11_SignWithSymKey(PK11SymKey *symKey, CK_MECHANISM_TYPE mechanism, |
713 SECItem *param, SECItem *sig, const SECItem *data); | 717 SECItem *param, SECItem *sig, const SECItem *data); |
714 SECStatus PK11_VerifyRecover(SECKEYPublicKey *key, const SECItem *sig, | 718 SECStatus PK11_VerifyRecover(SECKEYPublicKey *key, const SECItem *sig, |
715 SECItem *dsig, void * wincx); | 719 SECItem *dsig, void * wincx); |
716 SECStatus PK11_Verify(SECKEYPublicKey *key, const SECItem *sig, | 720 SECStatus PK11_Verify(SECKEYPublicKey *key, const SECItem *sig, |
717 const SECItem *hash, void *wincx); | 721 const SECItem *hash, void *wincx); |
| 722 SECStatus PK11_VerifyWithMechanism(SECKEYPublicKey *key, |
| 723 CK_MECHANISM_TYPE mechanism, |
| 724 const SECItem *param, const SECItem *sig, |
| 725 const SECItem *hash, void *wincx); |
718 | 726 |
719 | 727 |
720 | 728 |
721 /********************************************************************** | 729 /********************************************************************** |
722 * Crypto Contexts | 730 * Crypto Contexts |
723 **********************************************************************/ | 731 **********************************************************************/ |
724 void PK11_DestroyContext(PK11Context *context, PRBool freeit); | 732 void PK11_DestroyContext(PK11Context *context, PRBool freeit); |
725 PK11Context *PK11_CreateContextBySymKey(CK_MECHANISM_TYPE type, | 733 PK11Context *PK11_CreateContextBySymKey(CK_MECHANISM_TYPE type, |
726 CK_ATTRIBUTE_TYPE operation, PK11SymKey *symKey, SECItem *param); | 734 CK_ATTRIBUTE_TYPE operation, PK11SymKey *symKey, SECItem *param); |
727 PK11Context *PK11_CreateDigestContext(SECOidTag hashAlg); | 735 PK11Context *PK11_CreateDigestContext(SECOidTag hashAlg); |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
872 PK11_GetLowLevelKeyIDForCert(PK11SlotInfo *slot, | 880 PK11_GetLowLevelKeyIDForCert(PK11SlotInfo *slot, |
873 CERTCertificate *cert, void *pwarg); | 881 CERTCertificate *cert, void *pwarg); |
874 SECItem * | 882 SECItem * |
875 PK11_GetLowLevelKeyIDForPrivateKey(SECKEYPrivateKey *key); | 883 PK11_GetLowLevelKeyIDForPrivateKey(SECKEYPrivateKey *key); |
876 | 884 |
877 PRBool SECMOD_HasRootCerts(void); | 885 PRBool SECMOD_HasRootCerts(void); |
878 | 886 |
879 SEC_END_PROTOS | 887 SEC_END_PROTOS |
880 | 888 |
881 #endif | 889 #endif |
OLD | NEW |