UNIX域流式套接字的用法与TCP套接字基本一致,区别就在于使用的协议和地址不同。
UNIX域流式套接字服务器器端流程以及示例代码如下。
(1)创建UNIX域流式套接字。
(2)将套接字文件描述符与本地信息结构体绑定。
(3)设置监听模式。
(4)接收客户端的连接请求。
(5)发送、接收数据。
1 #include <stdio.h>
2 #include <arpa/inet.h>
3 #include <sys/types.h>
4 #include <sys/socket.h>
5 #include <stdlib.h>
6 #include <unistd.h>
7 #include <string.h>
8 #include <strings.h>
9 #include <sys/un.h>
10
11 #define N 128
12 #define errlog(errmsg) do{perror(errmsg);\
13 printf("%s--%s--%d\n",\
14 __FILE__, __func__, __LINE__);\
15 exit(1);\
16 }while(0)
17
18 int main(int argc, const char *argv[])
19 {
20 int sockfd, acceptfd;
21 struct sockaddr_un serveraddr, clientaddr;
22 socklen_t addrlen = sizeof(serveraddr);
23 char buf[N] = {};