home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Spezial / SPEZIAL2_97.zip / SPEZIAL2_97.iso / ANWEND / ONLINE / ELM23-2 / ELM23-2.ZIP / hdrs / headers.h < prev    next >
C/C++ Source or Header  |  1993-09-29  |  9KB  |  187 lines

  1.  
  2. /* $Id: headers.h,v 4.1.1.1 90/10/24 15:33:07 syd Exp $ */
  3.  
  4. /*******************************************************************************
  5.  *  The Elm Mail System  -  $Revision: 4.1.1.1 $   $State: Exp $
  6.  *
  7.  *             Copyright (c) 1986, 1987 Dave Taylor
  8.  *             Copyright (c) 1988, 1989, 1990 USENET Community Trust
  9.  *******************************************************************************
  10.  * Bug reports, patches, comments, suggestions should be sent to:
  11.  *
  12.  *    Syd Weinstein, Elm Coordinator
  13.  *    elm@DSI.COM            dsinc!elm
  14.  *
  15.  *******************************************************************************
  16.  * $Log:    headers.h,v $
  17.  * Revision 4.1.1.1  90/10/24  15:33:07  syd
  18.  * Remove variables no longer used
  19.  * From: W. David Higgins
  20.  *
  21.  * Revision 4.1  90/04/28  22:42:11  syd
  22.  * checkin of Elm 2.3 as of Release PL0
  23.  *
  24.  *
  25.  ******************************************************************************/
  26.  
  27. /**  This is the header file for ELM mail system.  **/
  28.  
  29.  
  30. #include <stdio.h>
  31. #include <fcntl.h>
  32.  
  33. #include "curses.h"
  34. #include "defs.h"
  35.  
  36. #ifdef OS2
  37. #include "../os2/os2elm.h"
  38. #include <setjmp.h>
  39. #endif
  40.  
  41. #ifdef    BSD
  42. #include <setjmp.h>
  43. #endif
  44.  
  45. #ifndef       clearerr
  46. #define       clearerr(p)     (void)((p)->_flag &= ~(_IOERR|_IOEOF))
  47. #endif
  48.  
  49. /******** global variables accessable by all pieces of the program *******/
  50.  
  51. extern int check_size;        /* don't start mailer if no mail */
  52. extern int current;        /* current message number  */
  53. extern int header_page;         /* current header page     */
  54. extern int last_header_page;    /* last header page        */
  55. extern int message_count;    /* max message number      */
  56. extern int headers_per_page;    /* number of headers/page  */
  57. extern int original_umask;    /* original umask, for restore before subshell */
  58. extern int sendmail_verbose;    /* Allow extended debugging on sendmail */
  59. extern int no_save;        /* Do not save outgoing mail */
  60. extern int mmdf_strict;        /* Strict MMDF mailbox scanning */
  61. extern char cur_folder[SLEN];    /* name of current folder */
  62. extern char cur_tempfolder[SLEN]; /* name of temp folder open for a mailbox */
  63. extern char defaultfile[SLEN];    /* name of default folder */
  64. extern char temp_dir[SLEN];     /* name of temp directory */
  65. extern char hostname[SLEN];    /* name of machine we're on*/
  66. extern char hostdomain[SLEN];    /* name of domain we're in */
  67. extern char hostfullname[SLEN]; /* name of FQDN we're in */
  68. extern char hostfromname[SLEN]; /* name of FQDN we pretend to be in */
  69. extern char username[SLEN];    /* return address name!    */
  70. extern char full_username[SLEN];/* Full username - gecos   */
  71. extern char home[SLEN];        /* home directory of user  */
  72. extern char folders[SLEN];    /* folder home directory   */
  73. extern char raw_folders[SLEN];    /* unexpanded folder home directory   */
  74. extern char recvd_mail[SLEN];    /* folder for storing received mail    */
  75. extern char raw_recvdmail[SLEN];/* unexpanded recvd_mail name */
  76. extern char editor[SLEN];    /* default editor for mail */
  77. extern char raw_editor[SLEN];    /* unexpanded default editor for mail */
  78. extern char alternative_editor[SLEN];/* the 'other' editor */
  79. extern char printout[SLEN];    /* how to print messages   */
  80. extern char raw_printout[SLEN];    /* unexpanded how to print messages   */
  81. extern char sent_mail[SLEN];    /* name of file to save copies to */
  82. extern char raw_sentmail[SLEN];    /* unexpanded name of file to save to */
  83. extern char calendar_file[SLEN];/* name of file for clndr  */
  84. extern char raw_calendar_file[SLEN];/* unexpanded name of file for clndr  */
  85. extern char attribution[SLEN];  /* attribution string for replies     */
  86. extern char prefixchars[SLEN];    /* prefix char(s) for msgs */
  87. extern char shell[SLEN];    /* default system shell    */
  88. extern char raw_shell[SLEN];    /* unexpanded default system shell    */
  89. extern char pager[SLEN];    /* what pager to use...    */
  90. extern char raw_pager[SLEN];    /* unexpanded what pager to use...    */
  91. extern char batch_subject[SLEN];/* subject buffer for batchmail */
  92. extern char local_signature[SLEN];/* local msg signature file   */
  93. extern char raw_local_signature[SLEN];/* unexpanded local msg signature file */
  94. extern char remote_signature[SLEN];/* remote msg signature file */
  95. extern char raw_remote_signature[SLEN];/* unexpanded remote msg signature file*/
  96.  
  97. extern char backspace,        /* the current backspace char  */
  98.         escape_char,    /* '~' or something else...    */
  99.         kill_line;        /* the current kill_line char  */
  100.  
  101. extern char up[SHORT],
  102.         down[SHORT],
  103.         left[SHORT],
  104.         right[SHORT];    /* cursor control seq's    */
  105. extern int  cursor_control;    /* cursor control avail?   */
  106.  
  107. extern int  has_highlighting;    /* highlighting available? */
  108.  
  109. /** the following two are for arbitrary weedout lists.. **/
  110.  
  111. extern char *weedlist[MAX_IN_WEEDLIST];
  112. extern int  weedcount;        /* how many headers to check?        */
  113.  
  114. extern int  allow_forms;    /* flag: are AT&T Mail forms okay?    */
  115. extern int  prompt_after_pager;    /* flag: prompt after pager exits     */
  116. extern int  mini_menu;        /* flag: display menu?               */
  117. extern int  folder_type;    /* flag: type of folder              */
  118. extern int  auto_copy;        /* flag: auto copy source into reply? */
  119. extern int  filter;        /* flag: weed out header lines?          */
  120. extern int  resolve_mode;    /* flag: resolve before moving mode?  */
  121. extern int  auto_cc;        /* flag: mail copy to yourself?       */
  122. extern int  noheader;        /* flag: copy + header to file?       */
  123. extern int  title_messages;    /* flag: title message display?       */
  124. extern int  forwarding;        /* flag: are we forwarding the msg?   */
  125. extern int  hp_terminal;    /* flag: are we on an hp terminal?    */
  126. extern int  hp_softkeys;    /* flag: are there softkeys?          */
  127. extern int  save_by_name;      /* flag: save mail by login name?     */
  128. extern int  force_name;        /* flag: save by name forced?          */
  129. extern int  mail_only;        /* flag: send mail then leave?        */
  130. extern int  check_only;        /* flag: check aliases and leave?     */
  131. extern int  batch_only;        /* flag: send without prompting?      */
  132. extern int  move_when_paged;    /* flag: move when '+' or '-' used?   */
  133. extern int  point_to_new;    /* flag: start pointing at new msgs?  */
  134. extern int  bounceback;        /* flag: bounce copy off remote?      */
  135. extern int  always_keep;    /* flag: always keep unread msgs?     */
  136. extern int  always_store;    /* flag: always store read mail?      */
  137. extern int  always_del;        /* flag: always delete marked msgs?   */
  138. extern int  arrow_cursor;    /* flag: use "->" regardless?          */
  139. extern int  debug;        /* flag: debugging mode on?           */
  140. extern int  warnings;        /* flag: output connection warnings?  */
  141. extern int  user_level;        /* flag: how knowledgable is user?    */
  142. extern int  selected;        /* flag: used for select stuff        */
  143. extern int  names_only;        /* flag: display names but no addrs?  */
  144. extern int  question_me;    /* flag: ask questions as we leave?   */
  145. extern int  keep_empty_files;    /* flag: keep empty files??          */
  146. extern int  clear_pages;    /* flag: clear screen w/ builtin pgr? */
  147. extern int  prompt_for_cc;    /* flag: prompt user for 'cc' value?  */
  148. extern int  sig_dashes;        /* flag: put dashes above signature?  */
  149.  
  150. extern int  sortby;        /* how to sort folders          */
  151.  
  152. extern long timeout;        /* seconds for main level timeout     */
  153.  
  154. extern int LINES;        /** lines per screen    **/
  155. extern int COLUMNS;        /** columns per line    **/
  156.  
  157. extern long size_of_pathfd;    /** size of pathfile, 0 if none **/
  158.  
  159. extern FILE *mailfile;        /* current folder         */
  160. extern FILE *debugfile;        /* file for debut output    */
  161. extern FILE *pathfd;        /* path alias file          */
  162. extern FILE *domainfd;        /* domains file         */
  163.  
  164. extern long mailfile_size;    /* size of current mailfile */
  165.  
  166. extern int  max_headers;    /* number of headers currently allocated */
  167.  
  168. extern struct header_rec **headers; /* array of header structure pointers */
  169.  
  170. extern struct alias_rec user_hash_table  [MAX_UALIASES];
  171. extern struct alias_rec system_hash_table[MAX_SALIASES];
  172.  
  173. extern struct lsys_rec *talk_to_sys;    /* who do we talk to? */
  174.  
  175. extern struct addr_rec *alternative_addresses;    /* how else do we get mail? */
  176.  
  177. extern int system_data;        /* fileno of system data file */
  178. extern int user_data;        /* fileno of user data file   */
  179.  
  180. extern int userid;        /* uid for current user          */
  181. extern int groupid;        /* groupid for current user   */
  182.  
  183. #if defined(BSD) || defined(OS2)
  184. extern jmp_buf GetPromptBuf;    /* setjmp buffer */
  185. extern int InGetPrompt;        /* set if in GetPrompt() in read() */
  186. #endif
  187.