Bonjour/Zerconf library

Dependencies:   mbed

Embed: (wiki syntax)

« Back to documentation index

ip_addr.c File Reference

ip_addr.c File Reference

This is the IPv4 address tools implementation. More...

Go to the source code of this file.

Functions

u8_t ip_addr_isbroadcast (ip_addr_t *addr, struct netif *netif)
 Determine if an address is a broadcast address on a network interface.
u32_t ipaddr_addr (const char *cp)
 Ascii internet address interpretation routine.
int ipaddr_aton (const char *cp, ip_addr_t *addr)
 Check whether "cp" is a valid ascii representation of an Internet address and convert to a binary address.
char * ipaddr_ntoa (ip_addr_t *addr)
 Convert numeric IP address into decimal dotted ASCII representation.
char * ipaddr_ntoa_r (ip_addr_t *addr, char *buf, int buflen)
 Same as ipaddr_ntoa, but reentrant since a user-supplied buffer is used.

Detailed Description

This is the IPv4 address tools implementation.

Definition in file ip_addr.c.


Function Documentation

u8_t ip_addr_isbroadcast ( ip_addr_t *  addr,
struct netif netif 
)

Determine if an address is a broadcast address on a network interface.

Parameters:
addraddress to be checked
netifthe network interface against which the address is checked
Returns:
returns non-zero if the address is a broadcast address

Definition at line 54 of file ip_addr.c.

u32_t ipaddr_addr ( const char *  cp )

Ascii internet address interpretation routine.

The value returned is in network order.

Parameters:
cpIP address in ascii represenation (e.g. "127.0.0.1")
Returns:
ip address in network order

Definition at line 100 of file ip_addr.c.

int ipaddr_aton ( const char *  cp,
ip_addr_t *  addr 
)

Check whether "cp" is a valid ascii representation of an Internet address and convert to a binary address.

Returns 1 if the address is valid, 0 if not. This replaces inet_addr, the return value from which cannot distinguish between failure and a local broadcast address.

Parameters:
cpIP address in ascii represenation (e.g. "127.0.0.1")
addrpointer to which to save the ip address in network order
Returns:
1 if cp could be converted to addr, 0 on failure

Definition at line 122 of file ip_addr.c.

char* ipaddr_ntoa ( ip_addr_t *  addr )

Convert numeric IP address into decimal dotted ASCII representation.

returns ptr to static buffer; not reentrant!

returns ptr to static buffer; not reentrant!

Parameters:
addrip address in network order to convert
Returns:
pointer to a global static (!) buffer that holds the ASCII represenation of addr

Definition at line 223 of file ip_addr.c.

char* ipaddr_ntoa_r ( ip_addr_t *  addr,
char *  buf,
int  buflen 
)

Same as ipaddr_ntoa, but reentrant since a user-supplied buffer is used.

Parameters:
addrip address in network order to convert
buftarget buffer where the string is stored
buflenlength of buf
Returns:
either pointer to buf which now holds the ASCII representation of addr or NULL if buf was too small

Definition at line 238 of file ip_addr.c.