home *** CD-ROM | disk | FTP | other *** search
/ The Devil's Doorknob BBS Capture (1996-2003) / devilsdoorknobbbscapture1996-2003.iso / W / WWIVSOR.ZIP / QWK.H < prev    next >
C/C++ Source or Header  |  1994-11-18  |  2KB  |  138 lines

  1. #ifndef _QWK_H_
  2. #define _QWK_H_
  3.  
  4.  
  5. #define QWK_DIRECTORY (syscfgovr.batchdir)
  6. /* #define QWK_DIRECTORY (sysinfo.qwk_dir) */
  7.  
  8.  
  9. #define qwk_iscan(x)         (iscan1(usub[x].subnum, 1))
  10. #define qwk_iscan_literal(x) (iscan1(x, 1))
  11.  
  12.  
  13. // If you have a HUGE transfer section, this define will not read extended
  14. // descriptions
  15. // #define HUGE_TRAN
  16.  
  17.  
  18. /* #define SLOWER_BUT_SAFER */
  19.  
  20. #define MAXMAIL 255
  21. #define EMAIL_STORAGE 2
  22.  
  23. #define append_block(file, memory, size) sh_write(file, memory, size)
  24. #define SETREC(f,i)  sh_lseek(f,((long) (i))*((long)sizeof(uploadsrec)),SEEK_SET);
  25. #define SET_BLOCK(file, pos, size) sh_lseek(file, (long)pos * (long)size, SEEK_SET)
  26.  
  27. #define GATSECLEN (4096L+2048L*512L)
  28. #ifndef MSG_STARTING
  29. #define MSG_STARTING (((long)gat_section)*GATSECLEN + 4096L)
  30. #endif
  31.  
  32. #define DOTS 5
  33.  
  34.  
  35.  
  36. #define MAX_BULLETINS 50
  37. #define BULL_SIZE     81
  38. #define BNAME_SIZE    13
  39.  
  40.  
  41. // Give us 3000 extra bytes to play with in the message text
  42. #define PAD_SPACE 3000
  43.  
  44. extern int numlock;
  45.  
  46.  
  47. struct qwk_record
  48. {
  49.   char status;   // ' ' for public
  50.  
  51.   char msgnum[7]; // all strings are space padded
  52.   char date[8];
  53.   char time[5];
  54.  
  55.   char to[25]; // Uppercase, left justified
  56.   char from[25]; // Uppercase left justified
  57.   char subject[25];
  58.   char password[12];
  59.   char reference[8];
  60.  
  61.   char amount_blocks[6];
  62.   char flag;
  63.  
  64.   unsigned int conf_num;
  65.   unsigned int logical_num;
  66.   char tagline;
  67. };
  68.  
  69.  
  70. struct qwk_index
  71. {
  72.   float pos;
  73.   char nouse;
  74. };
  75.  
  76. struct qwk_junk
  77. {
  78.   int qwk_rec_num;
  79.   int qwk_rec_pos;
  80.  
  81.   // File number for the MESSAGES.DAT file
  82.   int file;
  83.  
  84.   // File number for the *.NDX files
  85.   int index;
  86.   int cursub;
  87.   int personal;  // personal.ndx
  88.   int zero;      // 000.ndx for email
  89.  
  90.   struct qwk_record qwk_rec;
  91.   struct qwk_index qwk_ndx;
  92.  
  93.   char abort;
  94.  
  95.   char in_email;
  96.   char email_title[25];
  97. };
  98.  
  99. struct qwk_config
  100. {
  101.   long fu;
  102.   long timesd;
  103.   long timesu;
  104.   unsigned max_msgs;
  105.  
  106.   char hello[13];
  107.   char news[13];
  108.   char bye[13];
  109.   char packet_name[9];
  110.   char res[190];
  111.  
  112.   int  amount_blts;
  113.   char *blt[MAX_BULLETINS];
  114.   char *bltname[MAX_BULLETINS];
  115. };
  116.  
  117. struct qwk_sub_conf
  118. {
  119.   int import_num;
  120.   char import_name[14];
  121.   int to_num;
  122.   char to_name[41];
  123. };
  124.  
  125. enum CONFIG_QWK_RETURNS
  126. {
  127.   QWK_SELECT,
  128.   QWK_ARCHIVER,
  129.   QWK_MAX_PACKET,
  130.   QWK_MAX_SUB,
  131.   QWK_SELECT_PROTOCOL,
  132.   QWK_QUIT_SAVE,
  133.   QWK_ABORT
  134. };
  135.  
  136.  
  137. #endif
  138.