HP Rp7410 BSD Sockets Interface Programmer's Guide - Page 161
Example Using UNIX Domain Datagram Sockets
View all HP Rp7410 manuals
Add to My Manuals
Save this manual to your list of manuals |
Page 161 highlights
Using UNIX Domain Datagram Sockets Example Using UNIX Domain Datagram Sockets alarm((unsigned long) 120); /* Create a UNIX datagram socket for server */ if ((sock = socket(AF_UNIX, SOCK_DGRAM, 0)) < 0) { perror("server: socket"); exit(1); } /* Set up address structure for server socket */ bzero(&servaddr, sizeof(servaddr)); servaddr.sun_family = AF_UNIX; strcpy(servaddr.sun_path, SOCKET_PATH); if (bind(sock, &servaddr, sizeof(servaddr)) < 0) { close(sock); perror("server: bind"); exit(2); } /* Receive data from anyone, echo back data to the sender * Note that fromlen is passed as pointer so recvfrom * call can return the size of the returned address. */ expect = 5 * 2000; while (expect > 0) { fromlen = sizeof(from); rlen = recvfrom(sock, sdata, 2000, 0, &from, &fromlen); if (rlen == -1) { perror("server : recv\n"); exit(3); } else { expect -= rlen; printf("server : recv'd %d bytes\n",rlen); slen = sendto(sock, sdata, rlen, 0, &from, fromlen); if (slen