⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 prog.c

📁 UNIX下的FTP源代码
💻 C
📖 第 1 页 / 共 2 页
字号:
//======================================================   
  //  cc  prog.c -o prog -lftp   
//======================================================  
#include <stdio.h>; 
#include <libftp.h>;                                                         
                                                                                
#define NORMAL          0                                                       
#define ABNORMAL  1                                                       
#define ON              1                                                       
#define OFF             0                                                       
                                                                                
main (argc, argv)                                                               
        int     argc;                                                           
        char    *argv[];                                                        
{                                                                               
        FTPINFO ftpinfo;                                                        
        void    usage(), check_n_close();                                       
        char    *progname;                                                      
        char    *host;                                                          
                                                                                
        progname = (char *) argv[0];                                            
        if ( argc < 2 )                                                         
                (void) usage(progname);                                         
                                                                                
        host = argv[1];                                                         
        ftpinfo.debug = ON;                                                     
        ftpinfo.transf_calc = ON;                                               
        ftpinfo.linger = OFF;                                                   
                                                                                
        /*                                                                      
         * connect to peer at remote host.                                      
         */                                                                     
        if (ftp_prconnect ( &ftpinfo, host ) < 0) {                             
                printf("error: ftp_prconnect failed.\n";                       
                (void) check_n_close ( &ftpinfo, ABNORMAL );                    
        }                                                                       
                                                                                
        /*                                                                      
         * send user name to the remote server.                                 
         */                                                                     
        if (ftp_user( &ftpinfo, "bank" ) < 0) {                                 
                printf("error: ftp_user failed.\n";                            
                (void) check_n_close ( &ftpinfo, ABNORMAL );                    
        }                                                                       
                                                                                
        /*                                                                      
         * send user password to the remote server.                             
         */                                                                     
        if (ftp_passwd ( &ftpinfo, "" ) < 0) {                                  
                printf("error: ftp_passwd failed.\n";                          
                (void) check_n_close ( &ftpinfo, ABNORMAL );                    
        }                                                                       
                                                                                
        /*                                                                      
         * set the idle time for this connection.                               
         */                                                                     
        if (ftp_idle ( &ftpinfo, "7200" ) < 0) {                                
                printf("error: ftp_idle failed.\n";                            
                (void) check_n_close ( &ftpinfo, ABNORMAL );                    
        }                                                                       
                                                                                
        /*                                                                      
         * do a 'cd' on the remote ftp server.                                  
         */                                                                     
        if (ftp_chdir( &ftpinfo, "winnt" ) < 0) {                               
                printf("error: ftp_chdir failed.\n";                           
                (void) check_n_close ( &ftpinfo, ABNORMAL );                    
        }                                                                       
                                                                                
        /*                                                                      
         * do a 'pwd' on the remote ftp server.                                 
         */                                                                     
        if (ftp_pwd ( &ftpinfo ) < 0) {                                         
                printf("error: ftp_pwd failed.\n";                             
                (void) check_n_close ( &ftpinfo, ABNORMAL );                    
        }                                                                       
                                                                                
        /*                                                                      
         * set transfer mode to ascii.                                          
         */                                                                     
        if (ftp_ascii ( &ftpinfo ) < 0) {                                       
                printf("error: ftp_ascii failed.\n";                           
                (void) check_n_close ( &ftpinfo, ABNORMAL );                    
        }                                                                       
                                                                                
        /*                                                                      
         * set transfer mode to binary.                                         
         */                                                                     
        if (ftp_binary ( &ftpinfo ) < 0) {                                      
                printf("error: ftp_binary failed.\n";                          
                (void) check_n_close ( &ftpinfo, ABNORMAL );                    
        }                                                                       
                                                                                
        /*                                                                      
         * set transfer mode back to ascii - using ftp_settype.                 
         */                                                                     
        if (ftp_settype ( &ftpinfo, ASCII ) < 0) {                              
                printf("error: ftp_settype failed in ascii mode.\n";           
                (void) check_n_close ( &ftpinfo, ABNORMAL );                    
        }                                                                       
                                                                                
        /*                                                                      
         * set transfer mode back to binary - using ftp_settype.                
         */                                                                     
        if (ftp_settype ( &ftpinfo, BINARY ) < 0) {                             
                printf("error: ftp_settype failed in binary mode.\n";          
                (void) check_n_close ( &ftpinfo, ABNORMAL );                    
        }                                                                       
                                                                                
        /*                                                                      
         * make a directory under /tmp on the server.                           
         */                                                                     
        if (ftp_mkdir ( &ftpinfo, "prem" ) < 0) {                               
                printf("error: ftp_mkdir failed.\n");                           
                (void) check_n_close ( &ftpinfo, ABNORMAL );                    
        }                                                                       
                                                                                
        /*                                                                      
         * change the mode of the directory created above.                      
         */                                                                     
        if (ftp_site ( &ftpinfo, "chmod 775 prem" ) < 0) {                      
                printf("error: ftp_site failed.\n");                            
                (void) check_n_close ( &ftpinfo, ABNORMAL );                    
        }                                                                       
                                                                                
        /*                                                                      
         * remove the directory created above.                                  
         */                                                                     

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -