1 /* hashfunction_descriptor.h */
3 #ifndef HASHFUNCTION_DESCRIPTOR_H_
4 #define HASHFUNCTION_DESCRIPTOR_H_
6 #include <avr/pgmspace.h>
10 typedef void(*void_fpt)(void);
13 typedef void(*hf_init_fpt)(void*);
14 typedef void(*hf_nextBlock_fpt)(void*, const void*);
15 typedef void(*hf_lastBlock_fpt)(void*, const void*, uint16_t);
16 typedef void(*hf_ctx2hash_fpt)(void*, void*);
17 typedef void(*hf_free_fpt)(void*);
18 typedef void(*hf_mem_fpt)(void*, void*, uint32_t);
21 #define HFDESC_TYPE_HASHFUNCTION 0x02
24 uint8_t type; /* 2 == hashfunction */
32 hf_nextBlock_fpt nextBlock;
33 hf_lastBlock_fpt lastBlock;
34 hf_ctx2hash_fpt ctx2hash;
37 } hfdesc_t; /* blockcipher descriptor type */
44 #endif /* HASHFUNCTION_DESCRIPTOR_H_ */