OpenVPN
Data Fields
hash Struct Reference

#include <list.h>

Collaboration diagram for hash:
Collaboration graph
[legend]

Data Fields

uint32_t n_buckets
 
uint32_t n_elements
 
uint32_t mask
 
uint8_t hash_key [HASH_KEY_LEN]
 key/iv used for the hash function.
 
uint64_t(* hash_function )(const void *key, const uint8_t hash_key[HASH_KEY_LEN])
 
bool(* compare_function )(const void *key1, const void *key2)
 
struct hash_bucketbuckets
 

Detailed Description

Definition at line 55 of file list.h.

Field Documentation

◆ buckets

struct hash_bucket* hash::buckets

◆ compare_function

bool(* hash::compare_function) (const void *key1, const void *key2)

Definition at line 64 of file list.h.

Referenced by hash_init(), hash_lookup_fast(), and hash_remove_fast().

◆ hash_function

uint64_t(* hash::hash_function) (const void *key, const uint8_t hash_key[HASH_KEY_LEN])

Definition at line 63 of file list.h.

Referenced by hash_init(), and hash_value().

◆ hash_key

uint8_t hash::hash_key[HASH_KEY_LEN]

key/iv used for the hash function.

No to be confused with the (key, value) keys for the actual hash map entries

Definition at line 62 of file list.h.

Referenced by hash_init(), and hash_value().

◆ mask

uint32_t hash::mask

Definition at line 59 of file list.h.

Referenced by hash_add(), hash_bucket(), hash_init(), hash_lookup(), hash_remove(), and test_list().

◆ n_buckets

uint32_t hash::n_buckets

◆ n_elements

uint32_t hash::n_elements

Definition at line 58 of file list.h.

Referenced by hash_add_fast(), hash_n_elements(), hash_remove_fast(), and hash_remove_marked().


The documentation for this struct was generated from the following file: