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

3688 Commits

Author SHA1 Message Date
Simon Tatham
cfe56ec836 Oops. The new remote_cmd_ptr points in the wrong place when you copy a
Config structure like plink does at one point. (I'm almost tempted to
say this is where a copy constructor would be handy :-/ )

[originally from svn r1025]
2001-03-28 16:38:40 +00:00
Simon Tatham
0962190a1b Modify the new rsa_verify routine. We now also check the integrity of
the private data (verifying that p > q and that iqmp really is the
inverse of q mod p). In addition, we _no longer_ check that e*d == 1
mod (p-1)(q-1): instead we do separate checks mod (p-1) and mod (q-1),
since the order of the multiplicative group mod n is actually equal to
lcm(p-1,q-1) rather than phi(n)=(p-1)(q-1). (In other words, the
Fermat-Euler theorem doesn't point both ways.)

[originally from svn r1024]
2001-03-23 13:02:39 +00:00
Simon Tatham
6a4294fbac Fix the SSH protocol version exchange, which had a weird stack trash
in it which for some reason didn't show up when built with VC++6 but
blew up the nightlies. Should be OK now.

[originally from svn r1023]
2001-03-23 10:28:36 +00:00
Simon Tatham
3a78d9dd09 Fix a couple of silly compiler warnings
[originally from svn r1022]
2001-03-23 09:20:43 +00:00
Simon Tatham
e3bcd35a37 Following the recent advisory about attacks on PGP keys based on
tampering with the unencrypted public part of the key but leaving
the private part intact ... we are now ultra-paranoid about RSA key
files, and we check that the public part matches the private part
_before_ we generate any signatures with them.

[originally from svn r1021]
2001-03-22 21:48:33 +00:00
Simon Tatham
3f63cf7d88 Remove needless redeclaration of word32 (it was in ssh.h)
[originally from svn r1020]
2001-03-22 21:48:32 +00:00
Simon Tatham
4d881300c8 Remove the length limit on protocol version strings. (In principle, I
could have got away with upping it to 256, but I didn't want a repeat
of the chaos when some server accidentally breaks that limit too...)

[originally from svn r1019]
2001-03-22 17:32:40 +00:00
Simon Tatham
0cda163a2d Plink in noninteractive-script mode should not show the `Authenticated
with public key' message in SSH2 (it already doesn't in SSH1). It
shouldn't show the login banner either, since its output is probably
redirected to something which will choke on it.

[originally from svn r1011]
2001-03-19 10:27:59 +00:00
Simon Tatham
4b5cda8aaa Add Norman Brandinger's suggested `-m' option in plink, to read the
remote command from a local file. Advantage: you can have more than
one line in it, so you can remotely run what's effectively a small
script.

[originally from svn r1010]
2001-03-19 10:24:55 +00:00
Simon Tatham
c152034706 SSH2 channel fix: received WINDOW_ADJUSTs were always applied to the
primary (shell session) channel, rather than the one they were aimed
at. This _despite_ me having deliberately gone and looked the channel
ID up in the B-tree - I was ignoring the result by accident :-/

X forwarding should now work in SSH2 even on non-trivial clients (ie
things other than xdpyinfo).

[originally from svn r1007]
2001-03-16 12:09:44 +00:00
Simon Tatham
02f012a66a Correct handling of SSH1 protocol flags, in particular
PROTOFLAG_SCREEN_NUMBER, without which OpenSSH 2.5.1 was objecting to
my gratuitous inclusion of a screen number in the SSH1 X forwarding
request. Ahem.

[originally from svn r1006]
2001-03-16 11:58:54 +00:00
Simon Tatham
947d33408f Add support for SSH2 userauth banners. We currently can't deal with
printing them _before_ the username prompt. This apparently isn't very
serious because OpenSSH doesn't _send_ it before the username prompt,
but only in response to USERAUTH_REQUEST "none". Good job we do that!

[originally from svn r1005]
2001-03-15 17:14:31 +00:00
Simon Tatham
dfb9893509 David Brinegar's workaround for an error reporting problem in some
WinSocks.

[originally from svn r1004]
2001-03-15 13:25:48 +00:00
Simon Tatham
080d59422b At long last: PuTTY will now report its version to the server
sensibly, as a release or a snapshot or a local build. With any luck
this should make bug reporting easier to handle, because anyone who
sends their Event Log should automatically include the version :-)

[originally from svn r1003]
2001-03-15 12:15:02 +00:00
Simon Tatham
a405770ec5 Fix a trivial compiler warning
[originally from svn r1002]
2001-03-15 12:14:09 +00:00
Simon Tatham
4b5a97fbee Fix a few trivial compiler warnings
[originally from svn r1001]
2001-03-15 11:39:17 +00:00
Simon Tatham
31d6765aca Bit more robustness when talking to Pageant
[originally from svn r1000]
2001-03-15 11:38:02 +00:00
Simon Tatham
1a9d213a74 Oops - don't invent an X authorisation when doing agent forwarding!
Overenthusiastic c'n'p breaks the world.

[originally from svn r999]
2001-03-15 11:32:23 +00:00
Simon Tatham
c760ef6f83 Fix a segfault on abrupt X connection shutdown.
[originally from svn r998]
2001-03-15 11:19:59 +00:00
Simon Tatham
cb9c2e79b9 AES should have accelerator s, not a, to avoid a clash
[originally from svn r997]
2001-03-14 11:47:11 +00:00
Simon Tatham
7b0e082700 Dave Hinton's modifications to the network layer interface, which
should make it possible to add SSL support later.

[originally from svn r996]
2001-03-13 10:22:45 +00:00
Simon Tatham
40a68abec5 Add dependencies for x11fwd.obj to Makefile (thanks Catbells :-)
[originally from svn r995]
2001-03-13 09:41:02 +00:00
Simon Tatham
55659a959f ssh_get_password has become ssh_get_line, so it can handle usernames
as well. This should fix the multiple-reads-on-stdin bug in plink.

[originally from svn r994]
2001-03-12 15:31:53 +00:00
Simon Tatham
9ee21069b5 Zero length passwords no longer cause an assertion failure :-)
[originally from svn r993]
2001-03-12 15:12:33 +00:00
Simon Tatham
313b332a38 Finally fixed the point/pixel confusion in font handling. Thanks to
Roman Surma for pointing me at the relevant bits of documentation. All
font sizes should now be measured in points, and everything should be
consistent, and (with any luck) old Registry settings should adapt
gracefully too.

[originally from svn r992]
2001-03-12 12:24:07 +00:00
Simon Tatham
d823077f18 Add support for using Diffie-Hellman with short exponents (sshdh.c
contains a reference to a paper on the subject). Reduces time taken
for DH group exchange to the point where it's viable to enable it
all the time, so I have. :-)

[originally from svn r991]
2001-03-10 11:04:07 +00:00
Simon Tatham
0c8635beda Tiny bug in bn_power_2() - didn't work with powers that were a
multiple of 16. Oops!

[originally from svn r990]
2001-03-10 11:03:26 +00:00
Simon Tatham
eee0a20be6 Update the text format of the public key as the comment box is edited
[originally from svn r989]
2001-03-10 10:22:18 +00:00
Simon Tatham
83affa4ed9 Complete analysis of the magic ASN.1 stuff in RSASSA signatures
[originally from svn r988]
2001-03-09 13:30:43 +00:00
Simon Tatham
630a9a628f Having introduced a new function into the SSH2 compression structure,
it would help if I implemented it in the dummy no-compression case!

[originally from svn r987]
2001-03-08 10:07:22 +00:00
Simon Tatham
a34ef3df55 Introduce the ability to distinguish remote SSH implementations by
their version strings and enable bug compatibility modes.

[originally from svn r985]
2001-03-06 10:32:28 +00:00
Simon Tatham
48c0729310 Update a couple of messages to be clearer to users who don't have
access to complete documentation (ie all of them at the moment :-)

[originally from svn r984]
2001-03-06 09:29:43 +00:00
Simon Tatham
6b58ab6ad4 Fix various trivial compiler warnings
[originally from svn r983]
2001-03-05 17:31:36 +00:00
Simon Tatham
aaeecbb4ea Make the SSH2 traffic analysis defence robust in the face of Zlib
compression. This involves introducing an option to disable Zlib
compression (that is, continue to work within the Zlib format but
output an uncompressed block) for the duration of a single packet.

[originally from svn r982]
2001-03-05 16:38:42 +00:00
Simon Tatham
a1d5dab580 Further traffic analysis defences
[originally from svn r981]
2001-03-05 10:32:36 +00:00
Simon Tatham
16f4ffe616 Implement OpenSSH's private agent forwarding extension. I believe we
now interoperate with OpenSSH/SSH2 to _exactly_ the same level as we
interoperate with SSH1. Which is pretty cool really.

[originally from svn r980]
2001-03-03 16:38:44 +00:00
Simon Tatham
1742f1cd34 Remove some stray diagnostics
[originally from svn r979]
2001-03-03 16:10:04 +00:00
Simon Tatham
de1c70a5d4 Remove a spurious \r\n from an Event Log message
[originally from svn r978]
2001-03-03 16:05:52 +00:00
Simon Tatham
245cf9c8c9 SSH2 can now use Pageant to obtain keys from
[originally from svn r977]
2001-03-03 15:56:39 +00:00
Simon Tatham
1f168926d7 Add support for the OpenSSH SSH2 agent protocol.
[originally from svn r976]
2001-03-03 15:31:35 +00:00
Simon Tatham
deccfaa3ef The authentication diagnostics in SSH2 should now be better.
Additionally, the ability to switch usernames if you mistype the
first one has been restored (although it didn't actually work
because OpenSSH didn't feel like playing; patch submitted :-).

[originally from svn r975]
2001-03-03 13:53:44 +00:00
Simon Tatham
146b5f5f6e Oops - fix silly segfault in new puttygen
[originally from svn r974]
2001-03-03 12:05:36 +00:00
Simon Tatham
28b1fc766c Preliminary support for RSA user authentication in SSH2! Most of the
error messages are currently wrong, and Pageant doesn't yet support
the new key type, and I haven't thoroughly tested that falling back
to password authentication and trying invalid keys etc all work. But
what I have here has successfully performed a public key
authentication, so it's working to at least some extent.

[originally from svn r973]
2001-03-03 11:54:34 +00:00
Simon Tatham
d894658913 More options for bignum debugging
[originally from svn r972]
2001-03-03 11:53:07 +00:00
Simon Tatham
1d4009402e Include key type in SSH2 key fingerprints, now we have more than one
[originally from svn r971]
2001-03-02 17:16:22 +00:00
Simon Tatham
ded661cd07 Argh, sshrsa.c now depends on sshsha.c so Pageant needs it :-(
[originally from svn r970]
2001-03-02 17:14:10 +00:00
Simon Tatham
97ace7d80d Added support for RSA host keys (not user keys yet)
[originally from svn r969]
2001-03-02 17:13:36 +00:00
Simon Tatham
902d0636fc Extra crash-safety in decoding a DSS signature blob
[originally from svn r968]
2001-03-02 17:13:16 +00:00
Simon Tatham
b182356f99 Support for selecting AES from the GUI. In the process, I've had to
introduce another layer of abstraction in SSH2 ciphers, such that a
single `logical cipher' (as desired by a user) can equate to more
than one `physical cipher'. This is because AES comes in several key
lengths (PuTTY will pick the highest supported by the remote end)
and several different SSH2-protocol-level names (aes*-cbc,
rijndael*-cbc, and an unofficial one rijndael-cbc@lysator.liu.se).

[originally from svn r967]
2001-03-02 13:55:23 +00:00
Simon Tatham
bf25fd405c Add AES support in SSH2. Not yet complete: there's no way to select
it in the GUI (or even in the registry).

[originally from svn r966]
2001-03-02 11:44:35 +00:00