This is the IPv4 address tools implementation.
More...
#include "lwip/opt.h"
#include "lwip/ip_addr.h"
#include "lwip/netif.h"
Defines |
#define | in_range(c, lo, up) ((u8_t)c >= lo && (u8_t)c <= up) |
#define | isprint(c) in_range(c, 0x20, 0x7f) |
#define | isdigit(c) in_range(c, '0', '9') |
#define | isxdigit(c) (isdigit(c) || in_range(c, 'a', 'f') || in_range(c, 'A', 'F')) |
#define | islower(c) in_range(c, 'a', 'z') |
#define | isspace(c) (c == ' ' || c == '\f' || c == '\n' || c == '\r' || c == '\t' || c == '\v') |
Functions |
u8_t | ip4_addr_isbroadcast (u32_t addr, const struct netif *netif) |
| Determine if an address is a broadcast address on a network interface.
|
u8_t | ip4_addr_netmask_valid (u32_t netmask) |
| Checks if a netmask is valid (starting with ones, then only zeros).
|
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 (const ip_addr_t *addr) |
| Convert numeric IP address into decimal dotted ASCII representation.
|
char * | ipaddr_ntoa_r (const ip_addr_t *addr, char *buf, int buflen) |
| Same as ipaddr_ntoa, but reentrant since a user-supplied buffer is used.
|
Variables |
const ip_addr_t | ip_addr_any = { IPADDR_ANY } |
const ip_addr_t | ip_addr_broadcast = { IPADDR_BROADCAST } |
Detailed Description
This is the IPv4 address tools implementation.
Define Documentation
#define in_range |
( |
|
c, |
|
|
|
lo, |
|
|
|
up | |
|
) |
| | ((u8_t)c >= lo && (u8_t)c <= up) |
#define isdigit |
( |
|
c |
) |
in_range(c, '0', '9') |
#define islower |
( |
|
c |
) |
in_range(c, 'a', 'z') |
#define isprint |
( |
|
c |
) |
in_range(c, 0x20, 0x7f) |
#define isspace |
( |
|
c |
) |
(c == ' ' || c == '\f' || c == '\n' || c == '\r' || c == '\t' || c == '\v') |
#define isxdigit |
( |
|
c |
) |
(isdigit(c) || in_range(c, 'a', 'f') || in_range(c, 'A', 'F')) |
Function Documentation
Determine if an address is a broadcast address on a network interface.
- Parameters:
-
| addr | address to be checked |
| netif | the network interface against which the address is checked |
- Returns:
- returns non-zero if the address is a broadcast address
u8_t ip4_addr_netmask_valid |
( |
u32_t |
netmask |
) |
|
Checks if a netmask is valid (starting with ones, then only zeros).
- Parameters:
-
| netmask | the IPv4 netmask to check (in network byte order!) |
- Returns:
- 1 if the netmask is valid, 0 if it is not
u32_t ipaddr_addr |
( |
const char * |
cp |
) |
|
Ascii internet address interpretation routine.
The value returned is in network order.
- Parameters:
-
| cp | IP address in ascii represenation (e.g. "127.0.0.1") |
- Returns:
- ip address in network order
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:
-
| cp | IP address in ascii represenation (e.g. "127.0.0.1") |
| addr | pointer to which to save the ip address in network order |
- Returns:
- 1 if cp could be converted to addr, 0 on failure
Convert numeric IP address into decimal dotted ASCII representation.
returns ptr to static buffer; not reentrant!
returns ptr to static buffer; not reentrant!
- Parameters:
-
| addr | ip address in network order to convert |
- Returns:
- pointer to a global static (!) buffer that holds the ASCII represenation of addr
char* ipaddr_ntoa_r |
( |
const ip_addr_t * |
addr, |
|
|
char * |
buf, |
|
|
int |
buflen | |
|
) |
| | |
Same as ipaddr_ntoa, but reentrant since a user-supplied buffer is used.
- Parameters:
-
| addr | ip address in network order to convert |
| buf | target buffer where the string is stored |
| buflen | length of buf |
- Returns:
- either pointer to buf which now holds the ASCII representation of addr or NULL if buf was too small
Variable Documentation