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

220 Commits

Author SHA1 Message Date
Simon Tatham
2715630ac1 Remove the now incorrect `Unicode is not supported' from the bugs in
the pterm man page :-)

[originally from svn r3176]
2003-05-10 10:15:36 +00:00
Simon Tatham
4b5ce3f46f pterm will now attempt to guess suitable names for any missing fonts
from the ones given; so it'll ask for a font twice as wide as your
base one if you don't specify a wide font, it'll ask for a bolded
version of your base font if you don't specify a bold font, and
similarly for a wide/bold font. Should solve Debian bug #187389; at
least it works for me.

[originally from svn r3175]
2003-05-10 10:15:00 +00:00
Simon Tatham
a2b8d10cd3 pterm's manpage now documents the NoRemoteQTitle resource. Should
fix the other half of Debian bug #191751.

[originally from svn r3174]
2003-05-10 09:06:00 +00:00
Simon Tatham
724fee3dca Stupid braino in get_window_title (thanks Colin): window and icon
titles were being reported the wrong way round. Should fix half of
Debian bug #191751.

[originally from svn r3173]
2003-05-10 09:05:41 +00:00
Simon Tatham
9a242f06ba Fixes for Debian bug #192701 (64-bit gccs warn about casts between
ptrs and ints of different size and -Werror makes this serious).
The GTK bits are done by Colin's patch to use GINT_TO_POINTER
(thanks); the uxnet bits are done by cleaning up the rest of the
code. In particular, network.h now typedefs `OSSocket' to be a type
capable of holding whatever the OS's socket data type is that
underlies our socket abstraction. Individual platforms can make this
typedef themselves if they define OSSOCKET_DEFINED to prevent
network.h redoing it; so the Unix OSSocket is now int. Default is
still void *, so other platforms should be unaffected.

[originally from svn r3171]
2003-05-10 08:35:54 +00:00
Simon Tatham
6b362191f1 Bah. Stop the Proxy panel appearing empty in Change Settings. One
day I'll make a reasonably big checkin and _not_ have six tiny mop-
up issues after it...

[originally from svn r3169]
2003-05-07 13:14:48 +00:00
Simon Tatham
8460ecd27d Yesterday's proxy enhancements also slightly nadgered the config
box, in that it started to expand under the weight of proxy options.
Now fixed, by folding the SOCKS version selector into the general
proxy type selector so there's one single 5- or 6-way radio button
set split over two lines. settings.c has of course grown a backwards
compatibility wart to deal with legacy config data.

[originally from svn r3168]
2003-05-07 12:07:23 +00:00
Simon Tatham
24d6da8041 Reinstate `-T title', in pterm only.
[originally from svn r3165]
2003-05-06 19:55:00 +00:00
Simon Tatham
03fa61025b Support, on Unix only (so far), for OpenSSH-style generic proxying
(running a local command in a pair of pipes and proxying through
that, for example `ssh proxyhost nc -q0 %host %port').

[originally from svn r3164]
2003-05-06 19:52:31 +00:00
Owen Dunn
5e36ac8d67 Update to use -title rather than -T
[originally from svn r3163]
2003-05-06 08:43:11 +00:00
Simon Tatham
6bb121ecb9 Colin's const-fixing Patch Of Death. Seems to build fine on Windows
as well as Unix, so it can go in.

[originally from svn r3162]
2003-05-04 14:18:18 +00:00
Simon Tatham
f6a208fbdd First half of `pageant-async' work. agent_query() is now passed a
callback function; it may return 0 to indicate that it doesn't have
an answer _yet_, in which case it will call the callback later on
when it does, or it may return 1 to indicate that it's got an answer
right now. The Windows agent_query() implementation is functionally
unchanged and still synchronous, but the Unix one is async (since
that one was really easy to do via uxsel). ssh.c copes cheerfully
with either return value, so other ports are at liberty to be sync
or async as they choose.

[originally from svn r3153]
2003-04-28 11:41:39 +00:00
Simon Tatham
2e2b6d89bd Add puttytel binary to .cvsignore
[originally from svn r3152]
2003-04-27 11:11:35 +00:00
Simon Tatham
082cf832c5 Support for non-ISO-8859-1 X keysyms. So in particular, pterm in a
Euro-supporting font with a Euro-enabled X key map will now actually
generate a Euro character rather than shrugging and doing nothing.

[originally from svn r3151]
2003-04-27 11:10:48 +00:00
Simon Tatham
1f5780ad9f Remove the TODO comment at the top of uxputty.c; I'm now not aware
of anything that makes the Unix port of PuTTY proper significantly
unfinished. That's quite a milestone :-)

[originally from svn r3148]
2003-04-26 14:37:49 +00:00
Simon Tatham
79426308bf Finer granularity of config box handling. SSH packet logging should
now not show up when it's meaningless (in PuTTYtel, in pterm, and
in the middle of any non-SSH session), and the Connection panel is
inhibited completely in pterm.

[originally from svn r3146]
2003-04-26 14:35:34 +00:00
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
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
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
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
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
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
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
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
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
Simon Tatham
b49980b953 Event Log for Unix PuTTY. Doesn't yet allow X selection of its
contents, and doesn't automatically maintain scroll position at the
bottom when new entries are added while the list is open, but it's a
start.

[originally from svn r3087]
2003-04-09 18:46:45 +00:00
Simon Tatham
98a608c2e4 Rename pterm's -T option to -title, to avoid clashing with PuTTY's
-T (don't allocate a pty) option.

[originally from svn r3079]
2003-04-08 14:02:34 +00:00
Simon Tatham
fe666b2432 While writing gtkdlg.c I learned how to specify a window's initial
position in GTK, so I can now implement the other half of -geometry
which I'd previously believed to be impossible in GTK. It's still
not perfect, because GTK apparently provides no way for us to get
hold of the X reparent event in order to support negative geometries
in a manner which takes account of the WM borders; but for positive
position it's at least an improvement on the previous version!

[originally from svn r3078]
2003-04-08 13:49:12 +00:00
Simon Tatham
b0ee81ab32 Now that we have `appname', make much wider use of it. In
particular, the config box uses it in place of the word `PuTTY',
which means mid-session reconfig in pterm will look less strange
once I implement it. Also, while I'm at it, I've personalised all
the dialog boxes and menu items and suchlike so that PuTTYtel
actually claims to be PuTTYtel rather than PuTTY.

[originally from svn r3074]
2003-04-06 14:11:33 +00:00
Simon Tatham
cf08c5a64a Fixed the printing and charset combo boxes in Unix PuTTY. (The
former by simply removing it; the latter by adding an enumeration
function to libcharset.) This has had slight `const' repercussions
on cp_name() and cp_enumerate() which might break the Mac build.

[originally from svn r3064]
2003-04-05 16:36:11 +00:00
Simon Tatham
09c9f31289 Unix can't sensibly enumerate printers (since they're defined as
being lpr commands), so the Unix config box now replaces the printer
combo box with an ordinary edit box.

[originally from svn r3063]
2003-04-05 16:12:52 +00:00
Simon Tatham
30497ff683 Ctrl+rightclick now pops up a context menu in Unix PuTTY and pterm.
This menu is not yet fully populated, but it has an About box (yet
another licence location :-/ ) and supports the new configurable
specials menu (thus making Unix PuTTY do one tiny thing which
OpenSSH-in-a-pterm can't :-).

[originally from svn r3062]
2003-04-05 16:05:00 +00:00
Simon Tatham
8a3ff2bf3e Dynamic port forwarding by means of a local SOCKS server. Fully
supports SOCKS 4, SOCKS 4A and SOCKS 5 (well, actually IPv6 in SOCKS
5 isn't supported, but it'll be no difficulty once I actually get
round to it). Thanks to Chas Honton for his `stone soup' patch: I
didn't end up actually using any of his code, but it galvanised me
into doing it properly myself :-)

[originally from svn r3055]
2003-04-05 11:45:21 +00:00
Simon Tatham
3bd0415579 Turned the old `Telnet Command' System-submenu into a more general
`Special Command' menu, in which any backend can place its own list
of magical things the user might want to ask the backend to do. In
particular I've implemented the recently proposed "break" extension
in SSH2 using this mechanism.
NB this checkin slightly breaks the Mac build, since it needs to
provide at least a stub form of update_specials_menu().

[originally from svn r3054]
2003-04-04 20:21:05 +00:00
Simon Tatham
a05d4fdbd0 Further .cvsignore updates.
[originally from svn r3044]
2003-04-02 09:14:38 +00:00
Simon Tatham
6504c5c894 Improvements to .cvsignore, to attempt to reduce the huge number of
? lines I see when running `cvs update', which in turn might help
deal with my tendency to forget to `cvs add' new files before a big
checkin :-)

[originally from svn r3042]
2003-04-02 08:44:05 +00:00