1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-06-30 02:56:11 -05:00
Commit Graph

4698 Commits

Author SHA1 Message Date
b6c2346173 Fix uninitialised variable in two Windows event loops.
If (Msg)WaitForMultipleObjects returns WAIT_TIMEOUT, we expect 'next'
to have been initialised. This can occur without having called
run_timers(), if a toplevel callback was pending, so we can't expect
run_timers to have reliably initialised 'next'.

I'm not actually convinced this could have come up in either of the
affected programs (Windows PSFTP and Plink), due to the list of things
toplevel callbacks are currently used for, but it certainly wants
fixing anyway for the future.

Spotted by Coverity.
2014-11-22 15:25:38 +00:00
068b67d2f6 Clarify when ldisc->term may be NULL.
Namely, any ldisc that you send actual data through should have a
terminal attached, because the ldisc editing/echoing system is
designed entirely for use with a terminal. The only time you can have
an ldisc with no terminal is when it's only ever used by the backend
to report changes to the front end in edit/echo status, e.g. by Unix
Plink.

Coverity spotted an oddity in ldisc_send which after a while I decided
would never have actually caused a problem, but OTOH I agree that it
was confusing, so now hopefully it's less so.
2014-11-22 15:25:38 +00:00
2ef23bb812 Fix typo in validate_manual_hostkey().
'p += strcspn' returns p always non-NULL and sometimes pointing at \0,
as opposed to 'p = strchr' which returns p sometimes non-NULL and
never pointing at \0. Test the pointer after the call accordingly.
Thanks, Coverity.
2014-11-22 15:25:37 +00:00
a918c97dc9 Merge connection-sharing shutdown fix from pre-0.64. 2014-11-10 18:32:12 +00:00
063c438fec Shut down connshare upstream along with the SSH connection.
This ought to happen in ssh_do_close alongside the code that shuts
down other local listening things like port forwardings, for the same
obvious reason. In particular, we should get through this _before_ we
put up a modal dialog box telling the user what just went wrong with
the SSH connection, so that further sessions started while that box is
active don't try futilely to connect to the not-really-listening
zombie upstream.
2014-11-10 18:31:34 +00:00
286cd5a1d8 Merge branch 'pre-0.64'. 2014-11-09 12:41:19 +00:00
5429effd8e Free copied Conf in log_free().
Thanks to Corey Stup for pointing it out.
2014-11-09 00:54:35 +00:00
0ab2e03ef2 Merge reconfig fixes from branch 'pre-0.64'. 2014-11-09 00:12:55 +00:00
f662ff790c Disable some mid-session configs for downstreams.
Compression, encryption, and key exchange settings are all meaningless
to reconfigure in connection-sharing downstreams.
2014-11-09 00:10:46 +00:00
cda67c7c44 Disable manual host key config in mid-session.
Changing it can't have any useful effect, since we have strictly
enforced that the host key used for rekeys is the same as the first key
exchange since b8e668c.
2014-11-09 00:08:36 +00:00
8ab1433caa Merge another docs fix from 'pre-0.64'. 2014-11-08 23:38:52 +00:00
aad5f5601d Document IPv6 literal syntax for tunnels. 2014-11-08 23:37:59 +00:00
38ec5cbb6b Merge Gtk event log fix from 'pre-0.64'. 2014-11-08 22:22:49 +00:00
a45f4c2955 Fix a double-free in the Gtk event log.
It could occur some time after a line was selected in the event log
window.
2014-11-08 22:22:34 +00:00
3b4f3266d8 Merge SSH-2-only default from 'pre-0.64'. 2014-11-08 19:35:57 +00:00
5ffb20e4bf Merge misc docs improvements from branch 'pre-0.64'. 2014-11-08 19:32:42 +00:00
9090c1bb69 Discourage SSH-1 in documentation. 2014-11-08 18:38:33 +00:00
14d219e026 Cross-reference 'logical host' and host key config docs. 2014-11-08 18:38:33 +00:00
5da1d58325 Don't try SSH-1 by default. 2014-11-08 18:38:33 +00:00
55945b192c Tweak key file config docs re Pageant.
Clarify that it's not necessary to faff around with explicit key
configuration if you're using Pageant.
2014-11-08 18:38:33 +00:00
efb6aa4642 Tweak SSH protocol version refusal messages.
"required by user" will grate if the user did not configure the
behaviour (and I'm about to change the default to `2 only').
2014-11-08 18:38:33 +00:00
1b4de84e4f Rearrange SSH bug docs to match the GUI.
No change to the text.
2014-11-08 18:38:32 +00:00
1f45273655 Clarify that port forwarding is of TCP connections.
(Rather than just the generic 'network connections'.)
2014-11-08 18:38:32 +00:00
8ba3e8ce77 Refer to X11 'graphical applications'.
For people who know they need graphical applications but don't know what
X11 is.
2014-11-08 18:38:32 +00:00
dd933200d2 Correct default lines of scrollback in the docs.
The default was increased in fd266a3 (just before 0.63).
2014-11-08 18:38:32 +00:00
44a936fbb5 Merge shorter option name from 'pre-0.64'. 2014-11-04 18:38:46 +00:00
19da160e95 Use a shorter name for the channel close bug.
The old name was too long for the Windows configuration dialog, so the
last word got lost.
2014-11-04 18:35:36 +00:00
7ef8505c78 Rewrap Windows licence dialogs.
The extra contributor pushed one line past the edge.
2014-11-03 23:45:47 +00:00
ec2423b98f Remove test code from Windows Pageant.
(At least, I assume that's what it was.)
2014-11-03 23:34:13 +00:00
fb14d1e1b8 Merge MinGW surrogate build fix from pre-0.64. 2014-11-03 23:20:39 +00:00
51346a54f7 Fix definition of surrogate macros.
Define HIGH_SURROGATE_START etc even if IS_HIGH_SURROGATE is defined,
as they are used elsewhere too. This is necessary to build with recent
MinGW.
2014-11-03 23:18:10 +00:00
cdb80025b7 Factor out code for constructing lists of algorithms for SSH-2 KEXINIT. 2014-11-03 21:47:28 +00:00
bb09a3936e Fix some rogue // comments.
That's what you get for changing things at the last minute...
2014-11-03 18:41:56 +00:00
53ff0ffd55 Fix details of the Pageant and PuTTYgen GUIs for ECDSA.
Pageant's list box needs its tab stops reorganised a little for new
tendencies in string length, and also has to cope with there only
being one prefix space in the output of the new string fingerprint
function. PuTTYgen needs to squash more radio buttons on to one line.
2014-11-02 18:16:54 +00:00
880421a9af Add Christopher Staite to the list of copyright holders. 2014-11-02 18:16:54 +00:00
2bf8688355 Elliptic-curve cryptography support.
This provides support for ECDSA public keys, for both hosts and users,
and also ECDH key exchange. Supported curves are currently just the
three NIST curves required by RFC 5656.
2014-11-02 18:16:54 +00:00
7d1c30cd50 Some extra bignum functions: modsub, lshift, random_in_range. 2014-11-02 18:16:54 +00:00
66970c4258 Provide SHA-384 and SHA-512 as hashes usable in SSH KEX.
SHA-384 was previously not implemented at all, but is a trivial
adjustment to SHA-512 (different starting constants, and truncate the
output hash). Both are now exposed as 'ssh_hash' structures so that
key exchange methods can ask for them.
2014-11-02 18:16:54 +00:00
df0ac30d46 Refactoring to prepare for extra public key types.
The OpenSSH key importer and exporter were structured in the
assumption that the strong commonality of format between OpenSSH RSA
and DSA keys would persist across all key types. Moved code around so
it's now clear that this is a peculiarity of those _particular_ two
key types which will not apply to others we add alongside them.

Also, a boolean 'is_dsa' in winpgen.c has been converted into a more
sensible key type enumeration, and the individually typed key pointers
have been piled on top of each other in a union.

This is a pure refactoring change which should have no functional
effect.
2014-11-02 18:16:54 +00:00
a2b64dca47 Factor out the DSA deterministic k generator.
It's now a separate function, which you call with an identifying
string to be hashed into the generation of x. The idea is that other
DSA-like signature algorithms can reuse the same function, with a
different id string.

As a minor refinement, we now also never return k=1.
2014-11-02 18:16:54 +00:00
eac7e041f1 Add some missing invariants in bigdiv and bigmod.
The underlying function 'bigdivmod' does not ensure either of its
outputs is normalised, so its callers must do so.
2014-11-01 19:48:47 +00:00
df87cb9dfc Remove an unused variable.
As far as I can tell, it's been unused ever since it was introduced in
2001.
2014-11-01 18:43:35 +00:00
89b8e3d609 Report correct error when FormatMessage fails.
Previously, the original error code would be reported as having come
from FormatMessage.  Spotted by GCC [-Wformat-extra-args].
2014-11-01 17:43:54 +00:00
09111ea9c2 Update documentation to refer to Git rather than Subversion. 2014-11-01 17:17:57 +00:00
04caa872fe Move definition of SECURITY_WIN32 from makefiles into source.
This makes it easier for people to recompile the source in other
contexts or other makefiles.
2014-11-01 15:39:35 +00:00
32adc1a79d Fix two double-frees in ssh2_load_userkey().
We should NULL out mac after freeing it, so that the cleanup code
doesn't try to free it again; also if the final key creation fails, we
should avoid freeing ret->comment when we're going to go to that same
cleanup code which will free 'comment' which contains the same pointer.

Thanks to Christopher Staite for pointing these out.
2014-10-28 18:40:43 +00:00
bbfd5f4a7c Update the example bob command in the release checklist.
Building from a git tag requires a different command-line syntax from
a Subversion tag.
2014-10-26 08:02:35 +00:00
e134cc4236 Add a .gitignore, now this project is in git. 2014-10-25 15:44:35 +01:00
ce6c269bbc Cross-reference the description of winadj@putty.projects.tartarus.org
to its bug-compatibility mode.

[originally from svn r10287]
2014-10-21 11:33:33 +00:00
4c49e29b19 Turn mkunxarc.sh back into an ordinary sh script.
It became bash-dependent in r9229 because I used a bashism to remove
the 'r' from the front of $SVN_REV, but that's not needed any more.

[originally from svn r10281]
[r9229 == bd60f2fc5b]
2014-10-01 20:52:16 +00:00