summaryrefslogtreecommitdiffstats
path: root/lib/libftp/FtpData.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libftp/FtpData.c')
-rw-r--r--lib/libftp/FtpData.c92
1 files changed, 0 insertions, 92 deletions
diff --git a/lib/libftp/FtpData.c b/lib/libftp/FtpData.c
deleted file mode 100644
index 066671f..0000000
--- a/lib/libftp/FtpData.c
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- Library for ftpd clients.(libftp)
- Copyright by Oleg Orel
- All rights reserved.
-
-This library is desined for free, non-commercial software creation.
-It is changeable and can be improved. The author would greatly appreciate
-any advises, new components and patches of the existing programs.
-Commercial usage is also possible with participation of it's author.
-
-
-
-*/
-
-#include "FtpLibrary.h"
-#include <unistd.h>
-
-STATUS FtpData(FTP * con,char * command , char * file ,char * mode)
-{
- struct sockaddr_in data,from;
- register struct hostent *host;
- String hostname;
- int NewSocket,Accepted_Socket,len=sizeof(data),one=1,fromlen=sizeof(from),
- i = 0;
- char *a,*b;
-
- FREE(data);
- FREE(from);
-
- if ( gethostname( hostname , sizeof hostname ) == -1 )
- return EXIT(con,QUIT);
-
- if ((host=(struct hostent *)gethostbyname(hostname))==0)
- return EXIT(con,QUIT);
-
- data.sin_family = host -> h_addrtype;
-
- bcopy(host-> h_addr_list[0],(char *)&data.sin_addr,host->h_length);
-
- if ((NewSocket = socket ( AF_INET , SOCK_STREAM , 0 ))<0)
- return EXIT(con,QUIT);
-
- if ( setsockopt ( NewSocket , SOL_SOCKET , SO_REUSEADDR ,
- (char *)&one , sizeof(one) ) < 0 )
- {
- close(NewSocket);
- return EXIT ( con,QUIT );
- }
-
- data.sin_port = 0 ;
-
- if ( bind ( NewSocket , (struct sockaddr *)&data , sizeof data ) < 0 )
- return EXIT(con,QUIT);
-
- if ( getsockname ( NewSocket , (struct sockaddr *)&data , &len ) < 0 )
- return EXIT(con,QUIT);
-
- if ( listen ( NewSocket , 1 ) < 0 )
- return EXIT(con,QUIT);
-
- a = ( char * ) & data.sin_addr;
- b = ( char * ) & data.sin_port;
-
- FtpAssert(con,FtpPort(con,CUT(a[0]),CUT(a[1]),CUT(a[2]),
- CUT(a[3]),CUT(b[0]),CUT(b[1])));
-
- if ( con -> seek != 0)
- {
- if ((i = FtpCommand ( con, "REST %d" , con -> seek , 0, EOF)) != 350 )
- return -i;
- }
-
- FtpAssert(con, FtpCommand ( con , command , file ,
- 200, 120 , 150 , 125 , 250 , EOF ));
-
- if (( Accepted_Socket = accept (NewSocket , (struct sockaddr *)&from , &fromlen )) < 0)
- {
- close(NewSocket);
- return EXIT(con,QUIT);
- }
-
- close(NewSocket);
-
- FTPDATA(con) = fdopen(Accepted_Socket, "r+");
-
- return i;
-}
-
-
-
-
-
OpenPOWER on IntegriCloud