Telnet server options added to config. Renamed cfginettnmax MPL variable, renamed INETTNMAX variable in records too

This commit is contained in:
mysticbbs 2012-02-16 23:27:55 -05:00
parent b0cf4b2ac8
commit 2c9b924307
9 changed files with 56 additions and 24 deletions

View File

@ -3583,7 +3583,7 @@
- Prompt #315 is no longer used. I can't remember why. :) - Prompt #315 is no longer used. I can't remember why. :)
+ Removed MPL Cfg Variable "CfgMaxNodes" and replaced it with "CfgINetTNMax" + Removed MPL Cfg Variable "CfgMaxNodes" and replaced it with "CfgTNNodes"
variable, which now contains the number of telnet nodes to allow. These variable, which now contains the number of telnet nodes to allow. These
are basically interchangable in your MPL code but it is changing to more are basically interchangable in your MPL code but it is changing to more
accurately reflect what Mystic is doing. accurately reflect what Mystic is doing.

View File

@ -239,6 +239,7 @@ Begin
End Else End Else
Case Res of Case Res of
'I' : Configuration_Internet; 'I' : Configuration_Internet;
'1' : Configuration_TelnetServer;
'2' : Configuration_FTPServer; '2' : Configuration_FTPServer;
'X' : Break; 'X' : Break;
Else Else

View File

@ -12,6 +12,7 @@ Procedure Configuration_FileSettings;
Procedure Configuration_QWKSettings; Procedure Configuration_QWKSettings;
Procedure Configuration_Internet; Procedure Configuration_Internet;
Procedure Configuration_FTPServer; Procedure Configuration_FTPServer;
Procedure Configuration_TelnetServer;
Implementation Implementation
@ -351,4 +352,33 @@ Begin
Box.Free; Box.Free;
End; End;
Procedure Configuration_TelnetServer;
Var
Box : TAnsiMenuBox;
Form : TAnsiMenuForm;
Topic : String[80];
Begin
Topic := '|03(|09Telnet Server|03) |01-|09> |15';
Box := TAnsiMenuBox.Create;
Form := TAnsiMenuForm.Create;
Box.Header := ' Telnet Server ';
Box.Open (26, 9, 54, 16);
VerticalLine (46, 11, 14);
Form.AddBol ('U', ' Use Telnet Server', 27, 11, 48, 11, 19, 3, @Config.inetTNUse, Topic + 'Enable Telnet server');
Form.AddByte ('N', ' Telnet Nodes', 32, 12, 48, 12, 14, 3, 1, 255, @Config.inetTNNodes, Topic + 'Max telnet nodes to allow');
Form.AddWord ('P', ' Server Port', 33, 13, 48, 13, 13, 5, 0, 65535, @Config.inetTNPort, Topic + 'Telnet Server port');
Form.AddByte ('D', ' Dupe IP Limit', 31, 14, 48, 14, 15, 3, 1, 255, @Config.inetTNDupes, Topic + 'Max connections with same IP');
Form.Execute;
Form.Free;
Box.Close;
Box.Free;
End;
End. End.

View File

@ -251,7 +251,7 @@ Procedure Node_Chat;
Begin Begin
Session.io.OutFullLn (Session.GetPrompt(332)); Session.io.OutFullLn (Session.GetPrompt(332));
For A := 1 to Config.INetTNMax Do Begin For A := 1 to Config.INetTNNodes Do Begin
Assign (ChatFile, Config.DataPath + 'chat' + strI2S(A) + '.dat'); Assign (ChatFile, Config.DataPath + 'chat' + strI2S(A) + '.dat');
{$I-} Reset (ChatFile); {$I+} {$I-} Reset (ChatFile); {$I+}
If IoResult = 0 Then Begin If IoResult = 0 Then Begin
@ -289,7 +289,7 @@ Procedure Node_Chat;
If Text = '' Then Exit; If Text = '' Then Exit;
For Count := 1 to Config.INetTNMax Do Begin For Count := 1 to Config.INetTNNodes Do Begin
Assign (ChatFile, Config.DataPath + 'chat' + strI2S(Count) + '.dat'); Assign (ChatFile, Config.DataPath + 'chat' + strI2S(Count) + '.dat');
{$I-} Reset (ChatFile); {$I+} {$I-} Reset (ChatFile); {$I+}
If IoResult = 0 Then Begin If IoResult = 0 Then Begin

View File

@ -25,7 +25,7 @@ Var
Begin Begin
Is_User_Online := 0; Is_User_Online := 0;
For Count := 1 to Config.INetTNMax Do Begin For Count := 1 to Config.INetTNNodes Do Begin
Assign (ChatFile, Config.DataPath + 'chat' + strI2S(Count) + '.dat'); Assign (ChatFile, Config.DataPath + 'chat' + strI2S(Count) + '.dat');
{$I-} Reset(ChatFile); {$I+} {$I-} Reset(ChatFile); {$I+}
If IoResult <> 0 Then Continue; If IoResult <> 0 Then Continue;
@ -78,7 +78,7 @@ Var
Begin Begin
Session.io.OutFullLn (Session.GetPrompt(138)); Session.io.OutFullLn (Session.GetPrompt(138));
For A := 1 to Config.INetTNMax Do Begin For A := 1 to Config.INetTNNodes Do Begin
Assign (ChatFile, Config.DataPath + 'chat' + strI2S(A) + '.dat'); Assign (ChatFile, Config.DataPath + 'chat' + strI2S(A) + '.dat');
{$I-} Reset(ChatFile); {$I+} {$I-} Reset(ChatFile); {$I+}
If IoResult <> 0 Then Continue; If IoResult <> 0 Then Continue;
@ -120,7 +120,7 @@ Begin
ToNode := strS2I(Str); ToNode := strS2I(Str);
If (ToNode < 0) or (ToNode > Config.INetTNMax) Then Begin If (ToNode < 0) or (ToNode > Config.INetTNNodes) Then Begin
Session.io.OutFullLn (Session.GetPrompt(147)); Session.io.OutFullLn (Session.GetPrompt(147));
Exit; Exit;
End; End;
@ -133,7 +133,7 @@ Begin
Delete (Data, 1, Pos(';', Data)); Delete (Data, 1, Pos(';', Data));
If ToNode = 0 Then Begin If ToNode = 0 Then Begin
B := 1; B := 1;
C := Config.INetTNMax; C := Config.INetTNNodes;
If MsgType = 3 Then MsgType := 2; If MsgType = 3 Then MsgType := 2;
{ If Not (MsgType in [1, 4..7]) Then MsgType := 2;} { If Not (MsgType in [1, 4..7]) Then MsgType := 2;}
{ used line above comment now... see if that does anything } { used line above comment now... see if that does anything }

View File

@ -348,13 +348,13 @@ Begin
Console := TOutput.Create(True); Console := TOutput.Create(True);
Input := TInput.Create; Input := TInput.Create;
NodeData := TNodeData.Create(bbsConfig.INetTNMax); NodeData := TNodeData.Create(bbsConfig.INetTNNodes);
Console.SetWindowTitle(WinTitle); Console.SetWindowTitle(WinTitle);
{$IFDEF WINDOWS} {$IFDEF WINDOWS}
If bbsConfig.InetTNUse Then Begin If bbsConfig.InetTNUse Then Begin
TelnetServer := TServerManager.Create(bbsConfig, bbsConfig.InetTNPort, bbsConfig.INetTNMax, NodeData, @CreateTelnet); TelnetServer := TServerManager.Create(bbsConfig, bbsConfig.InetTNPort, bbsConfig.INetTNNodes, NodeData, @CreateTelnet);
TelnetServer.Server.FTelnetServer := True; TelnetServer.Server.FTelnetServer := True;
// TelnetServer.TextPath := bbsConfig.DataPath; // TelnetServer.TextPath := bbsConfig.DataPath;

View File

@ -317,19 +317,19 @@ Begin
AddVar ({$IFDEF MPLPARSER} 'userflags', {$ENDIF} iByte); AddVar ({$IFDEF MPLPARSER} 'userflags', {$ENDIF} iByte);
End; End;
2 : Begin 2 : Begin
AddPointer ({$IFDEF MPLPARSER} 'cfgsyspath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.SystemPath {$ELSE} NIL {$ENDIF}); AddPointer ({$IFDEF MPLPARSER} 'cfgsyspath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.SystemPath {$ELSE} NIL {$ENDIF});
AddPointer ({$IFDEF MPLPARSER} 'cfgdatapath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.DataPath {$ELSE} NIL {$ENDIF}); AddPointer ({$IFDEF MPLPARSER} 'cfgdatapath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.DataPath {$ELSE} NIL {$ENDIF});
AddPointer ({$IFDEF MPLPARSER} 'cfglogspath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.LogsPath {$ELSE} NIL {$ENDIF}); AddPointer ({$IFDEF MPLPARSER} 'cfglogspath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.LogsPath {$ELSE} NIL {$ENDIF});
AddPointer ({$IFDEF MPLPARSER} 'cfgmsgspath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.MsgsPath {$ELSE} NIL {$ENDIF}); AddPointer ({$IFDEF MPLPARSER} 'cfgmsgspath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.MsgsPath {$ELSE} NIL {$ENDIF});
AddPointer ({$IFDEF MPLPARSER} 'cfgattpath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.AttachPath {$ELSE} NIL {$ENDIF}); AddPointer ({$IFDEF MPLPARSER} 'cfgattpath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.AttachPath {$ELSE} NIL {$ENDIF});
AddPointer ({$IFDEF MPLPARSER} 'cfgqwkpath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.QwkPath {$ELSE} NIL {$ENDIF}); AddPointer ({$IFDEF MPLPARSER} 'cfgqwkpath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.QwkPath {$ELSE} NIL {$ENDIF});
AddPointer ({$IFDEF MPLPARSER} 'cfgmenupath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Session.Lang.MenuPath {$ELSE} NIL {$ENDIF}); AddPointer ({$IFDEF MPLPARSER} 'cfgmenupath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Session.Lang.MenuPath {$ELSE} NIL {$ENDIF});
AddPointer ({$IFDEF MPLPARSER} 'cfgtextpath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Session.Lang.TextPath {$ELSE} NIL {$ENDIF}); AddPointer ({$IFDEF MPLPARSER} 'cfgtextpath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Session.Lang.TextPath {$ELSE} NIL {$ENDIF});
AddPointer ({$IFDEF MPLPARSER} 'cfgmpepath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.ScriptPath {$ELSE} NIL {$ENDIF}); AddPointer ({$IFDEF MPLPARSER} 'cfgmpepath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Config.ScriptPath {$ELSE} NIL {$ENDIF});
AddPointer ({$IFDEF MPLPARSER} 'cfgtemppath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Session.TempPath {$ELSE} NIL {$ENDIF}); AddPointer ({$IFDEF MPLPARSER} 'cfgtemppath', {$ENDIF} iString, mysMaxPathSize, {$IFNDEF MPLPARSER} @Session.TempPath {$ELSE} NIL {$ENDIF});
AddPointer ({$IFDEF MPLPARSER} 'cfgtimeout', {$ENDIF} iWord, 4, {$IFNDEF MPLPARSER} @Config.Inactivity {$ELSE} NIL {$ENDIF}); AddPointer ({$IFDEF MPLPARSER} 'cfgtimeout', {$ENDIF} iWord, 4, {$IFNDEF MPLPARSER} @Config.Inactivity {$ELSE} NIL {$ENDIF});
AddPointer ({$IFDEF MPLPARSER} 'cfgseeinvis', {$ENDIF} iString, 20, {$IFNDEF MPLPARSER} @Config.AcsSeeInvis {$ELSE} NIL {$ENDIF}); AddPointer ({$IFDEF MPLPARSER} 'cfgseeinvis', {$ENDIF} iString, 20, {$IFNDEF MPLPARSER} @Config.AcsSeeInvis {$ELSE} NIL {$ENDIF});
AddPointer ({$IFDEF MPLPARSER} 'cfginettnmax', {$ENDIF} iByte, 1, {$IFNDEF MPLPARSER} @Config.INetTNMax {$ELSE} NIL {$ENDIF}); AddPointer ({$IFDEF MPLPARSER} 'cfgtnnodes', {$ENDIF} iByte, 1, {$IFNDEF MPLPARSER} @Config.INetTNNodes {$ELSE} NIL {$ENDIF});
End; End;
3 : Begin 3 : Begin
{$IFNDEF MPLPARSER} TInterpEngine(S).IdxVarMBase := X + 1; {$ENDIF} {$IFNDEF MPLPARSER} TInterpEngine(S).IdxVarMBase := X + 1; {$ENDIF}

View File

@ -221,7 +221,7 @@ Type
inetPOP3Dupes : Byte; inetPOP3Dupes : Byte;
inetTNUse : Boolean; inetTNUse : Boolean;
inetTNPort : Word; inetTNPort : Word;
inetTNMax : Byte; inetTNNodes : Byte;
inetTNDupes : Byte; inetTNDupes : Byte;
inetFTPUse : Boolean; inetFTPUse : Boolean;
inetFTPPort : Word; inetFTPPort : Word;

View File

@ -86,3 +86,4 @@ FUTURE / IDEAS / WORK IN PROGRESS / NOTES
interested in working on that? interested in working on that?
- PCBoard-style "quickscan"? Yes? No? - PCBoard-style "quickscan"? Yes? No?
- Filebase allow anonymous flag for FTP or just use FreeFiles - Filebase allow anonymous flag for FTP or just use FreeFiles
- Build in "telnetd" STDIO redirection into MIS in Linux/OSX