%SS2_INET_PTON
Convert IPv6 address from text to numeric
WSupported on Windows
|
USupported on Unix
|
VSupported on OpenVMS
|
NSupported in Synergy .NET
|
status = %SS2_INET_PTON(charstring, in_addr6)
Return value
status
If successful, returns SS_SUCCESS (0). If unsuccessful, returns SS_ENULL (2). See the Socket Errors table for additional information about this error. (n)
Arguments
charstring
A string containing the IPv6 address. See Discussion below for formatting information. (a)
in_addr6
Returned with IPv6 address in numeric form. The family is set to AF_INET6. ([#]byte)
Discussion
%SS2_INET_PTON converts a string containing an IPv6 address into numeric IP address.
Charstring should have one of these formats:
- Eight hexadecimal numbers separated by colons: x:x:x:x:x:x:x:x. For example, 2001:db8:11:22:ff00:42:c000:0280.
- Six hexadecimal numbers separated by colons, followed by four decimal values separated by periods: x:x:x:x:x:x:d.d.d.d.For example, 2001:db8:11:22:ff00:42:192.0.2.128. (This format is considered transitional. The dotted-quad portion represents the IPv4 version of the mapped IPv6 address.)
As you can see from the examples, each x and d may represent more than one digit. In addition, IPv6 notation allows you to “compress” parts of the address that consist of leading zeros or all zeros, so a valid address may not appear to consist of the stated number of hexadecimal values.
If SS_ENULL is returned, the system error code can be returned by immediately calling %SYSERR.