Jacob Nevins [Sun, 20 Jun 2004 17:07:38 +0000 (17:07 +0000)]
Add a configuration option for TCP keepalives (SO_KEEPALIVE), default off.
No very good reason, but I've occasionally wanted to frob it to see if it
makes any difference to problems I'm having, and it was easy.
Tested that it does actually cause keepalives on Windows (with tcpdump);
should also work on Unix. Not implemented on Mac (does nothing), but then
neither is TCP_NODELAY.
Quite a big checkin, much of which is adding `keepalive' alongside `nodelay'
in network function calls.
Simon Tatham [Tue, 15 Jun 2004 09:50:05 +0000 (09:50 +0000)]
`Authenticating with key' message when using a local key file in
SSH2 was not contained within a test for FLAG_VERBOSE. Thanks to
Paul Gotch for pointing this out.
Jacob Nevins [Thu, 3 Jun 2004 10:36:27 +0000 (10:36 +0000)]
Spotted by Dimitry Andric: `ssh-termspeed' implementation was not taking
account of coroutines and used local variables over a crFoo. I believe the
impact was cosmetic, affecting the speeds reported in the Event Log only.
I've put the variables `ispeed' and `ospeed' in the main ssh_tag structure,
even though they're only live for a short duration; I did this rather than
create a new state struct for ssh1_protocol() (since ssh_tag already has
short-duration junk like portfwd_strptr).
Simon Tatham [Mon, 24 May 2004 11:30:15 +0000 (11:30 +0000)]
Arnaud Desitter points out a silly mistake in retrieve_cutbuffer()
(don't test for `int *nbytes' being <= 0, test for the integer it
points to being <= 0!).
Simon Tatham [Sat, 22 May 2004 11:09:31 +0000 (11:09 +0000)]
Halibut now warns about code paragraph lines which are too long to
fit in the text output format. If only to stop myself getting
pestered with cron stderr messages every night, here are some
changes that remove over-long code lines from the PuTTY manual.
Simon Tatham [Sat, 22 May 2004 10:36:50 +0000 (10:36 +0000)]
At last! After much delay, much faffing back and forth, and much
enhancement and fiddling, I have now massaged Arabeyes' first patch
into a form I'm happy to check in. Phew.
Simon Tatham [Thu, 20 May 2004 12:48:19 +0000 (12:48 +0000)]
I added more detail to the `Authentication failed at PuTTY X11
proxy' error message some time ago, but forgot to change the wording
in the error messages chapter.
Simon Tatham [Thu, 6 May 2004 11:27:58 +0000 (11:27 +0000)]
A user at ARM just found his home directory was _world_ writable,
and this caused public key authentication to fail in spite of
following our instructions to the letter. It can't hurt to
s/g-w/go-w/ here, just in case!
Jacob Nevins [Tue, 27 Apr 2004 18:16:33 +0000 (18:16 +0000)]
Krzysztof Kowalczyk's fix for "Assertion failed: actuallen <= len" when
transferring files >2G with PSCP.
(I'm unable to actually test this works, but it looks plausible, and small
transfers aren't mangled.)
Jacob Nevins [Sun, 25 Apr 2004 15:33:10 +0000 (15:33 +0000)]
In the special case that handles selecting a session and hitting Enter,
there is a structure copy of a Config, which invalidated the remote_cmd_ptr
in that structure (pointing to its own remote_cmd).
This was causing remote commands not to be executed in this special case.
I've patched the pointer up manually (as is done in plink.c), but ugh.
Simon Tatham [Sun, 25 Apr 2004 09:04:38 +0000 (09:04 +0000)]
Make mkfiles.pl less tied to PuTTY in particular, by inventing new
directives that allow me to move some of the PuTTY-specific Makefile
fragments into Recipe. Not complete yet, but ought to be enough for
me to at least _try_ using mkfiles.pl in another project.
Jacob Nevins [Sat, 24 Apr 2004 20:05:03 +0000 (20:05 +0000)]
In SSH, we now send terminal speeds to the server when requesting a pty
(we didn't before) - `ssh-termspeed'.
In the process, I've removed the individual controls on the Telnet and
Rlogin panels and replaced them with one on the Connection panel (since they
were backed by the same storage anyway).
The terminal speeds sent in SSH are logged in the Event Log.
Simon Tatham [Wed, 31 Mar 2004 12:50:17 +0000 (12:50 +0000)]
Add `can I put PuTTY on a coverdisk / bundle it / etc' to the FAQ in
case people are incapable of spotting it on the Feedback page. Also
add to both locations Owen's point about first-line support.
Jacob Nevins [Tue, 30 Mar 2004 11:36:51 +0000 (11:36 +0000)]
Miscellaneous tinkering:
- remove a couple of "fixed in 0.52" (or before) type questions
- mention Mac OS X port that someone was working on
- add a missing {Question}
Jacob Nevins [Fri, 26 Mar 2004 15:18:42 +0000 (15:18 +0000)]
More experimental hackery for `win-dead-keys'. Works for me as well as it did
in the one case I can test, but I suspect this isn't the whole story. Bletch.
Jacob Nevins [Thu, 25 Mar 2004 11:33:17 +0000 (11:33 +0000)]
tweak text about mouse reporting and copy and paste to indicate that shift's
only necessary for mouse-based actions (since we seem to be growing more
copy-and-paste options)
Simon Tatham [Wed, 24 Mar 2004 19:36:04 +0000 (19:36 +0000)]
Now that Halibut is capable of generating man pages better than I
can do it by hand, I've converted the man page set from Unix PuTTY
into Halibut format, and enhanced the Makefile so it will build
them. At some future point this will also allow me to include the
man pages as an appendix in the main manual (once I _have_ a main
manual for Unix PuTTY).
Jacob Nevins [Wed, 24 Mar 2004 14:53:51 +0000 (14:53 +0000)]
Fix from Thomas Henlich for bug in dead key support. I've reproduced the
problem and verified the fix on Win2K with the US-International keyboard layout.
(Closes: `win-dead-keys')
<20040323143836.GA40414@rcs.urz.tu-dresden.de>
Owen Dunn [Wed, 10 Mar 2004 17:11:12 +0000 (17:11 +0000)]
Make `Copy all to Clipboard' copy all non-empty lines from the
scrollback and the terminal to the clipboard, rather than just the
content before the cursor. Should fix copyall-to-cursor.
Simon Tatham [Thu, 12 Feb 2004 19:45:45 +0000 (19:45 +0000)]
Modifications to the release procedure as a result of actually
trying to _follow_ it for the first time :-) And also due to the
fact that it now needs to mention the Unix source tarball as well.
Simon Tatham [Tue, 10 Feb 2004 19:07:45 +0000 (19:07 +0000)]
Jacob reports a segfault when using HTTP proxying under Minefield.
It appears that this is because Visual C's sscanf works by first
calling strlen to get the length of the string, so that its internal
read-character routine can be sure of never overrunning the buffer.
Quite why the internal read-char routine can't detect \0 _itself_
rather than having to have it found for it in advance I have no
idea. Sigh.
Simon Tatham [Sat, 7 Feb 2004 18:10:54 +0000 (18:10 +0000)]
Added a wrinkle to the version.c build in the Unix makefile, which
will validate an md5sums manifest and if all md5sums match will use
a version number provided in a file. This should allow me to produce
a Unix release source archive with the property that when unpacked
and built it will produce binaries advertising themselves as
`Release X.YZ', but as soon as the user starts fiddling with the
sources it will revert to `Unidentified build' (though of course the
user can still _explicitly_ ask for a release tag, and in fact this
will override the default if any default is specified).
Simon Tatham [Sat, 7 Feb 2004 10:02:20 +0000 (10:02 +0000)]
Charles Wilcox reported a signature validation bug with 2500-bit RSA
keys. This _appears_ to be due to me computing the byte count of the
key by dividing the bit count by 8 and rounding _down_ rather than
up. Therefore, I can't see how this code could ever have worked on
any SSH2 RSA key whose length was not a multiple of 8 bits; and
therefore I'm staggered that we haven't noticed it before! OpenSSH's
keygen appears to be scrupulous about ensuring the returned key
length is exactly what you asked for rather than one bit less, but
even so I'm astonished that _all_ keygen implementations for servers
we've ever interoperated with have avoided tripping this bug...
Jacob Nevins [Tue, 3 Feb 2004 14:47:43 +0000 (14:47 +0000)]
Patch from Theo Markettos: apparently "BSD-derived IP stacks fall over when
trying to bind to the localhost interface with a sockaddr_in which has non-zero
sin_zero fields." Zero sockaddr_in (and sockaddr_in6) before any use.
Simon Tatham [Thu, 22 Jan 2004 19:15:32 +0000 (19:15 +0000)]
Added a command-line key generation tool. Currently builds and runs
on Linux, but the (very few) platform-specific bits are already
abstracted out of the main code, so it should port to other
platforms with a minimum of fuss.