Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 

16.6.1 Internet Socket Address Formats

In the Internet namespace, for both IPv4 (AF_INET) and IPv6 (AF_INET6), a socket address consists of a host address and a port on that host. In addition, the protocol you choose serves effectively as a part of the address because local port numbers are meaningful only within a particular protocol.

The data types for representing socket addresses in the Internet namespace are defined in the header file netinet/in.h.

— Data Type: struct sockaddr_in

This is the data type used to represent socket addresses in the Internet namespace. It has the following members:

sa_family_t sin_family
This identifies the address family or format of the socket address. You should store the value AF_INET in this member. See Socket Addresses.
struct in_addr sin_addr
This is the Internet address of the host machine. See Host Addresses, and Host Names, for how to get a value to store here.
unsigned short int sin_port
This is the port number. See Ports.

When you call bind or getsockname, you should specify sizeof (struct sockaddr_in) as the length parameter if you are using an IPv4 Internet namespace socket address.

— Data Type: struct sockaddr_in6

This is the data type used to represent socket addresses in the IPv6 namespace. It has the following members:

sa_family_t sin6_family
This identifies the address family or format of the socket address. You should store the value of AF_INET6 in this member. See Socket Addresses.
struct in6_addr sin6_addr
This is the IPv6 address of the host machine. See Host Addresses, and Host Names, for how to get a value to store here.
uint32_t sin6_flowinfo
This is a currently unimplemented field.
uint16_t sin6_port
This is the port number. See Ports.


 
 
  Published under the terms of the GNU General Public License Design by Interspire