mkfsock.c.texi

来自「一个C源代码分析器」· TEXI 代码 · 共 44 行

TEXI
44
字号
#include <stddef.h>#include <stdio.h>#include <errno.h>#include <stdlib.h>#include <sys/socket.h>#include <sys/un.h>int make_named_socket (const char *filename)@{  struct sockaddr_un name;  int sock;  size_t size;  /* @r{Create the socket.} */    sock = socket (PF_UNIX, SOCK_DGRAM, 0);  if (sock < 0)    @{      perror ("socket");      exit (EXIT_FAILURE);    @}  /* @r{Bind a name to the socket.} */  name.sun_family = AF_FILE;  strcpy (name.sun_path, filename);  /* @r{The size of the address is     the offset of the start of the filename,     plus its length,     plus one for the terminating null byte.} */  size = (offsetof (struct sockaddr_un, sun_path)          + strlen (name.sun_path) + 1);  if (bind (sock, (struct sockaddr *) &name, size) < 0)    @{      perror ("bind");      exit (EXIT_FAILURE);    @}  return sock;@}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?