jacob [Sun, 19 Feb 2006 14:59:48 +0000 (14:59 +0000)]
Fix `restart-reset-terminal': terminal now restored to a sensible state when
reusing a window to restart a session.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6577
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 19 Feb 2006 14:10:02 +0000 (14:10 +0000)]
Add/tweak a couple of comments.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6576
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 19 Feb 2006 12:52:28 +0000 (12:52 +0000)]
Fix up documentation/usage messages for r6572.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6574
cda61777-01e9-0310-a592-
d414129be87e
simon [Sun, 19 Feb 2006 12:05:12 +0000 (12:05 +0000)]
Introduce a new checkbox and command-line option to inhibit use of
Pageant for local authentication. (This is a `don't use Pageant for
authentication at session startup' button rather than a `pretend
Pageant doesn't exist' button: that is, agent forwarding is
independent of this option.)
git-svn-id: svn://svn.tartarus.org/sgt/putty@6572
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 19 Feb 2006 01:37:45 +0000 (01:37 +0000)]
At last, a fix for `large-clipboard-crash'.
A growable buffer was only being grown for actual text, not for newlines or
trailing NULs. A large run of empty lines could lead to newlines overflowing
the buffer (> 100 should be enough to guarantee this on all platforms, after
the initial 5k size of the buffer).
Also fix some valgrind in the same area (was probably harmless), and a memory
leak introduced by the RTF attribute pasting.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6570
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sat, 18 Feb 2006 22:30:10 +0000 (22:30 +0000)]
Pointer type correction in term_clrsb().
(Harmless, as it happens.)
git-svn-id: svn://svn.tartarus.org/sgt/putty@6568
cda61777-01e9-0310-a592-
d414129be87e
jacob [Tue, 14 Feb 2006 13:14:08 +0000 (13:14 +0000)]
Typo in r6555 spotted by Daniel Meidlinger.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6558
cda61777-01e9-0310-a592-
d414129be87e
owen [Mon, 13 Feb 2006 22:25:59 +0000 (22:25 +0000)]
RTF pasting now includes colours and style. Say so.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6557
cda61777-01e9-0310-a592-
d414129be87e
owen [Mon, 13 Feb 2006 22:18:17 +0000 (22:18 +0000)]
Preserve more attributes of text copied as RTF. Thanks to Stephen Balousek.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6555
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sat, 11 Feb 2006 19:10:01 +0000 (19:10 +0000)]
Don Heap spotted that our heuristics for dealing with IPv6 literal addresses
in the PSCP command line were bogus, giving "remote to remote not supported"
errors with filenames like '[].txt'. Made the heuristic less bogus.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6551
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sat, 11 Feb 2006 18:29:55 +0000 (18:29 +0000)]
Failure to connect to a Unix-domain socket could cause a segfault. Fixed.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6550
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sat, 11 Feb 2006 18:00:23 +0000 (18:00 +0000)]
A zero-length return from platform_get_x_display() (for instance, a
zero-length DISPLAY variable in the environment) caused an assertion
failure when X11 forwarding was attempted. Fixed (now treated the same
as a NULL return, e.g., a non-existent DISPLAY variable).
git-svn-id: svn://svn.tartarus.org/sgt/putty@6549
cda61777-01e9-0310-a592-
d414129be87e
jacob [Fri, 10 Feb 2006 20:57:40 +0000 (20:57 +0000)]
Oops. Since r6546, old "Special Commands" menus weren't being deleted from the
context menu, and they tended to pile up.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6547
cda61777-01e9-0310-a592-
d414129be87e
jacob [Thu, 9 Feb 2006 23:06:57 +0000 (23:06 +0000)]
Users of Virtual Dimension are reporting that the "Close" menu item and
button tend to get disabled on login.
After a suggestion by "Tkil", change the way we handle the specials menu
to be robust against the window menu being externally modified.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6546
cda61777-01e9-0310-a592-
d414129be87e
jacob [Fri, 27 Jan 2006 20:49:59 +0000 (20:49 +0000)]
Somewhat gruesome tweak to use SetClassLongPtr where available and degrade
nicely elsewhere, which should fix `win64' _properly_.
Tested on recent-ish MinGW (with GetWindowLongPtr but not GetClassLongPtr),
and VC++ 6.0 with a recent SDK, but not with vanilla VC++.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6535
cda61777-01e9-0310-a592-
d414129be87e
owen [Wed, 25 Jan 2006 22:46:33 +0000 (22:46 +0000)]
Don't explicitly open the logfile on startup; it'll automatically be opened
by logwrite() as necessary. Should fix win-askappend-multi.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6533
cda61777-01e9-0310-a592-
d414129be87e
jacob [Tue, 24 Jan 2006 11:08:34 +0000 (11:08 +0000)]
s/PuTTY/PuTTYgen/ in two places.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6528
cda61777-01e9-0310-a592-
d414129be87e
owen [Wed, 11 Jan 2006 23:43:04 +0000 (23:43 +0000)]
VC6 doesn't define LONG_PTR
git-svn-id: svn://svn.tartarus.org/sgt/putty@6520
cda61777-01e9-0310-a592-
d414129be87e
owen [Wed, 11 Jan 2006 23:42:02 +0000 (23:42 +0000)]
Configurable font quality on Windows. (Together with a little bit of
macro stuff to cope with the inadequacy of VC++ 6 headers.)
git-svn-id: svn://svn.tartarus.org/sgt/putty@6519
cda61777-01e9-0310-a592-
d414129be87e
owen [Tue, 10 Jan 2006 20:02:22 +0000 (20:02 +0000)]
Fix zero-rows-cols-crash
git-svn-id: svn://svn.tartarus.org/sgt/putty@6515
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 8 Jan 2006 18:18:11 +0000 (18:18 +0000)]
It's a new year.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6513
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 18 Dec 2005 17:05:21 +0000 (17:05 +0000)]
Update status of this library wrt other variants.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6500
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 18 Dec 2005 16:57:00 +0000 (16:57 +0000)]
CP866 is popular and small. Add it to both the general and PuTTY
implementations of libcharset, since we've had at least one request for
it in PuTTY.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6499
cda61777-01e9-0310-a592-
d414129be87e
jacob [Fri, 16 Dec 2005 16:43:28 +0000 (16:43 +0000)]
Mention compile-time directives and where they're documented.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6497
cda61777-01e9-0310-a592-
d414129be87e
simon [Fri, 9 Dec 2005 20:04:19 +0000 (20:04 +0000)]
A few small changes to make the PuTTY source base more usable as a
basis for other terminal-involving applications: a stub
implementation of the printing interface, an additional function in
notiming.c, and also I've renamed the front-end function beep() to
do_beep() so as not to clash with beep() in lib[n]curses.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6479
cda61777-01e9-0310-a592-
d414129be87e
jacob [Wed, 7 Dec 2005 18:01:40 +0000 (18:01 +0000)]
Apparently some SSH servers object to our claiming port-forwarded connections
to be from IP "client-side-connection". Claiming "0.0.0.0" instead seems to
work. Spotted by Brant Thomsen.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6477
cda61777-01e9-0310-a592-
d414129be87e
jacob [Wed, 7 Dec 2005 00:24:45 +0000 (00:24 +0000)]
Institutional failure to memset() things pointed at rather than pointers.
Things should now be zeroed and memory not leaked. Spotted by Brant Thomsen.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6476
cda61777-01e9-0310-a592-
d414129be87e
jacob [Tue, 6 Dec 2005 23:18:27 +0000 (23:18 +0000)]
Improvements from Spyros Blanas to the MSVC optimisations of r6469:
don't do a function call for each divmod, and don't rely on details of
the calling convention.
(This didn't actually make any measurable difference to runtime in any
of my tests, but we may as well keep it as it's neater.)
Also document some general caveats of the divmod macro.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6475
cda61777-01e9-0310-a592-
d414129be87e
jacob [Thu, 1 Dec 2005 16:41:49 +0000 (16:41 +0000)]
SSH-2 rekey bug compatibility setting wasn't being saved
(but _was_ being loaded).
git-svn-id: svn://svn.tartarus.org/sgt/putty@6473
cda61777-01e9-0310-a592-
d414129be87e
jacob [Wed, 23 Nov 2005 21:26:05 +0000 (21:26 +0000)]
An MSVC version of the 16->32-bit bignum optimisation, derived from part of
a patch by Lionel Fourquaux. Seems to be about a factor of four improvement
(see wishlist item for details).
I don't claim to understand this in detail, so I can't vouch for its
correctness, but it didn't fall over immediately. It also produces some
compiler warnings, unfortunately.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6469
cda61777-01e9-0310-a592-
d414129be87e
jacob [Mon, 14 Nov 2005 09:41:42 +0000 (09:41 +0000)]
Missing close parenthesis.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6461
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 13 Nov 2005 16:06:41 +0000 (16:06 +0000)]
r6437 broke the case where Pageant is running but contains no SSH-2 keys
that the SSH-2 server is happy with. Fixed, and since I'm here, fix
`pubkeyfile-and-pageant' as well (for SSH-1 and SSH-2).
Also, in SSH-2, we now reexamine "methods that can continue" for every
Pageant key offer, which is technically more correct although it seems
unlikely that it was causing any real problems.
(It's not entirely pretty, but neither was the old code. We could probably
do with some sort of abstraction for public/private keys to avoid carting
lots of fiddly bits of data around.)
git-svn-id: svn://svn.tartarus.org/sgt/putty@6459
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 13 Nov 2005 12:13:09 +0000 (12:13 +0000)]
Oops, used \I where I meant \i. I think this is the only instance.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6454
cda61777-01e9-0310-a592-
d414129be87e
jacob [Wed, 9 Nov 2005 23:19:33 +0000 (23:19 +0000)]
I broke the ability to cope with multiple consecutive k-i INFO_REQUESTS
in r6437. This ought to be better (but I can't test that case).
git-svn-id: svn://svn.tartarus.org/sgt/putty@6451
cda61777-01e9-0310-a592-
d414129be87e
jacob [Fri, 4 Nov 2005 23:31:11 +0000 (23:31 +0000)]
Fix minor hiccup in SSH-1 p-k auth.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6447
cda61777-01e9-0310-a592-
d414129be87e
jacob [Fri, 4 Nov 2005 23:21:42 +0000 (23:21 +0000)]
Placate a compiler warning introduced in r6437.
(I forgot we usually compile with -Werror on Unix, oops.)
git-svn-id: svn://svn.tartarus.org/sgt/putty@6446
cda61777-01e9-0310-a592-
d414129be87e
jacob [Fri, 4 Nov 2005 14:49:22 +0000 (14:49 +0000)]
Fix for `ssh2-password-expiry'. Success case tested.
(Much easier since r6437, and actually works to boot.)
git-svn-id: svn://svn.tartarus.org/sgt/putty@6445
cda61777-01e9-0310-a592-
d414129be87e
jacob [Wed, 2 Nov 2005 23:15:43 +0000 (23:15 +0000)]
When a userpass interaction has finished, make sure the 'prompts' structure
is safe for re-use.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6444
cda61777-01e9-0310-a592-
d414129be87e
jacob [Mon, 31 Oct 2005 22:43:51 +0000 (22:43 +0000)]
(do_ssh2_authconn_state).method is redundant since r6427; remove.
Remove FIXMEs from .type assignments, as they look fine.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6442
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 30 Oct 2005 20:24:09 +0000 (20:24 +0000)]
Revamp SSH authentication code so that user interaction is more
abstracted out; replace loops structured around a single interaction
per loop with less tortuous code (fixes: `ki-multiprompt-crash',
`ssh1-bad-passphrase-crash'; makes `ssh2-password-expiry' and
`proxy-password-prompt' easier).
The new interaction abstraction has a lot of fields that are unused in
the current code (things like window captions); this is groundwork for
`gui-auth'. However, ssh.c still writes directly to stderr; that may
want to be fixed.
In the GUI apps, user interaction is moved to terminal.c. This should
make it easier to fix things like UTF-8 username entry, although I
haven't attempted to do so. Also, control character filtering can be
tailored to be appropriate for individual front-ends; so far I don't
promise anything other than not having made it any worse.
I've tried to test this fairly exhaustively (although Mac stuff is
untested, as usual). It all seems to basically work, but I bet there
are new bugs. (One I know about is that you can no longer make the
PuTTY window go away with a ^D at the password prompt; this should be
fixed.)
git-svn-id: svn://svn.tartarus.org/sgt/putty@6437
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 30 Oct 2005 19:13:43 +0000 (19:13 +0000)]
In Unix PuTTYgen, existing SSH-1 key comments were coming out as "(null)"
for operations not performing decryption (e.g., "puttygen rsa1.ppk -L")
(A use for r6434 -- wasn't expecting that.)
git-svn-id: svn://svn.tartarus.org/sgt/putty@6436
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 30 Oct 2005 16:28:45 +0000 (16:28 +0000)]
Fixes to make r6434 actually useful.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6435
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 30 Oct 2005 15:16:42 +0000 (15:16 +0000)]
Allow rsakey_pubblob() to return the key comment.
(like r6433 but for SSH-1)
git-svn-id: svn://svn.tartarus.org/sgt/putty@6434
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 30 Oct 2005 13:42:36 +0000 (13:42 +0000)]
Add ability for ssh2_userkey_loadpub() to return the key comment.
(Not actually used currently, but it makes life easier for a patch I'm
working on.)
git-svn-id: svn://svn.tartarus.org/sgt/putty@6433
cda61777-01e9-0310-a592-
d414129be87e
jacob [Wed, 26 Oct 2005 22:18:11 +0000 (22:18 +0000)]
Fix an error I introduced into SSH packet logging in r5642: some outgoing
packets over about 256 bytes would be logged with 12 bytes of preceding
garbage. (But the rest of the packet was logged in its entirety. This
holds for packets where (int(len/256)%2)==1, with an appropriate fudge
factor applied to `len'.) Ahem.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6429
cda61777-01e9-0310-a592-
d414129be87e
jacob [Wed, 26 Oct 2005 20:58:01 +0000 (20:58 +0000)]
Comment explaining back->sendok() semantics from Simon.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6428
cda61777-01e9-0310-a592-
d414129be87e
jacob [Thu, 13 Oct 2005 22:51:44 +0000 (22:51 +0000)]
Tweak to r6392: spell "MAC" thus.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6399
cda61777-01e9-0310-a592-
d414129be87e
ben [Thu, 13 Oct 2005 21:56:43 +0000 (21:56 +0000)]
Fix 256-colours-match-xterm, based on 256colres.pl from xterm-205.
Largely untested -- may not even compile on Windows.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6393
cda61777-01e9-0310-a592-
d414129be87e
ben [Thu, 13 Oct 2005 21:51:38 +0000 (21:51 +0000)]
Make SSH_MSG_DISCONNECT reasons less scary (without removing useful content).
git-svn-id: svn://svn.tartarus.org/sgt/putty@6392
cda61777-01e9-0310-a592-
d414129be87e
simon [Sat, 8 Oct 2005 09:09:50 +0000 (09:09 +0000)]
Failed to call set_erase_char() after processing SCO colour sequences.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6379
cda61777-01e9-0310-a592-
d414129be87e
jacob [Tue, 4 Oct 2005 14:13:28 +0000 (14:13 +0000)]
`win-versioninfo': all builds of all Windows binaries now contain
a VERSIONINFO resource. The versioning scheme is described in
windows/version.rc2.
Some .rc files are now #included in others. In order to keep MSVC
project files working, these have been renamed to .rc2; there may exist
a better solution.
(This checkin also includes the documentation tweak missing from r6367.)
Testing performed:
- MinGW (cross-compiler): works
- VC nmake: works (tested with VC6)
- VC project files: builds with VERSIONINFO resource (no VER variable though)
- Borland: an old version of this patch was tested with it and more or
less worked, except that some of the VERSIONINFO strings were apparently
not terminated properly. Not attempted to work around this.
- LCC: not tested. Some fixes are in there from the last time we tried
this, but then the build ultimately failed and I haven't tried this
since that was fixed.
- Dev-C++: untested. (Haven't done anything special.)
- Unix Gtk/autoconf Makefiles work as before.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6374
cda61777-01e9-0310-a592-
d414129be87e
simon [Mon, 3 Oct 2005 11:38:30 +0000 (11:38 +0000)]
UTF-8 processing was discarding a valid character which interrupted
an otherwise legal sequence, if that valid character was the last
thing in a term_out() run. Spotted by Egmont Koblinger.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6373
cda61777-01e9-0310-a592-
d414129be87e
jacob [Mon, 3 Oct 2005 10:24:06 +0000 (10:24 +0000)]
thinko
git-svn-id: svn://svn.tartarus.org/sgt/putty@6372
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sat, 1 Oct 2005 12:36:46 +0000 (12:36 +0000)]
Split out SVN_REV from SNAPSHOT define. This is to support `win-versioninfo',
but since Simon's made the corresponding change to the build process, this bit
needs checking in now (it should be harmless).
(The documentation in Recipe is slightly out of date; with luck I'll be
checking in `win-versioninfo' changes soon, and I can't be bothered to
disentangle the relevant changes in the meantime.)
git-svn-id: svn://svn.tartarus.org/sgt/putty@6367
cda61777-01e9-0310-a592-
d414129be87e
simon [Sat, 1 Oct 2005 11:40:26 +0000 (11:40 +0000)]
A swathe of new FAQ questions, along the general theme of `will you
sign something for us / give us assurances / give us indemnity'.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6365
cda61777-01e9-0310-a592-
d414129be87e
jacob [Fri, 30 Sep 2005 14:54:03 +0000 (14:54 +0000)]
Mention SSH-2 rekeys in the keepalive section.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6363
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sat, 24 Sep 2005 18:33:06 +0000 (18:33 +0000)]
A first stab at guidance for those lost souls who email us asking for
login names and/or passwords. Feel free to hack.
(NB, renumbers a section of the FAQ.)
git-svn-id: svn://svn.tartarus.org/sgt/putty@6355
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sat, 24 Sep 2005 16:17:30 +0000 (16:17 +0000)]
Add DEVCPP to svn:ignore.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6344
cda61777-01e9-0310-a592-
d414129be87e
simon [Wed, 21 Sep 2005 17:09:07 +0000 (17:09 +0000)]
dlg_listbox_select() now scrolls the list box to ensure that the
item it's just selected is visible.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6338
cda61777-01e9-0310-a592-
d414129be87e
owen [Wed, 21 Sep 2005 14:53:32 +0000 (14:53 +0000)]
Platform-independent support for zooming around session list by typing
in the session name box. Thwarted on Unix by GTK not automatically
scrolling the listbox to the selected item, but we can fix that in
the platform-specific side later.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6337
cda61777-01e9-0310-a592-
d414129be87e
jacob [Mon, 19 Sep 2005 14:34:01 +0000 (14:34 +0000)]
Mention that sessions can be saved from "Change Settings" in using.but.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6332
cda61777-01e9-0310-a592-
d414129be87e
ben [Wed, 14 Sep 2005 11:00:34 +0000 (11:00 +0000)]
AIX 5.1 has <utmpx.h> but no updwtmpx(). Treat the latter as a reason to
OMIT_UTMP. Reported by Mike Protts.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6311
cda61777-01e9-0310-a592-
d414129be87e
ben [Wed, 14 Sep 2005 10:53:39 +0000 (10:53 +0000)]
Some systems (HP-UX) don't yet have <sys/select.h>, putting select() in
<sys/time.h>. Cope with this. Where <sys/select.h> _is_ available, though,
use it (since it's where POSIX puts select()). Problem reported by Mike
Protts.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6310
cda61777-01e9-0310-a592-
d414129be87e
ben [Tue, 13 Sep 2005 20:17:10 +0000 (20:17 +0000)]
When asked to malloc zero bytes, malloc one byte instead. This ensures
that we get a unique pointer rather than NULL (which ANSI C otherwise permits).
Problem pointed out by Mike Protts.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6308
cda61777-01e9-0310-a592-
d414129be87e
ben [Tue, 13 Sep 2005 20:08:25 +0000 (20:08 +0000)]
The ANSI-C constant FILENAME_MAX is ludicrously small on some systems.
Use the POSIX PATH_MAX if it exists, and fall back to 1024 otherwise.
We should really allocate filenames dynamically if PATH_MAX isn't defined.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6307
cda61777-01e9-0310-a592-
d414129be87e
ben [Tue, 13 Sep 2005 19:57:37 +0000 (19:57 +0000)]
Some hosts don't have TIOCSCTTY. Don't try to use it on them.
Patch from Mike Protts.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6306
cda61777-01e9-0310-a592-
d414129be87e
ben [Tue, 13 Sep 2005 19:54:01 +0000 (19:54 +0000)]
A couple of places in sk_newlistener were using AF_INET6 even with NO_IPV6.
Correct them.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6305
cda61777-01e9-0310-a592-
d414129be87e
ben [Tue, 13 Sep 2005 19:24:35 +0000 (19:24 +0000)]
Nothing seems to use the "int64" type, and it apparently causes conflicts
on some platform, so remove it. Thanks to Mike Protts for spotting this.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6304
cda61777-01e9-0310-a592-
d414129be87e
jacob [Tue, 13 Sep 2005 14:12:16 +0000 (14:12 +0000)]
Apparently the OS X port is stalled.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6302
cda61777-01e9-0310-a592-
d414129be87e
ben [Mon, 12 Sep 2005 15:45:29 +0000 (15:45 +0000)]
When the first element in a preference list was unrecognised, PuTTY would
hang when reading it because strtok() kept getting the full list passed in.
Fix this, and add an assert() for an assumption documented in a comment while
I'm in the area.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6294
cda61777-01e9-0310-a592-
d414129be87e
ben [Sat, 10 Sep 2005 17:36:52 +0000 (17:36 +0000)]
Mention relationship between terminal types, keyboard sequences, and
termcap/terminfo. Suggested by Joachim Durchholz.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6285
cda61777-01e9-0310-a592-
d414129be87e
ben [Sat, 10 Sep 2005 16:19:53 +0000 (16:19 +0000)]
Implement hmac-sha1-96. It's RECOMMENDED in the current transport draft,
and we don't have any strong reason not to implement it, for all that it's
rather pointless.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6284
cda61777-01e9-0310-a592-
d414129be87e
ben [Sun, 4 Sep 2005 14:53:39 +0000 (14:53 +0000)]
Add support for diffie-hellman-group-exchange-sha256. Tested against a
patched OpenSSH server. This is controlled by the same user settings
as diffie-hellman-group-exchange-sha1, which may not be optimal, especially
given that they're both referred to as dh-gex-sha1 in saved sessions.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6272
cda61777-01e9-0310-a592-
d414129be87e
ben [Sat, 3 Sep 2005 17:29:28 +0000 (17:29 +0000)]
Mention xp-wont-run.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6264
cda61777-01e9-0310-a592-
d414129be87e
ben [Sat, 3 Sep 2005 17:03:49 +0000 (17:03 +0000)]
Now that my arcfour-fixes draft has been approved by the IESG, use the
IANA-assigned names for its modes.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6263
cda61777-01e9-0310-a592-
d414129be87e
ben [Sat, 3 Sep 2005 13:41:43 +0000 (13:41 +0000)]
Restructure things so that a single entry in the KEX preference list can
correspond to multiple SSH-2 KEX algorithms. We already do the equivalent
for cipher algorithms.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6262
cda61777-01e9-0310-a592-
d414129be87e
jacob [Fri, 2 Sep 2005 10:51:09 +0000 (10:51 +0000)]
Check ssh->v2_session_id_len _after_ assigning to it.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6260
cda61777-01e9-0310-a592-
d414129be87e
ben [Wed, 31 Aug 2005 22:32:05 +0000 (22:32 +0000)]
Don't bother compiling SHA-256 for now -- I need to think a bit before I use
it.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6253
cda61777-01e9-0310-a592-
d414129be87e
ben [Wed, 31 Aug 2005 21:48:22 +0000 (21:48 +0000)]
SHA-256 implementation, for use in future KEX algorithms, in particular
diffie-hellman-group-exchange-sha256, which the last DHGEX draft defined.
Code lifted from Simon's "crypto" directory, with changes to make it look
more like sshsh512.c.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6252
cda61777-01e9-0310-a592-
d414129be87e
ben [Wed, 31 Aug 2005 20:43:06 +0000 (20:43 +0000)]
Add infrastructure for supporting multiple hashes in key exchange.
Nothing very surprising here.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6251
cda61777-01e9-0310-a592-
d414129be87e
ben [Wed, 31 Aug 2005 19:11:19 +0000 (19:11 +0000)]
Rename ssh_md5 and ssh_sha1 to ssh_hmac_md5 and ssh_hmac_sha1 respectively.
This is to make room for a hash abstraction that's likely to want to use
ssh_sha1, at least.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6249
cda61777-01e9-0310-a592-
d414129be87e
jacob [Wed, 31 Aug 2005 16:14:21 +0000 (16:14 +0000)]
Explicitly note that "remote command" semantics typically involve the server
closing the connection after the command has executed.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6246
cda61777-01e9-0310-a592-
d414129be87e
ben [Tue, 30 Aug 2005 22:39:35 +0000 (22:39 +0000)]
Further progress in the direction of variable exchange hashes -- stash the
outgoing KEXINIT, and only start generating the exchange hash once we know
which KEX method we're using.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6242
cda61777-01e9-0310-a592-
d414129be87e
ben [Tue, 30 Aug 2005 20:38:57 +0000 (20:38 +0000)]
Beginnings of support for multiple exchange hashes in SSH-2: rather than
storing a SHA-1 hash of the client and server version strings, store the
strings themselves so we can feed them through the appropriate hash when
we know what it is.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6241
cda61777-01e9-0310-a592-
d414129be87e
jacob [Mon, 29 Aug 2005 00:34:03 +0000 (00:34 +0000)]
More versions of WeOnlyDo have the rekey bug (but they've fixed it now).
git-svn-id: svn://svn.tartarus.org/sgt/putty@6233
cda61777-01e9-0310-a592-
d414129be87e
jacob [Fri, 26 Aug 2005 21:17:49 +0000 (21:17 +0000)]
I think this should fix various problems with queued incoming data not being
processed and incoming data being processed out of order, which I suspect is
the cause of `ssh1-fwd-trouble' as noted by Gevan Dutton. I'm not able to
test the failure case, but it doesn't seem to have obviously broken anything
in the cases I have tested, anyway.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6221
cda61777-01e9-0310-a592-
d414129be87e
ben [Mon, 22 Aug 2005 20:37:13 +0000 (20:37 +0000)]
Add support for generating project files for use with Dev-C++, contributed
by Florian Gaab.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6201
cda61777-01e9-0310-a592-
d414129be87e
ben [Mon, 22 Aug 2005 20:07:46 +0000 (20:07 +0000)]
Florian Gaab reports that freeSSHd 1.0.7, which claims a "softwareversion"
of "WeOnlyDo-1.2.6", mishandles repeat key exchange. Add it to the list.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6200
cda61777-01e9-0310-a592-
d414129be87e
jacob [Wed, 10 Aug 2005 18:31:24 +0000 (18:31 +0000)]
Ben Rudiak-Gould points out that we should be using WM_APP as the base for
our app-private window messages, which is considerably higher than the
WM_XUSER we arbitrarily chose. (This isn't known to be causing any actual
problems. The fix seems not to have obviously broken anything.)
git-svn-id: svn://svn.tartarus.org/sgt/putty@6183
cda61777-01e9-0310-a592-
d414129be87e
ben [Sun, 24 Jul 2005 13:46:14 +0000 (13:46 +0000)]
draft-ietf-secsh-transport-24 says that only "SSH-" at the start of a line
marks a version string. It's a bit vague about the definition of a line,
but I think it's reasonable to assume that they'll end with LF. Change
do_ssh_init() to ignore "SSH-" anywhere else. This makes the existing state
machine overkill, so replace it with something a little more readable.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6138
cda61777-01e9-0310-a592-
d414129be87e
jacob [Sun, 17 Jul 2005 13:37:58 +0000 (13:37 +0000)]
This is getting silly; nearly 25% of our mirrors are now in the US.
Discourage more strongly mirrors in well-served areas in the Feedback section.
Also, duplicate that text on the Mirrors page, along with a request to tell us
the country (since lots of people still don't).
git-svn-id: svn://svn.tartarus.org/sgt/putty@6109
cda61777-01e9-0310-a592-
d414129be87e
jacob [Fri, 15 Jul 2005 11:47:28 +0000 (11:47 +0000)]
Patch from Colin Watson: we were sometimes passing stack storage to putenv(),
which is Bad (in his case, it caused TERM to end up unset). Use malloc()'d
storage instead.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6095
cda61777-01e9-0310-a592-
d414129be87e
jacob [Wed, 6 Jul 2005 18:26:41 +0000 (18:26 +0000)]
Missing argument in MALLOC_LOG version of snrealloc() macro.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6075
cda61777-01e9-0310-a592-
d414129be87e
ben [Tue, 5 Jul 2005 21:15:23 +0000 (21:15 +0000)]
Piers Finlayson reports that "DigiSSH_2.0" chokes (in a new and exciting
manner) on rekeys. Add it to the list.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6067
cda61777-01e9-0310-a592-
d414129be87e
jacob [Wed, 29 Jun 2005 18:20:17 +0000 (18:20 +0000)]
Try to make it slightly clearer that TIS/CryptoCard are generic, since
SSH:TDGv2 seems to think that TIS is only relevant to its original
application (whose name eludes me at the moment).
git-svn-id: svn://svn.tartarus.org/sgt/putty@6038
cda61777-01e9-0310-a592-
d414129be87e
ben [Sat, 25 Jun 2005 21:43:09 +0000 (21:43 +0000)]
In local-to-remote copies, abort if fxp_init() fails, rather than ploughing
on and trying to transfer files, which caused a null-pointer deference.
Thanks to Fernando Najera for reporting the bug.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6021
cda61777-01e9-0310-a592-
d414129be87e
ben [Sat, 25 Jun 2005 19:22:13 +0000 (19:22 +0000)]
Quote session name in command line example for robustness.
git-svn-id: svn://svn.tartarus.org/sgt/putty@6020
cda61777-01e9-0310-a592-
d414129be87e
ben [Wed, 22 Jun 2005 10:00:09 +0000 (10:00 +0000)]
Improve IPA representation of "PuTTY", as suggested by John Lunney. My
rationale (as mailed to him):
I think you're right. I got the pronunciation there from the second edition
of the OED and my Collins dictionary at home, both of which believe that
"pretty" is pronounced /'prItI/, but, at least to me, those two vowels are
different. Both of them think that /i/ doesn't occur in English words, the
vowel in "beat" being /i:/. The third edition of the OED, though, adds /i/
as an English vowel in its pronunciation guide, with "happy" as an example
of its use. I'll update the FAQ following your suggestion.
git-svn-id: svn://svn.tartarus.org/sgt/putty@5989
cda61777-01e9-0310-a592-
d414129be87e
jacob [Tue, 21 Jun 2005 20:13:48 +0000 (20:13 +0000)]
Fix an apparently-harmless error spotted by Ben Rudiak-Gould:
do_ssh2_transport() was returning the wrong value for rekeys after the first.
This apparent error was introduced in r4901, but we can't see any reason for
the change to have been made. If it turns out to be a mistake to revert it,
I'm sure we'll find out.
Here for posterity is Simon's analysis:
| A lot of the return values from do_ssh2_transport appear to be vestigial: it
| used to be that a zero return from do_ssh2_transport meant it had handled the
| packet internally, and a 1 return meant the packet wasn't a transport-layer
| one and needed to pass on to do_ssh2_authconn. Since r4901, however, the
| layer discrimination is done based on the message type ranges, and the only
| remaining dependency on the return value from do_ssh2_transport is a special
| case in ssh2_protocol which detects the first 1 return and makes the
| initialisation call to do_ssh2_authconn.
|
| Therefore, the gratuitous 1 return on every key exchange as a result of the
| confusing if statement is simply ignored in ssh2_protocol (because
| ssh->protocol_initial_phase_done is already TRUE). So the remaining question
| was, why does the _lack_ of that 1 return not cause a problem, if the if's
| sense is indeed reversed?
|
| The answer is that 1 is still returned, just not by the crReturn inside the
| if statement. It's returned by the next crReturn, just after
| wait_for_rekey(). Which suggests that in fact, the if statement has the
| correct sense, but the crReturn inside it has the wrong value - it should be
| returning _zero_, to indicate that every NEWKEYS after the first one is
| uninteresting to the authconn code, and on the very first run through that
| doesn't happen and the NEWKEYS gets all the way to the crReturn(1) later on.
git-svn-id: svn://svn.tartarus.org/sgt/putty@5986
cda61777-01e9-0310-a592-
d414129be87e
ben [Mon, 20 Jun 2005 13:56:30 +0000 (13:56 +0000)]
Make the sanity-checks on the size of incoming packets much stricter. We now
enforce the following:
* Packet must have at least one byte of payload and four bytes of padding.
* Total packet length must not exceed 35000 bytes compressed.
* Total packet length including length field must be a multiple of cipher
block size (or eight bytes).
The feebleness of our old checks was noticed by Ben Rudiak-Gould.
git-svn-id: svn://svn.tartarus.org/sgt/putty@5981
cda61777-01e9-0310-a592-
d414129be87e