2 #include <sys/socket.h>
8 #define SOCKET_PATH_SERVER "server_socket"
10 int main(int argc, char *argv[])
13 struct sockaddr_un server_addr;
20 printf("%s: Missing string parameter\n",argv[0]);
24 msglen = strlen(argv[1]) + 1;
25 //printf("msg= %lu \n", sizeof(msg));
27 if (msglen > sizeof(msg))
30 strncpy(msg, argv[1], msglen);
32 /* Create a socket for the client. */
34 sockfd = socket(AF_UNIX, SOCK_STREAM, 0);
36 /* Name the socket, as agreed with the server. */
38 server_addr.sun_family = AF_UNIX;
39 strcpy(server_addr.sun_path, SOCKET_PATH_SERVER);
41 /* Now connect our socket to the server's socket. */
43 result = connect(sockfd, (struct sockaddr *)&server_addr,
51 while (send(sockfd, msg, msglen, 0) == -1){
52 if (errno == EINTR) continue;
56 while (recv(sockfd, buf, sizeof(buf),0) == -1){
57 if (errno == EINTR) continue;
61 printf("sent=%s received=%s\n", msg,buf);
64 unlink(SOCKET_PATH_SERVER);
68 unlink(SOCKET_PATH_SERVER);