home *** CD-ROM | disk | FTP | other *** search
/ Fish 'n' More 2 / fishmore-publicdomainlibraryvol.ii1991xetec.iso / fish / telecom / uucp_442 / src / dmail / dmail.h < prev    next >
C/C++ Source or Header  |  1991-01-06  |  3KB  |  109 lines

  1.  
  2. /*
  3.  * DMAIL.H
  4.  *
  5.  *  $Header: Beta:src/uucp/src/dmail/RCS/dmail.h,v 1.1 90/02/02 12:03:48 dillon Exp Locker: dillon $
  6.  *
  7.  *  (C) Copyright 1985-1990 by Matthew Dillon,  All Rights Reserved.
  8.  *
  9.  */
  10.  
  11. #ifdef AMIGA
  12. #include "protos.h"
  13. #endif
  14.  
  15. #ifndef __STDC__
  16. #define volatile
  17. #define const
  18. #endif
  19.  
  20. typedef unsigned char ubyte;
  21.  
  22. #define DVERSION     "Dmail Version 1.12,  June 1989"
  23. #define MAXTYPE      16     /* Max number of different fields remembered     */
  24. #define EXSTART      3        /* Beginning of dynamic fields, rest are wired   */
  25. #define MAXLIST      16     /* Maximum # list elements in SETLIST         */
  26. #define LONGSTACK    64     /* Maximum # levels for the longjump stack         */
  27. #define MAILMODE     0600   /* Standard mail mode for temp. files         */
  28. #define MAXFIELDSIZE 4096   /* Maximum handlable field size (& scratch bufs) */
  29.  
  30. #define LEVEL_SET    0        /* which variable set to use             */
  31. #define LEVEL_ALIAS  1
  32. #define LEVEL_MALIAS 2
  33.  
  34. #define R_INCLUDE   1        /* Include message        For DO_REPLY()  */
  35. #define R_FORWARD   2        /* Forward message        */
  36. #define R_REPLY     3        /* Reply to message     */
  37. #define R_MAIL        4        /* Mail from scratch    */
  38. #define R_FWDINCL   5        /* Forward message with commentary (CAW) */
  39.  
  40. #define M_RESET     0
  41. #define M_CONT        1
  42.  
  43.  
  44. #define PAGER(Puf)      _pager(Puf, 1)      /* Auto newline */
  45. #define FPAGER(Puf)     _pager(Puf, 0)      /* output as is */
  46. #define push_base()     (setjmp (env[1 + Longstack]) ? 1 : (++Longstack, 0))
  47. #define pop_base()      --Longstack
  48. #define push_break()    ++Breakstack
  49. #define pop_break()     --Breakstack
  50.  
  51. #define isfrom(str)     ((str)[0] == 'F' && strncmp((str) + 1, "rom ", 4) == 0)
  52.  
  53. #define ST_DELETED  0x0001  /* Status flag.. item has been deleted  */
  54. #define ST_READ     0x0002  /* item has been read or marked        */
  55. #define ST_STORED   0x0010  /* item has been written            */
  56. #define ST_TAG        0x0020  /* item has been taged            */
  57. #define ST_SCR        0x0080  /* scratch flag to single out messages  */
  58.  
  59. #include <stdio.h>
  60. #include <stdlib.h>
  61. #include <setjmp.h>
  62.  
  63. struct ENTRY {
  64.     long fpos;
  65.     int  no;
  66.     int  status;
  67.     char *from;
  68.     char *fields[MAXTYPE];
  69. };
  70.  
  71. static struct FIND {
  72.     char *search;
  73.     int  len;
  74.     int  notnew;
  75.     int  age;
  76. };
  77.  
  78. extern char *next_word(), *get_field();
  79. extern char *alloca();
  80. extern char *get_var();
  81.  
  82. extern char *mail_file;
  83. extern char *user_name;
  84. extern char *output_file;
  85. extern char *home_dir;
  86. extern char *visual;
  87. extern char Buf[];
  88. extern char Puf[];
  89. extern char *av[], *Nulav[3];
  90. extern int  Longstack, Breakstack;
  91. extern int  XDebug;
  92. extern int  Entries, Current;
  93. extern int  Silence;
  94. extern int  ac;
  95. extern FILE *m_fi;
  96. extern struct ENTRY *Entry;
  97. extern struct FIND  Find[];
  98. extern jmp_buf env[];
  99.  
  100. extern int width[], header[], Listsize;
  101. extern int No_load_mail, XDisable, Did_cd;
  102. extern int SelAll;
  103.  
  104. extern char *S_sendmail;
  105. extern int S_page, S_novibreak, S_verbose, S_ask, S_archive;
  106. extern int lmessage_overide;
  107.  
  108.  
  109.