Commit | Line | Data |
---|---|---|
761330fe | 1 | /* |
a12ff486 KB |
2 | * Copyright (c) 1980, 1993 |
3 | * The Regents of the University of California. All rights reserved. | |
761330fe | 4 | * |
f15db449 | 5 | * %sccs.include.redist.c% |
0c5f72fb | 6 | * |
a12ff486 | 7 | * @(#)glob.h 8.1 (Berkeley) %G% |
761330fe | 8 | */ |
2ae9f53f | 9 | |
e6a88a51 KS |
10 | /* |
11 | * A bunch of global variable declarations lie herein. | |
12 | * def.h must be included first. | |
13 | */ | |
14 | ||
e6a88a51 | 15 | int msgCount; /* Count of messages read in */ |
e6a88a51 KS |
16 | int rcvmode; /* True if receiving mail */ |
17 | int sawcom; /* Set after first command */ | |
31840345 | 18 | char *Tflag; /* -T temp file for netnews */ |
e6a88a51 KS |
19 | int senderr; /* An error while checking */ |
20 | int edit; /* Indicates editing a file */ | |
df1ae8ec | 21 | int readonly; /* Will be unable to rewrite file */ |
e6a88a51 KS |
22 | int noreset; /* String resets suspended */ |
23 | int sourcing; /* Currently reading variant file */ | |
ef4abe32 | 24 | int loading; /* Loading user definitions */ |
b04d2a11 | 25 | int cond; /* Current state of conditional exc. */ |
e6a88a51 KS |
26 | FILE *itf; /* Input temp file buffer */ |
27 | FILE *otf; /* Output temp file buffer */ | |
28 | int image; /* File descriptor for image of msg */ | |
29 | FILE *input; /* Current command input file */ | |
2a0f6531 EW |
30 | char mailname[PATHSIZE]; /* Name of current file */ |
31 | char prevfile[PATHSIZE]; /* Name of previous file */ | |
f674e088 EW |
32 | char *homedir; /* Path name of home directory */ |
33 | char *myname; /* My login name */ | |
e6a88a51 KS |
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 */ | |
85d5837f | 39 | char *string_stack[REGDEP]; /* Stack of regretted strings */ |
e6a88a51 KS |
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 */ | |
887efe38 EW |
45 | struct ignoretab ignore[2]; /* ignored and retained fields |
46 | 0 is ignore, 1 is retain */ | |
47 | struct ignoretab saveignore[2]; /* ignored and retained fields | |
48 | on save to folder */ | |
2de8fc95 | 49 | struct ignoretab ignoreall[2]; /* special, ignore all headers */ |
d1361008 | 50 | char **altnames; /* List of alternate names for user */ |
e6a88a51 | 51 | int debug; /* Debug flag set */ |
828615a1 | 52 | int screenwidth; /* Screen width, or best guess */ |
d56fd190 EW |
53 | int screenheight; /* Screen height, or best guess, |
54 | for "header" command */ | |
55 | int realscreenheight; /* the real screen height */ | |
e6a88a51 KS |
56 | |
57 | #include <setjmp.h> | |
58 | ||
59 | jmp_buf srbuf; | |
60 | ||
61 | ||
62 | /* | |
63 | * The pointers for the string allocation routines, | |
64 | * there are NSPACE independent areas. | |
65 | * The first holds STRINGSIZE bytes, the next | |
66 | * twice as much, and so on. | |
67 | */ | |
68 | ||
c42869b9 | 69 | #define NSPACE 25 /* Total number of string spaces */ |
e6a88a51 KS |
70 | struct strings { |
71 | char *s_topFree; /* Beginning of this area */ | |
72 | char *s_nextFree; /* Next alloctable place here */ | |
73 | unsigned s_nleft; /* Number of bytes left here */ | |
74 | } stringdope[NSPACE]; |