lwIP  2.0.2
Lightweight IP stack
ip4_addr.c File Reference
#include "lwip/opt.h"
#include "lwip/ip_addr.h"
#include "lwip/netif.h"

Functions

u8_t ip4_addr_isbroadcast_u32 (u32_t addr, const struct netif *netif)
 
u8_t ip4_addr_netmask_valid (u32_t netmask)
 
u32_t ipaddr_addr (const char *cp)
 
int ip4addr_aton (const char *cp, ip4_addr_t *addr)
 
char * ip4addr_ntoa (const ip4_addr_t *addr)
 
char * ip4addr_ntoa_r (const ip4_addr_t *addr, char *buf, int buflen)
 

Detailed Description

This is the IPv4 address tools implementation.

Function Documentation

◆ ip4_addr_isbroadcast_u32()

u8_t ip4_addr_isbroadcast_u32 ( u32_t  addr,
const 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

◆ ip4_addr_netmask_valid()

u8_t ip4_addr_netmask_valid ( u32_t  netmask)

Checks if a netmask is valid (starting with ones, then only zeros)

Parameters
netmaskthe IPv4 netmask to check (in network byte order!)
Returns
1 if the netmask is valid, 0 if it is not

◆ ip4addr_aton()

int ip4addr_aton ( const char *  cp,
ip4_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 representation (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

◆ ip4addr_ntoa()

char* ip4addr_ntoa ( const ip4_addr_t addr)

Convert numeric IP address into decimal dotted ASCII representation. 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 representation of addr

◆ ip4addr_ntoa_r()

char* ip4addr_ntoa_r ( const ip4_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

◆ ipaddr_addr()

u32_t ipaddr_addr ( const char *  cp)

Ascii internet address interpretation routine. The value returned is in network order.

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