| OLD | NEW |
| (Empty) |
| 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 _HASH_H_ | |
| 6 #define _HASH_H_ | |
| 7 | |
| 8 #include "seccomon.h" | |
| 9 #include "hasht.h" | |
| 10 #include "secoidt.h" | |
| 11 | |
| 12 SEC_BEGIN_PROTOS | |
| 13 | |
| 14 /* | |
| 15 ** Generic hash api. | |
| 16 */ | |
| 17 | |
| 18 extern unsigned int HASH_ResultLen(HASH_HashType type); | |
| 19 | |
| 20 extern unsigned int HASH_ResultLenContext(HASHContext *context); | |
| 21 | |
| 22 extern unsigned int HASH_ResultLenByOidTag(SECOidTag hashOid); | |
| 23 | |
| 24 extern SECStatus HASH_HashBuf(HASH_HashType type, | |
| 25 unsigned char *dest, | |
| 26 const unsigned char *src, | |
| 27 PRUint32 src_len); | |
| 28 | |
| 29 extern HASHContext *HASH_Create(HASH_HashType type); | |
| 30 | |
| 31 extern HASHContext *HASH_Clone(HASHContext *context); | |
| 32 | |
| 33 extern void HASH_Destroy(HASHContext *context); | |
| 34 | |
| 35 extern void HASH_Begin(HASHContext *context); | |
| 36 | |
| 37 extern void HASH_Update(HASHContext *context, | |
| 38 const unsigned char *src, | |
| 39 unsigned int len); | |
| 40 | |
| 41 extern void HASH_End(HASHContext *context, | |
| 42 unsigned char *result, | |
| 43 unsigned int *result_len, | |
| 44 unsigned int max_result_len); | |
| 45 | |
| 46 extern HASH_HashType HASH_GetType(HASHContext *context); | |
| 47 | |
| 48 extern const SECHashObject *HASH_GetHashObject(HASH_HashType type); | |
| 49 | |
| 50 extern const SECHashObject *HASH_GetHashObjectByOidTag(SECOidTag hashOid); | |
| 51 | |
| 52 extern HASH_HashType HASH_GetHashTypeByOidTag(SECOidTag hashOid); | |
| 53 extern SECOidTag HASH_GetHashOidTagByHMACOidTag(SECOidTag hmacOid); | |
| 54 extern SECOidTag HASH_GetHMACOidTagByHashOidTag(SECOidTag hashOid); | |
| 55 | |
| 56 SEC_END_PROTOS | |
| 57 | |
| 58 #endif /* _HASH_H_ */ | |
| OLD | NEW |