Professional Documents
Culture Documents
#include<sys/types.h>
#include<sys/socket.h>
#include<netinet/in.h>
#include<stdio.h>
#include<stdlib.h>
#include<errno.h>
int main()
int fd,fd1;
if(fd=socket(AF_INET,SOCK_STREAM,0))<0)
perror(“socket”);
exit(0);
if(fd1=socket(AF_INET,SOCK_DGRAM,0))<0)
perror(“socket”);
exit(0);
return 0;
#include<sys/socket.h>
2
#include<sys/types.h>
#include<netinet/in.h>
#include<errno.h>
#include<stdio.h>
#include<stdlib.h>
int main()
int sockfd;
int len,i;
//Creation of socket
if((sockfd=socket(AF_INET,SOCK_STREAM,0))<0)
perror("Socket failed");
exit(1);
myaddr.sin_family=AF_INET;
myaddr.sin_port=htons(MYPORT);
myaddr.sin_addr.s_addr=htonl(0l);
if(bind(sockfd,(struct sockaddr*)&myaddr,sizeof(myaddr))<0)
perror("bind failed");
exit(1);
}
3
printf(“Bind success”);
//A program get the port number from user and bind to socket
#include<sys/socket.h>
#include<sys/types.h>
#include<netinet/in.h>
#include<errno.h>
#include<stdio.h>
#include<stdlib.h>
int sockfd;
int len,i;
perror("usage:server port");
exit(1);
//Creation of socket
if((sockfd=socket(AF_INET,SOCK_STREAM,0))<0)
perror("Socket failed");
exit(1);
myaddr.sin_port=htons(atoi(argv[1]));
myaddr.sin_addr.s_addr=htonl(0l);
if(bind(sockfd,(struct sockaddr*)&myaddr,sizeof(myaddr))<0)
perror("bind failed");
exit(1);
printf(“Bind success”);
//A program to make the server socket ready to listen the connection
#include<sys/socket.h>
#include<sys/types.h>
#include<netinet/in.h>
#include<errno.h>
#include<stdio.h>
#include<stdlib.h>
int main()
int sockfd;
int len,i;
//Creation of socket
5
if((sockfd=socket(AF_INET,SOCK_STREAM,0))<0)
perror("Socket failed");
exit(1);
myaddr.sin_family=AF_INET;
myaddr.sin_port=htons(MYPORT);
myaddr.sin_addr.s_addr=htonl(0l);
if(bind(sockfd,(struct sockaddr*)&myaddr,sizeof(myaddr))<0)
perror("bind failed");
exit(1);
printf(“Bind success”);
if(listen(sockfd,5)<0)
perror("listen failed");
exit(1);
printf(“Listen success”);
#include<sys/types.h>
#include<netinet/in.h>
#include<errno.h>
#include<stdio.h>
#include<stdlib.h>
int main()
int sockfd,newfd,nbytes;
char buff[512],temp,buff1[512];
int len,i;
//Creation of socket
if((sockfd=socket(AF_INET,SOCK_STREAM,0))<0)
perror("Socket failed");
exit(1);
myaddr.sin_family=AF_INET;
myaddr.sin_port=htons(MYPORT);
myaddr.sin_addr.s_addr=htonl(0l);
if(bind(sockfd,(struct sockaddr*)&myaddr,sizeof(myaddr))<0)
perror("bind failed");
7
exit(1);
printf(“Bind success”);
if(listen(sockfd,5)<0)
perror("listen failed");
exit(1);
printf(“Listen success”);
for(; ;)
if((newfd=accept(sockfd,0,0))<0)
perror("accept failed");
exit(1);
while((nbytes=read(newfd,buff,512))!=0)
if(nbytes<0)
perror("Read failed");
exit(1);
write(1,buff,nbytes);
if(write(newfd,buff,len)<0)
8
{
perror("write failed");
exit(1);
}//while
}//for
}//main
#include<sys/socket.h>
#include<sys/types.h>
#include<netinet/in.h>
#include<errno.h>
#include<stdio.h>
#include<stdlib.h>
int sockfd,newfd,nbytes1,nbytes;
char buff[512];
if(argc!=3)
perror("usage:client,server port");
exit(1);
//creating socket
if((sockfd=socket(AF_INET,SOCK_STREAM,0))<0)
9
{
perror("Socket failed");
exit(1);
servaddr.sin_family=AF_INET;
servaddr.sin_port=htons(atoi(argv[1]));
servaddr.sin_addr.s_addr=htonl(INADDR_ANY);
if((connect(sockfd,(struct sockaddr*)&servaddr,sizeof(servaddr))<0))
perror("connect failed");
exit(1);
while((nbytes=read(0,buff,512))!=0)
if(nbytes<0)
perror("read1 failed");
exit(1);
if((write(sockfd,buff,nbytes))!=nbytes)
perror("write1 error");
10
exit(1);
if((nbytes1=read(sockfd,buff,512))<0)
perror("read2 failed");
exit(1);
if(write(1,buff,nbytes1)!=nbytes1)
perror("write2 failed");
exit(1);
} //while
} //main
#include<sys/socket.h>
#include<sys/types.h>
#include<netinet/in.h>
#include<errno.h>
#include<stdio.h>
#include<stdlib.h>
int main()
11
{
int sockfd,newfd,nbytes;
char buff[512],temp,buff1[512];
int len,i;
//Creation of socket
if((sockfd=socket(AF_INET,SOCK_STREAM,0))<0)
perror("Socket failed");
exit(1);
myaddr.sin_family=AF_INET;
myaddr.sin_port=htons(MYPORT);
myaddr.sin_addr.s_addr=htonl(0l);
if(bind(sockfd,(struct sockaddr*)&myaddr,sizeof(myaddr))<0)
perror("bind failed");
exit(1);
printf(“Bind success”);
if(listen(sockfd,5)<0)
perror("listen failed");
exit(1);
}
12
printf(“Listen success”);
for(; ;)
if((newfd=accept(sockfd,0,0))<0)
perror("accept failed");
exit(1);
while((nbytes=read(newfd,buff,512))!=0)
if(nbytes<0)
perror("Read failed");
exit(1);
write(1,buff,nbytes);
printf("Enter response");
scanf("%s",buff1);
len=strlen(buff1);
if(write(newfd,buff1,len)<0)
perror("write failed");
exit(1);
}//while
13
}//for
}//main
//A program for TCP client-server to read a string from client and send reverse string from server
// Server program for reading a string from client and send reverse string to client
#include<sys/socket.h>
#include<sys/types.h>
#include<netinet/in.h>
#include<errno.h>
#include<stdio.h>
#include<stdlib.h>
int main()
int sockfd,newfd,nbytes;
char buff[512],temp,buff1[512];
int len,i;
//Creation of socket
if((sockfd=socket(AF_INET,SOCK_STREAM,0))<0)
perror("Socket failed");
exit(1);
myaddr.sin_family=AF_INET;
myaddr.sin_port=htons(MYPORT);
14
myaddr.sin_addr.s_addr=htonl(0l);
if(bind(sockfd,(struct sockaddr*)&myaddr,sizeof(myaddr))<0)
perror("bind failed");
exit(1);
printf(“Bind success”);
if(listen(sockfd,5)<0)
perror("listen failed");
exit(1);
printf(“Listen success”);
for(; ;)
if((newfd=accept(sockfd,0,0))<0)
perror("accept failed");
exit(1);
while((nbytes=read(newfd,buff,512))!=0)
if(nbytes<0)
{
15
perror("Read failed");
exit(1);
write(1,buff,nbytes);
strrev(buff);
if(write(newfd,buff,len)<0)
perror("write failed");
exit(1);
}//while
}//for
}//main
myaddr.sin_family=AF_INET;
myaddr.sin_port=htons(atoi(argv[1]));
myaddr.sin_addr.s_addr=htonl(0l);
//bind
if((bind(sockfd,(struct sockaddr*)&myaddr,sizeof(myaddr)))<0)
{
perror("bind failed");
exit(1);
}
addrlen=sizeof(clntaddr);
//recvfrom
if((nbytes=recvfrom(sockfd,buff,512,0,(struct sockaddr*)&clntaddr,&addrlen))<0)
//client address is a value result argument
//tell server to fill the values
{
perror("recvfrom error");
exit(1);
}
if((sendto(sockfd,buff1,nbytes,0,(struct sockaddr*)&clntaddr,addrlen))!=nbytes)
{
perror("send to error");
exit(1);
}
}
#include<sys/types.h>
#include<sys/socket.h>
#include<netinet/in.h>
17
#include<errno.h>
#include<stdlib.h>
#include<stdio.h>
main(int argc,char *argv[])
{
int sockfd,nbytes,nbytes1,addrlen;
char buff[512];
struct sockaddr_in myaddr,servaddr;
if(argc!=3)
{
perror("usage client,serverport,serveraddress");
exit(1);
}
//socket
if((sockfd=socket(AF_INET,SOCK_DGRAM,0))<0)
{
perror("Socket failed");
exit(1);
}
myaddr.sin_family=AF_INET;
myaddr.sin_port=htons(0);
//you can assign ur own port no if zero is specified
myaddr.sin_addr.s_addr=htonl(0l);
//bind
if((bind(sockfd,(struct sockaddr*)&myaddr,sizeof(myaddr)))<0)
{
perror("bind failed");
exit(1);
}
if((nbytes=read(0,buff,512))<0)
{
perror("read error");
exit(1);
}
//send to
18
if((sendto(sockfd,buff,nbytes,0,(struct sockaddr*)&servaddr,sizeof(servaddr)))!=
nbytes)
{
perror("send to failed");
exit(1);
}
// recv from
addrlen=sizeof(servaddr);
if((nbytes1=recvfrom(sockfd,buff,512,0,(struct sockaddr*)&servaddr,&addrlen))!=nbytes)
{
perror("recvfrom error");
exit(1);
}
#include <stdio.h>
#include <stdlib.h>
#include <sys/time.h>
#include <sys/types.h>
#include <unistd.h>
int main(void)
{
fd_set rfds;
struct timeval tv;
int retval;
if((sockfd=socket(AF_INET,SOCK_DGRAM,0))<0)
{
perror("Socket failed");
exit(1);
}
myaddr.sin_family=AF_INET;
myaddr.sin_port=htons(atoi(argv[1]));
myaddr.sin_addr.s_addr=htonl(0l);
//bind
if((bind(sockfd,(struct sockaddr*)&myaddr,sizeof(myaddr)))<0)
{
perror("bind failed");
exit(1);
}
20
addrlen=sizeof(clntaddr);
//recvfrom
if((nbytes=recvfrom(sockfd,buff,512,0,(struct sockaddr*)&clntaddr,&addrlen))<0)
{
perror("recvfrom error");
exit(1);
}
len=strlen(buff)-1;
for(i=0;i<strlen(buff)/2;i++)
{
temp=buff[i];
buff[i]=buff[len];
buff[len--]=temp;
}
//send to
if((sendto(sockfd,buff,nbytes,0,(struct sockaddr*)&clntaddr,addrlen))!=nbytes)
{
perror("send to error");
exit(1);
}
}
#include<sys/types.h>
#include<sys/socket.h>
#include<netinet/in.h>
#include<errno.h>
#include<stdlib.h>
#include<stdio.h>
main(int argc,char *argv[])
{
int sockfd,nbytes,nbytes1,addrlen;
char buff[512];
struct sockaddr_in myaddr,servaddr;
if(argc!=3)
{
perror("usage client,serverport,serveraddress");
exit(1);
}
//socket
if((sockfd=socket(AF_INET,SOCK_DGRAM,0))<0)
21
{
perror("Socket failed");
exit(1);
}
myaddr.sin_family=AF_INET;
myaddr.sin_port=htons(0);
myaddr.sin_addr.s_addr=htonl(0l);
//bind
if((bind(sockfd,(struct sockaddr*)&myaddr,sizeof(myaddr)))<0)
{
perror("bind failed");
exit(1);
}
if((nbytes=read(0,buff,512))<0)
{
perror("read error");
exit(1);
}
//send to
if((sendto(sockfd,buff,nbytes,0,(struct sockaddr*)&servaddr,sizeof(servaddr)))!=nbytes)
{
perror("send to failed");
exit(1);
}
// recv from
addrlen=sizeof(servaddr);
if((nbytes1=recvfrom(sockfd,buff,512,0,(struct sockaddr*)&servaddr,&addrlen))!=nbytes)
{
perror("recvfrom error");
exit(1);
}