6 #include "prototypes.h"
8 //typedef void (*Sig_t)(int);
10 /* The following defines are from ftp.h and telnet.h from bsd.h */
11 /* All relevent copyrights below apply. */
35 #define MAXPATHLEN 255
60 * Copyright (c) 1985 Regents of the University of California.
61 * All rights reserved.
63 * Redistribution and use in source and binary forms are permitted
64 * provided that the above copyright notice and this paragraph are
65 * duplicated in all such forms and that any documentation,
66 * advertising materials, and other materials related to such
67 * distribution and use acknowledge that the software was developed
68 * by the University of California, Berkeley. The name of the
69 * University may not be used to endorse or promote products derived
70 * from this software without specific prior written permission.
71 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
72 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
73 * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
75 * @(#)ftp_var.h 5.5 (Berkeley) 6/29/88
79 * FTP global variables.
83 * Options and other state info.
85 extern int trace
; /* trace packets exchanged */
86 extern int hash
; /* print # for each buffer transferred */
87 extern int sendport
; /* use PORT cmd for each data connection */
88 extern int verbose
; /* print messages coming back from server */
89 extern int connected
; /* connected to server */
90 extern int fromatty
; /* input is from a terminal */
91 extern int interactive
; /* interactively prompt on m* cmds */
92 extern int debug
; /* debugging level */
93 extern int bell
; /* ring bell on cmd completion */
94 extern int doglob
; /* glob local file names */
95 extern int proxy
; /* proxy server connection active */
96 extern int proxflag
; /* proxy connection exists */
97 extern int sunique
; /* store files on server with unique name */
98 extern int runique
; /* store local files with unique name */
99 extern int mcase
; /* map upper to lower case for mget names */
100 extern int ntflag
; /* use ntin ntout tables for name translation */
101 extern int mapflag
; /* use mapin mapout templates on file names */
102 extern int code
; /* return/reply code for ftp command */
103 extern int crflag
; /* if 1, strip car. rets. on ascii gets */
104 extern char pasv
[64]; /* passive port for proxy data connection */
105 extern int passivemode
; /* passive mode enabled */
106 extern char *altarg
; /* argv[1] with no shell-like preprocessing */
107 extern char ntin
[17]; /* input translation table */
108 extern char ntout
[17]; /* output translation table */
110 extern char mapin
[MAXPATHLEN
]; /* input map template */
111 extern char mapout
[MAXPATHLEN
]; /* output map template */
112 extern char typename
[32]; /* name of file transfer type */
113 extern int type
; /* file transfer type */
114 extern char structname
[32]; /* name of file transfer structure */
115 extern int stru
; /* file transfer structure */
116 extern char formname
[32]; /* name of file transfer format */
117 extern int form
; /* file transfer format */
118 extern char modename
[32]; /* name of file transfer mode */
119 extern int mode
; /* file transfer mode */
120 extern char bytename
[32]; /* local byte size in ascii */
121 extern int bytesize
; /* local byte size in binary */
123 extern jmp_buf toplevel
; /* non-local goto stuff for cmd scanner */
125 extern char line
[200]; /* input line buffer */
126 extern char *stringbase
; /* current scan point in line buffer */
127 extern char argbuf
[200]; /* argument storage buffer */
128 extern char *argbase
; /* current storage point in arg buffer */
129 extern int margc
; /* count of arguments on input line */
130 extern const char *margv
[20]; /* args parsed from input line */
131 extern int cpend
; /* flag: if != 0, then pending server reply */
132 extern int mflag
; /* flag: if != 0, then active multi command */
134 extern int options
; /* used during socket creation */
137 * Format of command table.
140 const char *c_name
; /* name of command */
141 const char *c_help
; /* help string */
142 char c_bell
; /* give bell when command completes */
143 char c_conn
; /* must be connected to use command */
144 char c_proxy
; /* proxy server may execute */
145 void (*c_handler
)(int argc
, const char *argv
[]); /* function to call */
149 char mac_name
[9]; /* macro name */
150 char *mac_start
; /* start of macro in macbuf */
151 char *mac_end
; /* end of macro in macbuf */
154 extern int macnum
; /* number of defined macros */
155 extern struct macel macros
[16];
156 extern char macbuf
[4096];
158 #if defined(__ANSI__) || defined(sparc)