#include #include #include #include #include #include #include #include #include int main(int argc, char *argv[]) { int sockfd; struct sockaddr_in servaddr; sockfd = socket(AF_INET, SOCK_DGRAM, 0); servaddr.sin_family = AF_INET; servaddr.sin_addr.s_addr = htonl(INADDR_ANY); int port = atoi(argv[1]); servaddr.sin_port = htons(port); int n; socklen_t len = sizeof(servaddr); char *buf = malloc(100); fgets(buf, 100, stdin); while(strcmp(buf, "quit\n") != 0) { sendto(sockfd, buf, strlen(buf), MSG_CONFIRM, (const struct sockaddr *) &servaddr, sizeof(servaddr)); n = recvfrom(sockfd, buf, 100, MSG_WAITALL, (struct sockaddr *) &servaddr, &len); printf("Recieved: %s", buf); fgets(buf, 100, stdin); } close(sockfd); return 0; }