1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-25 09:12:24 +00:00
putty-source/unix
Simon Tatham bb78583ad2 Implement connection sharing between instances of PuTTY.
The basic strategy is described at the top of the new source file
sshshare.c. In very brief: an 'upstream' PuTTY opens a Unix-domain
socket or Windows named pipe, and listens for connections from other
PuTTYs wanting to run sessions on the same server. The protocol spoken
down that socket/pipe is essentially the bare ssh-connection protocol,
using a trivial binary packet protocol with no encryption, and the
upstream has to do some fiddly transformations that I've been
referring to as 'channel-number NAT' to avoid resource clashes between
the sessions it's managing.

This is quite different from OpenSSH's approach of using the Unix-
domain socket as a means of passing file descriptors around; the main
reason for that is that fd-passing is Unix-specific but this system
has to work on Windows too. However, there are additional advantages,
such as making it easy for each downstream PuTTY to run its own
independent set of port and X11 forwardings (though the method for
making the latter work is quite painful).

Sharing is off by default, but configuration is intended to be very
easy in the normal case - just tick one box in the SSH config panel
and everything else happens automatically.

[originally from svn r10083]
2013-11-17 14:05:41 +00:00
..
configure.ac Fix build failures on Ubuntu 13.10. 2013-10-26 14:00:10 +00:00
gtkcfg.c Post-release destabilisation! Completely remove the struct type 2011-07-14 18:52:21 +00:00
gtkcols.c Reinstate all the GTK1-specific code under ifdefs, and verify that 2008-04-04 10:56:26 +00:00
gtkcols.h Stop including <gtk/gtkcontainer.h> directly, since a user points out 2012-07-01 16:55:36 +00:00
gtkdlg.c Fix cut-and-paste errors in nonfatal() implementations. 2013-09-23 14:35:08 +00:00
gtkfont.c Fix another giant batch of resource leaks. (Mostly memory, but there's 2013-07-14 10:46:07 +00:00
gtkfont.h Support font fallback even when an X11 server-side font is selected, 2011-09-16 19:18:54 +00:00
gtkwin.c Only run one toplevel callback per event loop iteration. 2013-09-15 14:05:31 +00:00
unix.h Replace the hacky 'OSSocket' type with a closure. 2013-11-17 14:03:55 +00:00
ux_x11.c Post-release destabilisation! Completely remove the struct type 2011-07-14 18:52:21 +00:00
uxagentc.c Tighten up a lot of casts from unsigned to int which are read by one 2013-07-14 10:45:54 +00:00
uxcfg.c Post-release destabilisation! Completely remove the struct type 2011-07-14 18:52:21 +00:00
uxcons.c Two related changes to timing code: 2012-09-18 21:42:48 +00:00
uxgen.c Fix another giant batch of resource leaks. (Mostly memory, but there's 2013-07-14 10:46:07 +00:00
uxgss.c Post-release destabilisation! Completely remove the struct type 2011-07-14 18:52:21 +00:00
uxmisc.c Centralise calls to fcntl into functions that carefully check the 2013-07-19 18:10:02 +00:00
uxnet.c Implement connection sharing between instances of PuTTY. 2013-11-17 14:05:41 +00:00
uxnoise.c Fix minor file descriptor leaks. Found by cppcheck, reported by Tim Kosse. 2009-09-16 22:28:20 +00:00
uxplink.c Implement connection sharing between instances of PuTTY. 2013-11-17 14:05:41 +00:00
uxprint.c Update to r8614: another -D_FORTIFY_SOURCE=2 fix. 2010-02-20 11:21:25 +00:00
uxproxy.c Remove sk_{get,set}_private_ptr completely! 2013-11-17 14:04:48 +00:00
uxpterm.c Revamp net_pending_errors using toplevel callbacks. 2013-08-17 16:06:27 +00:00
uxpty.c When I turned fcntls into noncloexecs in r9940, I missed one. 2013-07-21 07:40:28 +00:00
uxputty.c Implement connection sharing between instances of PuTTY. 2013-11-17 14:05:41 +00:00
uxsel.c Changed my mind about r7164. Instead of checking for zero flags 2007-01-26 20:00:32 +00:00
uxser.c Fix another giant batch of resource leaks. (Mostly memory, but there's 2013-07-14 10:46:07 +00:00
uxsftp.c Only run one toplevel callback per event loop iteration. 2013-09-15 14:05:31 +00:00
uxshare.c Implement connection sharing between instances of PuTTY. 2013-11-17 14:05:41 +00:00
uxsignal.c Rename some of the more stupidly named files in the Unix back end. 2004-12-31 13:02:46 +00:00
uxstore.c Fix error checking in uxstore.c: add a missing check, and fix a 2013-07-21 07:40:30 +00:00
uxucs.c Rationalise null pointer checks in both decode_codepage functions, so 2013-07-22 07:12:05 +00:00
xkeysym.c Support for non-ISO-8859-1 X keysyms. So in particular, pterm in a 2003-04-27 11:10:48 +00:00
xpmptcfg.c Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
xpmpterm.c Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
xpmpucfg.c Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
xpmputty.c Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00