105#define HOST_IPV4(host, ip) \
106 XFA_USE_CONST(hostnames_v4_xfa_t, hostnames_v4_xfa); \
107 static FLASH_ATTR const char _xfa_ ## host ## _hostname[] = #host; \
108 XFA_CONST(hostnames_v4_xfa_t, hostnames_v4_xfa, 0) _xfa_ ## host ## _host = { \
109 .name = _xfa_ ## host ## _hostname, \
129#define HOST_IPV6(host, ip) \
130 XFA_USE_CONST(hostnames_v6_xfa_t, hostnames_v6_xfa); \
131 static FLASH_ATTR const char _xfa_ ## host ## _hostname[] = #host; \
132 XFA_CONST(hostnames_v6_xfa_t, hostnames_v6_xfa, 0) _xfa_ ## host ## _host = { \
133 .name = _xfa_ ## host ## _hostname, \
153int hosts_query(
const char *host_name,
void *addr_out,
int family);
Utility functions, macros, and types for read-only memory.
int hosts_query(const char *host_name, void *addr_out, int family)
Get IP address for a host name.
#define FLASH_ATTR
C type qualifier required to place a variable in flash.
IPv4 address type and helper functions definitions.
Definitions for IPv6 addresses.
A single IPv4 host in the list of hostnames.
FLASH_ATTR const char * name
Name of the host.
const ipv4_addr_t addr
Address of the host.
A single IPv6 host in the list of hostnames.
FLASH_ATTR const char * name
Name of the host.
const ipv6_addr_t addr
Address of the host.
Data type to represent an IPv4 address.
Data type to represent an IPv6 address.