6 #include <sys/socket.h>
9 #define SUN_PATH "local-stream"
12 struct sockaddr_un addr = {
13 .sun_family = AF_UNIX,
16 socklen_t len = offsetof(struct sockaddr_un, sun_path) + sizeof SUN_PATH;
22 assert(socket(PF_LOCAL, SOCK_STREAM, 0) == 0);
23 assert(bind(0, (struct sockaddr *) &addr, len) == 0);
24 assert(listen(0, 5) == 0);
26 memset(&addr, 0, sizeof addr);
27 assert(getsockname(0, (struct sockaddr *) &addr, &len) == 0);
33 assert(accept(0, (struct sockaddr *) &addr, &len) == 1);
34 assert(close(0) == 0);
36 assert(waitpid(pid, &status, 0) == pid);
38 assert(close(1) == 0);
40 assert(socket(PF_LOCAL, SOCK_STREAM, 0) == 1);
41 assert(close(0) == 0);
42 assert(connect(1, (struct sockaddr *) &addr, len) == 0);
43 assert(close(1) == 0);