All pastes #536019 Raw Edit

Mine

public c v1 · immutable
·published 2007-06-04 07:51 UTC
rendered paste body
#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <errno.h>#include <string.h>#include <netdb.h>#include <sys/types.h>#include <netinet/in.h>#include <sys/socket.h>#define PORT 5842#define MAXDATASIZE 16int main(int argc, char *argv[]){    int sockfd, numbytes;      char buf[200];    struct hostent *he;    struct sockaddr_in their_addr; // connector's address information     if (argc != 2) {        fprintf(stderr,"usage: client hostname\n");        exit(1);    }    if ((he=gethostbyname(argv[1])) == NULL) {  // get the host info         herror("gethostbyname");        exit(1);    }    if ((sockfd = socket(PF_INET, SOCK_STREAM, 0)) == -1) {        perror("socket");        exit(1);    }    their_addr.sin_family = AF_INET;    // host byte order     their_addr.sin_port = htons(PORT);  // short, network byte order     their_addr.sin_addr = *((struct in_addr *)he->h_addr);    memset(their_addr.sin_zero, '\0', sizeof their_addr.sin_zero);    if (connect(sockfd, (struct sockaddr *)&their_addr, sizeof(struct sockaddr)) == -1) {        perror("connect");        exit(1);    }		unsigned int value[4];	unsigned long long result = 0;	int i;	for(i=0;i<4;i++) {		recv(sockfd, &value[i], 4, 0);		result = result + value[i];		printf("Value%d: %u\n", i, value[i]);	}    printf("Total: %llu\n", result);		send(sockfd, &result, 8, 0);		printf("\nSent reply... lets get response\n");		for(i = 0;i<200;i++) {		if(recv(sockfd, buf, 1, 0) == 1) {			printf("%c", buf[0]);		}	}	    	    close(sockfd);    return 0;}