Jelajahi Sumber

Fix for server drops connection

olegkap_cp 13 tahun lalu
induk
melakukan
5de39cb104
1 mengubah file dengan 9 tambahan dan 3 penghapusan
  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);