fmt_ip6(3)

NAME
fmt_ip6 - write a formatted ASCII representation of an IPv6 number

SYNTAX
#include <libowfat/ip6.h>

unsigned int fmt_ip6(char *dest,const char ip[16]);

DESCRIPTION
fmt_ip6 formats an IPv6 number in ASCII representation from ip and writes the result into dest. It returns the number of bytes written.

fmt_ip6 will apply "::" compression to the output.

If ip is an IPv4-mapped IPv6 address, fmt_ip6 will output the last 4 bytes as IPv4 number in dotted-decimal notation.

If dest equals FMT_LEN (i.e. is zero), fmt_ip6 returns the number of bytes it would have written.

fmt_ip6 does not append \0.

For convenience, ip6.h defines the integer IP6_FMT to be big enough to contain every possible fmt_ip6 output plus \0.

EXAMPLE
#include <libowfat/ip6.h>

  char buf[IP6_FMT];
  char ip[16];
  buf[fmt_ip6(buf,ip)]=0;

SEE ALSO
fmt_ip6c(3), fmt_ip6if(3), scan_ip6(3), fmt_ip4(3), inet_ntop(3)