Merge from vendor branch HEIMDAL:
[dragonfly.git] / crypto / heimdal-0.6.3 / appl / ftp / ftp / globals.c
1 #include "ftp_locl.h"
2 RCSID("$Id: globals.c,v 1.8 2000/11/15 22:56:08 assar Exp $");
3
4 /*
5  * Options and other state info.
6  */
7 int     trace;                  /* trace packets exchanged */
8 int     hash;                   /* print # for each buffer transferred */
9 int     sendport;               /* use PORT cmd for each data connection */
10 int     verbose;                /* print messages coming back from server */
11 int     connected;              /* connected to server */
12 int     fromatty;               /* input is from a terminal */
13 int     interactive;            /* interactively prompt on m* cmds */
14 int     lineedit;               /* use line-editing */
15 int     debug;                  /* debugging level */
16 int     bell;                   /* ring bell on cmd completion */
17 int     doglob;                 /* glob local file names */
18 int     autologin;              /* establish user account on connection */
19 int     proxy;                  /* proxy server connection active */
20 int     proxflag;               /* proxy connection exists */
21 int     sunique;                /* store files on server with unique name */
22 int     runique;                /* store local files with unique name */
23 int     mcase;                  /* map upper to lower case for mget names */
24 int     ntflag;                 /* use ntin ntout tables for name translation */
25 int     mapflag;                /* use mapin mapout templates on file names */
26 int     code;                   /* return/reply code for ftp command */
27 int     crflag;                 /* if 1, strip car. rets. on ascii gets */
28 char    pasv[64];               /* passive port for proxy data connection */
29 int     passivemode;            /* passive mode enabled */
30 char    *altarg;                /* argv[1] with no shell-like preprocessing  */
31 char    ntin[17];               /* input translation table */
32 char    ntout[17];              /* output translation table */
33 char    mapin[MaxPathLen];      /* input map template */
34 char    mapout[MaxPathLen];     /* output map template */
35 char    typename[32];           /* name of file transfer type */
36 int     type;                   /* requested file transfer type */
37 int     curtype;                /* current file transfer type */
38 char    structname[32];         /* name of file transfer structure */
39 int     stru;                   /* file transfer structure */
40 char    formname[32];           /* name of file transfer format */
41 int     form;                   /* file transfer format */
42 char    modename[32];           /* name of file transfer mode */
43 int     mode;                   /* file transfer mode */
44 char    bytename[32];           /* local byte size in ascii */
45 int     bytesize;               /* local byte size in binary */
46
47 char    *hostname;              /* name of host connected to */
48 int     unix_server;            /* server is unix, can use binary for ascii */
49 int     unix_proxy;             /* proxy is unix, can use binary for ascii */
50
51 jmp_buf toplevel;               /* non-local goto stuff for cmd scanner */
52
53 char    line[200];              /* input line buffer */
54 char    *stringbase;            /* current scan point in line buffer */
55 char    argbuf[200];            /* argument storage buffer */
56 char    *argbase;               /* current storage point in arg buffer */
57 int     margc;                  /* count of arguments on input line */
58 char    **margv;                /* args parsed from input line */
59 int     margvlen;               /* how large margv is currently */
60 int     cpend;                  /* flag: if != 0, then pending server reply */
61 int     mflag;                  /* flag: if != 0, then active multi command */
62
63 int     options;                /* used during socket creation */
64 int     use_kerberos;           /* use Kerberos authentication */
65
66 /*
67  * Format of command table.
68  */
69
70 int macnum;                     /* number of defined macros */
71 struct macel macros[16];
72 char macbuf[4096];
73
74 char username[32];
75
76 /* these are set in ruserpass */
77 char myhostname[MaxHostNameLen];
78 char *mydomain;