Go to the source code of this file.
Data Structures | |
struct | ldns_schwartzian_compare_struct |
Structure to do a Schwartzian-like transformation, for instance when sorting. More... | |
struct | ldns_struct_lookup_table |
A general purpose lookup table. More... | |
Defines | |
#define | dprintf(X, Y) fprintf(stderr, (X), (Y)) |
#define | LDNS_VERSION "1.2.2 " |
#define | INLINE static inline |
splint static inline workaround | |
#define | LDNS_MALLOC(type) LDNS_XMALLOC(type, 1) |
Memory management macros. | |
#define | LDNS_XMALLOC(type, count) ((type *) malloc((count) * sizeof(type))) |
#define | LDNS_REALLOC(ptr, type) LDNS_XREALLOC((ptr), type, 1) |
#define | LDNS_XREALLOC(ptr, type, count) ((type *) realloc((ptr), (count) * sizeof(type))) |
#define | LDNS_FREE(ptr) do { free((ptr)); (ptr) = NULL; } while (0) |
#define | LDNS_DEP printf("DEPRECATED FUNCTION!\n"); |
Typedefs | |
typedef struct ldns_struct_lookup_table | ldns_lookup_table |
Functions | |
ldns_lookup_table * | ldns_lookup_by_name (ldns_lookup_table table[], const char *name) |
Looks up the table entry by name, returns NULL if not found. | |
ldns_lookup_table * | ldns_lookup_by_id (ldns_lookup_table table[], int id) |
Looks up the table entry by id, returns NULL if not found. | |
int | ldns_get_bit (uint8_t bits[], size_t index) |
Returns the value of the specified bit The bits are counted from left to right, so bit #0 is the left most bit. | |
int | ldns_get_bit_r (uint8_t bits[], size_t index) |
Returns the value of the specified bit The bits are counted from right to left, so bit #0 is the right most bit. | |
void | ldns_set_bit (uint8_t *byte, int bit_nr, bool value) |
sets the specified bit in the specified byte to 1 if value is true, 0 if false The bits are counted from right to left, so bit #0 is the right most bit. | |
int | ldns_hexdigit_to_int (char ch) |
Returns the int value of the given (hex) digit. | |
char | ldns_int_to_hexdigit (int ch) |
Returns the char (hex) representation of the given int. | |
const char * | ldns_version (void) |
Show the internal library version. | |
time_t | mktime_from_utc (const struct tm *tm) |
Convert TM to seconds since epoch (midnight, January 1st, 1970). | |
int | ldns_init_random (FILE *fd, unsigned int size) |
Seed the random function. |
#define LDNS_MALLOC | ( | type | ) | LDNS_XMALLOC(type, 1) |
#define LDNS_XMALLOC | ( | type, | |||
count | ) | ((type *) malloc((count) * sizeof(type))) |
#define LDNS_REALLOC | ( | ptr, | |||
type | ) | LDNS_XREALLOC((ptr), type, 1) |
#define LDNS_XREALLOC | ( | ptr, | |||
type, | |||||
count | ) | ((type *) realloc((ptr), (count) * sizeof(type))) |
#define LDNS_FREE | ( | ptr | ) | do { free((ptr)); (ptr) = NULL; } while (0) |
typedef struct ldns_struct_lookup_table ldns_lookup_table |
ldns_lookup_table* ldns_lookup_by_name | ( | ldns_lookup_table | table[], | |
const char * | name | |||
) |
Looks up the table entry by name, returns NULL if not found.
[in] | table | the lookup table to search in |
[in] | name | what to search for |
ldns_lookup_table* ldns_lookup_by_id | ( | ldns_lookup_table | table[], | |
int | id | |||
) |
Looks up the table entry by id, returns NULL if not found.
[in] | table | the lookup table to search in |
[in] | id | what to search for |
int ldns_get_bit | ( | uint8_t | bits[], | |
size_t | index | |||
) |
int ldns_get_bit_r | ( | uint8_t | bits[], | |
size_t | index | |||
) |
void ldns_set_bit | ( | uint8_t * | byte, | |
int | bit_nr, | |||
bool | value | |||
) |
sets the specified bit in the specified byte to 1 if value is true, 0 if false The bits are counted from right to left, so bit #0 is the right most bit.
[in] | byte | the bit to set the bit in |
[in] | bit_nr | the bit to set (0 <= n <= 7) |
[in] | value | whether to set the bit to 1 or 0 |
int ldns_hexdigit_to_int | ( | char | ch | ) |
char ldns_int_to_hexdigit | ( | int | ch | ) |
const char* ldns_version | ( | void | ) |
Show the internal library version.
Definition at line 158 of file util.c.
References LDNS_VERSION.
time_t mktime_from_utc | ( | const struct tm * | tm | ) |
int ldns_init_random | ( | FILE * | fd, | |
unsigned int | size | |||
) |
Seed the random function.
If the file descriptor is specified, the random generator is seeded with data from that file. If not, /dev/urandom is used.
applications should call this if they need entropy data within ldns If openSSL is available, it is automatically seeded from /dev/urandom or /dev/random.
If you need more entropy, or have no openssl available, this function MUST be called at the start of the program
If openssl *is* available, this function just adds more entropy
[in] | fd | a file providing entropy data for the seed |
[in] | size | the number of bytes to use as entropy data. If this is 0, only the minimal amount is taken (usually 4 bytes) |
If you need more entropy, or have no openssl available, this function MUST be called at the start of the program
If openssl *is* available, this function just adds more entropy
Definition at line 222 of file util.c.
References LDNS_FREE, and LDNS_XMALLOC.