TCP/IP Programming Manual

Make the following changes in your application, as needed:
Change toOriginal
in6_addrin_addrStructure Name
u_charunsigned longData Type
sa6_addrs_addrField Name
See Making Other Application Changes (page 57) for additional changes you might need to make
to your application. See also in6_addr (page 70) for alternative definitions of the in6_addr data
structure.
sockaddr_in Structure Changes for IPv6 Applications
Applications that use the 4.4 BSD sockaddr_in structure must be changed, as needed, to use
the sockaddr_in6 structure for IPv6 sockets as shown in the following examples:
CommentAF_INET6 StructureAF_INET Structure
length of this struct (24)AF_INET6
familytransport layer port #IPv6 address
struct sockaddr_in6 uint8_t sin6_len
sa_family_t sin6_family int_port_t
sin6_port struct in6_addr sin6_addr
struct sockaddr_in unsigned char
sin_len sa_family_t sin_family in_port_t
sin_port struct in_addr sin_addr
NOTE: In addition to the fields shown above for INET6, there are two new fields in INET6:
sin6_flowinfo and sin6_scope_id. See sockaddr_in6 (page 78).
Make the following change in your application, as needed:
Change toOriginal
sockaddr_in6sockaddr_inStructure Name
u_int8_t sin6_lenunsigned char sin_lenData Type/Field Name
sa_family_t sin_familysa_family_t sin_familyData Type/Field Name
int_port_t sin6_portin_port_t sin_portData Type/Field Name
struct in6_addr sin6_addrstruct in_addr sin_addrData Type/Field Name
Applications that use the 4.3 BSD sockaddr_in structure must be changed, as needed, to use
the sockaddr_in6 structure for IPv6 sockets as shown in the following examples:
AF_INET6 StructureAF_INET Structure
struct sockaddr_in6 u_short sin6_family in_port_t sin6_port
struct in6_addr sin6_addr
struct sockaddr_in u_short sin_family in_port_t sin_port struct
in_addr sin_addr
NOTE: In addition to the fields shown above for INET6, there are two new fields in INET6:
sin6_flowinfo and sin6_scope_id. See sockaddr_in6 (page 78).
Make the following change in your application, as needed:
Change toOriginal
sockaddr_in6sockaddr_inStructure Name
u_short sin6_familyu_short sin_familyData Type/Field Name
in_port_t sin6_portin_port_t sin_portData Type/Field Name
struct in6_addr sin6_addrstruct in_addr sin_addrData Type/Field Name
Porting Applications to Use AF_INET6 Sockets 55