MIS logging

This commit is contained in:
mysticbbs 2013-08-28 21:01:55 -04:00
parent f02c1fd0bc
commit 3868c9b4dc
8 changed files with 48 additions and 5 deletions

View File

@ -35,7 +35,7 @@ Begin
Form.AddBol ('A', ' Active ' , 20, 7, 30, 7, 8, 3, @Arc.Active, '');
Form.AddStr ('X', ' Extension ' , 17, 8, 30, 8, 11, 4, 4, @Arc.Ext, '');
Form.AddTog ('O', ' OS ' , 24, 9, 30, 9, 4, 7, 0, 3, 'Windows Linux OSX All', @Arc.OSType, '');
Form.AddTog ('O', ' OS ' , 24, 9, 30, 9, 4, 7, 0, 4, 'Windows Linux OSX All OS/2', @Arc.OSType, '');
Form.AddStr ('D', ' Description ' , 15, 10, 30, 10, 13, 30, 30, @Arc.Desc, '');
Form.AddStr ('P', ' Pack Cmd ' , 18, 11, 30, 11, 10, 35, 80, @Arc.Pack, '');
Form.AddStr ('U', ' Unpack Cmd ' , 16, 12, 30, 12, 12, 35, 80, @Arc.Unpack, '');

View File

@ -34,7 +34,7 @@ Begin
VerticalLine (22, 7, 13);
Form.AddBol ('A', ' Active ' , 14, 7, 24, 7, 8, 3, @Prot.Active, '');
Form.AddTog ('O', ' OS ' , 18, 8, 24, 8, 4, 7, 0, 3, 'Windows Linux OSX All', @Prot.OSType, '');
Form.AddTog ('O', ' OS ' , 18, 8, 24, 8, 4, 7, 0, 4, 'Windows Linux OSX All OS/2', @Prot.OSType, '');
Form.AddBol ('B', ' Batch ' , 15, 9, 24, 9, 7, 3, @Prot.Batch, '');
Form.AddChar ('K', ' Hot Key ' , 13, 10, 24, 10, 9, 1, 254, @Prot.Key, '');
Form.AddStr ('D', ' Description ' , 9, 11, 24, 11, 13, 40, 40, @Prot.Desc, '');

View File

@ -285,7 +285,7 @@ Begin
Form.AddStr ('D', ' Domain', 23, 11, 33, 11, 8, 25, 25, @bbsCfg.inetDomain, Topic + 'Internet domain name');
Form.AddStr ('I', ' Interface', 20, 12, 33, 12, 11, 23, 23, @bbsCfg.inetInterface, Topic + 'Network interface IP address');
Form.AddBol ('B', ' IP Blocking', 18, 13, 33, 13, 13, 3, @bbsCfg.inetIPBlocking, Topic + 'Enable IP blocking');
Form.AddBol ('L', ' IP Logging', 19, 14, 33, 14, 12, 3, @bbsCfg.inetIPLogging, Topic + 'Enable IP logging');
Form.AddBol ('L', ' Logging', 22, 14, 33, 14, 12, 3, @bbsCfg.inetLogging, Topic + 'Enable server logging');
Form.Execute;

View File

@ -365,6 +365,7 @@ Begin
TelnetServer.Server.FTelnetServer := True;
TelnetServer.ClientMaxIPs := bbsConfig.InetTNDupes;
TelnetServer.LogFile := 'telnet';
Result := True;
End;
@ -374,6 +375,7 @@ Begin
SMTPServer.Server.FTelnetServer := False;
SMTPServer.ClientMaxIPs := bbsConfig.INetSMTPDupes;
SMTPServer.LogFile := 'smtp';
Result := True;
End;
@ -383,6 +385,7 @@ Begin
POP3Server.Server.FTelnetServer := False;
POP3Server.ClientMaxIPs := bbsConfig.inetPOP3Dupes;
POP3Server.LogFile := 'pop3';
Result := True;
End;
@ -392,6 +395,7 @@ Begin
FTPServer.Server.FTelnetServer := False;
FTPServer.ClientMaxIPs := bbsConfig.inetFTPDupes;
FTPServer.LogFile := 'ftp';
Result := True;
End;
@ -401,6 +405,7 @@ Begin
NNTPServer.Server.FTelnetServer := False;
NNTPServer.ClientMaxIPs := bbsConfig.inetNNTPDupes;
NNTPServer.LogFile := 'nntp';
Result := True;
End;
@ -410,6 +415,7 @@ Begin
BINKPServer.Server.FTelnetServer := False;
BINKPServer.ClientMaxIPs := bbsConfig.inetBINKPDupes;
BINKPServer.LogFile := 'binkp';
Result := True;
End;

View File

@ -839,6 +839,7 @@ Var
BinkP : TBinkP;
Count : Integer;
Address : String;
Before : LongInt;
Begin
Queue := TProtocolQueue.Create;
BinkP := TBinkP.Create (Server, Client, Queue, False, bbsConfig.inetBINKPTimeOut);
@ -850,8 +851,13 @@ Begin
For Count := 1 to strWordCount(BinkP.AddressList, ' ') Do Begin
Address := strWordGet(Count, BinkP.AddressList, ' ');
If BinkP.AuthenticateNode(Address) Then
If BinkP.AuthenticateNode(Address) Then Begin
Before := Queue.QSize;
QueueByNode(Queue, False, BinkP.EchoNode);
Server.Status ('Queued ' + strI2S(Queue.QSize - Before) + ' files for ' + strAddr2Str(BinkP.EchoNode.Address));
End;
End;
BinkP.FileList := Queue;

View File

@ -24,6 +24,7 @@ Type
NodeInfo : TNodeData;
Server : TIOSocket;
ServerStatus : TStringList;
LogFile : String[20];
StatusUpdated : Boolean;
ClientList : TList;
NewClientProc : TServerCreateProc;
@ -83,6 +84,7 @@ Begin
TextPath := Cfg.DataPath;
NodeInfo := ND;
Config := Cfg;
LogFile := '';
For Count := 1 to ClientMax Do
ClientList.Add(NIL);
@ -164,6 +166,7 @@ End;
Procedure TServerManager.Status (Str: String);
Var
Res : String;
T : Text;
Begin
If ServerStatus = NIL Then Exit;
@ -184,6 +187,18 @@ Begin
ServerStatus.Add(strRep(' ', 14) + Copy(Res, 75, 255));
End Else
ServerStatus.Add(Res);
If Config.inetLogging And (LogFile <> '') Then Begin
FileMode := 66;
Assign (T, Config.LogsPath + 'server_' + LogFile + '.log');
{$I-} Append (T); {$I+}
If (IoResult <> 0) and (IoResult <> 5) Then
{$I-} ReWrite(T); {$I+}
If IoResult = 0 Then Begin
WriteLn (T, Res);
Close (T);
End;
End;
Except
{ ignore exceptions here -- happens when socketstatus is NIL}
{ need to review criticals now that they are in FP's RTL}

View File

@ -47,6 +47,15 @@ Const
OSType = 2;
{$ENDIF}
// OSTYPE 3 = RESERVED FOR "ALL" OS TYPES IN CONFIGURATION
{$IFDEF OS2}
PathChar = '\';
LineTerm = #13#10;
OSID = 'OS/2';
OSType = 4;
{$ENDIF}
mysMaxAcsSize = 30; // Max ACS string size
mysMaxPathSize = 80;
mysMaxMsgLines = 1000; // Max message base lines
@ -285,7 +294,7 @@ Type
// INTERNET SERVER SETTINGS
inetDomain : String[25];
inetIPBlocking : Boolean;
inetIPLogging : Boolean;
inetLogging : Boolean;
inetSMTPUse : Boolean;
inetSMTPPort : Word;
inetSMTPMax : Word;

View File

@ -3547,4 +3547,11 @@
+ New MCI code: FT returns the total number of files in the current file
area.
+ MIS BINKP server is now active. Configuration is in the system
configuration with the rest of the servers.
+ All MIS servers now maintain their own independant log files in the LOGS
directory, assuming "Server Logging" is turned on in Internet Server
Options.
<ALPHA 37 RELEASED>