Appendix B. Socket-Related Structures Reference

Socket Address Structures

sockaddr

#include <sys/socket.h>

struct sockaddr {
    sa_family_t  sa_family;    /* Address Family */
    char         sa_data[14];  /* Address data.  */
};

sockaddr_un

#include <sys/un.h>

struct sockaddr_un {
    sa_family_t  sun_family;   /* Address Family */
    char         sun_path[108]; /* Pathname */
};

sockaddr_in and in_addr

#include <netinet/in.h>

struct sockaddr_in {
    sa_family_t    sin_family; /* Address Family */
    uint16_t       sin_port;   /* Port number */
    struct in_addr sin_addr;   /* Internet address */
    unsigned char  sin_zero[8];/* Pad bytes */
};

struct in_addr {
    uint32_t       s_addr;     /* Internet address */

};

Special IPv4 Addresses

 adr.sin_addr.s_addr = ntohl(INADDR_ANY); adr.sin_addr.s_addr = ntohl(INADDR_LOOPBACK); ...

Get Linux Socket Programming by Example now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.