anchor.diff:    Classes,
     SysUtils,
     IdSSLOpenSSL,
  +  IdGlobal,
     IdSSL,
     IdHTTPWebBrokerBridge;
   
  
positive.code:   private
      FServer: TIdHTTPWebBrokerBridge;
      fSSLPrivateKeyPassword: String;
      procedure TerminateThreads;
      function getActive: Boolean;
      function getPort: Integer;
      procedure GetSSLPassWord(var Password: String);
      function getSecure: Boolean;
    public
      constructor Create;
  
negative.code:   Password:=fSSLPrivateKeyPassword;
  end;
  
  procedure TWebServer.OnHTTPQuerySSLPort(APort: TIdPort; var VUseSSL: Boolean);
  begin
    VUseSSL:=fSSLEnabled;
  end;
  
  procedure TWebServer.StartServer(APort: Integer; ASSLPrivateKeyFile, ASSLPrivateKeyPassword, ASSLCertFile: String);
  var
    lHandler: TIdServerIOHandlerSSLOpenSSL;
  begin
    if FServer.Active and (FServer.DefaultPort<>APort) then StopServer;
  
    fSSLEnabled:=(ASSLPrivateKeyFile<>'') and (ASSLCertFile<>'');
    if not FServer.Active then
    begin
      if fSSLEnabled then
      begin
        lHandler:=TIdServerIOHandlerSSLOpenSSL.Create;
        lHandler.SSLOptions.Method := sslvSSLv23;
  