212 lines
8.8 KiB
C++
212 lines
8.8 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$
|
||
// ------------------------------------------------------------------
|
||
// RA-ECHO areafile structure
|
||
// ------------------------------------------------------------------
|
||
|
||
#if defined(GOLD_CANPACK)
|
||
#pragma pack(1)
|
||
#endif
|
||
|
||
// ------------------------------------------------------------------
|
||
// Original Pascal unit:
|
||
// ------------------------------------------------------------------
|
||
//
|
||
// UNIT EchoDefs;
|
||
//
|
||
// (* Definitions for RA-ECHO v.1.0 *)
|
||
//
|
||
//
|
||
// INTERFACE
|
||
//
|
||
// CONST
|
||
//
|
||
// EchoConfigName = 'RA-ECHO.CFG';
|
||
// AreaInfoName = 'AREAS';
|
||
// NodeFileName = 'NODE';
|
||
// DupeFileName = 'DUPES';
|
||
// LinkFileName = 'LINKS';
|
||
// ExportMarkName = 'LASTEXP';
|
||
// ImportMarkName = 'LASTIMP';
|
||
// ConfTextName = 'CONFNAME';
|
||
// EchoExt = '.RAE';
|
||
//
|
||
// TYPE
|
||
//
|
||
// LastReadRec = RECORD
|
||
// LastMsg : word;
|
||
// LastDate : LONGINT;
|
||
// END; (* of RECORD *)
|
||
//
|
||
//
|
||
// AddressRec = RECORD
|
||
// Zone,
|
||
// Net,
|
||
// Node,
|
||
// Point : word;
|
||
// Domain : STRING [20];
|
||
// END; (* of RECORD *)
|
||
//
|
||
//
|
||
// PacketFlags = (NoFlags,Hold,Crash,Direct,KillSend,KillFileSend,TruncatFileSend);
|
||
//
|
||
//
|
||
// MailTypeDef = (Echomail, Netmail, Localmail, Newmail);
|
||
//
|
||
//
|
||
// ArcProgramDef = (NoArc,ZIPArc,LZHArc,PAKArc,ARCArc,ZOOArc,LHAArc,ARJArc
|
||
// ,HyperArc,UnknownArc,
|
||
// UserArc1,UserArc2,UserArc3,UserArc4,UserArc5,UserArc6);
|
||
//
|
||
// NodeDatenRec = RECORD
|
||
// PointNr, (* Point-Number *)
|
||
// NodeNr, (* Node-Number *)
|
||
// NetNr, (* Net-Number *)
|
||
// ZoneNr, (* Zone-Number *)
|
||
// SendZone, (* Zone of Sender *)
|
||
// SendNet, (* Net of Sender *)
|
||
// SendNode, (* Node of Sender *)
|
||
// SendPoint : word; (* Point of Sender *)
|
||
// Conferences : ARRAY [1..20] OF booleanEAN; (* Echomail Conferences *)
|
||
// Access : word; (* Access Level *)
|
||
// NodeName : STRING [30]; (* Name of Node *)
|
||
// PassWord : STRING [20]; (* Password for Areafix/Filefix *)
|
||
// ArcType : ArcProgramDef; (* Definition of the arcer *)
|
||
// ArcPassword : STRING [20]; (* Password in Arcmail header *)
|
||
// ReAddress : booleanEAN; (* true, if address has to be ramapped *)
|
||
// (* to 3-d Pointnet address *)
|
||
// ArcMailStatus : PacketFlags; (* Status of ArcMail-Packets for the Node *)
|
||
// (* Node o. Hold o. Crash o. Direct *)
|
||
// NameExport : booleanEAN; (* true, if Node wants to get mail addresed *)
|
||
// (* to his name no matter if he is linked to that echo *)
|
||
// AddPacket : booleanEAN; (* Append mail to exeistimg packets *)
|
||
// TotalImport, (* Totale Imports from this node (# of mails *)
|
||
// TotalExport : word; (* Totale Exports to this node *)
|
||
// NotifyFlag : booleanEAN; (* Does this node get notify messages *)
|
||
// AcceptNewEchos: booleanEAN; (* New echos received from this node are *)
|
||
// (* created as passthru echos *)
|
||
// nodeispassive : booleanEAN; (* if false mail will not be exported to *)
|
||
// (* this node *)
|
||
// LastDate : STRING [8]; (* The last date the user requested via Filefix *)
|
||
// AddNewAreas : booleanEAN;
|
||
// packnetmail : ArcProgramDef;
|
||
// NetmailStatus : Packetflags;
|
||
// Dummy : ARRAY [1..6] OF byte; (* - unused - *)
|
||
// END; (* of RECORD *)
|
||
//
|
||
// AreaDatenRec = ARRAY [1..500] OF booleanEAN;
|
||
//
|
||
// NodeFileRec = RECORD
|
||
// NodeDaten : NodeDatenRec;
|
||
// AreaFeld : AreaDatenRec;
|
||
// END; (* of RECORD *)
|
||
//
|
||
//
|
||
// (* Das File AREAS.RAE enth<74>lt alle 500 Echo-Areas, Nr. 1-200 sind die
|
||
// internen Areas von RA, 201-500 die Passthru Areas *)
|
||
//
|
||
//
|
||
// EchoAreaRec = RECORD
|
||
// Name : STRING [40]; (* Area Name *)
|
||
// Descr : STRING [60]; (* Description *)
|
||
// MailType : MailTypeDef;
|
||
// ImportFlag : booleanEAN; (* true, if the message has to be *)
|
||
// (* imported to a directory as *.MSG *)
|
||
// MsgDirectory : STRING [60];
|
||
// ReadSecurity : Word; (* Read access level *)
|
||
// WriteSecurity : Word; (* Write access level *)
|
||
// OriginLine : String [60];
|
||
// AreaAddress : AddressRec; (* Adress of sender for this echo *)
|
||
// ConferenceNr : Byte; (* The conference this echo belongs *)
|
||
// (* to. If 0 the echo has NO conference *)
|
||
// END; (* of RECORD *)
|
||
//
|
||
// ConfNameRec = STRING [255];
|
||
//
|
||
//
|
||
// IMPLEMENTATION
|
||
//
|
||
// END.
|
||
//
|
||
// ------------------------------------------------------------------
|
||
|
||
|
||
// ------------------------------------------------------------------
|
||
|
||
enum {
|
||
RAE_ECHO,
|
||
RAE_NET,
|
||
RAE_LOCAL
|
||
};
|
||
|
||
|
||
// ------------------------------------------------------------------
|
||
// Structure for AREAS.RAE Version 1.00
|
||
|
||
typedef struct {
|
||
char echoid[41];
|
||
char desc[61];
|
||
byte type;
|
||
byte isopus;
|
||
char path[61];
|
||
word readsec;
|
||
word writesec;
|
||
char origin[61];
|
||
ftn_addr addr;
|
||
char domain[21];
|
||
byte conference;
|
||
} TRaEchoArea100, *PRaEchoArea100;
|
||
|
||
|
||
// ------------------------------------------------------------------
|
||
// Structure for AREAS.RAE Version 1.01 (I hope!)
|
||
|
||
typedef struct {
|
||
char echoid[41];
|
||
char desc[61];
|
||
byte type;
|
||
byte isopus;
|
||
char path[61];
|
||
word readsec;
|
||
word writesec;
|
||
char origin[61];
|
||
ftn_addr addr;
|
||
char domain[21];
|
||
byte conference;
|
||
word maxdays;
|
||
word maxrecv;
|
||
word maxcount;
|
||
word totalimp;
|
||
word totalexp;
|
||
char dummy[130];
|
||
} TRaEchoArea101, *PRaEchoArea101;
|
||
|
||
|
||
// ------------------------------------------------------------------
|
||
|
||
#if defined(GOLD_CANPACK)
|
||
#pragma pack()
|
||
#endif
|
||
|
||
// ------------------------------------------------------------------
|