Граф коммитов

217 Коммитов

Автор SHA1 Сообщение Дата
Simon Tatham f6adc8a9e1 Alexey Savelyev's mkfiles.pl patch to support lcc-win32. This has
caused a small amount of extra inconvenience at the tops of .rc
files, but it's been positive overall since lcc has managed to point
out some pedantic errors (typically static/extern mismatches between
function prototypes and definitions) which everything else missed.

[originally from svn r3744]
2004-01-20 20:35:27 +00:00
Simon Tatham bb2ee13a8a Paul van der Meij points out that do_reconfig() should not free
dp.errtitle, since it's also freed in dp_cleanup(). Minefield
agrees. Fixed.

[originally from svn r3743]
2004-01-20 19:46:00 +00:00
Simon Tatham e30aed9a6f The WinSock library is now loaded at run-time, which means we can
attempt to load WS2 and then fall back to WS1 if that fails. This
should allow us to use WS2-specific functionality to find out the
local system's list of IP addresses, thus fixing winnet-if2lo, while
degrading gracefully back to the previous behaviour if that
functionality is unavailable. (I haven't yet actually done this; I've
just laid the groundwork.)
This checkin _may_ cause instability; it seemed fine to me on
initial testing, but it's a bit of an upheaval and I wouldn't like
to make bets on it just yet.

[originally from svn r3502]
2003-10-12 13:46:12 +00:00
Owen Dunn 10d4930b09 Implement hostkey-prompt-type everywhere except Macintosh.
[originally from svn r3307]
2003-06-26 14:19:33 +00:00
Owen Dunn 27d54e8f96 Fix double-keystrokes by wrapping CreateDialog
[originally from svn r3267]
2003-06-16 23:55:26 +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 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 d36a4c3685 Introduced wrapper macros snew(), snewn() and sresize() for the
malloc functions, which automatically cast to the same type they're
allocating the size of. Should prevent any future errors involving
mallocing the size of the wrong structure type, and will also make
life easier if we ever need to turn the PuTTY core code from real C
into C++-friendly C. I haven't touched the Mac frontend in this
checkin because I couldn't compile or test it.

[originally from svn r3014]
2003-03-29 16:14:26 +00:00
Simon Tatham 43fe7d3c87 Add the ability to allocate extra per-dialog-instance private data
in the portable dialog interface. This has allowed me to remove
`ssd->savedsession' in config.c, which was (I believe) the only
out-of-place piece of per-instance data in the dialog template
stuff. Now we should actually be able to run more than one config
box in the same process at the same time (for platforms that'll find
that useful).

[originally from svn r2925]
2003-03-08 11:46:42 +00:00
Simon Tatham 616c837cf0 The long-awaited config box revamp! I've taken the whole config box
to pieces, and put it back together in a new table-driven form.
config.c sets up a data structure describing most of the config box;
wincfg.c adds in the Windows-specific options (so that config.c can
also form the basis for Mac and Unix config boxes). Then winctrls.c
contains a shiny new layout engine which consumes that data
structure, and windlg.c passes all WM_COMMAND and similar messages
to a driver alongside that layout engine. In the process I've sorted
out nicer-looking panel titles and finally fixed the list-boxes-are-
never-the-right-size bug (turned out to be Windows's fault, of
course). I _believe_ it should do everything the old config box did,
including context help. Now everyone has to test it thoroughly...

[originally from svn r2908]
2003-03-05 22:07:40 +00:00
Simon Tatham be9718cb13 Add another bug workaround, this one for old OpenSSH (<2.3) servers
which have a strange idea of what data should be signed in a PK auth
request. This actually got in my way while doing serious things at
work! :-)

[originally from svn r2800]
2003-02-04 13:02:51 +00:00
Simon Tatham f26b7aa0d3 Created new data types `Filename' and `FontSpec', intended to be
opaque to all platform-independent modules and only handled within
per-platform code. `Filename' is there because the Mac has a magic
way to store filenames (though currently this checkin doesn't
support it!); `FontSpec' is there so that all the auxiliary stuff
such as font height and charset and so on which is needed under
Windows but not Unix can be kept where it belongs, and so that I can
have a hope in hell of dealing with a font chooser in the forthcoming
cross-platform config box code, and best of all it gets the horrid
font height wart out of settings.c and into the Windows code where
it should be.
The Mac part of this checkin is a bunch of random guesses which will
probably not quite compile, but which look roughly right to me.
Sorry if I screwed it up, Ben :-)

[originally from svn r2765]
2003-02-01 12:54:40 +00:00
Jacob Nevins 01b8739894 Further cosmetic tweaks to file-selection boxes per observed conventions
on Windows:
 - Change "AllFiles" to "All Files (*.*)"
 - Extensions in lower case

[originally from svn r2748]
2003-01-29 16:39:18 +00:00
Simon Tatham c370336a92 xterm apparently supports ESC[90m through ESC[97m to set bright
foreground colours, and ESC[100m through ESC[107m to set bright
background colours. Hence, so do we. Bright-foreground is
distinguishable from bold, and bright-background distinguishable
from blink, when it leaves terminal.c; the front end may then choose
to display them in the same way if it's configured to do so. This
change makes the xterm backend for Turbo Vision (!!!) work properly.
Untested on Mac.

[originally from svn r2734]
2003-01-27 23:03:31 +00:00
Simon Tatham 6aa4211f6e Remove all `enum'-typed variables from the Config structure.
Everything in there which is integral is now an actual int, which
means my forthcoming revamp of the config box will be able to work
with `int *' pointers without fear of doom.

[originally from svn r2733]
2003-01-27 18:02:24 +00:00
Jacob Nevins c801a1f3c5 In pursuance of `icon-title-default-change':
Change the sense of cfg.win_name_always' representation in the UI (from
`Avoid ever using icon title' to `Separate window and icon titles').
Also update the docs to match reality.

[originally from svn r2681]
2003-01-23 11:37:54 +00:00
Jacob Nevins 1512f68602 Run through contrib/accel.pl 1.1 [r1585]:
- Fix accelerator clash on SSH panel (D)
 - Fix accelerator comments

[originally from svn r2665]
[r1585 == 6bcc8e85e8]
2003-01-20 18:05:13 +00:00
Jacob Nevins 57610f8580 Steven Shockley points out that the .PPK extension is far from obvious to
users. Update the file selection dialogs to mention it per the usual Windows
convention, and also sprinkle references to it throughout the docs. I've
also scattered hints that most tools need PuTTY's native format; perhaps this
will reduce the frequency with which FAQ A.1.2 trips people up.

[originally from svn r2625]
2003-01-16 15:43:18 +00:00
Simon Tatham 6af1a9e4e9 Having laid all the groundwork, we can now remove the global `cfg'
completely from putty.h. It's now static in each of the command-line
front ends, shared only between window.c and windlg.c in PuTTY
proper (I've tested this by doing #define cfg cfgsillyname in those
two files only, and it still links so nobody else is using that
symbol!), and part of the `inst' structure in pterm. I think that
only leaves the Unicode module as the last stubborn holdout in the
anti-global-variables campaign.

[originally from svn r2568]
2003-01-12 15:32:31 +00:00
Simon Tatham fee1624c69 Support for XDM-AUTHORIZATION-1 at the SSH server end, making use of
the remote IP/port data provided by the server for forwarded
connections. Disabled by default, since it's incompatible with SSH2,
probably incompatible with some X clients, and tickles a bug in
at least one version of OpenSSH.

[originally from svn r2554]
2003-01-12 14:11:38 +00:00
Simon Tatham 1b5cb7adf6 Each platform's implementation of askappend() is no longer required
to consult cfg.logxfovr, because it gets done once in logging.c.
askappend() is now called only when a question _really_ needs to be
asked of the user. Also in this checkin, cleanup_exit() in console.c
no longer consults cfg.protocol to decide whether to save the random
seed, because random_save_seed() can make that decision for itself
and do it better.

[originally from svn r2552]
2003-01-12 13:44:35 +00:00
Simon Tatham a564ad3140 Support for doing DNS at the proxy end. I've invented a new type of
SockAddr, which just contains an unresolved hostname and is created
by a stub function in *net.c. It's an error to pass this to most of
the real-meat functions in *net.c; these fake addresses should have
been dealt with by the time they get down that far. proxy.c now
contains name_lookup(), a wrapper on sk_namelookup() which decides
whether or not to do real DNS, and the individual proxy
implementations each deal sensibly with being handed an unresolved
address and avoid ever passing one down to *net.c.

[originally from svn r2353]
2002-12-18 16:23:11 +00:00
Simon Tatham 8304f4e0dc Stop proxying connections to localhost by default; should fix
`x11-proxy-crash'.

[originally from svn r2348]
2002-12-18 12:18:54 +00:00
Simon Tatham 297e5d8e45 Improve the tab order in the Tunnels box: the `Add' button should
happen _after_ all the controls that set up the forwarding, since
that's the obvious order you'd want to use them in.

[originally from svn r2346]
2002-12-18 11:49:14 +00:00
Simon Tatham 79b086658d Further deglobalisation: settings.c now has a more sensible interface.
[originally from svn r2162]
2002-10-30 18:12:46 +00:00
Simon Tatham 4756c15fc9 Yet more global-removal. The static variables in logging.c are now
absent, and also (I think) all the frontend request functions (such
as request_resize) take a context pointer, so that multiple windows
can be handled sensibly. I wouldn't swear to this, but I _think_
that only leaves the Unicode stuff as the last stubborn holdout.

[originally from svn r2147]
2002-10-26 12:58:13 +00:00
Simon Tatham a394f20829 Add a new SSH2 bug: some servers apparently claim to be able to do
DH group exchange, but choke when you actually try it. Never
automatically enabled; manual control only.

[originally from svn r1982]
2002-09-26 18:37:33 +00:00
Jacob Nevins 4baee2a8e8 Add context help support for Proxy panel
[originally from svn r1974]
2002-09-23 09:55:11 +00:00
Simon Tatham 442a360fb2 Support username and password authentication when talking to HTTP
proxies.

[originally from svn r1971]
2002-09-21 14:03:05 +00:00
Simon Tatham 994aee285f Log file tinkering: copy Event Log entries into the SSH packet log,
so that when people send us a packet log they never forget to send
the Event Log alongside it :-)

[originally from svn r1960]
2002-09-15 13:21:32 +00:00
Simon Tatham 3391745d2d Introduce the Bugs control panel, for overriding PuTTY's server
version number checks to determine the presence or absence of server
bugs.

[originally from svn r1936]
2002-09-08 13:28:38 +00:00
Simon Tatham 6e00685af0 Add an option to force SSH1 protocol only. Partly for symmetry;
mostly because I'm about to want it for the -1 command line option.

[originally from svn r1816]
2002-08-07 17:48:26 +00:00
Simon Tatham afbd7779e4 Now that we've decided on a file extension for private key files
(.PPK), make it the default in all the private-key file dialogs.

[originally from svn r1808]
2002-08-06 17:27:18 +00:00
Simon Tatham 07d48d8b27 Remove tiny unnecessary faff in new SSH-2-only code
[originally from svn r1665]
2002-05-11 13:12:19 +00:00
Owen Dunn c71432cb86 SSH2 only support
[originally from svn r1664]
2002-05-11 13:08:37 +00:00
Jacob Nevins 4113193a7e Fix apparent cut'n'paste error in new printing code. (Wasn't breaking anything,
to my knowledge.)

[originally from svn r1601]
2002-03-24 11:47:41 +00:00
Simon Tatham eabd704d1e Justin Bradford's proxy support patch. Currently supports only HTTP
CONNECT, but contains an extensible framework to allow other
proxies. Apparently SOCKS and ad-hoc-telnet-proxy are already
planned (the GUI mentions them already even though they don't work
yet). GUI includes full configurability and allows definition of
exclusion zones. Rock and roll.

[originally from svn r1598]
2002-03-23 17:47:21 +00:00
Simon Tatham ae476d5567 ANSI remote printer support. Raw mode only.
[originally from svn r1581]
2002-03-09 17:59:15 +00:00
Simon Tatham fcb31d5cfe Well, there was bound to be one I'd forgotten: the new Features
panel should include an option to disable xterm mouse reporting. So
now it does. Woo.

[originally from svn r1579]
2002-03-09 11:47:39 +00:00
Jacob Nevins ddee0ed132 Fix accelerator clash on Features panel, plus a couple of accelerator comments.
(not tested)

[originally from svn r1578]
2002-03-07 22:17:11 +00:00
Simon Tatham 2df966b43c Add the Features panel, allowing you to disable a bunch of the more
controversial terminal features.

[originally from svn r1576]
2002-03-06 23:04:20 +00:00
Simon Tatham dac0d45699 Ensure our network layer is properly cleaned up before PuTTY exits.
Specifically, we explicitly closesocket() all open sockets, which
appears to be necessary since otherwise Windows sends RST rather
than FIN. I'm _sure_ that's a Windows bug, but there we go.

[originally from svn r1574]
2002-03-06 20:13:22 +00:00
Simon Tatham 7fbbad0ce1 Work around surreal use of WM_COMMAND in radio button sets. Prevents
port number field resetting unnecessarily when protocol is set to
Raw using the arrow keys.

[originally from svn r1558]
2002-02-20 22:28:11 +00:00
Simon Tatham b1a4532be2 Various accelerator clashes (due to the addition of the global Help
button, which accel.pl wasn't prepared for) fixed.

[originally from svn r1550]
2002-01-17 13:47:29 +00:00
Simon Tatham 3b593096d1 Update an accelerator comment.
[originally from svn r1546]
[this commit reordered to come after creation of 0.52 tag]
2002-01-12 16:02:50 +00:00
Simon Tatham 9e6923016c Patch from RDB: invent a /DMSVC4 compile-time definition which
renames header files and symbols etc. Now if I could only _find_ my
copy of MSVC4 we might even be able to build Win32s binaries...

[originally from svn r1532]
2002-01-08 09:45:10 +00:00
Simon Tatham 320ee10afb Oops - the help for the new Telnet NL option wasn't quite there.
[originally from svn r1521]
2001-12-29 17:25:07 +00:00
Simon Tatham 726f9dde7e Add a configurable option to make Return in Telnet send an ordinary
^M instead of the Telnet New Line code. Unix-type telnetds don't
care one way or the other; RDB claims some telnetds prefer Telnet
NL; and now someone has found one that can't deal with Telnet NL and
prefers ^M. Sigh.

[originally from svn r1520]
2001-12-29 17:21:26 +00:00
Simon Tatham 88a3baa065 Add the remote counterpart for the `local port forwardings accept
connections from outside localhost' switch. Interestingly OpenSSH
3.0 appears to ignore this (though I know it works because ssh.com
3.0 gets it right, and the SSH packet dump agrees that I'm doing the
right thing).

[originally from svn r1496]
2001-12-15 12:15:24 +00:00
Simon Tatham 3ed0d44f16 Retired the #ifdef DUMP_PACKETS stuff in ssh.c because I'm utterly
sick of recompiling to enable packet dumps. SSH packet dumping is
now provided as a logging option, and dumps to putty.log like all
the other logging options. While I'm at it I cleaned up the format
so that packet types are translated into strings for easy browsing.
POSSIBLE SIDE EFFECT: in the course of this work I had to re-enable
the SSH1 packet length checks which it turns out hadn't actually
been active for some time, so it's possible things might break as a
result. If need be I can always disable those checks for the 0.52
release and think about it more carefully later.

[originally from svn r1493]
2001-12-14 14:57:50 +00:00