1 #ifndef __DJB2_HASH_H__
2 #define __DJB2_HASH_H__
3
4 #include "hash.h"
5
6 typedef struct __djb2_state_t
7 {
8 CMPH_HASH hashfunc;
9 } djb2_state_t;
10
11 djb2_state_t *djb2_state_new();
12 cmph_uint32 djb2_hash(djb2_state_t *state, const char *k, cmph_uint32 keylen);
13 void djb2_state_dump(djb2_state_t *state, char **buf, cmph_uint32 *buflen);
14 djb2_state_t *djb2_state_copy(djb2_state_t *src_state);
15 djb2_state_t *djb2_state_load(const char *buf, cmph_uint32 buflen);
16 void djb2_state_destroy(djb2_state_t *state);
17
18 #endif