/* Fatemeh Hosseini - client.c This is a simple client program which sends DATA to the server and get the response from server. For running this example, first run server.c then client.c */ #include #include #include #include #include #include #include #include #define DATA "Hello Server" int main(int argc, char *argv[]) { int sock; int rval; struct sockaddr_in server; struct hostent *hp; char buff[1024]; sock = socket(AF_INET, SOCK_STREAM, 0); if( sock <0) { perror("socket failed"); close(sock); exit(1); } server.sin_family=AF_INET; server.sin_addr.s_addr=htonl(INADDR_ANY); server.sin_port=htons(8001); if(connect(sock, (struct sockaddr *) &server, sizeof(server)) < 0) { perror("connect failed"); close(sock); exit(1); } if(send(sock, DATA, sizeof(DATA), 0) < 0) { perror("send failed"); close(sock); exit(1); } printf("Sent %s\n",DATA); memset(buff,0,sizeof(buff)); if((rval = recv(sock, buff, sizeof(buff), 0)) < 0) perror("reading stream message error"); else if (rval==0) printf("ending connection\n"); else printf("Recieved MSG: %s\n",buff); close(sock); return 0; }