Quellcode durchsuchen

Fix for server drops connection

olegkap_cp vor 13 Jahren
Ursprung
Commit
5de39cb104
1 geänderte Dateien mit 9 neuen und 3 gelöschten Zeilen
  1. 9 3
      Renci.SshClient/Renci.SshNet/Session.NET.cs

+ 9 - 3
Renci.SshClient/Renci.SshNet/Session.NET.cs

@@ -97,9 +97,15 @@ namespace Renci.SshNet
                 }
                 catch (SocketException exp)
                 {
-                    if (exp.SocketErrorCode == SocketError.WouldBlock ||
-                        exp.SocketErrorCode == SocketError.IOPending ||
-                        exp.SocketErrorCode == SocketError.NoBufferSpaceAvailable)
+                    if (exp.SocketErrorCode == SocketError.ConnectionAborted)
+                    {
+                        buffer = new byte[length];
+                        this.Disconnect();
+                        return;
+                    }
+                    else if (exp.SocketErrorCode == SocketError.WouldBlock ||
+                       exp.SocketErrorCode == SocketError.IOPending ||
+                       exp.SocketErrorCode == SocketError.NoBufferSpaceAvailable)
                     {
                         // socket buffer is probably empty, wait and try again
                         Thread.Sleep(30);