35 #ifndef HASH_TOEPLITZ_H
36 #define HASH_TOEPLITZ_H
42 unsigned int hash_ipv4 : 1;
43 unsigned int hash_tcp_ipv4 : 1;
44 unsigned int hash_ipv6 : 1;
45 unsigned int hash_tcp_ipv6 : 1;
46 unsigned int hash_ipv6_ex : 1;
47 unsigned int hash_tcp_ipv6_ex : 1;
49 unsigned int x_hash_udp_ipv4 : 1;
50 unsigned int x_hash_udp_ipv6 : 1;
51 unsigned int x_hash_udp_ipv6_ex : 1;
53 uint32_t key_cache[320];
57 DLLEXPORT uint32_t toeplitz_hash(
const toeplitz_conf_t *tc,
const uint8_t *data,
size_t offset,
size_t n, uint32_t result);
58 DLLEXPORT uint32_t toeplitz_first_hash(
const toeplitz_conf_t *tc,
const uint8_t *data,
size_t n);
59 DLLEXPORT
void toeplitz_init_config(
toeplitz_conf_t *conf,
bool bidirectional);
61 DLLEXPORT
void toeplitz_ncreate_bikey(uint8_t *key,
size_t num);
62 DLLEXPORT
void toeplitz_create_bikey(uint8_t *key);
63 DLLEXPORT
void toeplitz_ncreate_unikey(uint8_t *key,
size_t num);
64 DLLEXPORT
void toeplitz_create_unikey(uint8_t *key);
Definition: hash_toeplitz.h:72
Trace file processing library header.
toeplitz hashing - see microsoft rss code
Definition: hash_toeplitz.h:41
The libtrace packet structure.
Definition: libtrace.h:543