]> asedeno.scripts.mit.edu Git - PuTTY.git/log
PuTTY.git
19 years agoOverhaul of client-side XDM-AUTHORIZATION-1:
Ben Harris [Fri, 28 Jan 2005 11:39:45 +0000 (11:39 +0000)]
Overhaul of client-side XDM-AUTHORIZATION-1:
* Make sk_getxdmdata() return an arbitrary string rather than two integers.
  This better matches the spec, even if the current version always returns
  six bytes
* On Unix, for PF_UNIX sockets, return a counter rather than a constant along
  with the PID.  This should allow multiple clients to connect within one
  second, and is what Xlib does.
* On Unix, interpret AF_INET6 addresses like Xlib does, returning the
  embedded IPv4 address for v4-mapped addresses, and six bytes of zeroes
  otherwise.  The latter is silly, but if I'm going to do anything more sane
  I need to check that X servers won't reject it.

[originally from svn r5219]

19 years agoBuffer overruns are embarassing (even if caused by user error), so assert
Ben Harris [Wed, 26 Jan 2005 23:49:56 +0000 (23:49 +0000)]
Buffer overruns are embarassing (even if caused by user error), so assert
that this one can't happen until I actually fix it.

[originally from svn r5217]

19 years agoAdd a Change Settings dialogue box. Doesn't do anything yet.
Owen Dunn [Wed, 26 Jan 2005 23:30:34 +0000 (23:30 +0000)]
Add a Change Settings dialogue box.  Doesn't do anything yet.

[originally from svn r5216]

19 years agoMove sockaddr_is_loopback() to before sk_address_is_local(), and define the
Ben Harris [Wed, 26 Jan 2005 20:18:33 +0000 (20:18 +0000)]
Move sockaddr_is_loopback() to before sk_address_is_local(), and define the
latter in terms of the former.  Also adjust the definition of
ipv4_is_loopback() to avoid using the non-standard inet_netof() and
IN_LOOPBACKNET, and move it next to its remaining uses.

[originally from svn r5215]

19 years agoMove sk_poll() inside (!gotevent), which is more logical but doesn't have
Owen Dunn [Wed, 26 Jan 2005 19:05:50 +0000 (19:05 +0000)]
Move sk_poll() inside (!gotevent), which is more logical but doesn't have
any actual beneficial effect on event handling, sadly.

[originally from svn r5214]

19 years agoAdd ssh.h for prototypes for the X display stubs
Owen Dunn [Wed, 26 Jan 2005 19:04:42 +0000 (19:04 +0000)]
Add ssh.h for prototypes for the X display stubs

[originally from svn r5213]

19 years agoMake a few things static
Owen Dunn [Wed, 26 Jan 2005 18:11:28 +0000 (18:11 +0000)]
Make a few things static

[originally from svn r5212]

19 years agoGive the config window a title.
Owen Dunn [Sun, 23 Jan 2005 15:01:21 +0000 (15:01 +0000)]
Give the config window a title.

[originally from svn r5181]

19 years agoWhen checking if a connection comes from localhost, don't assume it's an IPv4
Ben Harris [Sun, 23 Jan 2005 14:31:08 +0000 (14:31 +0000)]
When checking if a connection comes from localhost, don't assume it's an IPv4
connection.  Instead, correctly check IPv4 and IPv6 connections, assume that
AF_LOCAL is always local, and anything else is always remote.

This makes trivial local-to-remote forwarding work on my system.

[originally from svn r5180]

19 years agoDon't abuse a remote channel number of (unsigned)(-1) to indicate a channel
Ben Harris [Sat, 22 Jan 2005 16:06:21 +0000 (16:06 +0000)]
Don't abuse a remote channel number of (unsigned)(-1) to indicate a channel
for which we don't yet have a remote number, and instead add a flag to indicate
this fact.  Fixes bug ssh-remoteid-minusone.

[originally from svn r5171]

19 years agoWhen calling getaddrinfo() for a listening socket, pass in a suggested type
Ben Harris [Sat, 22 Jan 2005 15:32:10 +0000 (15:32 +0000)]
When calling getaddrinfo() for a listening socket, pass in a suggested type
of SOCK_STREAM, since that's what we'll be using.

[originally from svn r5170]

19 years agoStupid typo, spotted by GCC.
Ben Harris [Sat, 22 Jan 2005 15:20:35 +0000 (15:20 +0000)]
Stupid typo, spotted by GCC.

[originally from svn r5168]

19 years agoIf getaddrinfo() fails, it's not safe to dereference the struct addrinfo* it
Ben Harris [Sat, 22 Jan 2005 15:19:21 +0000 (15:19 +0000)]
If getaddrinfo() fails, it's not safe to dereference the struct addrinfo* it
passes back to us, so don't.

[originally from svn r5167]

19 years agoOwen's just pointed out that random_stir() is capable of recursion.
Simon Tatham [Sat, 22 Jan 2005 14:51:29 +0000 (14:51 +0000)]
Owen's just pointed out that random_stir() is capable of recursion.
I'm sure I didn't mean that to happen! Added a lock to stop it.

[originally from svn r5166]

19 years agoExplicitly ignore SCI rather than translating it into DECID. Should fix
Ben Harris [Sat, 22 Jan 2005 14:01:01 +0000 (14:01 +0000)]
Explicitly ignore SCI rather than translating it into DECID.  Should fix
bug sci-is-not-decid.

[originally from svn r5164]

19 years agoProbable support for first_kex_packet_follows in KEXINIT. Not significantly
Ben Harris [Sat, 22 Jan 2005 13:32:41 +0000 (13:32 +0000)]
Probable support for first_kex_packet_follows in KEXINIT.  Not significantly
tested since none of the common key-exchange protocols starts with a packet
from the server, so I don't have a server that implements this.

[originally from svn r5162]

19 years agoColours now work properly, including 256-colour stuff.
Owen Dunn [Fri, 21 Jan 2005 00:02:59 +0000 (00:02 +0000)]
Colours now work properly, including 256-colour stuff.
Timing stuff now there, but almost certainly bogus.

[originally from svn r5160]

19 years agoDispose of a variable whose only use was being set to zero.
Ben Harris [Thu, 20 Jan 2005 21:45:42 +0000 (21:45 +0000)]
Dispose of a variable whose only use was being set to zero.

[originally from svn r5156]

19 years agoFix/bludgeon Mac compile wrinkles.
Owen Dunn [Thu, 20 Jan 2005 16:42:25 +0000 (16:42 +0000)]
Fix/bludgeon Mac compile wrinkles.

[originally from svn r5154]

19 years agoAdd an assertion so that short-rsa2-key-crash at least avoids segfaulting
Ben Harris [Wed, 19 Jan 2005 23:30:38 +0000 (23:30 +0000)]
Add an assertion so that short-rsa2-key-crash at least avoids segfaulting
while we come up with a better solution.

[originally from svn r5146]

19 years agoWhile we're here, pad USERAUTH_INFO_RESPONSEs to 256 bytes too.
Ben Harris [Wed, 19 Jan 2005 17:41:21 +0000 (17:41 +0000)]
While we're here, pad USERAUTH_INFO_RESPONSEs to 256 bytes too.

[originally from svn r5145]

19 years agoMake the outgoing SSH2 sequence number unsigned, so as to avoid depending
Ben Harris [Wed, 19 Jan 2005 12:34:52 +0000 (12:34 +0000)]
Make the outgoing SSH2 sequence number unsigned, so as to avoid depending
on overflow behaviour of signed integers.

[originally from svn r5142]

19 years agoAdd a lengthy comment warning future front-end implementors about
Simon Tatham [Wed, 19 Jan 2005 10:07:58 +0000 (10:07 +0000)]
Add a lengthy comment warning future front-end implementors about
the right and wrong way to implement the timing interface.

[originally from svn r5137]

19 years agoBits and pieces, mostly stubs, for the Mac port.
Owen Dunn [Tue, 18 Jan 2005 22:01:25 +0000 (22:01 +0000)]
Bits and pieces, mostly stubs, for the Mac port.

[originally from svn r5136]

19 years agoYes we do mean assignment. Bah.
Owen Dunn [Tue, 18 Jan 2005 19:09:02 +0000 (19:09 +0000)]
Yes we do mean assignment.  Bah.

[originally from svn r5135]

19 years agoThe terminal reengineering of r4609 left an unused `start' lying around.
Owen Dunn [Tue, 18 Jan 2005 19:04:59 +0000 (19:04 +0000)]
The terminal reengineering of r4609 left an unused `start' lying around.
Remove it.

[originally from svn r5134]
[r4609 == 709a94e5f27004e3933b022e1f01b96ddf854265]

19 years agossh_pkt_getstring wants a boring int rather than an unsigned int. Let's
Owen Dunn [Tue, 18 Jan 2005 09:38:58 +0000 (09:38 +0000)]
ssh_pkt_getstring wants a boring int rather than an unsigned int.  Let's
give it one.

[originally from svn r5129]

19 years agoCurrentish ssh.com supports single-DES in SSH2 as "des-cbc@ssh.com". It
Ben Harris [Mon, 17 Jan 2005 16:38:55 +0000 (16:38 +0000)]
Currentish ssh.com supports single-DES in SSH2 as "des-cbc@ssh.com".  It
seems to be entirely the same as "des-cbc", so supporting it is trivial
and we may as well do so.  If nothing else, it makes it clear whose fault
it is.

[originally from svn r5128]

19 years agoChange some function arguments to void * to placate picky compilers.
Owen Dunn [Mon, 17 Jan 2005 10:07:13 +0000 (10:07 +0000)]
Change some function arguments to void * to placate picky compilers.

[originally from svn r5124]

19 years agoIn SSH2, rather than sending an SSH_MSG_IGNORE after every password, just
Ben Harris [Mon, 17 Jan 2005 00:50:35 +0000 (00:50 +0000)]
In SSH2, rather than sending an SSH_MSG_IGNORE after every password, just
pad the packet out to 256 bytes.  Much simpler.

This leavs ssh2_pkt_defer() unused, so ifdef it out.

[originally from svn r5122]

19 years agoBe a little less enthusiastic about sending SSH_MSG_CHANNEL_WINDOW_ADJUST:
Ben Harris [Sun, 16 Jan 2005 14:43:12 +0000 (14:43 +0000)]
Be a little less enthusiastic about sending SSH_MSG_CHANNEL_WINDOW_ADJUST:
only send it when it will significantly increase the server's idea of our
window.  This avoids the slew of one-byte WINDOW_ADJUSTs that an interactive
shell typically generates.

[originally from svn r5121]

19 years agoMac SC compiler whinges about trailing commas in enums
Owen Dunn [Sun, 16 Jan 2005 14:33:43 +0000 (14:33 +0000)]
Mac SC compiler whinges about trailing commas in enums

[originally from svn r5120]

19 years agoSupport for falling back through the list of addresses returned from
Simon Tatham [Sun, 16 Jan 2005 14:29:34 +0000 (14:29 +0000)]
Support for falling back through the list of addresses returned from
a DNS lookup, whether they're IPv4, v6 or a mixture of both.

[originally from svn r5119]
[this svn revision also touched putty-wishlist]

19 years agoMake our SSH2 maximum packet size into a constant, since it's used in several
Ben Harris [Sun, 16 Jan 2005 14:14:59 +0000 (14:14 +0000)]
Make our SSH2 maximum packet size into a constant, since it's used in several
places.

[originally from svn r5118]

19 years agoOwen tells me the Mac compiler complains at a char / unsigned char
Simon Tatham [Sun, 16 Jan 2005 14:02:56 +0000 (14:02 +0000)]
Owen tells me the Mac compiler complains at a char / unsigned char
mismatch in the invocation of hmacmd5_key(). Do it properly with a
void * argument.

[originally from svn r5117]

19 years agoAdd minibidi to Mac PuTTY objects
Owen Dunn [Sun, 16 Jan 2005 13:40:36 +0000 (13:40 +0000)]
Add minibidi to Mac PuTTY objects

[originally from svn r5116]

19 years agoRewrite of Unix sk_newlistener() which should fix any possible
Simon Tatham [Sun, 16 Jan 2005 12:37:19 +0000 (12:37 +0000)]
Rewrite of Unix sk_newlistener() which should fix any possible
problems involving trying to bind an IPv6 socket to an IPv4 address.

[originally from svn r5115]

19 years agoTurn of ICRNL in the client tty when we're not in editing mode. This
Ben Harris [Sat, 15 Jan 2005 20:39:27 +0000 (20:39 +0000)]
Turn of ICRNL in the client tty when we're not in editing mode.  This
means that we send literal CRs and let the remote pty layer work out what to
do with them, so that if it wants raw mode it can have it.

[originally from svn r5114]

19 years agoFWHACK has been dead for years. Remove it from the Makefiles.
Ben Harris [Sat, 15 Jan 2005 18:30:05 +0000 (18:30 +0000)]
FWHACK has been dead for years.  Remove it from the Makefiles.

[originally from svn r5113]

19 years agoFix prototypes for mactcp_new and ot_new.
Owen Dunn [Sat, 15 Jan 2005 17:28:44 +0000 (17:28 +0000)]
Fix prototypes for mactcp_new and ot_new.

[originally from svn r5112]

19 years agoThrow away "./" in findfile so that the Mac makefile has valid paths.
Owen Dunn [Sat, 15 Jan 2005 17:16:48 +0000 (17:16 +0000)]
Throw away "./" in findfile so that the Mac makefile has valid paths.

[originally from svn r5111]

19 years agoINADDR_NONE is nonstandard. Use (in_addr_t)(-1) instead.
Ben Harris [Fri, 14 Jan 2005 19:28:18 +0000 (19:28 +0000)]
INADDR_NONE is nonstandard.  Use (in_addr_t)(-1) instead.

[originally from svn r5109]

19 years agoDon't use GNUish pattern rules in the Unix Makefile, since they're not
Ben Harris [Fri, 14 Jan 2005 12:26:38 +0000 (12:26 +0000)]
Don't use GNUish pattern rules in the Unix Makefile, since they're not
supported by non-GNU makes.  This allows the standard Solaris /usr/ccs/bin/make
to handle that Makefile.

[originally from svn r5108]

19 years agoMention Cygwin/X as a potential X server, since it's free.
Ben Harris [Thu, 13 Jan 2005 21:50:41 +0000 (21:50 +0000)]
Mention Cygwin/X as a potential X server, since it's free.

[originally from svn r5107]

19 years agoFix `disconnect': arrange that we keep track of when we're expecting
Simon Tatham [Tue, 11 Jan 2005 19:33:41 +0000 (19:33 +0000)]
Fix `disconnect': arrange that we keep track of when we're expecting
to see the server slam the TCP connection shut (i.e. almost never,
unless it's just sent us an SSH_MSG_DISCONNECT), and treat an
unexpected closure as a non-clean session termination. Previously
any server-initiated connection closure was being treated as a clean
exit, which was a hangover from the good old Telnet-only days.

[originally from svn r5098]
[this svn revision also touched putty-wishlist]

19 years agoVersions of OpenSSH before 2.5.4 kill the connection if the client attempts
Ben Harris [Tue, 11 Jan 2005 16:33:08 +0000 (16:33 +0000)]
Versions of OpenSSH before 2.5.4 kill the connection if the client attempts
to rekey.  Extend the description of SSH2_BUG_REKEY to cover this situation
and apply it to the relevant OpenSSH versions.

[originally from svn r5097]

19 years agoBah, I left a rogue event log entry lying around.
Simon Tatham [Tue, 11 Jan 2005 15:33:35 +0000 (15:33 +0000)]
Bah, I left a rogue event log entry lying around.

[originally from svn r5095]

19 years agoSun_SSH_1.0.1 also has BUG_SSH2_REKEY.
Ben Harris [Tue, 11 Jan 2005 13:24:47 +0000 (13:24 +0000)]
Sun_SSH_1.0.1 also has BUG_SSH2_REKEY.

[originally from svn r5094]

19 years agoThe Unix `make install' target now allows you to define UTMP_GROUP,
Simon Tatham [Tue, 11 Jan 2005 10:45:43 +0000 (10:45 +0000)]
The Unix `make install' target now allows you to define UTMP_GROUP,
in which case pterm will be installed setgid that, or to define
UTMP_USER in which case it will be installed setuid that. If you
define neither, it will be installed without any set-id bits as
before.

[originally from svn r5093]

19 years agoServers announcing themselves as `Sun_SSH_1.0' apparently cannot
Simon Tatham [Tue, 11 Jan 2005 10:37:55 +0000 (10:37 +0000)]
Servers announcing themselves as `Sun_SSH_1.0' apparently cannot
deal with rekeys at all: they totally ignore mid-session KEXINIT
sent by the client. Hence, a new bug entry so we don't try it.

[originally from svn r5092]

19 years agosk_namelookup() on Unix was failing to translate from our platform-
Simon Tatham [Sun, 9 Jan 2005 14:55:55 +0000 (14:55 +0000)]
sk_namelookup() on Unix was failing to translate from our platform-
independent ADDRTYPE_* constants to real AF_* ones, causing explicit
protocol specification to fail.

[originally from svn r5089]

19 years agoRemove unwanted underscore.
Owen Dunn [Sun, 9 Jan 2005 14:45:00 +0000 (14:45 +0000)]
Remove unwanted underscore.

[originally from svn r5088]

19 years agoNew function ltime() returns a struct tm of the current local time.
Owen Dunn [Sun, 9 Jan 2005 14:27:48 +0000 (14:27 +0000)]
New function ltime() returns a struct tm of the current local time.
Fixes crashes when time() returns (time_t)-1 on Windows by using the
Win32 GetLocalTime() function.  (The Unix implementation still just
uses time() and localtime().)

[originally from svn r5086]

19 years agoHaving laboriously constructed a hints parameter for getaddrinfo, it
Simon Tatham [Sun, 9 Jan 2005 11:58:36 +0000 (11:58 +0000)]
Having laboriously constructed a hints parameter for getaddrinfo, it
would help to _use_ it!

[originally from svn r5085]

19 years agoI've changed my mind about what the IP version selection options in
Simon Tatham [Sun, 9 Jan 2005 11:44:21 +0000 (11:44 +0000)]
I've changed my mind about what the IP version selection options in
the config should do when IPv6 is configured out. They shouldn't sit
there looking silly with only `Auto' and `IPv4' settings: they
should instead be completely absent. I had thought the former was
acceptable since IPv4-only was a configuration that people should
only be using if their compilers didn't support IPv6, but now it
occurs to me that ports to fundamentally non-IPv6-supporting
platforms are not implausible, and on such ports the presence of a
vestigial config option under the _standard_ build conditions would
be a low-quality solution.

[originally from svn r5084]

19 years agoFor local and dynamic port forwardings (i.e. the ones which listen
Simon Tatham [Sat, 8 Jan 2005 14:45:26 +0000 (14:45 +0000)]
For local and dynamic port forwardings (i.e. the ones which listen
on a local port), the `Auto' protocol option on the Tunnels panel
should always produce a port you can connect to in _either_ of IPv4
and v6, because the aim is for the user not to have to know or care
which one they're using. This was not the case on Windows, and now
is. Also, updated the docs to give more detail on issues like this.

[originally from svn r5083]

19 years agoCleanups to sk_namelookup(). In particular, it now doesn't segfault
Simon Tatham [Sat, 8 Jan 2005 14:02:06 +0000 (14:02 +0000)]
Cleanups to sk_namelookup(). In particular, it now doesn't segfault
if you explicitly specify IPv6 and then try to look up a hostname
which doesn't have an IPv6 address.

[originally from svn r5082]

19 years agoClear the kex-specific context in ssh->pkt_ctx for every new key
Simon Tatham [Sat, 8 Jan 2005 13:28:41 +0000 (13:28 +0000)]
Clear the kex-specific context in ssh->pkt_ctx for every new key
exchange. Without doing this, after we have done one specific-group
DH exchange (group1 or group14), ssh2_pkt_type _always_ translates
30 and 31 as KEXDH_INIT and KEXDH_REPLY, making a subsequent
group-exchange kex look rather strange in an SSH packet log.

[originally from svn r5081]

19 years agoJacob points out that changing TICKSPERSEC in unix.h changed the
Simon Tatham [Sat, 8 Jan 2005 13:08:32 +0000 (13:08 +0000)]
Jacob points out that changing TICKSPERSEC in unix.h changed the
meaning of BellOverload{T,S} in Unix saved sessions. Add a Unix-
specific backwards compatibility wart to settings.c to compensate.
Of course when I do the serious config format revamp, I will ensure
that no config item depends on internal #defines (these time
intervals will be specified as a floating-point number of seconds)
and this horror will be relegated to the old-config-compatibility
code.

[originally from svn r5080]

19 years agoSimon points out that r5068 broke keyboard-interactive with multiple
Jacob Nevins [Fri, 7 Jan 2005 16:55:45 +0000 (16:55 +0000)]
Simon points out that r5068 broke keyboard-interactive with multiple
INFO_REQUESTs, and for some reason Debian OpenSSH is sending INFO_REQUESTs
containing no prompts after a normal password authentication, so this
should fix Shai's problem.

[originally from svn r5078]
[r5068 == 297ee2573ed51b5ca97880ffd3a9a51c5646a52d]
[this svn revision also touched putty-wishlist]

19 years agoUpdate faq-bce further for changes in 0.54.
Jacob Nevins [Fri, 7 Jan 2005 15:25:32 +0000 (15:25 +0000)]
Update faq-bce further for changes in 0.54.

[originally from svn r5076]

19 years agoProxy command formatting now recognises `%proxyhost' and
Simon Tatham [Fri, 7 Jan 2005 14:22:17 +0000 (14:22 +0000)]
Proxy command formatting now recognises `%proxyhost' and
`%proxyport' in addition to the other things it interpolates. This
is useful when using the Unix-only `Local' proxy type: it allows me
to, for example, set up a proxy command such as
  ssh %proxyhost nc -q0 %host %port
and then enter the name of the proxy machine in `Proxy hostname',
which makes it marginally more convenient to quickly change to using
a different proxy to get at the same target.

I haven't documented this, because we currently don't document the
Local proxy type at all. Possibly we should, though.

[originally from svn r5073]

19 years agoUse sk_set_frozen() to ensure that no data will be accepted from an
Simon Tatham [Fri, 7 Jan 2005 09:24:24 +0000 (09:24 +0000)]
Use sk_set_frozen() to ensure that no data will be accepted from an
SSH connection when we're in the middle of asking the user a
dialog-box-type question. Fixes `unix-kex-packet', which has just
bitten me when connecting to one of the work Suns.

[originally from svn r5071]
[this svn revision also touched putty-wishlist]

19 years agoAdd an explicit message about lack of support for PASSWD_CHANGEREQ in a
Jacob Nevins [Thu, 6 Jan 2005 17:05:54 +0000 (17:05 +0000)]
Add an explicit message about lack of support for PASSWD_CHANGEREQ in a
half-hearted attempt to flush out any uses of it.

[originally from svn r5070]

19 years agoI can't believe that after all this time we still had a rogue set of
Simon Tatham [Thu, 6 Jan 2005 15:47:12 +0000 (15:47 +0000)]
I can't believe that after all this time we still had a rogue set of
`' quotes! Changed to \q{}.

[originally from svn r5069]

19 years ago`kbdint-failure': we now offer keyboard-interactive auth to the user for as
Jacob Nevins [Thu, 6 Jan 2005 13:23:47 +0000 (13:23 +0000)]
`kbdint-failure': we now offer keyboard-interactive auth to the user for as
long as the server offers it, rather than only once, unless the server responds
to our initial USERAUTH_REQUEST("keyboard-interactive") with FAILURE, in which
case we give up on it entirely.

[originally from svn r5068]
[this svn revision also touched putty-wishlist]

19 years agoTry to make it clearer that "-be" and "-bc" must be specified in _addition_
Jacob Nevins [Thu, 6 Jan 2005 12:37:33 +0000 (12:37 +0000)]
Try to make it clearer that "-be" and "-bc" must be specified in _addition_
to "-b batchfile".

[originally from svn r5067]

19 years agoDon't forget to initialise ret->ai to NULL in sk_nonamelookup. Was
Simon Tatham [Tue, 4 Jan 2005 17:39:35 +0000 (17:39 +0000)]
Don't forget to initialise ret->ai to NULL in sk_nonamelookup. Was
causing segfaults in IPv6-enabled Unix PuTTY connecting through a
proxy when letting the proxy do the DNS.

[originally from svn r5064]

19 years agoIf we're going to use select(), we need <sys/select.h>.
Ben Harris [Tue, 4 Jan 2005 14:37:32 +0000 (14:37 +0000)]
If we're going to use select(), we need <sys/select.h>.

[originally from svn r5063]

19 years agocolon in kex UI
Jacob Nevins [Sun, 2 Jan 2005 13:17:22 +0000 (13:17 +0000)]
colon in kex UI

[originally from svn r5062]

19 years agoIt's a new year!
Simon Tatham [Sun, 2 Jan 2005 09:19:14 +0000 (09:19 +0000)]
It's a new year!

[originally from svn r5061]
[this svn revision also touched putty-website]

19 years agoLocalise "not connected to a host" messages.
Jacob Nevins [Sat, 1 Jan 2005 16:43:19 +0000 (16:43 +0000)]
Localise "not connected to a host" messages.

[originally from svn r5060]

19 years agoNow that rm, mkdir, and rmdir can operate on lots of files, make them more
Jacob Nevins [Sat, 1 Jan 2005 16:35:57 +0000 (16:35 +0000)]
Now that rm, mkdir, and rmdir can operate on lots of files, make them more
chatty like the other multiple-file commands.

[originally from svn r5059]

19 years agoDocument recent changes to PSFTP (and other documentation tweaks).
Jacob Nevins [Sat, 1 Jan 2005 16:16:13 +0000 (16:16 +0000)]
Document recent changes to PSFTP (and other documentation tweaks).

[originally from svn r5058]

19 years agoRemove rogue sfree()s inside new wildcard action functions -- were causing
Jacob Nevins [Sat, 1 Jan 2005 14:06:12 +0000 (14:06 +0000)]
Remove rogue sfree()s inside new wildcard action functions -- were causing
segfaults in failure cases.

[originally from svn r5057]

19 years agoThere's always one: fix small memory leak introduced in last revision.
Simon Tatham [Sat, 1 Jan 2005 13:01:13 +0000 (13:01 +0000)]
There's always one: fix small memory leak introduced in last revision.

[originally from svn r5056]

19 years ago"Nirwana Nirwana" points out that mget, mput and ls are not the only
Simon Tatham [Sat, 1 Jan 2005 12:34:32 +0000 (12:34 +0000)]
"Nirwana Nirwana" points out that mget, mput and ls are not the only
PSFTP commands that can make good use of wildcards! Now implemented
wildcard support in rmdir, rm, mv and chmod.

[originally from svn r5055]

19 years agoA couple of people have pointed out that the local variable
Simon Tatham [Fri, 31 Dec 2004 19:06:20 +0000 (19:06 +0000)]
A couple of people have pointed out that the local variable
`reading' in this file is not reliably initialised.

[originally from svn r5054]

19 years agoRename some of the more stupidly named files in the Unix back end.
Simon Tatham [Fri, 31 Dec 2004 13:02:46 +0000 (13:02 +0000)]
Rename some of the more stupidly named files in the Unix back end.
Notably pterm.c, which was a sensible name right at the start but
became a misnomer as soon as I created Unix PuTTY.

[originally from svn r5053]

19 years agoIn r5043 Jacob removed the `Load' and `Delete' buttons in the saved-
Simon Tatham [Fri, 31 Dec 2004 11:46:28 +0000 (11:46 +0000)]
In r5043 Jacob removed the `Load' and `Delete' buttons in the saved-
sessions panel in the reconfig box. I think, given that, the title
of that box also wants work :-)

[originally from svn r5052]
[r5043 == f494d60e06f19600f6354160e18b248f7bbcb0b5]

19 years agoAllow reconfiguration of compression and cipher settings in
Simon Tatham [Fri, 31 Dec 2004 10:51:14 +0000 (10:51 +0000)]
Allow reconfiguration of compression and cipher settings in
mid-session in SSH2: this forces an immediate rekey to activate the
new settings. I'm not sure exactly what this will be useful for
(except possibly it might make comparative performance testing
easier?), but it has wonderful James Bond value for being able to
switch to a more secure cipher before doing anything sensitive :-)
If, that is, you weren't using the most secure one to begin with...

[originally from svn r5051]

19 years agoReinstate the textual service name in port forwarding Event Log
Simon Tatham [Thu, 30 Dec 2004 17:53:26 +0000 (17:53 +0000)]
Reinstate the textual service name in port forwarding Event Log
messages where specified. (I had removed this in the previous
revision through forgetfulness.)

[originally from svn r5050]

19 years agoJacob points out that when we reconfigure port forwarding, we ought
Simon Tatham [Thu, 30 Dec 2004 17:48:35 +0000 (17:48 +0000)]
Jacob points out that when we reconfigure port forwarding, we ought
to be destroying old ones _before_ creating new ones, so that we can
reuse a port for a new purpose without colliding with ourselves.

Also fixed port forwarding, which my IPv6 checkin had completely
funted :-)

[originally from svn r5049]

19 years agoIf we're going to define _XOPEN_SOURCE, we should at least define it to a
Ben Harris [Thu, 30 Dec 2004 17:29:54 +0000 (17:29 +0000)]
If we're going to define _XOPEN_SOURCE, we should at least define it to a
version that includes putenv().  Make it 600 (the current one) for good
measure.

[originally from svn r5048]

19 years agoIntegrate unfix.org's IPv6 patches up to level 10, with rather a lot
Simon Tatham [Thu, 30 Dec 2004 16:45:11 +0000 (16:45 +0000)]
Integrate unfix.org's IPv6 patches up to level 10, with rather a lot
of polishing to bring them to what I think should in principle be
release quality. Unlike the unfix.org patches themselves, this
checkin enables IPv6 by default; if you want to leave it out, you
have to build with COMPAT=-DNO_IPV6.

I have tested that this compiles on Visual C 7 (so the nightlies
_should_ acquire IPv6 support without missing a beat), but since I
don't have IPv6 set up myself I haven't actually tested that it
_works_. It still seems to make correct IPv4 connections, but that's
all I've been able to verify for myself. Further testing is needed.

[originally from svn r5047]
[this svn revision also touched putty-wishlist]

19 years agoStray // comments.
Simon Tatham [Thu, 30 Dec 2004 15:29:38 +0000 (15:29 +0000)]
Stray // comments.

[originally from svn r5046]

19 years agoI've decided that trying to do wildcards in PSFTP as a special case
Simon Tatham [Thu, 30 Dec 2004 13:51:37 +0000 (13:51 +0000)]
I've decided that trying to do wildcards in PSFTP as a special case
of directory recursion was a strategic error: it obfuscates
sftp_{get,put}_file(), and also it makes it very hard to handle
subdirectory wildcards such as `foo/*'. Accordingly, here's a
completely different approach, in which sftp_{get,put}_file() are
still responsible for directory recursion, but wildcards are
expanded in sftp_general_{get,put}() before being passed thereto.
Subdirectory wildcards are now handled consistently across Unix,
Windows and the remote server.

[originally from svn r5045]

19 years agoRemove "Load" button in mid-session configuration dialog, as it allows the user
Jacob Nevins [Thu, 30 Dec 2004 10:58:28 +0000 (10:58 +0000)]
Remove "Load" button in mid-session configuration dialog, as it allows the user
to manipulate settings they can't see so could lead to confusion. (Also remove
"Delete" button for some sort of UI consistency even though it's harmless.)
Also conditionalise other aspects of sessionsaver_handler() that don't make
sense mid-session.

[originally from svn r5043]

19 years agoAdd some discussion of rekeys-as-keepalives, and their potential
Simon Tatham [Wed, 29 Dec 2004 13:44:20 +0000 (13:44 +0000)]
Add some discussion of rekeys-as-keepalives, and their potential
adverse effect on the life expectancy of a low-use connection over a
low-reliability network.

[originally from svn r5041]

19 years agoLoose end from r5031: the Kex panel should only be displayed in
Simon Tatham [Wed, 29 Dec 2004 12:32:25 +0000 (12:32 +0000)]
Loose end from r5031: the Kex panel should only be displayed in
mid-session if we are not using SSHv1. I've done this by introducing
a generic `cfg_info' function which every back end can use to
communicate an int's worth of data to setup_config_box; in SSH
that's the protocol version in use, and in everything else it's
currently zero.

[originally from svn r5040]
[r5031 == d77102a8d535a7000d6d909529a61a1564f6d678]

19 years agoThe latest unfix.org IPv6 patch contains these apparently
Simon Tatham [Tue, 28 Dec 2004 17:12:20 +0000 (17:12 +0000)]
The latest unfix.org IPv6 patch contains these apparently
IPv6-unrelated changes, which convert ints into unsigned in a few
key places in ssh.c. Looks harmless at worst, possibly terribly
useful, so I think we'll have these no matter what the real IPv6
stuff is up to!

[originally from svn r5038]

19 years agoAbility to save in mid-session! Simplest possible resolution to all
Simon Tatham [Tue, 28 Dec 2004 16:46:30 +0000 (16:46 +0000)]
Ability to save in mid-session! Simplest possible resolution to all
the difficult questions about when it's sensible to offer the option
of saving to the slot we loaded from: _we never do_. The user must
always explicitly specify a slot to save to.

[originally from svn r5035]
[this svn revision also touched putty-wishlist]

19 years agoForgot to initialise ssh->portfwds to NULL. Unusually, this was
Simon Tatham [Tue, 28 Dec 2004 16:18:17 +0000 (16:18 +0000)]
Forgot to initialise ssh->portfwds to NULL. Unusually, this was
pointed out by the MSVC debugger, not by valgrind :-)

[originally from svn r5034]

19 years agoCan't use `d' for an accelerator in the Kex panel, since it clashes
Simon Tatham [Tue, 28 Dec 2004 14:11:00 +0000 (14:11 +0000)]
Can't use `d' for an accelerator in the Kex panel, since it clashes
with the `d' used for the Down button in the Windows preference list.

[originally from svn r5032]

19 years agoSupport reconfiguration of key exchange in mid-session. The fiddly
Simon Tatham [Tue, 28 Dec 2004 14:10:32 +0000 (14:10 +0000)]
Support reconfiguration of key exchange in mid-session. The fiddly
bit is working out when to reschedule the next rekey for when the
timeout or data limit changes; sometimes it will be _right now_
because we're already over the new limit.

Still to do: the Kex panel should not appear in mid-session if we
are using SSHv1.

[originally from svn r5031]

19 years agoSSH port forwarding is now configurable in mid-session. After doing
Simon Tatham [Tue, 28 Dec 2004 14:07:05 +0000 (14:07 +0000)]
SSH port forwarding is now configurable in mid-session. After doing
Change Settings, the port forwarding setup function is run again,
and tags all existing port forwardings as `do not keep'. Then it
iterates through the config in the normal way; when it encounters a
port forwarding which is already in the tree, it tags it `keep'
rather than setting it up from scratch. Finally, it goes through the
tree and removes any that haven't been labelled `keep'. Hence,
editing the list of forwardings in Change Settings has the effect of
cancelling any forwardings you remove, and adding any new ones.

The SSH panel now appears in the reconfig box, and is empty apart
from a message explaining that it has to be there for subpanels of
it to exist. Better wording for this message would be welcome.

[originally from svn r5030]

19 years agoAbstracted out the rather large port-forwarding setup code into a
Simon Tatham [Tue, 28 Dec 2004 14:04:58 +0000 (14:04 +0000)]
Abstracted out the rather large port-forwarding setup code into a
routine which is common between SSH1 and SSH2. Since this routine is
not part of the coroutine system, this means it can't sit and wait
to get its various success/failure responses back. Hence, I've
introduced a system of queued packet handlers, each of which waits
for exactly one of a pair of messages (SSH1_SMSG_{SUCCESS,FAILURE}
or SSH2_MSG_REQUEST_{SUCCESS,FAILURE}), handles it when it arrives,
and automatically de-registers itself. Hence the port-forwarding
setup code can be called once, and then subsequent packets related
to it will automatically be handled as they arrive.

The real purpose of all this is that the infrastructure is now there
for me to arrange mid-session configurability of port forwarding.
However, a side benefit is that fewer round trips are involved in
session startup. I'd quite like to move more of the connection setup
(X forwarding, agent forwarding, pty allocation etc) to using the
new queued handler mechanism for this reason.

[originally from svn r5029]

19 years agoFix divide overflow in internal_mod(). Thanks to William Petiot for
Simon Tatham [Tue, 28 Dec 2004 14:04:26 +0000 (14:04 +0000)]
Fix divide overflow in internal_mod(). Thanks to William Petiot for
spotting a special case that the DIV instruction can't quite cover.

[originally from svn r5028]

19 years agoBasic configurability for client-initiated rekeys.
Jacob Nevins [Fri, 24 Dec 2004 13:39:32 +0000 (13:39 +0000)]
Basic configurability for client-initiated rekeys.

[originally from svn r5027]

19 years agoDon't offer repeat key exchange as a special command in SSH-1.
Jacob Nevins [Fri, 24 Dec 2004 10:04:28 +0000 (10:04 +0000)]
Don't offer repeat key exchange as a special command in SSH-1.

[originally from svn r5026]