diff options
Diffstat (limited to 'lib/ipv4.c')
-rw-r--r-- | lib/ipv4.c | 20 |
1 files changed, 20 insertions, 0 deletions
@@ -10,6 +10,7 @@ #include "nest/bird.h" #include "lib/ip.h" +#include "lib/string.h" int ipv4_classify(u32 a) @@ -30,4 +31,23 @@ ipv4_classify(u32 a) return IADDR_INVALID; } +char * +ip_ntop(ip_addr a, char *b) +{ + u32 x = _I(a); + + return b + bsprintf(b, "%d.%d.%d.%d", + ((x >> 24) & 0xff), + ((x >> 16) & 0xff), + ((x >> 8) & 0xff), + (x & 0xff)); +} + + +char * +ip_ntox(ip_addr a, char *b) +{ + return b + bsprintf(b, "%08x", _I(a)); +} + #endif |