sshnet / sshnet/SSH.NET

SSH Client Stream - No notification of remote closed

Aperta
#507 0 commenti 4 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
C#
Stelle
4.4k
Fork
993
Merge medio
9g 21h
PR unite (30g)
1

Descrizione

We have a use case where we need to open an SSH client to a remote host and communicate as a stream - i.e. it's not a command/response.

This works fine with CreateShellStream() and the DataReceived event handles incoming unsolicited data.

However, we're seeing the remote end is sometimes closed (gracefully - we see the FIN/ACK in wireshark), but our local end doesn't get any notification event raised. At worst I was hoping we'd get an ErrorOccured event on either the client or the stream, but nope.

The first we find out is a call to IsConnected returning false - and polling isn't cool.

Is this a deficiency of the library or am I doing something wrong. I'd read the docs... if there were any ;)

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia tracciando CreateShellStream e il comportamento esistente di DataReceived, ErrorOccured e IsConnected in caso di chiusura remota regolare. Verifica come il client SSH e lo stream gestiscono il caso FIN/ACK, quindi definisci una notifica che esponga in modo affidabile la chiusura e aggiungi la copertura per questo scenario; nell’issue non sono indicati file sorgente o test.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
csharp
Ambito
networking
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.