This repository has been archived on 2024-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
deb-goldedplus/goldlib/gcfg/gs_qbbs.h
2005-10-21 00:19:15 +00:00

419 lines
11 KiB
C++

// This may look like C code, but it is really -*- C++ -*-
// ------------------------------------------------------------------
// The Goldware Library
// Copyright (C) 1990-1999 Odinn Sorensen
// ------------------------------------------------------------------
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this program; if not, write to the Free
// Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
// MA 02111-1307, USA
// ------------------------------------------------------------------
// $Id$
// ------------------------------------------------------------------
// QuickBBS (old and new) configuration data structures
// ------------------------------------------------------------------
#ifndef __GS_QBBS_H
#define __GS_QBBS_H
// ------------------------------------------------------------------
#if defined(GOLD_CANPACK)
#pragma pack(1)
#endif
// ------------------------------------------------------------------
// QuickBBS 2.60, CONFIG.BBS structure
typedef struct {
byte Status; // 0=Disabled 1=Enabled
char RunTime[6];
byte ErrorLevel;
byte Days;
byte Forced;
char LastTimeRun[9];
} Q260EvtRecT, *Q260EvtRecP, **EvtRecI;
typedef struct {
char Name[17];
byte Typ; // 0=Standard 1=Net 3=Echo
byte Kinds; // 0=Private & Public 1=Private 2=Public 3=Read-Only
byte Combined;
byte Aliases; // 0=no aliases,1=yes,2=ask alias,3=Alias/name
short ReadSecLvl;
byte ReadFlags[4];
short WriteSecLvl;
byte WriteFlags[4];
short SysopSecLvl;
byte SysopFlags[4];
} Q260BrdRecT, *Q260BrdRecP, **Q260BrdRecI;
typedef struct {
short CommPort;
word InitBaud;
word InitTimes;
word AnswerWait;
char ModemInitStr[71];
char ModemBusyStr[71];
char ModemInitResp[41];
char ModemBusyResp[41];
char Resp300[41];
char Resp1200[41];
char Resp2400[41];
char MenuPath[67];
char TextPath[67];
char NetPath[67];
short MinBaud;
short GraphicsBaud;
short XferBaud;
char LowBaudStart[6];
char LowBaudEnd[6];
char DownloadStart[6];
char DownloadEnd[6];
char PagingStart[6];
char PagingEnd[6];
short MatrixZone;
short MatrixNet;
short MatrixNode;
short AkaNet[5];
short AkaNode[5];
short NetMailBoard;
short DefaultSec;
short DefaultCredit;
byte DefaultFlags[4];
char EditorCmdStr[71];
char OriginLine[61];
char SysopName[36];
byte AutoLogonChar;
byte FastLogon;
byte ScreenBlanking;
byte UseLastRead;
byte MonoMode;
byte DirectWrite;
byte SnowCheck;
byte NetEchoExit;
byte OneWordNames;
byte CheckMail;
byte AskHomePhone;
byte AskDataPhone;
byte GraphicsAvail;
short InactiveTimeOut;
short LogonTime;
short DefFgColor;
short DefBgColor;
short PasswordTries;
short MaxPageTimes;
short PageBellLen;
byte Use_Xmodem;
byte Use_Xmodem1k;
byte Use_Ymodem;
byte Use_YmodemG;
byte Use_Sealink;
byte Use_Zmodem;
byte Inp_Fields;
char QuoteStr[4];
short UploadCredit;
char LoadingMessage[71];
char SelectionPrompt[71];
word VersionID;
char Resp4800[41];
char Resp9600[41];
short AkaZone[5];
short MatrixPoint;
short AkaPoint[5];
byte UseAka[200];
byte Spare[51];
Q260EvtRecT Events[30];
Q260BrdRecT Boards[200];
} Q260CfgRecT, *Q260CfgRecP;
// ------------------------------------------------------------------
// QuickBBS 2.76.G2, USERS.BBS structure
typedef struct {
char Name[36];
char City[26];
char Pwd[16];
char DataPhone[13];
char HomePhone[13];
char LastTime[6];
char LastDate[9];
byte Attrib;
byte Flagsx[4];
word Credit;
word Pending;
word TimesPosted;
word HighMsgRead;
word SecLvl;
word Times;
word Ups;
word Downs;
word UpK;
word DownK;
short TodayK;
short Elapsed;
short Len;
word CombinedPtr; // Record number in COMBINED.BBS
word AliasPtr; // Record number in ALIAS.BBS
long Birthday;
} Q276UsrRecT, *Q276UsrRecP, **Q276UsrRecI;
// Attrib:
//
// Bit 0: Deleted
// Bit 1: Screen Clear Codes
// Bit 2: More Prompt
// Bit 3: ANSI
// Bit 4: No-Kill
// Bit 5: Ignore Download Hours
// Bit 6: ANSI Full Screen Editor
// Bit 7: Sex (0=male, 1=female)
// ------------------------------------------------------------------
// QuickBBS 2.76.G2, MSGCFG.DAT structure
typedef struct {
word Security;
byte Flagsx[4];
} Q276SecRecT;
typedef struct {
char Name[41];
byte Typ;
byte Kinds;
byte Combined;
byte Aliases;
byte Aka;
char OriginLine[59];
byte AllowDelete;
word KeepCnt;
word KillRcvd;
word KillOld;
Q276SecRecT ReadSec;
Q276SecRecT WriteSec;
Q276SecRecT TemplateSec;
Q276SecRecT SysopSec;
short FileArea;
byte Group;
byte Spare[9];
} Q276BrdRecT, *Q276BrdRecP, **Q276BrdRecI;
// ------------------------------------------------------------------
// QuickBBS 2.76.G2, QUICKCFG.DAT structure
typedef struct {
char TranslateFrom[26];
word TranslateTo;
} Q276MdmXltRecT;
typedef struct {
word VersionID;
byte Node;
short CommPort; // Modem Parameters
word InitBaud;
word ModemDelay;
short InitTimes;
short AnswerWait;
char ModemInitStr[71];
char ModemBusyStr[71];
char ModemInitResp[41];
char ModemBusyResp[41];
Q276MdmXltRecT ModemConnectResp[8];
word CBV_CallbackDelay;
word CBV_WakeupDelay;
char ARQ_String[9];
byte ModemSpareInfo[9];
char EditorCmdStr[71]; // System Paths
char MenuPath[67];
char TextPath[67];
char NetPath[67];
char NodelistPath[67];
char MsgPath[67];
char SwapPath[67];
char OverlayPath[67];
char LoadingMessage[71]; // System misc strings
char SelectionPrompt[71];
char NoMailString[71];
char OriginLine[59];
char QuoteStr[4];
long LowBaudStart; // User Restrictions
long LowBaudEnd;
long DownloadStart;
long DownloadEnd;
short MaxPageTimes;
short PageBellLen;
long PageStart;
long PageEnd;
short MinBaud;
short GraphicsBaud;
short XferBaud;
short MatrixZone[11]; // Matrix Information
short MatrixNet[11];
short MatrixNode[11];
short MatrixPoint[11];
short NetMailBoard;
Q276SecRecT DefaultSec; // Default Information for New Users
Q276SecRecT MinimumSec;
short DefaultCredit;
Q276SecRecT SysopSecurity; // Sysop Security Etc.
char SysopName[36];
char SystemName[41];
long RegKey;
byte TextFileShells; // Misc System Parameters
byte AltJswap;
byte Editorswap;
byte AutoLogonChar;
byte FastLogon;
byte UseLastRead;
byte MonoMode;
byte DirectWrite;
byte SnowCheck;
byte NetEchoExit;
byte OneWordNames;
byte CheckMail;
byte AskHomePhone;
byte AskDataPhone;
byte AskBirthday;
byte AskSex;
byte Use_Xmodem;
byte Use_Xmodem1k;
byte Use_Ymodem;
byte Use_YmodemG;
byte Use_Kermit;
byte Use_Zmodem;
byte Inp_Fields;
byte GraphicsAvail;
byte ForceUS_Phone;
short InactiveTimeOut;
short LogonTime;
short DefFgColor;
short DefBgColor;
short PasswordTries;
byte EntFldColor;
byte BorderColor;
byte WindowColor;
byte StatusBarColor;
short UploadCredit;
byte ScreenBlank;
char VerifierInit[36]; // Callback verifier
char DialString[16];
char DialSuffix[16];
byte DupeCheck;
word NewUserSec;
word MemberSec;
char MemberFlags[4][8];
word LDcost;
byte LDenable;
byte ResumeLocal;
byte ResumeLD;
long LDstart;
long LDend;
byte ForgotPwdBoard;
byte SendATA;
char Location[61];
byte ArchiveNetMail;
byte IEMSI;
byte IEMSI_New;
byte AutoAnsi;
byte MultiNode;
byte ExtraSpace[332];
} Q276CfgRecT, *Q276CfgRecP;
// ------------------------------------------------------------------
// RemoteAccess 2.00 GAMMA, USERS.BBS structure
// Some Pascal types
typedef char Char;
typedef uint8_t Byte;
typedef uint8_t Boolean;
typedef int16_t Integer;
typedef uint16_t Word;
typedef int32_t LongInt;
typedef Byte FlagType[4];
typedef Char Time[6];
typedef Char Date[9];
typedef struct {
char name[36];
char location[26];
char organisation[51];
char address1[51];
char address2[51];
char address3[51];
char handle[36];
char comment[81];
long passwordcrc;
char dataphone[16];
char voicephone[16];
char lasttime[6];
char lastdate[9];
byte attribute;
byte attribute2;
byte flagsx[4];
long credit;
long pending;
word msgsposted;
word security;
long lastread;
long nocalls;
long uploads;
long downloads;
long uploadsk;
long downloadsk;
long todayk;
short elapsed;
word screenlength;
byte lastpwdchange;
word group;
word combinedinfo[200];
char firstdate[9];
char birthdate[9];
char subdate[9];
byte screenwidth;
byte language;
byte dateformat;
char forwardto[36];
word msgarea;
word filearea;
char defaultprotocol;
word filegroup;
byte lastdobcheck;
byte sex;
long xirecord;
word msggroup;
byte freespace[48];
} RA2UsrRecT, *RA2UsrRecP, **RA2UsrRecI;
// ------------------------------------------------------------------
#if defined(GOLD_CANPACK)
#pragma pack()
#endif
// ------------------------------------------------------------------
#endif
// ------------------------------------------------------------------