socket本地通信服务端
#include <stdio.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <string.h>
#include <sys/un.h>
#include <unistd.h>
#include <stddef.h>
int main()
{
unlink("temp");
int lfd = socket(AF_UNIX, SOCK_STREAM, 0);
perror("socket");
struct sockaddr_un addr;
addr.sun_family = AF_UNIX;
strcpy(addr.sun_path, "temp");
socklen_t l = sizeof(addr);
int sock_len = offsetof(struct sockaddr_un, sun_path) + strlen(addr.sun_path);
bind(lfd, (struct sockaddr*)&addr, sock_len);
perror("bind");
listen(lfd, 128);
perror("listen");
char buf[1000];
int cfd = accept(lfd, (struct sockaddr*)&addr, &l);
while (1)
{
bzero(buf, 1000);
recv(cfd, buf, 1000, 0);
perror("recv");
send(cfd, buf, 1000, 0);
perror("send");
}
return 0;
}
注意要绑定的本地文件必须不存在

浙公网安备 33010602011771号