version 1.44, 2019/11/18 04:37:35 |
version 1.45, 2020/09/01 12:33:48 |
|
|
/* |
/* |
* Options and other state info. |
* Options and other state info. |
*/ |
*/ |
int trace; /* trace packets exchanged */ |
extern int trace; /* trace packets exchanged */ |
int hash; /* print # for each buffer transferred */ |
extern int hash; /* print # for each buffer transferred */ |
int mark; /* number of bytes between hashes */ |
extern int mark; /* number of bytes between hashes */ |
int sendport; /* use PORT/LPRT cmd for each data connection */ |
extern int sendport; /* use PORT/LPRT cmd for each data connection */ |
int verbose; /* print messages coming back from server */ |
extern int verbose; /* print messages coming back from server */ |
int connected; /* 1 = connected to server, -1 = logged in */ |
extern int connected; /* 1 = connected to server, -1 = logged in */ |
int fromatty; /* input is from a terminal */ |
extern int fromatty; /* input is from a terminal */ |
int interactive; /* interactively prompt on m* cmds */ |
extern int interactive; /* interactively prompt on m* cmds */ |
#ifndef SMALL |
#ifndef SMALL |
int confirmrest; /* confirm rest of current m* cmd */ |
extern int confirmrest; /* confirm rest of current m* cmd */ |
int debug; /* debugging level */ |
extern int debug; /* debugging level */ |
int bell; /* ring bell on cmd completion */ |
extern int bell; /* ring bell on cmd completion */ |
char *altarg; /* argv[1] with no shell-like preprocessing */ |
extern char *altarg; /* argv[1] with no shell-like preprocessing */ |
#endif /* !SMALL */ |
#endif /* !SMALL */ |
int doglob; /* glob local file names */ |
extern int doglob; /* glob local file names */ |
int autologin; /* establish user account on connection */ |
extern int autologin; /* establish user account on connection */ |
int proxy; /* proxy server connection active */ |
extern int proxy; /* proxy server connection active */ |
int proxflag; /* proxy connection exists */ |
extern int proxflag; /* proxy connection exists */ |
int gatemode; /* use gate-ftp */ |
extern int gatemode; /* use gate-ftp */ |
char *gateserver; /* server to use for gate-ftp */ |
extern char *gateserver; /* server to use for gate-ftp */ |
int sunique; /* store files on server with unique name */ |
extern int sunique; /* store files on server with unique name */ |
int runique; /* store local files with unique name */ |
extern int runique; /* store local files with unique name */ |
int mcase; /* map upper to lower case for mget names */ |
extern int mcase; /* map upper to lower case for mget names */ |
int ntflag; /* use ntin ntout tables for name translation */ |
extern int ntflag; /* use ntin ntout tables for name translation */ |
int mapflag; /* use mapin mapout templates on file names */ |
extern int mapflag; /* use mapin mapout templates on file names */ |
int preserve; /* preserve modification time on files */ |
extern int preserve; /* preserve modification time on files */ |
int progress; /* display transfer progress bar */ |
extern int progress; /* display transfer progress bar */ |
int code; /* return/reply code for ftp command */ |
extern int code; /* return/reply code for ftp command */ |
int crflag; /* if 1, strip car. rets. on ascii gets */ |
extern int crflag; /* if 1, strip car. rets. on ascii gets */ |
char pasv[BUFSIZ]; /* passive port for proxy data connection */ |
extern char pasv[BUFSIZ]; /* passive port for proxy data connection */ |
int passivemode; /* passive mode enabled */ |
extern int passivemode; /* passive mode enabled */ |
int activefallback; /* fall back to active mode if passive fails */ |
extern int activefallback; /* fall back to active mode if passive fails */ |
char ntin[17]; /* input translation table */ |
extern char ntin[17]; /* input translation table */ |
char ntout[17]; /* output translation table */ |
extern char ntout[17]; /* output translation table */ |
char mapin[PATH_MAX]; /* input map template */ |
extern char mapin[PATH_MAX]; /* input map template */ |
char mapout[PATH_MAX]; /* output map template */ |
extern char mapout[PATH_MAX]; /* output map template */ |
char typename[32]; /* name of file transfer type */ |
extern char typename[32]; /* name of file transfer type */ |
int type; /* requested file transfer type */ |
extern int type; /* requested file transfer type */ |
int curtype; /* current file transfer type */ |
extern int curtype; /* current file transfer type */ |
char structname[32]; /* name of file transfer structure */ |
extern char structname[32]; /* name of file transfer structure */ |
int stru; /* file transfer structure */ |
extern int stru; /* file transfer structure */ |
char formname[32]; /* name of file transfer format */ |
extern char formname[32]; /* name of file transfer format */ |
int form; /* file transfer format */ |
extern int form; /* file transfer format */ |
char modename[32]; /* name of file transfer mode */ |
extern char modename[32]; /* name of file transfer mode */ |
int mode; /* file transfer mode */ |
extern int mode; /* file transfer mode */ |
char bytename[32]; /* local byte size in ascii */ |
extern char bytename[32]; /* local byte size in ascii */ |
int bytesize; /* local byte size in binary */ |
extern int bytesize; /* local byte size in binary */ |
int anonftp; /* automatic anonymous login */ |
extern int anonftp; /* automatic anonymous login */ |
int dirchange; /* remote directory changed by cd command */ |
extern int dirchange; /* remote directory changed by cd command */ |
unsigned int retry_connect; /* retry connect if failed */ |
extern unsigned int retry_connect; /* retry connect if failed */ |
int ttywidth; /* width of tty */ |
extern int ttywidth; /* width of tty */ |
int epsv4; /* use EPSV/EPRT on IPv4 connections */ |
extern int epsv4; /* use EPSV/EPRT on IPv4 connections */ |
int epsv4bad; /* EPSV doesn't work on the current server */ |
extern int epsv4bad; /* EPSV doesn't work on the current server */ |
|
|
#ifndef SMALL |
#ifndef SMALL |
int editing; /* command line editing enabled */ |
extern int editing; /* command line editing enabled */ |
EditLine *el; /* editline(3) status structure */ |
extern EditLine *el; /* editline(3) status structure */ |
History *hist; /* editline(3) history structure */ |
extern History *hist; /* editline(3) history structure */ |
char *cursor_pos; /* cursor position we're looking for */ |
extern char *cursor_pos; /* cursor position we're looking for */ |
size_t cursor_argc; /* location of cursor in margv */ |
extern size_t cursor_argc; /* location of cursor in margv */ |
size_t cursor_argo; /* offset of cursor in margv[cursor_argc] */ |
extern size_t cursor_argo; /* offset of cursor in margv[cursor_argc] */ |
int resume; /* continue transfer */ |
extern int resume; /* continue transfer */ |
char *srcaddr; /* source address to bind to */ |
extern char *srcaddr; /* source address to bind to */ |
#endif /* !SMALL */ |
#endif /* !SMALL */ |
|
|
char *cookiefile; /* cookie jar to use */ |
extern char *cookiefile; /* cookie jar to use */ |
|
|
off_t bytes; /* current # of bytes read */ |
extern off_t bytes; /* current # of bytes read */ |
off_t filesize; /* size of file being transferred */ |
extern off_t filesize; /* size of file being transferred */ |
char *direction; /* direction transfer is occurring */ |
extern char *direction; /* direction transfer is occurring */ |
|
|
char *hostname; /* name of host connected to */ |
extern char *hostname; /* name of host connected to */ |
int unix_server; /* server is unix, can use binary for ascii */ |
extern int unix_server; /* server is unix, can use binary for ascii */ |
int unix_proxy; /* proxy is unix, can use binary for ascii */ |
extern int unix_proxy; /* proxy is unix, can use binary for ascii */ |
|
|
char *ftpport; /* port number to use for ftp connections */ |
extern char *ftpport; /* port number to use for ftp connections */ |
char *httpport; /* port number to use for http connections */ |
extern char *httpport; /* port number to use for http connections */ |
#ifndef NOSSL |
#ifndef NOSSL |
char *httpsport; /* port number to use for https connections */ |
extern char *httpsport; /* port number to use for https connections */ |
#endif /* !SMALL */ |
#endif /* !SMALL */ |
char *httpuseragent; /* user agent for http(s) connections */ |
extern char *httpuseragent; /* user agent for http(s) connections */ |
char *gateport; /* port number to use for gateftp connections */ |
extern char *gateport; /* port number to use for gateftp connections */ |
|
|
jmp_buf toplevel; /* non-local goto stuff for cmd scanner */ |
extern jmp_buf toplevel; /* non-local goto stuff for cmd scanner */ |
|
|
#ifndef SMALL |
#ifndef SMALL |
char line[FTPBUFLEN]; /* input line buffer */ |
extern char line[FTPBUFLEN]; /* input line buffer */ |
char *argbase; /* current storage point in arg buffer */ |
extern char *argbase; /* current storage point in arg buffer */ |
char *stringbase; /* current scan point in line buffer */ |
extern char *stringbase; /* current scan point in line buffer */ |
char argbuf[FTPBUFLEN]; /* argument storage buffer */ |
extern char argbuf[FTPBUFLEN]; /* argument storage buffer */ |
StringList *marg_sl; /* stringlist containing margv */ |
extern StringList *marg_sl; /* stringlist containing margv */ |
int margc; /* count of arguments on input line */ |
extern int margc; /* count of arguments on input line */ |
int options; /* used during socket creation */ |
extern int options; /* used during socket creation */ |
#endif /* !SMALL */ |
#endif /* !SMALL */ |
|
|
#define margv (marg_sl->sl_str) /* args parsed from input line */ |
#define margv (marg_sl->sl_str) /* args parsed from input line */ |
int cpend; /* flag: if != 0, then pending server reply */ |
extern int cpend; /* flag: if != 0, then pending server reply */ |
int mflag; /* flag: if != 0, then active multi command */ |
extern int mflag; /* flag: if != 0, then active multi command */ |
|
|
/* |
/* |
* Format of command table. |
* Format of command table. |
|
|
}; |
}; |
|
|
#ifndef SMALL |
#ifndef SMALL |
int macnum; /* number of defined macros */ |
extern int macnum; /* number of defined macros */ |
struct macel macros[16]; |
extern struct macel macros[16]; |
char macbuf[4096]; |
extern char macbuf[4096]; |
#endif /* !SMALL */ |
#endif /* !SMALL */ |
|
|
FILE *ttyout; /* stdout or stderr, depending on interactive */ |
extern FILE *ttyout; /* stdout or stderr, depending on interactive */ |
|
|
extern struct cmd cmdtab[]; |
extern struct cmd cmdtab[]; |
|
|