Professional Documents
Culture Documents
Client Server Chat Using TCP
Client Server Chat Using TCP
Client Server Chat Using TCP
#include<stdio.h> #include<sys/types.h> #include<netinet/in.h> #include<string.h> main() { int sd,sd2,nsd,clilen,sport,len; char sendmsg[20],rcvmsg[20]; struct sockaddr_in servaddr,cliaddr; printf("Enter the Server port"); printf("\n_____________________\n"); scanf("%d",&sport); sd=socket(AF_INET,SOCK_STREAM,0); if(sd<0) printf("Can't Create \n"); else printf("Socket is Created\n"); servaddr.sin_family=AF_INET; servaddr.sin_addr.s_addr=htonl(INADDR_ANY); servaddr.sin_port=htons(sport); sd2=bind(sd,(struct sockaddr*)&servaddr,sizeof(servaddr)); if(sd2<0) printf(" Can't Bind\n"); else printf("\n Binded\n"); listen(sd,5); clilen=sizeof(cliaddr); nsd=accept(sd,(struct sockaddr*)&cliaddr,&clilen); if(nsd<0) printf("Can't Accept\n"); else printf("Accepted\n"); printf("\nReceived Messages\n"); do { recv(nsd,rcvmsg,20,0); printf("%s",rcvmsg); fgets(sendmsg,20,stdin); len=strlen(sendmsg); sendmsg[len-1]='\0';
CLIENT
#include<stdio.h> #include<sys/types.h> #include<netinet/in.h> main() { int csd,cport,len; char sendmsg[20],revmsg[20]; struct sockaddr_in servaddr; printf("Enter the port\n"); scanf("%d",&cport); csd=socket(AF_INET,SOCK_STREAM,0); if(csd<0) printf("Can't Create\n"); else printf("Scocket is Created\n"); servaddr.sin_family=AF_INET; servaddr.sin_addr.s_addr=htonl(INADDR_ANY); servaddr.sin_port=htons(cport); if(connect(csd,(struct sockaddr*)&servaddr,sizeof(servaddr))<0) printf("Can't Connect\n"); else printf("Connected\n"); do { fgets(sendmsg,20,stdin); len=strlen(sendmsg); sendmsg[len-1]='\0'; send(csd,sendmsg,20,0); wait(20); recv(csd,revmsg,20,0); printf("%s",revmsg); } while(strcmp(revmsg,"bye")!=0); }
OUTPUT:
Client Side [1me16@localhost ~]$ cc tcpclient.c [1me16@localhost ~]$. /a.out Enter the port 6523 Socket is Created Connected Hello Server Side [1me16@localhost ~]$ cc tcpserver.c.c [1me16@localhost ~]$. /a.out Enter the server port 6543 Socket is Created Binded Accepted Received Messages. Hello
CLIENT
#include<stdio.h> #include<sys/socket.h> #include<sys/types.h> #include<netinet/in.h> main() { struct sockaddr_in sadd,cadd; int id,len,n,c,s,b,port; char str[100],serstr[100]; id=socket(PF_INET,SOCK_DGRAM,0); if(id<0) printf("Can't Create\n"); else printf("Socket is Created\n"); printf("Enter the IP address\n"); scanf("%s",serstr); printf("Enter the port Address\n"); scanf("%d",&port); cadd.sin_family=PF_INET; cadd.sin_addr.s_addr=inet_addr(serstr); cadd.sin_port=htons(port); printf("Enter the Data\n"); scanf("%s",str); b=bind(id,(struct sockaddr*)&cadd,sizeof(cadd)); if(sendto(id,str,sizeof(str),0,(struct sockaddr*)&cadd,sizeof(cadd))<0) printf("Transmit Error"); else printf("Server Transmitted=%s\n",str); close(id); }
OUTPUT:
Client Side [1me16@localhost ~]$ cc udpclient.c [1me16@localhost ~]$. /a.out Socket is Created Enter the IP Address 172.15.170.104 Enter the port address 6543 Enter the data Hello Server transmitted = hello Server Side [1me16@localhost ~]$ cc udpserver.c [1me16@localhost ~]$. /a.out Created Enter the port address . 6543 Binded .
printf(" Can't Bind\n"); else printf("\n Binded\n"); listen(sd,5); clilen=sizeof(cliaddr); nsd=accept(sd,(struct sockaddr*)&cliaddr,&clilen); if(nsd<0) printf("Can't Accept\n"); else printf("Accepted\n"); printf("The Client Address is %s",inet_ntoa(cliaddr.sin_addr.s_addr)); }
CLIENT
#include<stdio.h> #include<sys/types.h> #include<netinet/in.h> main() { int csd,cport,len; char sendmsg[20],revmsg[20]; struct sockaddr_in servaddr; printf("Enter the port\n"); scanf("%d",&cport); csd=socket(AF_INET,SOCK_STREAM,0); if(csd<0) printf("Can't Create\n"); else printf("Scocket is Created\n"); servaddr.sin_family=AF_INET; servaddr.sin_addr.s_addr=inet_addr("172.15.170.104"); servaddr.sin_port=htons(cport); if(connect(csd,(struct sockaddr*)&servaddr,sizeof(servaddr))<0) printf("Can't Connect\n"); else printf("Connected\n"); }
OUTPUT:
Client Side [1me16@localhost ~]$ cc addressclient.c [1me16@localhost ~]$. /a.out Enter the port: 6543 Socket is Created... Server Side [1me16@localhost ~]$ cc addressserver.c [1me16@localhost ~]$. /a.out Enter the port: 6543 Created... Binded
CLIENT
#include<stdio.h> #include<sys/types.h> #include<sys/socket.h> #include<netinet/in.h> #include<stdlib.h> #include<time.h> main() { int csd,cport,len; char revmsg[100]; struct sockaddr_in servaddr; printf("Enter the port\n"); scanf("%d",&cport); csd=socket(AF_INET,SOCK_STREAM,0); if(csd<0) printf("Can't Create\n"); else printf("Socket is Created\n"); servaddr.sin_family=AF_INET; servaddr.sin_addr.s_addr=htonl(INADDR_ANY); servaddr.sin_port=htons(cport); if(connect(csd,(struct sockaddr*)&servaddr,sizeof(servaddr))<0) printf("Connection error\n"); recv(csd,revmsg,100,0); printf("%s\n",revmsg); }
OUTPUT:
Client Side [1me16@localhost ~]$ cc dateclient.c [1me16@localhost ~]$. /a.out Enter the port: 8543 Socket is Created... Connected Server Side [1me16@localhost ~]$ cc dateserver.c [1me16@localhost ~]$. /a.out Enter the port: 8543 Fri Sep 17 03:05:27 2010 Socket is Created...
main() { FILE *fp; int sd,newsd,ser,n,a,cli,pid,bd,port,clilen; char name[100],fileread[100],fname[100],ch,file[100],rcv[100]; struct sockaddr_in servaddr,cliaddr; printf("Enter the port address: "); scanf("%d",&port); sd=socket(AF_INET,SOCK_STREAM,0); if(sd<0) printf("Can't Create \n"); else printf("Socket is Created\n"); servaddr.sin_family=AF_INET; servaddr.sin_addr.s_addr=htonl(INADDR_ANY); servaddr.sin_port=htons(port); a=sizeof(servaddr); bd=bind(sd,(struct sockaddr*)&servaddr,a); if(bd<0) printf(" Can't Bind\n"); else printf("\n Binded\n"); listen(sd,5); clilen=sizeof(cliaddr); newsd=accept(sd,(struct sockaddr*)&cliaddr,&clilen); if(newsd<0) printf("Can't Accept\n"); else printf("Accepted\n"); n=recv(newsd,rcv,100,0); rcv[n]='\0'; fp=fopen(rcv,"r"); if(fp==NULL) {
send(newsd,"error",5,0); close(newsd); } else { while(fgets(fileread,sizeof(fileread),fp)) { if(send(newsd,fileread,sizeof(fileread),0)<0) { printf("Can't send\n"); } sleep(1); } if(!fgets(fileread,sizeof(fileread),fp)) { send(newsd,"completed",999999999,0); } return(0); } }
CLIENT
#include<stdio.h> #include<sys/socket.h> #include<netinet/in.h> main() { FILE *fp; int csd,n,ser,s,cli,cport,newsd; char name[100],rcvmsg[100],rcvg[100],fname[100]; struct sockaddr_in servaddr; printf("Enter the port"); scanf("%d",&cport); csd=socket(AF_INET,SOCK_STREAM,0); if(csd<0) { printf("Error..."); exit(0); } else printf("Socket is Created...\n");
servaddr.sin_family=AF_INET; servaddr.sin_addr.s_addr=htonl(INADDR_ANY);servaddr.sin_port=htons(cport); if(connect(csd,(struct sockaddr*)&servaddr,sizeof(servaddr))<0) printf("Error in Connection...\n"); else printf("Connected...\n"); printf("Enter the existing file name: "); scanf("%s",name); printf("\nEnter the new filename: "); scanf("%s",fname); fp=fopen(fname,"w"); send(csd,name,sizeof(name),0); while(1) { s=recv(csd,rcvg,100,0); rcvg[s]='\0'; if(strcmp(rcvg,"error")==0) printf("File is not Available...\n"); if(strcmp(rcvg,"completed")==0) { printf("file is transferred...\n"); fclose(fp); close(csd); break; } else fputs(rcvg,stdout); fprintf(fp,"%s",rcvg); } }
OUTPUT:
Server Side [1me16@localhost ~]$ cc ftpclient.c [1me16@localhost ~]$. /a.out Enter the port address: 8663 Socket is Created Binded Connected Client Side [1me16@localhost ~]$ cc ftpserver.c [1me16@localhost ~]$. /a.out Socket is Created.. Connected Enter the existing file name: net Enter the new file name: network Welcome to Network Lab File is transferred...
clilen=sizeof(cliaddr); newsd=accept(sd,(struct sockaddr*)&cliaddr,&clilen); if(newsd<0) printf("Can't Accept\n"); else printf("Accepted\n"); printf("Enter the lost frame\n"); scanf("%s",lost); send(newsd,lost,20,0); recv(newsd,recvmsg,20,0); printf("\n Frame %s is successfully received",recvmsg); }
CLIENT
#include<stdio.h> #include<sys/types.h> #include<netinet/in.h> #include<string.h> main() { int i,sd,n,port; char sendmsg[100],recvmsg[100]; struct sockaddr_in servaddr; printf("Enter the port\n"); scanf("%d",&port); sd=socket(AF_INET,SOCK_STREAM,0); if(sd<0) printf("Can't Create\n"); else printf("Socket is Created\n"); servaddr.sin_family=AF_INET; servaddr.sin_addr.s_addr=htonl(INADDR_ANY); servaddr.sin_port=htons(port); if(connect(sd,(struct sockaddr*)&servaddr,sizeof(servaddr))<0) printf("Can't Connect\n"); else printf("Connected\n"); printf("Enter the no of frames\n"); scanf("%d",&n); printf("\nThe frames all\n"); for(i=1;i<=n;i++) printf("Frame %d\n",i); recv(sd,recvmsg,20,0); printf("\n Lost frame %s is retransmitted ",recvmsg); strcpy(sendmsg,recvmsg); send(sd,sendmsg,20,0); }
OUTPUT:
Server: [1me16alhost~]: VI swserver.c [1me16alhost~]: CC swserver.c [1me16alhost~]: /a.out Enter the port address 8543 Socket is created Binded Accepted Enter the lost frame: 3 Frame tcpserver.c is successfully transmitted Client: [1me16alhost~]: VI swclient.c [1me16alhost~]: CC swclient.c [1me16alhost~]: /a.out Enter the client port no 8543 Socket is created Connected.. Enter the no of frames: 4 The frames all Frame 1/n Frame 2/n Frame 3/n Frame 4/n
servaddr.sin_port=htons(sport); sd2=bind(sd,(struct sockaddr*)&servaddr,sizeof(servaddr)); if(sd2<0) printf("Can't Bind\n"); else printf("\n Binded\n"); listen(sd,5); clilen=sizeof(cliaddr); nsd=accept(sd,(struct sockaddr*)&cliaddr,&clilen); if(nsd<0) printf("Can't Accept\n"); else printf("Accepted\n"); recv(nsd,recvmsg,20,0); for(i=0;i<4;i++) { if(strcmp(recvmsg,hostid[i])==0) { send(nsd,ipid[i],20,20); break; }}}
CLIENT
#include<stdio.h> #include<sys/types.h> #include<netinet/in.h> main() { int csd,cport,len; char sendmsg[20],recvmsg[20]; struct sockaddr_in servaddr; printf("DNS Client Side\n"); printf("Enter the Client port\n"); scanf("%d",&cport); csd=socket(AF_INET,SOCK_STREAM,0); if(csd<0) printf("Can't Create\n"); else printf("Socket is Created\n"); servaddr.sin_family=AF_INET; servaddr.sin_addr.s_addr=htonl(INADDR_ANY); servaddr.sin_port=htons(cport); if(connect(csd,(struct sockaddr*)&servaddr,sizeof(servaddr))<0) printf("Can't Connect\n"); else printf("Connected\n"); printf("Enter the host address\n"); scanf("%s",sendmsg); send(csd,sendmsg,20,0); recv(csd,recvmsg,20,20); printf("The Coresponding IP Address is\n"); printf("%s",recvmsg); }
OUTPUT:
Server: [1me16alhost~]: VI dnsserver.c [1me16alhost~]: CC dnsserver.c [1me16alhost~]: /a.out Enter the port no 8543 Socket is created Binded Accepted Client: [1me16alhost~]: VI dnsclient.c [1me16alhost~]: CC dnsclient.c [1me16alhost~]: /a.out Enter the client port no 8543 Socket is created Connected.. Enter the host address www.yahoo.com The corresponding IP Address is 172.15.64.66
cout<<"Enter the weight for row: "<<i; for(int j=1;j<=no;j++) { cin>>graph[i][j]; } } cout<<"Enter the source Vector: "; cin>>source; } void dij::initialize() { for(int i=1;i<=no;i++) { mark[i]=0; pathestimate[i]=999; predessor[i]=0; } pathestimate[source]=0;
} void dij::algorithm() { initialize(); int count=0,i,u; while(count<no) { u=minimum(); set[++count]=u; mark[u]=1; for(int i=1;i<=no;i++) { if(graph[u][i]>0) { if(mark[i]!=1) { if(pathestimate[i]>pathestimate[u]+graph[u][i]) { predessor[i]=u; pathestimate[i]=pathestimate[u]+graph[u][i]; } } } } //for loop } //while loop } void dij::printpath(int i) { cout<<endl; if(i==source) { cout<<source; } else if(predessor[i]==0) cout<<"No path from"<<source<<"to"<<i; else { printpath(predessor[i]); cout<<"....."<<i; } } void dij::output() {
for(int i=1;i<=no;i++) { printpath(i); if(pathestimate[i]!=999) cout<<"->("<<pathestimate[i]<<")\n"; } cout<<endl; } int dij::minimum() { int min=999,i,t; for(i=1;i<=no;i++) { if(mark[i]!=1) { if(min>=pathestimate[i]) { min = pathestimate[i]; t=i; } } } return t; } void main() { clrscr(); dij d; d.read(); d.algorithm(); d.output(); getch(); }
OUTPUT
Enter the no of vertices: 3 Enter the Adjacent matrices Enter the weight for row: 1 0 1 3 Enter the weight for row: 2 2 1 1 Enter the weight for row: 3 2 1 1 Enter the source vector: 1 1 -> (0) 1. 2- > (1) 1 2 . 3 -> (1)
OUTPUT:
CONTENT TYPE=text/html Date:03-11-2010 time:15:13:28 <html> <head> <title>welcome</title> <body bgcolor=blue> <h1>welcome to network lab-1</h> </body> </html> content length is 109
CLIENT - 1
#include<stdio.h> #include<sys/types.h> #include<netinet/in.h> main() char sendmsg[20],revmsg[20]; { struct sockaddr_in servaddr; int printf("Enter the port no:\n"); csd,cp scanf("%d",&cport); ort,len csd=socket(AF_INET,SOCK_STREAM,0); ; if(csd<0) printf("Can't Create\n"); else printf("Socket is Created\n"); servaddr.sin_family=AF_INET; servaddr.sin_addr.s_addr=htonl(INADDR_ANY); servaddr.sin_port=htons(cport); if(connect(csd,(struct sockaddr*)&servaddr,sizeof(servaddr))<0) printf("Can't Connect\n"); else printf("Connected\n"); do sendmsg,20,stdin); { len=strlen(sendmsg); fg sendmsg[len-1]='\0'; et send(csd,sendmsg,20,0); s( wait(20);
CLIENT - 2
#include<stdio.h> #include<sys/types.h> #include<netinet/in.h> main() { int csd,cport,len; char sendmsg[20],revmsg[20]; struct sockaddr_in servaddr; printf("Enter the port no:\n"); scanf("%d",&cport); csd=socket(AF_INET,SOCK_STREAM,0); if(csd<0) printf("Can't Create\n"); else printf("Socket is Created\n"); servaddr.sin_family=AF_INET; servaddr.sin_addr.s_addr=htonl(INADDR_ANY); servaddr.sin_port=htons(cport); if(connect(csd,(struct sockaddr*)&servaddr,sizeof(servaddr))<0) printf("Can't Connect\n"); else printf("Connected\n"); do { fgets(sendmsg,20,stdin); len=strlen(sendmsg); sendmsg[len-1]='\0'; send(csd,sendmsg,20,0); wait(20); recv(csd,revmsg,20,0); printf("%s",revmsg); } while(strcmp(revmsg,"bye")!=0); }
OUTPUT:
SERVER SIDE: [1me2@localhost ~]$ vi Multiuserserver.c [1me2@localhost ~]$ cc Multiuserserverc [1me2@localhost ~]$ ./a.out Enter the port no 8543 socket is created Binded Enter the client to communicate: 1 Client 1 is connected Accepted hiiiii Byeeeeee Enter the client no to communicate: 2 client 2 is connected Accepted hiiiiiiiiii hello Enter the client no to communicate: 0 CLIENT SIDE 1: [1me2@localhost ~]$ vi multiuserclient1.c [1me2@localhost ~]$ cc multiuserclient1.c [1me2@localhost ~]$ ./a.out Enter the port no 8543 Socket is created Connected hiiiiii Byeeeee
CLIENT SIDE 2: [1me2@localhost ~]$ vi multiuserclient2.c [1me2@localhost ~]$ cc multiuserclient2.c [1me2@localhost ~]$ ./a.out Enter the port no 8543 Socket is created Connected Hiiiiiiiii hello
if(strcmp(recvmsg,oid[i])==0) A { G send(nsd,wsize[i],100,0); E break; N } T } } 2 #include<stdio.h> #include<sys/types.h> #include<netinet/in.h> #include<string.h> main() char sendmsg[20],recvmsg[100]; { char oid[5][10]={"System1","System2","System3","System4","System5"}; int char mdate[5][15]={"1-10-095","10-03-08","14.03.81","11.07.07","17.12.77"}; i,sd,sd char time[5][15]={"9am","10pm","11am","12.30pm","11.30am"}; 2,nsd, struct sockaddr_in servaddr,cliaddr; clilen, printf("Enter the Server port"); sport,l printf("\n_____________________\n"); en; scanf("%d",&sport); sd=socket(AF_INET,SOCK_STREAM,0); if(sd<0) printf("Can't Create \n"); else printf("Socket is Created\n"); servaddr.sin_family=AF_INET; servaddr.sin_addr.s_addr=htonl(INADDR_ANY); servaddr.sin_port=htons(sport); sd2=bind(sd,(struct sockaddr*)&servaddr,sizeof(servaddr)); if(sd2<0) printf(" Can't Bind\n"); else printf("\n Binded\n"); listen(sd,5); clilen=sizeof(cliaddr); nsd=accept(sd,(struct sockaddr*)&cliaddr,&clilen);
if(nsd<0) printf("Can't Accept\n"); else printf("Accepted\n"); recv(nsd,recvmsg,100,0); for(i=0;i<5;i++) M { A if(strcmp(recvmsg,oid[i])==0) N { A send(nsd,mdate[i],100,0); send(nsd,time[i],100,0); G break; E } R } } #include<stdio.h> #include<sys/types.h> #include<netinet/in.h> main() char sendmsg[20],rcvmsg[100],rmsg[100],oid[100]; { struct sockaddr_in servaddr; int printf("Enter the port\n"); csd,cp scanf("%d",&cport); ort,len csd=socket(AF_INET,SOCK_STREAM,0); ,i; if(csd<0) printf("Can't Create\n"); else printf("Scocket is Created\n"); servaddr.sin_family=AF_INET; servaddr.sin_addr.s_addr=htonl(INADDR_ANY); servaddr.sin_port=htons(cport); if(connect(csd,(struct sockaddr*)&servaddr,sizeof(servaddr))<0) printf("Can't Connect\n"); else printf("Connected\n");
printf("\n 1.TCP Connection\n"); printf("\n 2. System \n"); printf("Enter the number for the type of informtion needed....\n"); scanf("%d",&i); if(i==1) { printf("Enter the Object ID for Client\n"); scanf("%s",oid); send(csd,oid,100,0); recv(csd,rmsg,100,0); printf("\n The window size of %s is %s",oid,rmsg); } else { printf("\nEnter the Object ID for the System\n"); scanf("%s",oid); send(csd,oid,100,0); recv(csd,rmsg,100,0); printf("\nThe Manufacturing date for %s is %s",oid,rmsg); recv(csd,rmsg,100,0); printf("\nThe time of Last Utilization for %s is %s",oid,rmsg); } }
OUTPUT:
AGENT1: [1me14@localhost ~]$ vi Agent1.c [1me14@localhost ~]$ cc Agent1.c [1me14@localhost ~]$ ./a.out I'm the Agent - TCP Connection Enter the Server port _____________________ 8543 Socket is created Binded Accepted MANGER: [1me14@localhost ~]$ vi Manager.c [1me14@localhost ~]$ cc Manger.c [1me14@localhost ~]$ ./a.out Enter the port 8543 Socket is Created Connected 1.TCP Connection 2. System Enter the number for the type of information needed: 1 Enter the Object ID for Client: Client1 The window size of client1 is 5 AGENT2: [1me14@localhost ~]$ vi Agent2.c [1me14@localhost ~]$ cc Agent2.c [1me14@localhost ~]$ ./a.out Enter the Server port _____________________ 8543 Socket is Created Binded Accepted
MANGER: [1me14@localhost ~]$ vi Manager.c [1me14@localhost ~]$ cc Manger.c [1me14@localhost ~]$ ./a.out Enter the port 8543 Socket is Created Connected 1.TCP Connection 2. System Enter the number for the type of informtion needed: 2 Enter the Object ID for Client: System3 The Manufacturing date for system3 is 14.03.81 The time of last utilization for system3 is 11am
EMAIL
#include <stdlib.h> #include <string.h> #define cknull(x) if((x)==NULL) {perror(""); exit(EXIT_FAILURE);} #define cknltz(x) if((x)<0) {perror(""); exit(EXIT_FAILURE);} #define LIST_LEN 4 //char *f="sam.txt"; void email_it(char *filename); main() printf("enter the filename\n"); { scanf("%s",fname); char email_it(fname); fname } [15]; void email_it(char *filename) { char tmp[256]={0x0}; char fpBuffer[400]={0x0}; char email_list[LIST_LEN][256]={{"mecse3@localhost.localdomain"},{0x0}}; int i=0; for(i=0;*email_list[i]>0x0;i++) { cknull(strcpy(tmp, email_list[i])); cknltz(sprintf (fpBuffer,"mail -s '%s %s' %s < %s", "Please Review:", filename, tmp,filename)); if(system (fpBuffer)==(-1)) { perror("email failure"); exit(EXIT_FAILURE); } } }
OUTPUT:
[1me2@localhost ~]$ vi email.c [1me2@localhost ~]$ cc email.c [1me2@localhost ~]$ ./a.out Enter the file name: sample.c [1me2@localhost ~]$/home/1me1/dead.letter.saved message in /home/1me1/dead.letter..