Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > U


HP-UX 11i Version 3: February 2007

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index


UNIX — local communication domain protocol


#include <sys/types.h> #include <sys/un.h>


The local communication domain protocol, commonly referred to in the industry as the Unix domain protocol, utilizes the path name address format and the AF_UNIX address family. This protocol can be used as an alternative to the Internet protocol family (TCP/IP or UDP/IP) for communication between processes executing on the same node. It has a significant throughput advantage when compared with local IP loopback, due primarily to its much lower code execution overhead. Data is looped back at the protocol layer (OSI Level 4), rather than at the driver layer (OSI Level 2).

Only SOCK_STREAM is supported in the AF_UNIX address family.

The HP-UX implementation of the local communication domain protocol does not support the MSG_OOB flag in recv() (see recv(2)) and send() (see send(2)).


AF_UNIX socket addresses are path names. They are limited to 92 bytes in length, including a terminating null byte. Calls to bind() to an AF_UNIX socket utilize an addressing structure called structsockaddr_un (see bind(2)). Pointers to this structure should be used in all AF_UNIX socket system calls wherever they require a pointer to a struct sockaddr.

The include file <sys/un.h> defines this addressing structure. Within this structure are two notable fields. The first is sun_family, which must be set to AF_UNIX. The next is sun_path, which is the null-terminated character string that specifies the path name of the file associated with the socket (for example, /tmp/mysocket).

Only the passive (listening) socket must bind to an address. The active socket connects to that address, but it does not need an address of its own.

For additional information on using AF_UNIX sockets for interprocess communication, refer to the BSD Sockets Interface Programmer's Guide.

Socket Buffer Size

For stream and datagram sockets, the maximum send and receive buffer size is 262142 bytes. The default buffer size is 32768 bytes. The send and receive buffer sizes can be altered by using the SO_SNDBUF and SO_RCVBUF options of the setsockopt() system call. Refer to getsockopt(2) for details.


AF_UNIX was developed by the University of California, Berkeley.

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.