FTP APPLICATION USING TCP
	  By karthick
, in 
      
IMPLEMENTATION OF FTP APPLICATION USING TCP
, 
      
0 Comments
        
Server program
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<sys/types.h>
#include<sys/socket.h>
#include<netinet/in.h>
int
main(int argc,char **argv[])
{
 int sockfd,i,connfd,t,port;
 char fname[50],cont[100];
 FILE *f;
 struct sockaddr_in servaddr;
 if((sockfd=socket(AF_INET,SOCK_STREAM,0)) <
0)
 {
  printf("\n\t Error in socket Creation
");
  exit(0);
 }
printf("Enter
the port number");
scanf("%d",&port);
  bzero(&servaddr,sizeof(servaddr));
  servaddr.sin_family=AF_INET;
  servaddr.sin_port=htons(port);
  servaddr.sin_addr.s_addr=htonl(INADDR_ANY);
 if(bind(sockfd,(struct sockaddr
*)&servaddr,sizeof(servaddr)) <0)
 {
   printf("\n\t Error in Bind");     exit(0);
 }
 if((listen(sockfd,10)) < 0)
 {
   printf("\n\t Error in Listen
");     exit(0);
 }
 for(; ;)
 {
      if((connfd=accept(sockfd,(struct
sockaddr*)NULL,NULL)) <0)
   {
     printf("\n\t Error in Accept"
);        exit(0);
   }
  recv(connfd,fname,50,0);
  printf("\n\t File is Received : %s
\n",fname);
  f=fopen(fname,"r");
  while(!feof(f))
  {
      fread(cont,100,1,f);
      if(!feof(f))
      cont[t]='\0';
      send(connfd,cont,strlen(cont),1);
   }
    printf("\n\t File Content Transferred
\n");;
exit(0);
    fclose(f);
   close(connfd);
 }
     }
Client program
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<sys/types.h>
#include<sys/socket.h>
#include<netinet/in.h>
int
main(int argc,char **argv[])
{
 int sockfd,i,connfd,t,port;
 char sfname[50],cont[100],dfname[50];
 FILE *fp;
 struct sockaddr_in servaddr;
 if((sockfd=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP))
< 0)
 {
  printf("\n\t Error in socket Creation
");
  exit(0);
 }
  printf("Enter the port number");
  scanf("%d",&port);
  bzero(&servaddr,sizeof(servaddr));
  servaddr.sin_family=AF_INET;
  servaddr.sin_port=htons(port);
  servaddr.sin_addr.s_addr=htonl(INADDR_ANY);
if((connect(sockfd,(struct
sockaddr *)&servaddr,sizeof(servaddr))))
 {
   printf("\n\t Error in Connect");
   exit(0);
 }
 printf("\n\n\t Client Module has to
run.....");
 printf("\n\t Enter the Source FileName
:");
 scanf("%s",sfname);
 printf("\n\t Enter the Destination
FileName : ");
 scanf("%s",dfname);
 send(sockfd,sfname,strlen(sfname),0);
 fp=fopen(dfname,"w");
 while(recv(sockfd,cont,100,0) >0)
 {
   fwrite(&cont,strlen(cont),1,fp);
   printf("%s\n",cont);
   strcpy(cont,"\0");
 }
 fclose(fp);
close(sockfd);
}
OUTPUT
SERVER
[11ca013@mcalinux
network]$ cc 6tcpftpser.c
[11ca013@mcalinux
network]$ ./a.out 192.168.1.134
Enter
the port number: 1052
         File is Received: sample.txt
         File Content Transferred
CLIENT
[11ca013@mcalinux
network]$ cc 6tcpftpcli.c
[11ca013@mcalinux
network]$ ./a.out 192.168.1.134
Enter
the port number1052
         Client Module has to run.....
         Enter the Source FileName :sample.txt
         Enter the Destination FileName :
gandhi.txt
rajivgandhi
hi
how
are you

0 Response to "FTP APPLICATION USING TCP"
Post a Comment