Add support for easily formatting IPv6 addresses
This commit is contained in:
parent
01f0062d2d
commit
3186e8aa99
2 changed files with 14 additions and 1 deletions
14
util.c
14
util.c
|
|
@ -19,7 +19,7 @@
|
|||
// to use
|
||||
char *fmtaddr(in_addr_t addr, int n)
|
||||
{
|
||||
static char addrs[4][16];
|
||||
static char addrs[4][INET_ADDRSTRLEN];
|
||||
struct in_addr in;
|
||||
|
||||
if (n < 0 || n >= 4)
|
||||
|
|
@ -29,6 +29,18 @@ char *fmtaddr(in_addr_t addr, int n)
|
|||
return strcpy(addrs[n], inet_ntoa(in));
|
||||
}
|
||||
|
||||
// format ipv6 addr; n chooses one of 4 static buffers to use
|
||||
char *fmtaddr6(struct in6_addr *addr, int n)
|
||||
{
|
||||
static char addrs[4][INET6_ADDRSTRLEN];
|
||||
|
||||
if (n < 0 || n >= 4)
|
||||
return "";
|
||||
|
||||
inet_ntop(AF_INET6, addr, addrs[n], sizeof(addrs[n]));
|
||||
return addrs[n];
|
||||
}
|
||||
|
||||
char *fmtMacAddr(uint8_t *pMacAddr)
|
||||
{
|
||||
// FF:FF:FF:FF:FF:FF (len(18)= 2*6 + 5 (:) + 1 (zero terminal))
|
||||
|
|
|
|||
1
util.h
1
util.h
|
|
@ -2,6 +2,7 @@
|
|||
#define __UTIL_H__
|
||||
|
||||
char *fmtaddr(in_addr_t addr, int n);
|
||||
char *fmtaddr6(struct in6_addr *addr, int n);
|
||||
char *fmtMacAddr(uint8_t *pMacAddr);
|
||||
void *shared_malloc(unsigned int size);
|
||||
pid_t fork_and_close(void);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue