| 
				   | 
				
| (2 intermediate revisions by the same user not shown) | 
| Line 6: | 
Line 6: | 
|   |  |   |  | 
|   | '''Ultibo Remote Shell unit'''  |   | '''Ultibo Remote Shell unit'''  | 
| − | 
  |   | 
| − | ''To be documented''
  |   | 
|   |  |   |  | 
|   | === Constants ===  |   | === Constants ===  | 
| Line 100: | 
Line 98: | 
|   |  |   |  | 
|   |  |   |  | 
| − | '''Telnet shell'''  | + | '''Remote shell specific classes'''  | 
|   |  |   |  | 
| − | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
  | + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | 
| − |    | + |  | 
| − | <code>TTelnetShell = class(TShell)</code>
  | + |  | 
| − | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
  | + |  | 
| − | {| class="wikitable" style="font-size: 14px; background: white;"
  | + |  | 
|   | |-  |   | |-  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>  | + | | [[TTelnetShell|<code>TTelnetShell = class(TShell)</code>]]  | 
| − | |-
  | + |  | 
| − | | <code>constructor Create;</code>  | + |  | 
| − | | style="width: 50%;"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>destructor Destroy; override;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>FListener:TTelnetListener;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure Reset(ASession:TTelnetSession);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure MoveFirst(ASession:TTelnetSession);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure MoveLast(ASession:TTelnetSession);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure MoveLeft(ASession:TTelnetSession);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure MoveRight(ASession:TTelnetSession);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure EraseLine(ASession:TTelnetSession);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure OutputLine(ASession:TTelnetSession; const AValue:String);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>function ExpandLine(ASession:TTelnetSession):Boolean;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure EraseCharacter(ASession:TTelnetSession);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure DeleteCharacter(ASession:TTelnetSession);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure InsertCharacter(ASession:TTelnetSession; ACh:Char);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure OverwriteCharacter(ASession:TTelnetSession; ACh:Char);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure PrevHistory(ASession:TTelnetSession);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure NextHistory(ASession:TTelnetSession);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure CurrentHistory(ASession:TTelnetSession);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure TelnetConnected(AConnection:TTelnetConnection);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>procedure TelnetDisconnected(AConnection:TTelnetConnection);</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>function TelnetInit(AConnection:TTelnetConnection):Boolean;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>function TelnetChar(AConnection:TTelnetConnection; AChar:Char):Boolean;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>function TelnetCommand(AConnection:TTelnetConnection; ACommand,AOption:Byte; AData:Pointer; ASize:LongWord):Boolean;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>property Listener:TTelnetListener read FListener;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>function DoClear(ASession:TShellSession):Boolean; override;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>function DoInput(ASession:TShellSession; var AInput:String):Boolean; override;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>function DoOutputEx(ASession:TShellSession; const AOutput:String; AReturn:Boolean):Boolean; override;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>function MatchSequence(const ASequence:String; var AContinue:Boolean):Boolean;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>function ProcessSequence(const ASequence:String):Boolean;</code>
  | + |  | 
| − | |  
  | + |  | 
|   | |-  |   | |-  | 
|   | |}  |   | |}  | 
| − | </div></div>
  | + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | 
| − | '''Telnet session'''
  | + |  | 
| − |    | + |  | 
| − | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
  | + |  | 
| − |    | + |  | 
| − | <code>TTelnetSession = class(TShellSession)</code>
  | + |  | 
| − | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
  | + |  | 
| − | {| class="wikitable" style="font-size: 14px; background: white;"
  | + |  | 
|   | |-  |   | |-  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>  | + | | [[TTelnetSession|<code>TTelnetSession = class(TShellSession)</code>]]  | 
| − | |-
  | + |  | 
| − | | <code>Command:String;</code>  | + |  | 
| − | | style="width: 50%;"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>Sequence:String;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>Position:LongWord;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
|   | |-  |   | |-  | 
|   | |}  |   | |}  | 
| − | </div></div>
  | + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | 
| − |  
  | + |  | 
| − | '''SSH shell'''
  | + |  | 
| − |    | + |  | 
| − | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
  | + |  | 
| − |    | + |  | 
| − | <code>TSSHShell = class(TShell)</code>
  | + |  | 
| − | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
  | + |  | 
| − | {| class="wikitable" style="font-size: 14px; background: white;"
  | + |  | 
|   | |-  |   | |-  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>  | + | | [[TSSHShell|<code>TSSHShell = class(TShell)</code>]]  | 
| − | |-
  | + |  | 
| − | | <code>constructor Create;</code>  | + |  | 
| − | | style="width: 50%;"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>destructor Destroy; override;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
|   | |-  |   | |-  | 
|   | |}  |   | |}  | 
| − | </div></div>  
  | + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | 
| − |  
  | + |  | 
| − | '''Telnet shell logout'''
  | + |  | 
| − |    | + |  | 
| − | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
  | + |  | 
| − |    | + |  | 
| − | <code>TTelnetShellLogout = class(TShellCommand)</code>
  | + |  | 
| − | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
  | + |  | 
| − | {| class="wikitable" style="font-size: 14px; background: white;"
  | + |  | 
|   | |-  |   | |-  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>  | + | | [[TTelnetShellLogout|<code>TTelnetShellLogout = class(TShellCommand)</code>]]  | 
| − | |-
  | + |  | 
| − | | <code>constructor Create;</code>  | + |  | 
| − | | style="width: 50%;"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>destructor Destroy; override;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>function DoHelp(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>function DoInfo(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>function DoCommand(AShell:TShell; ASession:TShellSession; AParameters:TStrings):Boolean; override;</code>
  | + |  | 
| − | |  
  | + |  | 
|   | |-  |   | |-  | 
|   | |}  |   | |}  | 
| − | </div></div>
  | + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | 
| − |  
  | + |  | 
| − | '''SSH shell logout'''
  | + |  | 
| − |    | + |  | 
| − | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
  | + |  | 
| − |    | + |  | 
| − | <code>TSSHShellLogout = class(TShellCommand)</code>
  | + |  | 
| − | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
  | + |  | 
| − | {| class="wikitable" style="font-size: 14px; background: white;"  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>constructor Create;</code>
  | + |  | 
| − | | style="width: 50%;"| 
  | + |  | 
| − | |-
  | + |  | 
| − | | <code>destructor Destroy; override;</code>
  | + |  | 
| − | |  
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"| 
  | + |  | 
| − | |-
  | + |  | 
| − | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
  | + |  | 
|   | |-  |   | |-  | 
| − | |colspan="2"|   | + | | [[TSSHShellLogout|<code>TSSHShellLogout = class(TShellCommand)</code>]]  | 
|   | |-  |   | |-  | 
|   | |}  |   | |}  | 
| − | </div></div> 
  |   | 
|   | <br />  |   | <br />  | 
|   |  |   |  | 
| Line 359: | 
Line 144: | 
|   | {| class="wikitable" style="font-size: 14px; background: white;"  |   | {| class="wikitable" style="font-size: 14px; background: white;"  | 
|   | |-  |   | |-  | 
| − | ! '''Note'''  | + | ! Note  | 
|   | | None documented  |   | | None documented  | 
|   | |-  |   | |-  |