ObjectDisposedException while connecting ssh

Offen
#584 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
48/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
csharp
Bereich
networking

Rechercherichtung

Beginne in src/Renci.SshNet/Abstractions/SocketAbstraction.cs bei Connect(IPEndPoint remoteEndpoint, TimeSpan connectTimeout). Verfolge den Rückruf ManualResetEvent.Completed und die Lebensdauer von ManualResetEvent rund um Timeout und Freigabe. Als erledigt gilt die Aufgabe, wenn die gemeldete ObjectDisposedException beim Herstellen einer SSH-Verbindung nicht mehr auftritt, auch wenn die Verbindung nahezu gleichzeitig mit der Freigabe abgeschlossen wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

sometimes I get an error while using ssh connection, it is the cause of crashed app, with the following log messages:

2019-09-16 10:04:22.710 OneLink.iOS[307:17928]
Unhandled Exception:
System.ObjectDisposedException: Safe handle has been closed
at System.Runtime.InteropServices.SafeHandle.DangerousAddRef (System.Boolean& success) [0x0001c] in /Library/Frameworks/Xamarin.iOS.framework/Versions/12.14.0.114/src/Xamarin.iOS/mcs/class/corlib/System.Runtime.InteropServices/SafeHandle.cs:125
at System.Threading.NativeEventCalls.SetEvent (Microsoft.Win32.SafeHandles.SafeWaitHandle handle) [0x00002] in /Library/Frameworks/Xamarin.iOS.framework/Versions/12.14.0.114/src/Xamarin.iOS/mcs/class/corlib/System.Threading/NativeEventCalls.cs:61
at System.Threading.EventWaitHandle.Set () [0x00000] in /Library/Frameworks/Xamarin.iOS.framework/Versions/12.14.0.114/src/Xamarin.iOS/mcs/class/referencesource/mscorlib/system/threading/eventwaithandle.cs:319
at Renci.SshNet.Abstractions.SocketAbstraction.ConnectCompleted (System.Object sender, System.Net.Sockets.SocketAsyncEventArgs e) [0x0000f] in :0

==========================================
I checked your codes, and I think that the problem in the function
public static Socket Connect(IPEndPoint remoteEndpoint, TimeSpan connectTimeout)
in file src/Renci.SshNet/Abstractions/SocketAbstraction.cs.
Maybe we must remove Completed callback function before disposing of ManualResetEvent.

Can you help me to check this issue?

Thanks so much!

Vorherrschende Sprache
C#
Sterne
4.4k
Forks
993
Ø Merge
9 T. 21 Std.
Gemergte PRs (30 T.)
1

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus sshnet/SSH.NET

Alle Issues in sshnet/SSH.NET

Ähnliche Issues

Weitere Issues zu C#

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.