#include #include #include #include #include #include #include #include int main(void) { int fd, portno, r; ssize_t rcv_bytes; struct hostent *he; struct sockaddr_in server_addr; fd = socket(AF_INET, SOCK_DGRAM, 0); assert(fd != -1); bzero((char *)&server_addr, sizeof(server_addr)); portno = 9876; server_addr.sin_family = AF_INET; server_addr.sin_addr.s_addr = INADDR_ANY; server_addr.sin_port = htons(portno); r = bind(fd, (struct sockaddr *)&server_addr, sizeof(server_addr)); assert (r == 0); for (;;) { char buf[25]; struct sockaddr_in src_addr; socklen_t len; rcv_bytes = recvfrom(fd, &buf, sizeof(buf), 0, (struct sockaddr *)&src_addr, &len); printf("%s\n", buf); } return (0); }