|
|
1.1 root 1: /*
2: * A bunch of global variable declarations lie herein.
3: * def.h must be included first.
4: */
5:
6: int msgCount; /* Count of messages read in */
7: int mypid; /* Current process id */
8: int rcvmode; /* True if receiving mail */
9: int sawcom; /* Set after first command */
10: int hflag; /* Sequence number for network -h */
11: char *rflag; /* -r address for network */
12: char nosrc; /* Don't source /usr/lib/Mail.rc */
13: int selfsent; /* User sent self something */
14: int senderr; /* An error while checking */
15: int edit; /* Indicates editing a file */
16: int noreset; /* String resets suspended */
17: int sourcing; /* Currently reading variant file */
18: FILE *itf; /* Input temp file buffer */
19: FILE *otf; /* Output temp file buffer */
20: int image; /* File descriptor for image of msg */
21: FILE *input; /* Current command input file */
22: char *editfile; /* Name of file being edited */
23: char *sflag; /* Subject given from non tty */
24: int outtty; /* True if standard output a tty */
25: int intty; /* True if standard input a tty */
26: char mbox[PATHSIZE]; /* Name of mailbox file */
27: char *mailname; /* Name of system mailbox */
28: char mailspace[PATHSIZE]; /* Space norm alloc'd for name */
29: int uid; /* The invoker's user id */
30: char mailrc[PATHSIZE]; /* Name of startup file */
31: char deadletter[PATHSIZE]; /* Name of #/dead.letter */
32: char homedir[PATHSIZE]; /* Path name of home directory */
33: char myname[9]; /* My login id */
34: off_t mailsize; /* Size of system mailbox */
35: int lexnumber; /* Number of TNUMBER from scan() */
36: char lexstring[STRINGLEN]; /* String from TSTRING, scan() */
37: int regretp; /* Pointer to TOS of regret tokens */
38: int regretstack[REGDEP]; /* Stack of regretted tokens */
39: char *stringstack[REGDEP]; /* Stack of regretted strings */
40: int numberstack[REGDEP]; /* Stack of regretted numbers */
41: struct message *dot; /* Pointer to current message */
42: struct message *message; /* The actual message structure */
43: struct var *variables[HSHSIZE]; /* Pointer to active var list */
44: struct grouphead *groups[HSHSIZE];/* Pointer to active groups */
45: int debug; /* Debug flag set */
46: int rmail; /* Being called as rmail */
47:
48: #include <setjmp.h>
49:
50: jmp_buf srbuf;
51:
52:
53: /*
54: * The pointers for the string allocation routines,
55: * there are NSPACE independent areas.
56: * The first holds STRINGSIZE bytes, the next
57: * twice as much, and so on.
58: */
59:
60: #define NSPACE 8 /* Total number of string spaces */
61: struct strings {
62: char *s_topFree; /* Beginning of this area */
63: char *s_nextFree; /* Next alloctable place here */
64: unsigned s_nleft; /* Number of bytes left here */
65: } stringdope[NSPACE];
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.