Go to the source code of this file.
Data Structures | |
struct | hashed_object_t |
struct | hash_bucket |
struct | hash_table |
struct | named_hash |
Macros | |
#define | DEFAULT_HASH_SIZE 9973 |
#define | KEY_HASH_SIZE 1009 |
#define | HASH_FUNCTIONS_DECL(name, bufarg, type, hashtype) |
#define | HASH_FUNCTIONS(name, bufarg, type, hashtype, ref, deref, hasher) |
Typedefs | |
typedef isc_result_t(* | hash_foreach_func) (const void *, unsigned, void *) |
typedef int(* | hash_reference) (hashed_object_t **, hashed_object_t *, const char *, int) |
typedef int(* | hash_dereference) (hashed_object_t **, const char *, int) |
typedef int(* | hash_comparator_t) (const void *, const void *, size_t) |
Functions | |
void | relinquish_hash_bucket_hunks (void) |
int | new_hash_table (struct hash_table **, unsigned, const char *, int) |
void | free_hash_table (struct hash_table **, const char *, int) |
struct hash_bucket * | new_hash_bucket (const char *, int) |
void | free_hash_bucket (struct hash_bucket *, const char *, int) |
int | new_hash (struct hash_table **, hash_reference, hash_dereference, unsigned, unsigned(*do_hash)(const void *, unsigned, unsigned), const char *, int) |
unsigned | do_string_hash (const void *, unsigned, unsigned) |
unsigned | do_case_hash (const void *, unsigned, unsigned) |
unsigned | do_id_hash (const void *, unsigned, unsigned) |
unsigned | do_number_hash (const void *, unsigned, unsigned) |
unsigned | do_ip4_hash (const void *, unsigned, unsigned) |
unsigned char * | hash_report (struct hash_table *) |
void | add_hash (struct hash_table *, const void *, unsigned, hashed_object_t *, const char *, int) |
void | delete_hash_entry (struct hash_table *, const void *, unsigned, const char *, int) |
int | hash_lookup (hashed_object_t **, struct hash_table *, const void *, unsigned, const char *, int) |
int | hash_foreach (struct hash_table *, hash_foreach_func) |
int | casecmp (const void *s, const void *t, size_t len) |
#define HASH_FUNCTIONS | ( | name, | |
bufarg, | |||
type, | |||
hashtype, | |||
ref, | |||
deref, | |||
hasher ) |
#define HASH_FUNCTIONS_DECL | ( | name, | |
bufarg, | |||
type, | |||
hashtype ) |
typedef int(* hash_comparator_t) (const void *, const void *, size_t) |
typedef int(* hash_dereference) (hashed_object_t **, const char *, int) |
typedef isc_result_t(* hash_foreach_func) (const void *, unsigned, void *) |
typedef int(* hash_reference) (hashed_object_t **, hashed_object_t *, const char *, int) |
void add_hash | ( | struct hash_table * | table, |
const void * | key, | ||
unsigned | len, | ||
hashed_object_t * | pointer, | ||
const char * | file, | ||
int | line ) |
void delete_hash_entry | ( | struct hash_table * | table, |
const void * | key, | ||
unsigned | len, | ||
const char * | file, | ||
int | line ) |
unsigned do_case_hash | ( | const void * | name, |
unsigned | len, | ||
unsigned | size ) |
unsigned do_id_hash | ( | const void * | name, |
unsigned | len, | ||
unsigned | size ) |
unsigned do_ip4_hash | ( | const void * | key, |
unsigned | len, | ||
unsigned | size ) |
unsigned do_number_hash | ( | const void * | key, |
unsigned | len, | ||
unsigned | size ) |
unsigned do_string_hash | ( | const void * | name, |
unsigned | len, | ||
unsigned | size ) |
void free_hash_bucket | ( | struct hash_bucket * | ptr, |
const char * | file, | ||
int | line ) |
void free_hash_table | ( | struct hash_table ** | tp, |
const char * | file, | ||
int | line ) |
int hash_foreach | ( | struct hash_table * | table, |
hash_foreach_func | func ) |
int hash_lookup | ( | hashed_object_t ** | vp, |
struct hash_table * | table, | ||
const void * | key, | ||
unsigned | len, | ||
const char * | file, | ||
int | line ) |
unsigned char * hash_report | ( | struct hash_table * | table | ) |
int new_hash | ( | struct hash_table ** | rp, |
hash_reference | referencer, | ||
hash_dereference | dereferencer, | ||
unsigned | hsize, | ||
unsigned(* | do_hash )(const void *, unsigned, unsigned), | ||
const char * | file, | ||
int | line ) |
struct hash_bucket * new_hash_bucket | ( | const char * | , |
int | ) |
int new_hash_table | ( | struct hash_table ** | tp, |
unsigned | count, | ||
const char * | file, | ||
int | line ) |
void relinquish_hash_bucket_hunks | ( | void | ) |