home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / mmdf / mmdf-IIb.43 / uip / ucbmail / glob.h < prev    next >
Encoding:
C/C++ Source or Header  |  1988-03-28  |  3.9 KB  |  111 lines

  1. /*
  2.  *  G L O B . H 
  3.  *
  4.  *  EE/CIS Computer Lab
  5.  *  Department of Computer and Information Sciences
  6.  *  Department of Electrical Engineering
  7.  *  University of Delaware
  8.  *
  9.  *  REVISION HISTORY:
  10.  *
  11.  *  $Revision: 1.3 $
  12.  *
  13.  *  $Log:    glob.h,v $
  14.  * Revision 1.3  86/01/14  15:10:25  galvin
  15.  * Seemed like good place to put the definition of routeq().
  16.  * 
  17.  * Revision 1.2  86/01/14  14:45:28  galvin
  18.  * Added comment header for revision history.
  19.  * 
  20.  *
  21.  */
  22.  
  23. /*
  24.  * Copyright (c) 1980 Regents of the University of California.
  25.  * All rights reserved.  The Berkeley software License Agreement
  26.  * specifies the terms and conditions for redistribution.
  27.  *
  28.  *    @(#)glob.h    5.1 (Berkeley) 6/6/85
  29.  */
  30.  
  31. /*
  32.  * A bunch of global variable declarations lie herein.
  33.  * def.h must be included first.
  34.  */
  35.  
  36. int    msgCount;            /* Count of messages read in */
  37. int    mypid;                /* Current process id */
  38. int    rcvmode;            /* True if receiving mail */
  39. int    sawcom;                /* Set after first command */
  40. int    hflag;                /* Sequence number for network -h */
  41. char    *rflag;                /* -r address for network */
  42. char    *Tflag;                /* -T temp file for netnews */
  43. char    nosrc;                /* Don't source /usr/lib/Mail.rc */
  44. char    noheader;            /* Suprress initial header listing */
  45. #ifdef NOT_USED
  46. int    selfsent;            /* User sent self something */
  47. #endif NOT_USED
  48. int    senderr;            /* An error while checking */
  49. int    edit;                /* Indicates editing a file */
  50. int    readonly;            /* Will be unable to rewrite file */
  51. int    noreset;            /* String resets suspended */
  52. int    sourcing;            /* Currently reading variant file */
  53. int    loading;            /* Loading user definitions */
  54. int    cond;                /* Current state of conditional exc. */
  55. FILE    *itf;                /* Input temp file buffer */
  56. FILE    *otf;                /* Output temp file buffer */
  57. FILE    *pipef;                /* Pipe file we have opened */
  58. int    image;                /* File descriptor for image of msg */
  59. FILE    *input;                /* Current command input file */
  60. char    *editfile;            /* Name of file being edited */
  61. char    *sflag;                /* Subject given from non tty */
  62. int    outtty;                /* True if standard output a tty */
  63. int    intty;                /* True if standard input a tty */
  64. int    baud;                /* Output baud rate */
  65. char    mbox[PATHSIZE];            /* Name of mailbox file */
  66. char    mailname[PATHSIZE];        /* Name of system mailbox */
  67. int    uid;                /* The invoker's user id */
  68. char    mailrc[PATHSIZE];        /* Name of startup file */
  69. char    deadlettername[PATHSIZE];    /* Name of #/dead.letter */
  70. char    homedir[PATHSIZE];        /* Path name of home directory */
  71. char    myname[PATHSIZE];        /* My login id */
  72. off_t    mailsize;            /* Size of system mailbox */
  73. int    lexnumber;            /* Number of TNUMBER from scan() */
  74. char    lexstring[STRINGLEN];        /* String from TSTRING, scan() */
  75. int    regretp;            /* Pointer to TOS of regret tokens */
  76. int    regretstack[REGDEP];        /* Stack of regretted tokens */
  77. char    *stringstack[REGDEP];        /* Stack of regretted strings */
  78. int    numberstack[REGDEP];        /* Stack of regretted numbers */
  79. struct    message    *dot;            /* Pointer to current message */
  80. struct    message    *message;        /* The actual message structure */
  81. struct    var    *variables[HSHSIZE];    /* Pointer to active var list */
  82. struct    grouphead    *groups[HSHSIZE];/* Pointer to active groups */
  83. struct    ignore        *ignore[HSHSIZE];/* Pointer to ignored fields */
  84. struct    ignore        *retain[HSHSIZE];/* Pointer to retained fields */
  85. int    nretained;            /* Number of retained fields */
  86. char    **altnames;            /* List of alternate names for user */
  87. char    **localnames;            /* List of aliases for our local host */
  88. int    debug;                /* Debug flag set */
  89. int    rmail;                /* Being called as rmail */
  90. int    routeq();            /* uses icequal to compare routes of
  91.                         of addresses */
  92.  
  93. #include <setjmp.h>
  94.  
  95. jmp_buf    srbuf;
  96.  
  97.  
  98. /*
  99.  * The pointers for the string allocation routines,
  100.  * there are NSPACE independent areas.
  101.  * The first holds STRINGSIZE bytes, the next
  102.  * twice as much, and so on.
  103.  */
  104.  
  105. #define    NSPACE    25            /* Total number of string spaces */
  106. struct strings {
  107.     char    *s_topFree;        /* Beginning of this area */
  108.     char    *s_nextFree;        /* Next alloctable place here */
  109.     unsigned s_nleft;        /* Number of bytes left here */
  110. } stringdope[NSPACE];
  111.