Contiki-NG
Loading...
Searching...
No Matches
uIP hostname resolver functions

Macros

#define RESOLV_SUPPORTS_MDNS   0
 If RESOLV_CONF_SUPPORTS_MDNS is set, then queries for domain names in the local TLD will use MDNS and will respond to MDNS queries for this device's hostname, as described by draft-cheshire-dnsext-multicastdns.
 
#define RESOLV_CONF_MAX_RETRIES   4
 The maximum number of retries when asking for a name.
 

Functions

static void newdata (void)
 
void resolv_query (const char *name)
 Queues a name so that a question for the name will be sent out.
 
resolv_status_t resolv_lookup (const char *name, uip_ipaddr_t **ipaddr)
 Look up a hostname in the array of known hostnames.
 

Variables

process_event_t resolv_event_found
 Event that is broadcasted when a DNS name has been resolved.
 

Detailed Description

The uIP DNS resolver functions are used to lookup a hostname and map it to a numerical IP address. It maintains a list of resolved hostnames that can be queried with the resolv_lookup() function. New hostnames can be resolved using the resolv_query() function.

The event resolv_event_found is posted when a hostname has been resolved. It is up to the receiving process to determine if the correct hostname has been found by calling the resolv_lookup() function with the hostname.

Function Documentation

◆ newdata()

static void newdata ( void )
static

QUESTION HANDLING SECTION

ANSWER HANDLING SECTION

Definition at line 719 of file resolv.c.

References CLOCK_SECOND, clock_seconds(), process_post(), uip_appdata, uip_datalen, UIP_HTONS, uip_htons(), UIP_IP_BUF, and uip_ipaddr_copy.

◆ resolv_lookup()

resolv_status_t resolv_lookup ( const char * name,
uip_ipaddr_t ** ipaddr )

Look up a hostname in the array of known hostnames.

Note
This function only looks in the internal array of known hostnames, it does not send out a query for the hostname if none was found. The function resolv_query() can be used to send a query for a hostname.

Definition at line 1263 of file resolv.c.

References addr, clock_seconds(), ipaddr, RESOLV_STATUS_CACHED, RESOLV_STATUS_EXPIRED, RESOLV_STATUS_NOT_FOUND, RESOLV_STATUS_RESOLVING, and RESOLV_STATUS_UNCACHED.

◆ resolv_query()

void resolv_query ( const char * name)

Queues a name so that a question for the name will be sent out.

Parameters
nameThe hostname that is to be queried.

Definition at line 1189 of file resolv.c.

References clock_seconds(), and process_post().