/* File : client_udp.c */ /* Author: Dave Reed */ /* */ /* This program uses a datagram socket to exchange messages with a */ /* server process. */ /*************************************************************************/ #include #include #include #include #include #include #define PORT 52051 #define HOST "duck.creighton.edu" int main() { int sockfd, length; struct sockaddr_in serv_addr, from; struct hostent *server; char buffer[256]; sockfd = socket(AF_INET, SOCK_DGRAM, 0); server = gethostbyname(HOST); serv_addr.sin_family = AF_INET; bcopy(server->h_addr,&serv_addr.sin_addr,server->h_length); serv_addr.sin_port = htons(PORT); printf("Please enter the message: "); bzero(buffer,256); fgets(buffer,255,stdin); length=sizeof(struct sockaddr_in); sendto(sockfd,buffer,strlen(buffer),0,&serv_addr,length); recvfrom(sockfd,buffer,256,0,&from,&length); printf("Got an ack: %s\n", buffer); return 0; }