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 /* $Id: hasht.h,v 1.10 2012/06/26 22:27:33 rrelyea%redhat.com Exp $ */ | 4 /* $Id: hasht.h,v 1.11 2013/02/05 18:10:46 wtc%google.com Exp $ */ |
5 | 5 |
6 #ifndef _HASHT_H_ | 6 #ifndef _HASHT_H_ |
7 #define _HASHT_H_ | 7 #define _HASHT_H_ |
8 | 8 |
9 /* Opaque objects */ | 9 /* Opaque objects */ |
10 typedef struct SECHashObjectStr SECHashObject; | 10 typedef struct SECHashObjectStr SECHashObject; |
11 typedef struct HASHContextStr HASHContext; | 11 typedef struct HASHContextStr HASHContext; |
12 | 12 |
13 /* | 13 /* |
14 * The hash functions the security library supports | 14 * The hash functions the security library supports |
(...skipping 29 matching lines...) Expand all Loading... |
44 struct SECHashObjectStr { | 44 struct SECHashObjectStr { |
45 unsigned int length; /* hash output length (in bytes) */ | 45 unsigned int length; /* hash output length (in bytes) */ |
46 void * (*create)(void); | 46 void * (*create)(void); |
47 void * (*clone)(void *); | 47 void * (*clone)(void *); |
48 void (*destroy)(void *, PRBool); | 48 void (*destroy)(void *, PRBool); |
49 void (*begin)(void *); | 49 void (*begin)(void *); |
50 void (*update)(void *, const unsigned char *, unsigned int); | 50 void (*update)(void *, const unsigned char *, unsigned int); |
51 void (*end)(void *, unsigned char *, unsigned int *, unsigned int); | 51 void (*end)(void *, unsigned char *, unsigned int *, unsigned int); |
52 unsigned int blocklength; /* hash input block size (in bytes) */ | 52 unsigned int blocklength; /* hash input block size (in bytes) */ |
53 HASH_HashType type; | 53 HASH_HashType type; |
| 54 void (*end_raw)(void *, unsigned char *, unsigned int *, unsigned int); |
54 }; | 55 }; |
55 | 56 |
56 struct HASHContextStr { | 57 struct HASHContextStr { |
57 const struct SECHashObjectStr *hashobj; | 58 const struct SECHashObjectStr *hashobj; |
58 void *hash_context; | 59 void *hash_context; |
59 }; | 60 }; |
60 | 61 |
61 #endif /* _HASHT_H_ */ | 62 #endif /* _HASHT_H_ */ |
OLD | NEW |