|
|
1.1 root 1: /* VARS.C */
2:
3: /* Developed 1990-1997 by Rob Swindell; PO Box 501, Yorba Linda, CA 92885 */
4:
5: /*************************************************************/
6: /* External (Global/Public) Variables for use only with SBBS */
7: /*************************************************************/
8:
9: #include <stdio.h>
10: #include <dos.h>
11:
12: #ifndef GLOBAL
13: #define GLOBAL
14: unsigned _stklen=22000; /* Set stack size in code, not header */
15: /* 20k, NOT enough */
16: #endif
17:
18: #include "sbbsdefs.h"
19: #include "smbdefs.h"
20: #include "text.h"
21:
22: GLOBAL char *envp[128]; /* Original environment */
23:
24: GLOBAL char menu_dir[128]; /* Over-ride default menu dir */
25: GLOBAL char menu_file[128]; /* Over-ride menu file */
26:
27: GLOBAL user_t useron; /* User currently online */
28: GLOBAL node_t thisnode; /* Node information */
29: GLOBAL smb_t smb; /* Currently open message base */
30:
31: /* Batch download queue */
32: GLOBAL char **batdn_name; /* Filenames */
33: GLOBAL ushort *batdn_alt; /* Alternate path */
34: GLOBAL uint *batdn_dir, /* Directory for each file */
35: batdn_total; /* Total files */
36: GLOBAL long *batdn_offset; /* Offset for data */
37: GLOBAL ulong *batdn_size; /* Size of file in bytes */
38: GLOBAL ulong *batdn_cdt; /* Credit value of file */
39:
40: /* Batch upload queue */
41: GLOBAL char **batup_desc, /* Description for each file */
42: **batup_name, /* Filenames */
43: *batup_misc; /* Miscellaneous bits */
44: GLOBAL ushort *batup_alt; /* Alternate path */
45: GLOBAL uint *batup_dir, /* Directory for each file */
46: batup_total; /* Total files */
47:
48: /*********************************/
49: /* Color Configuration Variables */
50: /*********************************/
51: GLOBAL char *text[TOTAL_TEXT]; /* Text from CTRL\TEXT.DAT */
52: GLOBAL char *text_sav[TOTAL_TEXT]; /* Text from CTRL\TEXT.DAT */
53: GLOBAL int directvideo; /* Turbo C's video flag - direct or bios */
54: GLOBAL char qoc; /* Quit after one caller */
55: GLOBAL long freedosmem; /* Amount of free DOS memory */
56: GLOBAL char orgcmd[129]; /* Original command to execute bbs */
57: GLOBAL char dszlog[127]; /* DSZLOG enviornment variable */
58: GLOBAL char debug; /* Flag to allow debug writes */
59: GLOBAL int keybuftop,keybufbot; /* Keyboard input buffer pointers */
60: GLOBAL char keybuf[KEY_BUFSIZE]; /* Keyboard input buffer */
61: GLOBAL char connection[LEN_MODEM+1];/* Connection Description */
62: GLOBAL ulong cur_rate; /* Current Connection (DCE) Rate */
63: GLOBAL ulong cur_cps; /* Current Average Transfer CPS */
64: GLOBAL ulong dte_rate; /* Current COM Port (DTE) Rate */
65: GLOBAL time_t timeout; /* User inactivity timeout reference */
66: GLOBAL char timeleft_warn; /* low timeleft warning flag */
67: GLOBAL char curatr; /* Current Text Attributes Always */
68: GLOBAL long lncntr; /* Line Counter - for PAUSE */
69: GLOBAL long tos; /* Top of Screen */
70: GLOBAL long rows; /* Current Rows for User */
71: GLOBAL long autoterm; /* Autodetected terminal type */
72: GLOBAL char slbuf[SAVE_LINES][LINE_BUFSIZE+1]; /* Saved for redisplay */
73: GLOBAL char slatr[SAVE_LINES]; /* Starting attribute of each line */
74: GLOBAL char slcnt; /* Number of lines currently saved */
75: GLOBAL char lbuf[LINE_BUFSIZE+1];/* Temp storage for each line output */
76: GLOBAL int lbuflen; /* Number of characters in line buffer */
77: GLOBAL char latr; /* Starting attribute of line buffer */
78: GLOBAL ulong console; /* Defines current Console settings */
79: GLOBAL char tmp[256]; /* Used all over as temp string */
80: GLOBAL char *nulstr; /* Null string pointer */
81: GLOBAL char *crlf; /* CRLF string pointer */
82: GLOBAL char wordwrap[81]; /* Word wrap buffer */
83: GLOBAL time_t now, /* Used to store current time in Unix format */
84: answertime, /* Time call was answered */
85: logontime, /* Time user logged on */
86: starttime, /* Time stamp to use for time left calcs */
87: ns_time, /* File new-scan time */
88: last_ns_time; /* Most recent new-file-scan this call */
89: GLOBAL uchar action; /* Current action of user */
90: GLOBAL char statline; /* Current Status Line number */
91: GLOBAL long online; /* Remote/Local or not online */
92: GLOBAL long sys_status; /* System Status */
93: GLOBAL char *sub_misc; /* Save misc and ptrs for subs */
94: GLOBAL ulong *sub_ptr; /* for fast pointer update */
95: GLOBAL ulong *sub_last; /* last read message pointer */
96:
97: GLOBAL ulong logon_ulb, /* Upload Bytes This Call */
98: logon_dlb, /* Download Bytes This Call */
99: logon_uls, /* Uploads This Call */
100: logon_dls, /* Downloads This Call */
101: logon_posts, /* Posts This Call */
102: logon_emails, /* Emails This Call */
103: logon_fbacks; /* Feedbacks This Call */
104: GLOBAL uchar logon_ml; /* ML of the user apon logon */
105:
106: GLOBAL int node_disk; /* Number of Node's disk */
107: GLOBAL uint main_cmds; /* Number of Main Commands this call */
108: GLOBAL uint xfer_cmds; /* Number of Xfer Commands this call */
109: GLOBAL ulong posts_read; /* Number of Posts read this call */
110: GLOBAL char temp_uler[31]; /* User who uploaded the files to temp dir */
111: GLOBAL char temp_file[41]; /* Origin of extracted temp files */
112: GLOBAL long temp_cdt; /* Credit value of file that was extracted */
113: GLOBAL char autohang; /* Used for auto-hangup after transfer */
114: GLOBAL char cap_fname[41]; /* Capture filename - default is CAPTURE.TXT */
115: GLOBAL FILE *capfile; /* File string to use for capture file */
116: GLOBAL int inputfile; /* File handle to use for input */
117: GLOBAL int logfile; /* File handle for node.log */
118: GLOBAL int nodefile; /* File handle for node.dab */
119: GLOBAL int node_ext; /* File handle for node.exb */
120: GLOBAL char logcol; /* Current column of log file */
121: GLOBAL uint criterrs; /* Critical error counter */
122: GLOBAL struct date date; /* Used for DOS compatible date pointer */
123: GLOBAL struct time curtime; /* Used for DOS compatible time pointer */
124:
125: GLOBAL uint curgrp, /* Current group */
126: *cursub, /* Current sub-board for each group */
127: curlib, /* Current library */
128: *curdir; /* Current directory for each library */
129: GLOBAL uint *usrgrp, /* Real group numbers */
130: usrgrps; /* Number groups this user has access to */
131: GLOBAL uint *usrlib, /* Real library numbers */
132: usrlibs; /* Number of libs this user can access */
133: GLOBAL uint **usrsub, /* Real sub numbers */
134: *usrsubs; /* Num of subs with access for each grp */
135: GLOBAL uint **usrdir, /* Real dir numbers */
136: *usrdirs; /* Num of dirs with access for each lib */
137: GLOBAL int cursubnum; /* For ARS */
138: GLOBAL int curdirnum; /* For ARS */
139: GLOBAL long timeleft; /* Number of seconds user has left online */
140: GLOBAL uchar sbbsnode[81]; /* Environment var to contain node dir path */
141: GLOBAL uchar sbbsnnum[81]; /* Environment var to contain node num */
142: GLOBAL char *comspec; /* Pointer to environment variable COMSPEC */
143: GLOBAL ushort altul; /* Upload to alternate path flag */
144: GLOBAL uint inDV; /* DESQview version, or 0 if not under DV */
145: GLOBAL uchar lastnodemsg; /* Number of node last message was sent to */
146: GLOBAL char color[TOTAL_COLORS]; /* Different colors for the BBS */
147: GLOBAL time_t next_event; /* Next event time - from front-end */
148: GLOBAL char lastuseron[LEN_ALIAS+1]; /* Name of user last online */
149: GLOBAL char cid[LEN_CID+1]; /* Caller ID of current caller */
150: GLOBAL uint emshandle; /* EMS handle for overlay swap */
151: GLOBAL char emsver; /* Version of EMS installed */
152: GLOBAL char *noaccess_str; /* Why access was denied via ARS */
153: GLOBAL long noaccess_val; /* Value of parameter not met in ARS */
154: GLOBAL int errorlevel; /* Error level of external program */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.