1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-10 18:07:59 +00:00
Commit Graph

2014 Commits

Author SHA1 Message Date
Simon Tatham
3a3e4d1818 Make the `vtmode' config option work under X. In the process I've
had to move another of its values out into wincfg.c - paradoxically,
this was the `font has X encoding' option! (Because the Unix font
handling code expects to be able to tell for _itself_ whether it has
a font with X-encoded line drawing glyphs.)

[originally from svn r3145]
2003-04-26 14:22:42 +00:00
Simon Tatham
88e0914f91 Aha, _that's_ why the icon title didn't work properly in pterm:
gtk_window_set_title() overwrote both titles at once. Icon title is
now working properly under X, and since X was the reason for the
whole icon/window title separation _anyway_ they default to being
separate.

[originally from svn r3144]
2003-04-26 13:55:47 +00:00
Simon Tatham
abb6b8ba8a The line-drawing paste config option has changed its meaning since
it was first designed. Alter the wording and documentation to match.

[originally from svn r3143]
2003-04-26 13:22:25 +00:00
Simon Tatham
1f9c9bb00f The new ssh_do_close() function itself causes a segfault if the
connection goes foom before ssh->channels is set up. Oops. Fixed.

[originally from svn r3141]
2003-04-25 17:44:09 +00:00
Simon Tatham
c1d61052ae Fix another segfault on abrupt X connection shutdown. This should
have happened in rev 1.5 [r996] but didn't! Now we never call
sk_get_private_ptr() on a socket unless we've ensured it's non-NULL.

[originally from svn r3140]
[r996 == 7b0e082700]
2003-04-25 16:42:36 +00:00
Simon Tatham
426dc87712 Don't block SIGPIPE until _after_ pterm forks, since otherwise the
blockage will propagate to the child process.

[originally from svn r3139]
2003-04-25 15:44:01 +00:00
Simon Tatham
2a0fff2451 Robustness in the face of sudden connection closures: we now make a
credible effort to shut down open forwardings cleanly when the
owning SSH connection terminates abruptly (for whatever reason).

[originally from svn r3137]
2003-04-25 11:48:24 +00:00
Simon Tatham
51fa8d6294 Force gcc to use x86's built-in 64/32->32,32 division instruction
rather than swanning off to a helper function. This seems to make
woefully little actual performance difference, which annoys me, but
it's a just-about-detectable improvement so I'll leave it in.

[originally from svn r3136]
2003-04-23 15:25:45 +00:00
Simon Tatham
afd4b4d662 Added framework to sshbn.c to make it possible to vary the
underlying integer type forming the Bignum. Using this, arranged
that gcc/x86 uses 32-bit chunks rather than the guaranteed ANSI-
portable 16-bit chunks. This has gained another 30% on key exchanges
by my measurements, but I'm not yet convinced that it's all
perfectly robust - it seems to work fine for SSH1 and SSH2/RSA but
I haven't ensured that every bignum routine is actually being
tested, so it may yet show up problems in DSA or key generation.

[originally from svn r3135]
2003-04-23 14:48:57 +00:00
Simon Tatham
041dcfd83d Unix makefile now uses -O2, which massively cuts down key exchange
time. This gives rise to a whole bunch of spare warnings, one or two
of which might have been actual bugs; now all resolved.

[originally from svn r3134]
2003-04-23 13:48:09 +00:00
Ben Harris
dd055ce280 Missing bits for colour selection support.
[originally from svn r3132]
2003-04-18 13:09:46 +00:00
Ben Harris
338bfcec3c Missing bits for System 7 listbox support.
[originally from svn r3131]
2003-04-18 13:09:08 +00:00
Simon Tatham
ec3595f7d4 Removing items from a list box using gtk_container_remove is nasty,
because when the selected item is removed the selection moves on to
another item. Thus, calling dlg_listbox_clear causes repeated
selchanges in the list, which in turn cause repeated valchanges if
the list is attached to a combo box. This has been completely
scuppering the Translation panel.

[originally from svn r3130]
2003-04-18 09:14:54 +00:00
Simon Tatham
717fd50963 Oops; we _do_ need to set dport even when doing dynamic forwarding,
because otherwise the `if (sport && dport)' statement runs the risk
of not working.

[originally from svn r3129]
2003-04-18 09:06:11 +00:00
Simon Tatham
22d8cfe36f Missed out a couple of uxsel_tell() which were hanging forwarded X
connections in at least some situations. Oops.

[originally from svn r3128]
2003-04-18 09:00:37 +00:00
Simon Tatham
a9c8e035dd Fix obvious foulup in X forwarding: my recent `how did this ever
work' change to port forwarding completely broke it, by failing to
set peeraddr{,len} before reading them. Oops.

[originally from svn r3127]
2003-04-18 09:00:16 +00:00
Ben Harris
d66a1d685f Replace use of FIONBIO with POSIX-approved O_NONBLOCK (set using fcntl()).
This should save us having to worry about different OSs' defining it in
different headers.

[originally from svn r3126]
2003-04-16 23:58:59 +00:00
Ben Harris
e7c7f5e3f8 Make IPv6 support for Unix work, and make it a lot simpler in the process.
At the moment, we have to assume that getaddrinfo() will only return AF_INET
and AF_INET6 addresses, since we patch in the port number into the sockaddr
later.  Fixing this is probably best done by redesigning the PuTTY network
abstraction a little.

[originally from svn r3125]
2003-04-16 23:33:44 +00:00
Ben Harris
18bf5c62b7 Remove all those horrid fprintfs.
[originally from svn r3123]
2003-04-14 23:47:07 +00:00
Ben Harris
8f2027fa36 Set the space required by a listbox sensibly as well.
[originally from svn r3122]
2003-04-14 23:28:58 +00:00
Ben Harris
1ecb4a043f Minor fixes:
- Erase the background of System 7 editboxes before drawing them.
 - Set the height of listboxes correctly.
 - Set the panel-selection listbox to 20 items high.

[originally from svn r3121]
2003-04-14 23:25:04 +00:00
Ben Harris
d5a214aa59 Don't call GetColor() if we don't have Color Quickdraw -- no good will come
of it.

[originally from svn r3120]
2003-04-14 22:55:12 +00:00
Ben Harris
bc19e25d71 Support for colour selection in the Mac OS.
[originally from svn r3119]
2003-04-14 22:42:44 +00:00
Ben Harris
2b1305986c Keyboard events in Mac OS 8 list boxes should generate EVENT_SELCHANGE,
not EVENT_VALCHANGE.

[originally from svn r3118]
2003-04-14 21:34:46 +00:00
Ben Harris
ed4551607f Enlarge the settings window so as to fill a 640x480 display. This makes
enough space to actually fit all of the panels.  I'll have to do a version
with smaller fonts for 9" screens.

[originally from svn r3117]
2003-04-14 21:15:39 +00:00
Ben Harris
5d5a16e14c Add a list box to the config dialogue to switch between panels. Now I don't
have to recompile to change panels!

[originally from svn r3116]
2003-04-13 14:37:07 +00:00
Ben Harris
321c6f24c7 Support for list boxes under System 7. There are some horrible kludges in
this code to do with the handling of the scroll bar, but it doesn actually
work better than the Mac OS 8 version.

[originally from svn r3115]
2003-04-13 13:52:44 +00:00
Ben Harris
62c756c3f3 socks5_negotiate(): rather than using an uninitialised value when passed
an address of an invalid type, assert() that it will never happen.
Do something similar for SOCKS4 as well.

[originally from svn r3114]
2003-04-12 21:23:58 +00:00
Ben Harris
08b127f95f Don't use an uninitialised value when we get an unsupported ATYP in a
SOCKS5 request.  Spotted by GCC.

[originally from svn r3113]
2003-04-12 21:15:43 +00:00
Ben Harris
6db521f4b9 Remove a couple of spurious semicolons.
[originally from svn r3112]
2003-04-12 21:07:25 +00:00
Ben Harris
502d5b4e50 Update for Simon's from_backend changes.
[originally from svn r3111]
2003-04-12 21:06:34 +00:00
Simon Tatham
214b306909 Support for New Session, Duplicate Session and the Saved Sessions
submenu in Unix PuTTY, and Duplicate Session also in pterm. You do
_not_ want to know how this is done. Be warned.

[originally from svn r3110]
2003-04-12 17:37:15 +00:00
Simon Tatham
eaaef4573c Further fiddlings with the size reconfiguration stuff; now
everything seems to work right even when the only thing changed was
the window border.

[originally from svn r3109]
2003-04-12 11:03:44 +00:00
Simon Tatham
a9b6ceb700 Mid-session reconfiguration of scrollback was failing (in Unix)
except when width or height had _also_ been changed. Fixed.

[originally from svn r3108]
2003-04-12 10:44:14 +00:00
Simon Tatham
56a4e967da Implement the ldisc `special' mechanism in Unix, without which local
line editing didn't work at all.

[originally from svn r3107]
2003-04-12 09:27:56 +00:00
Simon Tatham
09f7a8edbf Fix from yesterday's frontend-handle upheaval: ldisc calls
from_backend(), and must now pass its frontend handle rather than
its terminal handle.

[originally from svn r3106]
2003-04-12 09:19:09 +00:00
Simon Tatham
8f94dd3881 Mid-session BCE reconfiguration wasn't taking effect immediately
because I forgot to set term->erase_char in response to the change
in term->use_bce. Oops.

[originally from svn r3105]
2003-04-12 09:05:28 +00:00
Simon Tatham
4b6ffd99f1 Disable window title reporting by default, since it's a security
hazard. I considered removing it completely, but I can't rule out
the possibility of an OS that actually takes security of its
terminal devices seriously, and which might be able to make sensible
and safe use of this feature.

[originally from svn r3103]
2003-04-12 08:59:06 +00:00
Simon Tatham
bc4e41154a Close On Exit and Warn On Close fixes: (a) pty_reconfig needs to
remember changes in COE so it knows whether to print a message, and
(b) once the session has already ended, Warn On Close should shut up.

[originally from svn r3102]
2003-04-12 08:27:03 +00:00
Simon Tatham
c16bde1741 When I implemented the GTK messagebox() function and everything that
needed to use it, I completely forgot about askappend(). D'oh.

[originally from svn r3101]
2003-04-11 18:44:05 +00:00
Simon Tatham
d93f7113d1 Rationalisation of the system of frontend handles. Most modular bits
of PuTTY (terminal, backend, logctx etc) take a `void *' handle
passed to them from the frontend, and used as a context for all
their callbacks. Most of these point at the frontend structure
itself (on platforms where this is meaningful), except that the
handle passed to the backend has always pointed at the terminal
because from_backend() was implemented in terminal.c. This has
finally bitten Unix PuTTY, because both backend and logctx have
been passing their respective and very different frontend handles to
logevent(), so I've fixed it.
from_backend() is now a function supplied by the _frontend_ itself,
in all cases, and the frontend handle passed to backends must be the
same as that passed to everything else. What was from_backend() in
terminal.c is now called term_data(), and the typical implementation
of from_backend() in a GUI frontend will just extract the terminal
handle from the frontend structure and delegate to that.
This appears to work on Unix and Windows, but has most likely broken
the Mac build.

[originally from svn r3100]
2003-04-11 18:36:27 +00:00
Simon Tatham
8e3c37d309 Implement Warn On Close.
[originally from svn r3099]
2003-04-11 18:15:47 +00:00
Simon Tatham
ed46f3aa53 `Copy All' ought to de-highlight any existing selection, in line
with any other operation that shifts the X selection to stuff other
than the highlighted text.

[originally from svn r3098]
2003-04-11 18:10:13 +00:00
Simon Tatham
1be4188a3c `Copy All' context-menu item, for what it's worth.
[originally from svn r3097]
2003-04-11 17:59:36 +00:00
Simon Tatham
1be575d9c4 Saving of Default Settings under Unix was broken, because mungestr()
was translating NULL into "Default Settings" but not doing the same
to "". Now fixed.

[originally from svn r3096]
2003-04-11 17:42:52 +00:00
Simon Tatham
d710c84dec Cutting and pasting from the Unix Event Log.
[originally from svn r3095]
2003-04-11 17:40:52 +00:00
Simon Tatham
a133e4c137 A poster on comp.security.ssh mentions that he had expected to find
the location of PuTTY's data storage mentioned in the manual section
about loading and storing sessions. This seems not unreasonable, so
I've put it there.

[originally from svn r3094]
2003-04-11 17:39:48 +00:00
Simon Tatham
2e1503e520 Implemented Change Settings under Unix. We are gradually getting there.
[originally from svn r3092]
2003-04-10 18:00:50 +00:00
Simon Tatham
f03cf02cc8 All the stderr messages in this file now use appname rather than
guessing wrongly.

[originally from svn r3089]
2003-04-10 11:57:11 +00:00
Simon Tatham
406d2d8a32 Minor improvements to subsidiary window placement; with any luck the
Event Log should go off the side of the screen rather less often now.

[originally from svn r3088]
2003-04-10 08:53:43 +00:00