serverforwardingthread.pas
来自「著名的SecureBlackBox控件完整源码」· PAS 代码 · 共 54 行
PAS
54 行
unit ServerForwardingThread;
interface
uses
ScktComp, SBSSHCommon, SBSSHHandlers, SBSSHForwardingHandlers;
type
TSSHServerForwardingThread = class(TServerClientThread)
private
FHandler: TElServerTCPForwardingSSHSubsystemHandler;
procedure TerminateRequest(Sender: TObject; var Terminate: boolean);
protected
procedure ClientExecute; override;
public
constructor Create(ASocket: TServerClientWinSocket);
destructor Destroy; override;
procedure Run(Conn: TElSSHTunnelConnection);
property Handler: TElServerTCPForwardingSSHSubsystemHandler read FHandler;
end;
implementation
constructor TSSHServerForwardingThread.Create(ASocket: TServerClientWinSocket);
begin
inherited Create(true, ASocket);
end;
destructor TSSHServerForwardingThread.Destroy;
begin
inherited;
end;
procedure TSSHServerForwardingThread.Run(Conn: TElSSHTunnelConnection);
begin
FHandler := TElServerTCPForwardingSSHSubsystemHandler.CreateDelayed(Conn);
FHandler.Socket := ClientSocket;
FHandler.OnTerminateRequest := TerminateRequest;
Resume;
end;
procedure TSSHServerForwardingThread.ClientExecute;
begin
FHandler.Run;
end;
procedure TSSHServerForwardingThread.TerminateRequest(Sender: TObject;
var Terminate: boolean);
begin
Terminate := Self.Terminated;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?