2 #include <sys/socket.h>
8 #define SOCKET_PATH_SERVER "server_socket"
14 struct sockaddr_un server_addr;
15 struct sockaddr_un client_addr;
20 server_sockfd = socket(AF_UNIX, SOCK_DGRAM, 0);
22 unlink(SOCKET_PATH_SERVER);
23 server_addr.sun_family = AF_UNIX;
24 strcpy(server_addr.sun_path, SOCKET_PATH_SERVER);
26 if (bind(server_sockfd, (struct sockaddr *)&server_addr,
27 sizeof(server_addr)) < 0){
28 fprintf(stderr,"Bind ");
34 addr_len = sizeof(client_addr);
35 while ((mlen = recvfrom(server_sockfd, buf, sizeof(buf), 0,
36 (struct sockaddr*)&client_addr,
38 if (errno == EINTR) continue;
39 fprintf(stderr,"Recvfrom ");
43 printf("Prijate z %s\n",client_addr.sun_path);
44 while (sendto(server_sockfd, buf, mlen, 0,
45 (struct sockaddr*)&client_addr,
47 if (errno == EINTR) continue;
48 fprintf(stderr,"Sendto ");
54 unlink(SOCKET_PATH_SERVER);
58 unlink(SOCKET_PATH_SERVER);
59 perror("-server error");