|
|
@@ -17,7 +17,7 @@ namespace Renci.SshNet
|
|
|
{
|
|
|
private TraceSource _log =
|
|
|
#if DEBUG
|
|
|
- new TraceSource("SshNet.Logging", SourceLevels.All);
|
|
|
+ new TraceSource("SshNet.Logging", SourceLevels.All);
|
|
|
#else
|
|
|
new TraceSource("SshNet.Logging");
|
|
|
#endif
|
|
|
@@ -53,7 +53,7 @@ namespace Renci.SshNet
|
|
|
var encoding = new Renci.SshNet.Common.ASCIIEncoding();
|
|
|
|
|
|
var line = new StringBuilder();
|
|
|
- // Read data 2 bytes at a time to find end of line and leave any unhandled information in the buffer to be processed later
|
|
|
+ // Read data one byte at a time to find end of line and leave any unhandled information in the buffer to be processed later
|
|
|
var buffer = new List<byte>();
|
|
|
|
|
|
var data = new byte[1];
|
|
|
@@ -62,10 +62,14 @@ namespace Renci.SshNet
|
|
|
this._socket.Receive(data);
|
|
|
|
|
|
buffer.Add(data[0]);
|
|
|
+ Debug.WriteLine(data[0]);
|
|
|
}
|
|
|
- while (!(buffer.Count > 2 && buffer[buffer.Count - 1] == 0x0A && buffer[buffer.Count - 2] == 0x0D));
|
|
|
-
|
|
|
- response = encoding.GetString(buffer.Take(buffer.Count - 2).ToArray());
|
|
|
+ while (!(buffer.Count > 2 && buffer[buffer.Count - 1] == 0x0A));
|
|
|
+
|
|
|
+ if (buffer[buffer.Count - 2] == 0x0D)
|
|
|
+ response = encoding.GetString(buffer.Take(buffer.Count - 2).ToArray());
|
|
|
+ else
|
|
|
+ response = encoding.GetString(buffer.Take(buffer.Count - 1).ToArray());
|
|
|
}
|
|
|
|
|
|
partial void SocketRead(int length, ref byte[] buffer)
|