GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
scan_ip6(3) FreeBSD Library Functions Manual scan_ip6(3)

scan_ip6 - parse an IPv6 number in ASCII representation

#include <libowfat/ip6.h>

int scan_ip6(const char *src,char ip[16]);

scan_ip6 parses an IPv6 number in RFC1884 ASCII representation from src and writes the result into ip. It returns the number of bytes read from src or 0 if the parsing failed.

scan_ip6 accepts upper and lower case hex letters, it understands "::" compression and partial IPv4 addresses as in "::FFFF:129.144.52.38".

To allow transparent usage of IPv4 in IPv6 applications, scan_ip6 also understands IPv4 addresses in dotted-decimal notation and will return an IPv4-mapped IPv6 address (i.e. "127.0.0.1" will be parsed as "::FFFF:127.0.0.1".

Unlike many other IP parsing routines, scan_ip6 does not recognize octal (like 0177.0.0.1) or hexadecimal numbers (like 0x7f000001) in the IPv4 part.

#include <libowfat/str.h>
#include <libowfat/ip6.h>

char buf[]="::1"; char ip[16]; if (scan_ip6(buf,ip) != str_len(buf)) parse_error();

scan_ip6if(3), fmt_ip6(3), scan_ip4(3), inet_pton(3)

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.