|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 1980 Regents of the University of California. ! 3: * All rights reserved. ! 4: * ! 5: * Redistribution and use in source and binary forms are permitted ! 6: * provided that this notice is preserved and that due credit is given ! 7: * to the University of California at Berkeley. The name of the University ! 8: * may not be used to endorse or promote products derived from this ! 9: * software without specific prior written permission. This software ! 10: * is provided ``as is'' without express or implied warranty. ! 11: * ! 12: * @(#)glob.h 5.3 (Berkeley) 2/18/88 ! 13: */ ! 14: ! 15: /* ! 16: * A bunch of global variable declarations lie herein. ! 17: * def.h must be included first. ! 18: */ ! 19: ! 20: int msgCount; /* Count of messages read in */ ! 21: int mypid; /* Current process id */ ! 22: int rcvmode; /* True if receiving mail */ ! 23: int sawcom; /* Set after first command */ ! 24: int hflag; /* Sequence number for network -h */ ! 25: char *rflag; /* -r address for network */ ! 26: char *Tflag; /* -T temp file for netnews */ ! 27: char nosrc; /* Don't source /usr/lib/Mail.rc */ ! 28: char noheader; /* Suprress initial header listing */ ! 29: int selfsent; /* User sent self something */ ! 30: int senderr; /* An error while checking */ ! 31: int edit; /* Indicates editing a file */ ! 32: int readonly; /* Will be unable to rewrite file */ ! 33: int noreset; /* String resets suspended */ ! 34: int sourcing; /* Currently reading variant file */ ! 35: int loading; /* Loading user definitions */ ! 36: int cond; /* Current state of conditional exc. */ ! 37: FILE *itf; /* Input temp file buffer */ ! 38: FILE *otf; /* Output temp file buffer */ ! 39: FILE *pipef; /* Pipe file we have opened */ ! 40: int image; /* File descriptor for image of msg */ ! 41: FILE *input; /* Current command input file */ ! 42: char *editfile; /* Name of file being edited */ ! 43: char *sflag; /* Subject given from non tty */ ! 44: int outtty; /* True if standard output a tty */ ! 45: int intty; /* True if standard input a tty */ ! 46: int baud; /* Output baud rate */ ! 47: char mbox[PATHSIZE]; /* Name of mailbox file */ ! 48: char mailname[PATHSIZE]; /* Name of system mailbox */ ! 49: int uid; /* The invoker's user id */ ! 50: char mailrc[PATHSIZE]; /* Name of startup file */ ! 51: char deadletter[PATHSIZE]; /* Name of #/dead.letter */ ! 52: char homedir[PATHSIZE]; /* Path name of home directory */ ! 53: char myname[PATHSIZE]; /* My login id */ ! 54: off_t mailsize; /* Size of system mailbox */ ! 55: int lexnumber; /* Number of TNUMBER from scan() */ ! 56: char lexstring[STRINGLEN]; /* String from TSTRING, scan() */ ! 57: int regretp; /* Pointer to TOS of regret tokens */ ! 58: int regretstack[REGDEP]; /* Stack of regretted tokens */ ! 59: char *stringstack[REGDEP]; /* Stack of regretted strings */ ! 60: int numberstack[REGDEP]; /* Stack of regretted numbers */ ! 61: struct message *dot; /* Pointer to current message */ ! 62: struct message *message; /* The actual message structure */ ! 63: struct var *variables[HSHSIZE]; /* Pointer to active var list */ ! 64: struct grouphead *groups[HSHSIZE];/* Pointer to active groups */ ! 65: struct ignore *ignore[HSHSIZE];/* Pointer to ignored fields */ ! 66: struct ignore *retain[HSHSIZE];/* Pointer to retained fields */ ! 67: int nretained; /* Number of retained fields */ ! 68: char **altnames; /* List of alternate names for user */ ! 69: char **localnames; /* List of aliases for our local host */ ! 70: int debug; /* Debug flag set */ ! 71: int rmail; /* Being called as rmail */ ! 72: int screenwidth; /* Screen width, or best guess */ ! 73: int screenheight; /* Screen height, or best guess */ ! 74: ! 75: #include <setjmp.h> ! 76: ! 77: jmp_buf srbuf; ! 78: ! 79: ! 80: /* ! 81: * The pointers for the string allocation routines, ! 82: * there are NSPACE independent areas. ! 83: * The first holds STRINGSIZE bytes, the next ! 84: * twice as much, and so on. ! 85: */ ! 86: ! 87: #define NSPACE 25 /* Total number of string spaces */ ! 88: struct strings { ! 89: char *s_topFree; /* Beginning of this area */ ! 90: char *s_nextFree; /* Next alloctable place here */ ! 91: unsigned s_nleft; /* Number of bytes left here */ ! 92: } stringdope[NSPACE];
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.