home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 2 / crawlyvol2.bin / program / c / bts314b4 / sched.h < prev    next >
C/C++ Source or Header  |  1992-09-09  |  7KB  |  136 lines

  1. #ifndef H_SCHED
  2. #define H_SCHED
  3. /*--------------------------------------------------------------------------*/
  4. /*                                                                          */
  5. /*                                                                          */
  6. /*      ------------         Bit-Bucket Software, Co.                       */
  7. /*      \ 10001101 /         Writers and Distributors of                    */
  8. /*       \ 011110 /          Freely Available<tm> Software.                 */
  9. /*        \ 1011 /                                                          */
  10. /*         ------                                                           */
  11. /*                                                                          */
  12. /*  (C) Copyright 1987-90, Bit Bucket Software Co., a Delaware Corporation. */
  13. /*                                                                          */
  14. /*                                                                          */
  15. /*               Scheduler definitions used in BinkleyTerm                  */
  16. /*                                                                          */
  17. /*                                                                          */
  18. /*    For complete  details  of the licensing restrictions, please refer    */
  19. /*    to the License  agreement,  which  is published in its entirety in    */
  20. /*    the MAKEFILE and BT.C, and also contained in the file LICENSE.240.    */
  21. /*                                                                          */
  22. /*    USE  OF THIS FILE IS SUBJECT TO THE  RESTRICTIONS CONTAINED IN THE    */
  23. /*    BINKLEYTERM  LICENSING  AGREEMENT.  IF YOU DO NOT FIND THE TEXT OF    */
  24. /*    THIS  AGREEMENT IN ANY OF THE  AFOREMENTIONED FILES,  OR IF YOU DO    */
  25. /*    NOT HAVE THESE FILES,  YOU  SHOULD  IMMEDIATELY CONTACT BIT BUCKET    */
  26. /*    SOFTWARE CO.  AT ONE OF THE  ADDRESSES  LISTED BELOW.  IN NO EVENT    */
  27. /*    SHOULD YOU  PROCEED TO USE THIS FILE  WITHOUT HAVING  ACCEPTED THE    */
  28. /*    TERMS  OF  THE  BINKLEYTERM  LICENSING  AGREEMENT,  OR  SUCH OTHER    */
  29. /*    AGREEMENT AS YOU ARE ABLE TO REACH WITH BIT BUCKET SOFTWARE, CO.      */
  30. /*                                                                          */
  31. /*                                                                          */
  32. /* You can contact Bit Bucket Software Co. at any one of the following      */
  33. /* addresses:                                                               */
  34. /*                                                                          */
  35. /* Bit Bucket Software Co.        FidoNet  1:104/501, 1:132/491, 1:141/491  */
  36. /* P.O. Box 460398                AlterNet 7:491/0                          */
  37. /* Aurora, CO 80046               BBS-Net  86:2030/1                        */
  38. /*                                Internet f491.n132.z1.fidonet.org         */
  39. /*                                                                          */
  40. /* Please feel free to contact us at any time to share your comments about  */
  41. /* our software and/or licensing policies.                                  */
  42. /*                                                                          */
  43. /*--------------------------------------------------------------------------*/
  44.  
  45.  
  46. /* Definitions for day of the week */
  47. #define DAY_SUNDAY      0x01
  48. #define DAY_MONDAY      0x02
  49. #define DAY_TUESDAY     0x04
  50. #define DAY_WEDNESDAY   0x08
  51. #define DAY_THURSDAY    0x10
  52. #define DAY_FRIDAY      0x20
  53. #define DAY_SATURDAY    0x40
  54. #define DAY_UNUSED      0x80
  55.  
  56. #define DAY_WEEK  (DAY_MONDAY|DAY_TUESDAY|DAY_WEDNESDAY|DAY_THURSDAY|DAY_FRIDAY)
  57. #define DAY_WKEND (DAY_SUNDAY|DAY_SATURDAY)
  58.  
  59. /* Definitions for matrix behavior */
  60. #define MAT_CM          0x0001
  61. #define MAT_DYNAM       0x0002
  62. #define MAT_BBS         0x0004
  63. #define MAT_NOREQ       0x0008
  64. #define MAT_OUTONLY     0x0010
  65. #define MAT_NOOUT       0x0020
  66. #define MAT_FORCED      0x0040
  67. #define MAT_LOCAL       0x0080
  68. #define MAT_SKIP        0x0100
  69. #define MAT_NOMAIL24    0x0200
  70. #define MAT_NOOUTREQ    0x0400
  71. #define MAT_NOCM        0x0800
  72. #ifdef NEW
  73. #define MAT_KILLBAD     0x1000        /* Kill *.$$? packets */
  74. #else
  75. #define MAT_RESERVED1   0x1000
  76. #endif
  77. #define MAT_RESERVED2   0x2000
  78. #define MAT_RESERVED3   0x4000
  79. #define MAT_RESERVED4   0x8000
  80.  
  81. /*********************************************************************
  82. * If either of these structures are changed, don't forget to change  *
  83. * the BinkSched string in sched.c, as well as the routines that read *
  84. * and write the schedule file (read_sched, write_sched)!!!           *
  85. *********************************************************************/
  86. typedef struct _event
  87. {
  88.    short days;                /* Bit field for which days to execute */
  89.    short minute;            /* Minutes after midnight to start event */
  90.    short length;            /* Number of minutes event runs */
  91.    short errlevel[9];        /* Errorlevel exits */
  92.    short last_ran;            /* Day of month last ran */
  93.    short behavior;            /* Behavior mask */
  94.    short wait_time;            /* Average number of seconds to wait between dials */
  95.    short with_connect;        /* Number of calls to make with carrier */
  96.    short no_connect;        /* Number of calls to make without carrier */
  97.    short node_cost;            /* Maximum cost node to call during this event */
  98.    char call_slot[33];        /* Mask to define Pollslots in conjunction with the keys statment */
  99.    char cmd[32];            /* Chars to append to packer, aftermail and cleanup */
  100.    char month;                /* Month when to do it   */
  101.    char day;                /* Day of month to do it */
  102.    char err_extent[6][4];    /* 3 byte extensions for errorlevels 4-9 */
  103.    short extra[1];            /* Extra space for later */
  104. } BTEVENT;
  105.  
  106. typedef struct _history
  107. {
  108.    short which_day;                       /* Day number for this record */
  109.    short bbs_calls;                       /* Number of BBS callers */
  110.    short mail_calls;                      /* Number of mail calls */
  111.    short calls_made;                      /* Number of outgoing calls made */
  112.    short connects;                        /* Number of outbound call successes */
  113.    short files_in;                        /* Number of files received */
  114.    short files_out;                       /* Number of files sent */
  115.    short last_caller;                     /* Type of last call */
  116.    short last_zone;                       /* Zone number of last call */
  117.    short last_net;                        /* Net  number of last call */
  118.    short last_node;                       /* Node number of last call */
  119.    short last_point;                    /* Point of last call */
  120.    char last_Domain[32];                /* Domain of last call */
  121.    long last_Elapsed;                    /* Time of last outbound session */
  122.    short next_zone;                       /* Zone number of next call */
  123.    short next_net;                        /* Net  number of next call */
  124.    short next_node;                       /* Node number of next call */
  125.    short next_point;                    /* Point of next call */
  126.    char next_Domain[32];                /* Domain of next call */
  127.    long callcost;                       /* Cumulative of call costs */
  128.    short extmails;                        /* Number of external mailer calls */    
  129. } HISTORY;
  130.  
  131. extern HISTORY hist;
  132. extern BTEVENT *e_ptrs[];
  133.  
  134.  
  135. #endif    /* H_SCHED */
  136.