title: SSH.NET is not executing command on device
body: <p>I'm trying to send a simple command over SSH using SSH.NET. Even the simplest test code fails. Here is a snippet.</p>
  
  <pre><code>using (var ssh = new SshClient("ip", port, "username", "password"))
  {
      ssh.Connect();
      while (true)
      {
          var result = ssh.RunCommand("AT").Execute(); 
          Console.Out.WriteLine(result);
      }
  }
  </code></pre>
  
  <p>The <code>AT</code> command should echo back OK but doesn't. Instead I receive a custom timeout message issued by the SSH target. I see the device name in the timeout message which corresponds to the prompt it uses and from that i can conclude that the login works (also tested with various SSH programs) but the command itself is not executed. I tried adding <code>\n</code> and <code>\r\n</code> to the commands but to no results. What am I doing wrong?</p>
  
  <p>Edit 1: 
  output from result is <code>\r\nCommand Line Interface\r\nDeviceName&gt; Custom idle timeout</code> I think the line endings are converted to Windows ones by Visual Studio.</p>
  
  <p>Edit 2:
  Using Plink <code>plink.exe username@ip -pw password "AT" &gt; log.txt</code> results in the same output as Visual Studio. Plink waits till timeout and terminates and  <code>log.txt</code>contains <code>\r\nCommand Line Interface\r\nDeviceName&gt; Custom idle timeout</code>. </p>
  
  <p>Using PuTTY I see that </p>
  
  <pre class="lang-none prettyprint-override"><code>Using username "username".
  username@host's password:
  
  Entering character mode
  Escape character is '^]'.
  
  Command Line Interface
  DeviceName&gt; 
  </code></pre>
  
  <p>is written before you can start entering commands. Might it be that the command is entered before the host is ready to receive it and as a result the command hangs until some reaction comes?</p>