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 * | , |
| const void * | , | ||
| unsigned | , | ||
| hashed_object_t * | , | ||
| const char * | , | ||
| int | |||
| ) |
| void delete_hash_entry | ( | struct hash_table * | , |
| const void * | , | ||
| unsigned | , | ||
| const char * | , | ||
| int | |||
| ) |
| unsigned do_number_hash | ( | const void * | , |
| unsigned | , | ||
| unsigned | |||
| ) |
| unsigned do_string_hash | ( | const void * | , |
| unsigned | , | ||
| unsigned | |||
| ) |
| void free_hash_bucket | ( | struct hash_bucket * | , |
| const char * | , | ||
| int | |||
| ) |
| void free_hash_table | ( | struct hash_table ** | , |
| const char * | , | ||
| int | |||
| ) |
| int hash_foreach | ( | struct hash_table * | , |
| hash_foreach_func | |||
| ) |
| int hash_lookup | ( | hashed_object_t ** | , |
| struct hash_table * | , | ||
| const void * | , | ||
| unsigned | , | ||
| const char * | , | ||
| int | |||
| ) |
| unsigned char* hash_report | ( | struct hash_table * | ) |
| int new_hash | ( | struct hash_table ** | , |
| hash_reference | , | ||
| hash_dereference | , | ||
| unsigned | , | ||
| unsigned(*)(const void *, unsigned, unsigned) | do_hash, | ||
| const char * | , | ||
| int | |||
| ) |
| struct hash_bucket* new_hash_bucket | ( | const char * | , |
| int | |||
| ) |
| int new_hash_table | ( | struct hash_table ** | , |
| unsigned | , | ||
| const char * | , | ||
| int | |||
| ) |
| void relinquish_hash_bucket_hunks | ( | void | ) |