sshnet / sshnet/SSH.NET

Information provided by remote host is not captured when channel session is rejected

Offen
#305 5 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

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

Beschreibung

I've got an intermittent crash I'd like to track down a bit better:

Unhandled Exception: Renci.SshNet.Common.SshException: Failed to open a channel after 10 attempts.
   at Renci.SshNet.Channels.ChannelSession.Open()
   at Renci.SshNet.ScpClient.Download(String filename, FileInfo fileInfo)
   at AtlasSSH.SSHConnection.CopyRemoteFileLocally(String lx, FileInfo localFile, Action`1 statusUpdate, Func`1 failNow)
   at AtlasWorkFlows.Locations.PlaceLinuxRemote.CopyFromRemoteToLocal(String dsName, String[] files, DirectoryInfo ourpath, Action`1 statusUpdate, Func`1 failNow)
   at AtlasWorkFlows.Locations.PlaceLocalWindowsDisk.CopyFromSCPTarget(IPlace origin, Uri[] uris, Action`1 statusUpdate, Func`1 failNow)

I can see the spot where this error occurs in the source code. But the reasons for the error or failure to open seem to fail. This failure occurs after 15 or 20 connections are opened (and I think closed) to the same machine. And it doesn't always happen.

How can I better track down what is causing this failure?

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne bei Renci.SshNet.Channels.ChannelSession.Open() und verfolge den Fehler bis in ScpClient.Download(), wobei der gemeldete Stack Trace als Einstiegspunkt dient. Reproduziere die intermittierende Ablehnung nach wiederholten Verbindungen und ermittle, welche Informationen über den Remote-Host verloren gehen; die Aufgabe ist abgeschlossen, wenn der Fehler genügend Kontext offenlegt, um seine Ursache zu identifizieren.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
csharp
Bereich
networking
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

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