1 #include <stdlib.h> 2 #include <stdio.h> 3 #include "platform.h" 4 #if !defined(OS_2) && !defined(UNIX) 5 #include <dir.h> 6 #else 7 // #include <dos.h> 8 #endif 9 #include <string.h> 10 11 typedef unsigned short word; 12 13 #define False 0 14 #define True 1 15 16 #define BUFFER_SIZE 2048 17 18 // Parameter group definition 19 #define PT_COMMAND 0 20 #define PT_ADDRESS 1 21 #define PT_ENC 2 22 #define PT_DOW 3 23 #define PT_ATTRIB 4 24 #define PT_FLAVOUR 5 25 #define PT_MACRO 6 26 #define PT_FROM 7 27 #define PT_EXCEPT 8 28 #define PT_DEFINITION 9 29 #define PT_QQQMODE 10 30 #define PT_OTHER 11 31 #define PT_END 200 32 33 extern const int NV_Routed; 34 extern const int NV_Direct; 35 extern const int NV_Noroute; 36 extern const int NV_NoPack; 37 38 extern char Months[12][4]; 39 extern char Days[7][4]; 40 41 42 43 // Some structures 44 struct S_FQAddress 45 { 46 word Zone, Net, Node, Point; 47 char Domain[64]; 48 }; 49 50 // Structure to store an address with wildcards 51 struct S_WAddress 52 { 53 int Reverse; // For miscellaneous use 54 char Zone[6]; 55 char Net[6]; 56 char Node[6]; 57 char Point[6]; 58 char Domain[64]; 59 }; 60 61 struct S_Codes 62 { 63 char *Keyword; 64 int Code; 65 int (*Initiator) (struct S_FQAddress); 66 int (*ParameterProcessor) (char *,struct S_FQAddress); 67 int Parameters; 68 int Group; 69 }; 70 71 int ReadRouteFile (char *FileName); 72 73 // Command initiators 74 int InitComPassword (struct S_FQAddress Main); 75 int InitComTopdown (struct S_FQAddress Main); 76 int InitComRouteTo (struct S_FQAddress Main); 77 int InitComRouteMail (struct S_FQAddress Main); 78 int InitComRouteFiles (struct S_FQAddress Main); 79 int InitComDirect (struct S_FQAddress Main); 80 int InitComDirectMail (struct S_FQAddress Main); 81 int InitComDirectFiles (struct S_FQAddress Main); 82 int InitComNoroute (struct S_FQAddress Main); 83 int InitComNorouteMail (struct S_FQAddress Main); 84 int InitComNorouteFiles (struct S_FQAddress Main); 85 int InitComNoPack (struct S_FQAddress Main); 86 int InitComNoPackMail (struct S_FQAddress Main); 87 int InitComNoPackFiles (struct S_FQAddress Main); 88 int InitComPacket2 (struct S_FQAddress Main); 89 int InitComEndDefine (struct S_FQAddress Main); 90 int InitComAssumePoints (struct S_FQAddress Main); 91 int InitComAssumeWaypoints (struct S_FQAddress Main); 92 int InitComEOLEndsCommand (struct S_FQAddress Main); 93 int InitComViaBossDirect (struct S_FQAddress Main); 94 int InitComViaBossHold (struct S_FQAddress Main); 95 int InitComIgnoreBSY (struct S_FQAddress Main); 96 int InitComProductInfo (struct S_FQAddress Main); 97 int InitComKillInTransit (S_FQAddress Main); 98 int InitComKillInTransitFiles (S_FQAddress Main); 99 int InitComLogpath (S_FQAddress Main); 100 int InitComFastechoPack (S_FQAddress Main); 101 int InitComNoDomainDir (S_FQAddress Main); 102 int InitComNoLoopRoute (S_FQAddress Main); 103 int InitComFEConfig (S_FQAddress Main); 104 int InitComIgnoreUnknownAttribs (S_FQAddress Main); 105 106 // Parameter processors 107 int ProcParNetmail (char *Token, struct S_FQAddress Main); 108 int ProcParNetSquish (char *Token, struct S_FQAddress Main); 109 int ProcParNetJam (char *Token, struct S_FQAddress Main); 110 int ProcParOutboundDir (char *Token, struct S_FQAddress Main); 111 int ProcParQQQOutboundDir (char *Token, struct S_FQAddress Main); 112 int ProcParLogFilename (char *Token, struct S_FQAddress Main); 113 int ProcParRecode (char *Token, struct S_FQAddress Main); 114 int ProcParPassword (char *Token, struct S_FQAddress Main); 115 int ProcParInbound (char *Token, struct S_FQAddress Main); 116 int ProcParInclude (char *Token, struct S_FQAddress Main); 117 int ProcParRoute (char *Token, struct S_FQAddress Main); 118 int ProcParPacket2 (char *Token,struct S_FQAddress Main); 119 int ProcParMain (char *Token,struct S_FQAddress Main); 120 int ProcParAKA (char *Token,struct S_FQAddress Main); 121 int ProcParCheckFile (char *Token, struct S_FQAddress Main); 122 int ProcParDefine (char *Token,struct S_FQAddress Main); 123 int ProcParProductInfo (char *Token,struct S_FQAddress Main); 124 int ProcParFEConfig (char *Token,struct S_FQAddress Main); 125 int ProcParFastechoPack (char *Token,struct S_FQAddress Main); 126 127 // misc. other functions 128 extern long lengthoffile(FILE *f); 129 130