IETF-SSH archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Practical forwarding problem



I've finally got around to cutting over to my own ssh implementation on
my home machines.  I've run into a problem.  I know where it's coming
from but I'm not sure what the best tack to take on dealing with it is.

I'm writing the list because I'd be interested to hear if anyone else
has dealt with the same problem, and if so how, and also interested in
any thoughts anyone may have on it.

What's happening is:

- User authentication succeeds.
- Client opens a "session" channel (call it A).
- Server confirms the open.
- Client requests agent and X11 forwarding on A.
- Server accepts forwardings.
- Client sends an "exec" request on A.  The requested command is an X
   terminal emulator.
- Terminal emulator starts (opening an X connection) and backgrounds
   itself (which looks like dying, to the server).
- Server notices command death and sends EOF and CLOSE on A.
- Client sends CLOSE on A, acking the server's CLOSE.
- Server tears down forwardings for A, 'cause the channel's closed.
- Something running under the terminal emulator does something which
   wants agent access, or which wants a new X connection, but the
   forwarding is now gone!

Obviously, something here needs to change.  But what?  Everything
leading up to the problem looks reasonable, but it sure adds up to
"broken" in practice.  The most dubious point I see is the terminal
emulator backgrounding itself - but that worked fine with the old ssh1
implementation, and it doesn't seem totally unreasonable to expect it
to work still.

Thoughts, anyone?

/~\ The ASCII				der Mouse
\ / Ribbon Campaign
 X  Against HTML	       mouse%rodents.montreal.qc.ca@localhost
/ \ Email!	     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B



Home | Main Index | Thread Index | Old Index