title: how to get delphi Xe2 Indy 10 socket server peer host name
body: <p>Here is my code...</p>
  
  <pre><code>procedure TMainForm.tsConnect(AContext: TIdContext);
  var
    s, INstr, adr:string;
    port: Integer;
  begin
    with TMyContext(AContext) do
    begin
      Con := Now;
      if (Connection.Socket &lt;&gt; nil) then
        IP :=Connection.Socket.Binding.PeerIP;
      port:=Connection.Socket.Binding.PeerPort;
      s:=IntToStr(Connection.Socket.Binding.PeerPort);
      TIdStack.IncUsage();
      try
        adr:= GStack.HostName;
      finally
        TIdStack.DecUsage;
      end;
  
      INstr := Connection.IOHandler.ReadLn;
      Nick := INstr;
  
      if Nick &lt;&gt; '' then
      begin
        memo1.Lines.Add('Opened  &lt;'+Nick + '&gt;  '+adr+' '+IP+':'+s+'      '+DAteTimeToStr(now));
        //SendNicks;
      end else
      begin
        Connection.IOHandler.WriteLn('No Nick provided! Goodbye.');
        Connection.Disconnect;
      end;
    end;
  end;
  </code></pre>
  
  <p>GStack.HostName gives name of my server, how to get client host name?</p>