DNS cache management functions.
◆ wget_dns_cache_init()
- Parameters
-
[out] | cache | Pointer to return newly allocated and initialized wget_dns_cache instance |
- Returns
- WGET_E_SUCCESS if OK, WGET_E_MEMORY if out-of-memory or WGET_E_INVALID if the mutex initialization failed.
Allocates and initializes a wget_dns_cache instance.
◆ wget_dns_cache_free()
- Parameters
-
[in/out] | cache Pointer to wget_dns_cache instance that will be freed and NULLified. |
Free the resources allocated by wget_dns_cache_init().
◆ wget_dns_cache_get()
struct addrinfo * wget_dns_cache_get |
( |
wget_dns_cache * |
cache, |
|
|
const char * |
host, |
|
|
uint16_t |
port |
|
) |
| |
- Parameters
-
[in] | cache | A wget_dns_cache instance, created by wget_dns_cache_init(). |
[in] | host | Hostname to look up |
[in] | port | Port to look up |
- Returns
- The cached addrinfo structure or NULL if not found
◆ wget_dns_cache_add()
int wget_dns_cache_add |
( |
wget_dns_cache * |
cache, |
|
|
const char * |
host, |
|
|
uint16_t |
port, |
|
|
struct addrinfo ** |
addrinfo |
|
) |
| |
- Parameters
-
[in] | cache | A wget_dns_cache instance, created by wget_dns_cache_init(). |
[in] | host | Hostname part of the key |
[in] | port | Port part of the key |
| [in/out] | addrinfo Addrinfo structure to cache, returns cached addrinfo |
- Returns
- WGET_E_SUCCESS on success, else a WGET_E_* error value
This functions adds addrinfo
to the given DNS cache cache
.
If an entry for [host,port] already exists, addrinfo
is free'd and replaced by the cached entry. Do not free addrinfo
yourself - this will be done when the whole cache is freed.