diff options
Diffstat (limited to 'lib/libftp/FtpConnect.c')
-rw-r--r-- | lib/libftp/FtpConnect.c | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/lib/libftp/FtpConnect.c b/lib/libftp/FtpConnect.c deleted file mode 100644 index 4de95ab04c5d..000000000000 --- a/lib/libftp/FtpConnect.c +++ /dev/null @@ -1,72 +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 FtpConnect(FTP **con,char * hostname) -{ - struct sockaddr_in unit; - register struct hostent *host; - register int new_socket; - String S1; - STATUS x; - - *con = FtpCreateObject(); - - if ((host=FtpGetHost(hostname))==NULL) - return EXIT((*con),QUIT); - - strcpy((*con) -> title,host -> h_name); /* Default title for FtpLog */ - - unit.sin_family = host -> h_addrtype; /* AF_INET */ - - bcopy(host-> h_addr_list[0],(char *)&unit.sin_addr,host->h_length); - if ( ( new_socket = socket ( unit.sin_family , SOCK_STREAM , 0)) < 0) - return EXIT((*con),QUIT); - - unit.sin_port = htons((*con)->port); - - while ( connect ( new_socket , (struct sockaddr *)&unit , sizeof unit ) < 0 ) - { - host -> h_addr_list ++; - if (host -> h_addr_list[0]==NULL) { - close(new_socket); - return EXIT((*con),QUIT); - } - bcopy(host -> h_addr_list[0],(char *)&unit,host->h_length); - close(new_socket); - if ( ( new_socket = socket ( unit.sin_family , SOCK_STREAM , 0)) < 0) - { - close(new_socket); - return EXIT((*con),QUIT); - } - } - - FTPCMD(*con) = fdopen(new_socket,"r+"); - - if ( (x=FtpGetMessage(*con,S1)) == QUIT ) - return EXIT((*con),QUIT); - if ( ! FtpGood(x,120,220,EOF)) - { - close(new_socket); - return EXIT((*con),-x); - } - if ( (*con)->mode != 'A' ) FtpType(*con,(*con)->mode); - - return EXIT((*con),x); -} - - - |