All pastes #267036 Raw Edit

Mine

public text v1 · immutable
·published 2006-12-04 16:40 UTC
rendered paste body
#include<stdio.h>
#include<sys/types.h>
#include<sys/socket.h>
#include<netinet/in.h>
#include<netdb.h>
#include<string.h>
void error(char *msg)
{
perror(msg);
exit(0);
}
int main(int argc,char *argv[])
{
int sockfd,portno,n;
struct sockaddr_in serv_addr;
struct hostent *server;
char buffer[256],buf[2000];
if(argc<3)
{
fprintf(stderr,"uasge %s hostname port\n",argv[0]);
exit(0);
}
portno=atoi(argv[2]);
sockfd=socket(AF_INET,SOCK_STREAM,0);
if(sockfd<0)
error("error opening socket");
printf("\n client online!\n");
server=gethostbyname(argv[1]);
if(server==NULL)
{
fprintf(stderr,"no such host exist\n");
exit(0);
}
printf("server online\n");
bzero((struct sockaddr_in *)&serv_addr,sizeof(serv_addr));
serv_addr.sin_family=AF_INET;
bcopy((char *)server->h_addr,(char *)&serv_addr.sin_addr.s_addr,server->h_length);
serv_addr.sin_port=htons(portno);
if(connect(sockfd,&serv_addr,sizeof(serv_addr))<0)
error("error connecting");
printf("client :enter path with filename\n");
scanf("%s",&buffer);
n=write(sockfd,buffer,strlen(buffer));
if(n<0)
error("error writing to socket\n");
bzero(buf,2000);
n=read(sockfd,buf,1999);
if(n<0)
error("error reading from socket");
printf("client:display conents of %s\n",buffer);
fputs(buf,stdout);
return 0;
}