Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/maikebing/putty

PuTTY is a free implementation of Telnet and SSH for Windows and Unix platforms, along with an xterm terminal emulator. It is written and maintained primarily by Simon Tatham.
https://github.com/maikebing/putty

Post-0.66 release checklist updates.

The one-off reminder to finish the key rollover is now done, so I can
remove it.

(cherry picked...

f53a6553a33adbd44d2a61a0c336448083ff8b5a authored almost 9 years ago by Simon Tatham <[email protected]>
Fix a segfault in parsing OpenSSH private key files.

The initial test for a line ending with "PRIVATE KEY-----" failed to
take into account the possi...

c195ff2b4f0e7cae40232ae71fe3100027a29061 authored almost 9 years ago by Simon Tatham <[email protected]>
One small post-release checklist tweak.

I spotted that I've been checking that old-style Windows Help files
were delivered with content-...

6e0146476c9887a49f1039b1ccafd59b5998895f authored almost 9 years ago by Simon Tatham <[email protected]>
More post-release checklist updates, and a new script.

I've added a few sample shell commands in the upload procedure (mostly
so that I don't have to f...

4c5ba660668228fb3ed4732712d2538dad9d1ebf authored almost 9 years ago by Simon Tatham <[email protected]>
bignum_set_bit: Don't abort if asked to clear an inaccessible bit

All those bits are clear anyway.

Bug found with the help of afl-fuzz.

(cherry picked from comm...

d03024905e50f472e55aad9924018b0dcfcdbe01 authored almost 9 years ago by Ben Harris <[email protected]>
It's a new year.

cfbe604d068ea8761eeb5da0138e4bef50dd077f authored almost 9 years ago by Jacob Nevins <[email protected]>
Fix strict-aliasing warnings in sk_tcp_peer_info.

GCC 6 emits strict-aliasing warnings here, so use the existing
sockaddr_union arrangements to av...

c026b48c537250ac03573845ff9da6fd9f45776d authored almost 9 years ago by Colin Watson <[email protected]>
Avoid -Wmisleading-indentation warnings with GCC 6.

GCC 6 warns about potentially misleading indentation, such as:

if (condition) stmt1; stmt2;...

d700c33422926dda1b4af90bf1fcd262b03cfca8 authored almost 9 years ago by Colin Watson <[email protected]>
Fix a 64-bit-cleanness error in sshcrc's generator.

Not that anyone actually needs to use that conditioned-out main(),
since it only generates the t...

9351a5bfe4b1630227581d77f1aff4ca729ab8c1 authored almost 9 years ago by Simon Tatham <[email protected]>
Remove some unused variables.

Thanks to @ch3root again for this patch.

70f641f84527fcb5a2ccbff7c8e238003ff2d2f3 authored almost 9 years ago by Simon Tatham <[email protected]>
Replace an ad-hoc buffer-clearing loop with smemclr.

Thanks to @ch3root on Twitter for spotting it, and thanks to Chris
Emerson for bothering to let ...

0f1cab3182856d799e1c7e749ce8242bc8d2d518 authored almost 9 years ago by Simon Tatham <[email protected]>
Add the new copy.but to .gitignore.

Arrgh, _another_ one I only remember seconds too late!

51465fac73742602003db2c445109a3526fad16e authored about 9 years ago by Simon Tatham <[email protected]>
Autogenerate licence text in doc subdir from LICENCE.

Now we have licence.pl, it seems to me to make very good sense to have
it generate the Halibut f...

774d37a0dc79441d6add265a0d360af3e53f8460 authored about 9 years ago by Simon Tatham <[email protected]>
Stop copying the licence text into C source code.

Now all the uses of the licence text or the short copyright notice get
it from a new header "lic...

9ddd071ec28050b3be572f25f3ae7d44e46e4039 authored about 9 years ago by Simon Tatham <[email protected]>
Use readonly edit controls in some Windows dialogs.

This makes the About and Licence boxes copy-and-pasteable, similarly
to what I've just done on U...

2eb952ca31aa13d1f6f429305fbb6f43a9a28c56 authored about 9 years ago by Simon Tatham <[email protected]>
Make some static text in GTK dialogs selectable.

I've made the licence text, the About box, and the host key dialog
into GTK selectable edit cont...

21101c7397e460933635a7bfed813864fc4f88fe authored about 9 years ago by Simon Tatham <[email protected]>
Use the proper snprintf function if compiling with VS2015.

Proper snprintf is finally supported as of the latest Visual Studio,
and has better semantics fo...

74e7629e68ecfa8f764879d5553a5801451e11bb authored about 9 years ago by Simon Tatham <[email protected]>
Add the new testbn binary to .gitignore.

One of these days I'll think of a way of not forgetting this every
time...

7ca84b4d68cb7a58302030ed0432ad5deb4b025d authored about 9 years ago by Simon Tatham <[email protected]>
Fix build breakage on Unix.

Occurred as a side effect of commit 198bca233, in which I wrote a Perl
loop of the form 'foreach...

50ea866e4c657da00ad03aaa6f2eb492978bf00e authored about 9 years ago by Simon Tatham <[email protected]>
Introduce a BUILDDIR parameter in Makefile.vc.

Now you can run a command like "nmake /f Makefile.vc BUILDDIR=foo\",
which will cause all the ge...

d3db17f3e182eb2f898e32a410afba1683afd1f4 authored about 9 years ago by Simon Tatham <[email protected]>
Put back in a missing dynamic-load wrapper on SetSecurityInfo.

We had inadvertently raised the minimum supported Windows version in
the course of restricting P...

bf3621f247937b51e983f364377bb408b4cb609b authored about 9 years ago by Simon Tatham <[email protected]>
Switch Makefile.vc to using batch-mode inference rules.

This enables it to combine the compilation of multiple source files
into a single 'cl' command w...

198bca233a86182302bd6a29fb9f9fc68c60f94c authored about 9 years ago by Simon Tatham <[email protected]>
Use nmake's inline file creation to automate .rsp files.

This is noticeably faster than a sequence of 'echo' commands, because
the file gets created all ...

7f95ebc0bf2bda1d7d71421fd1a7c3669a0e5c7a authored about 9 years ago by Simon Tatham <[email protected]>
Report the bignum word size in testbn.

I've found in the last day or two that the first thing I want to do
after any successful run of ...

a9f591eaa86d8b73602ca25d219223aa94d11618 authored about 9 years ago by Simon Tatham <[email protected]>
Promote 'testbn' to a binary built by the makefiles.

This makes it easier to compile in multiple debugging modes, or on
Windows, without having to co...

daeeca55a4ef109539dc3e67b758299cc03d35ea authored about 9 years ago by Simon Tatham <[email protected]>
Add a case to sshbn.h for 64-bit Visual Studio.

This commit fulfills the promise of the previous one: now one of the
branches of sshbn.h's big i...

84cd309295c12e7a8a3a7bc37280f8d7859b4a8b authored about 9 years ago by Simon Tatham <[email protected]>
Relegate BignumDblInt to an implementation detail of sshbn.h.

As I mentioned in the previous commit, I'm going to want PuTTY to be
able to run sensibly when c...

c2ec13c7e98a2dd0c40161e5d16284bcaf6ec62b authored about 9 years ago by Simon Tatham <[email protected]>
Rewrite the core divide function to not use DIVMOD_WORD.

DIVMOD_WORD is a portability hazard, because implementing it requires
either a way to get direct...

482b4ab872cc4987bce862c8af0de1e9bfc4c696 authored about 9 years ago by Simon Tatham <[email protected]>
Add direct tests of division/modulus to testbn.

I'm about to rewrite the division code, so it'll be useful to have a
way to test it directly, pa...

984792e9f4523eec1505e83ab17b8f377f7db43d authored about 9 years ago by Simon Tatham <[email protected]>
Fix copy-and-paste error in testbn main program.

I called a 'pow' test line 'mul' in an error message.

90c7b1562ce540d38f688492543467cc4dfa983c authored about 9 years ago by Simon Tatham <[email protected]>
Code-sign the Windows PuTTY binaries and installer.

Or, at least, potentially do so. The build script now has a slot into
which code-signing can be ...

d0e9630e1c2f880bb7cb7ae107685bd1a6d189c4 authored about 9 years ago by Simon Tatham <[email protected]>
Set "entry-text-column" on our combo boxes.

When we provide an editable text box with a drop-down list of useful
preset values, such as the ...

45d5aacbfa416d4c585539a76c5b046c8f143401 authored about 9 years ago by Simon Tatham <[email protected]>
Fix a mistaken use of a format string in logevent().

logevent() doesn't do printf-style formatting (though the logeventf
wrapper in ssh.c does), so i...

1659cf3f1455f7e3d9c97a66f90a0cfa914d1ce3 authored about 9 years ago by Simon Tatham <[email protected]>
Put ASLR and DEP flags back until the nightly build linker is new enough!

6bea4b250276c489d1d971b736e1ce173d7060c9 authored about 9 years ago by Owen Dunn <[email protected]>
Move sfree inside if.

0f5299e5a86e87068277b19c008ff5eb0f78d022 authored about 9 years ago by Owen Dunn <[email protected]>
Merge branch 'master' of ssh://tartarus.org/putty

d8fdb494515c17b4a529f99a81d20214687bf6a3 authored about 9 years ago by Owen Dunn <[email protected]>
Avoid passing -1 as an fd to uxsel_set().

I'd missed out an if statement in the Unix proxy stderr code
introduced by commit 297efff30, cau...

6c9aa9be32a44d1b2ffd02d211e6e76ec328ee76 authored about 9 years ago by Simon Tatham <[email protected]>
Document UNPROTECT define that disables tightened ACL.

21a37d287cced473c12d23581fc1a200552ad1e0 authored about 9 years ago by Owen Dunn <[email protected]>
Surround process protection with an #ifndef UNPROTECT

8b65fef55c688d8a52bd56f426e345671fab0303 authored about 9 years ago by Owen Dunn <[email protected]>
Enable DEP and ASLR flags on VC++ linker command line

/dynamicbase and /nxcompat on the VC linker command line should
enable DEP and ASLR according to...

0014ffb70c9ed234984595d6c9ca3b5c175996aa authored about 9 years ago by Owen Dunn <[email protected]>
Make our process's ACL more restrictive.

By default Windows processes have wide open ACLs which allow interference
by other processes run...

48db456801cf90369330248075b7e480252696ff authored about 9 years ago by Owen Dunn <[email protected]>
Implement align_label_left for GTK 3.[14,16).

gtk_misc_set_alignment was deprecated in GTK 3.14. But my replacement
code using gtk_label_set_x...

50d73d95dacb1f9003151f226552e38cdcbb657b authored about 9 years ago by Simon Tatham <[email protected]>
Fix a paste error in new make_handle_socket prototype.

Thanks to Colin Harrison for spotting it very quickly. No thanks to
Visual Studio for only givin...

e1c2307cdd20366cf641811444ce23fac0d1b57c authored about 9 years ago by Simon Tatham <[email protected]>
Option to log proxy setup diagnostics to the terminal.

It has three settings: on, off, and 'only until session starts'. The
idea of the last one is tha...

7c65b9c57ab1b98ec21ac217a8892131497a1d0f authored about 9 years ago by Simon Tatham <[email protected]>
Factor out the back ends' plug log functions.

I'm about to want to make a change to all those functions at once, and
since they're almost iden...

a6e76ae453e51e0ed86831e9cb1b883f3c443b2a authored about 9 years ago by Simon Tatham <[email protected]>
Fix a memory leak in uxproxy.c.

We set up a pair of bufchains for the standard input and output
exchanged with the proxy process...

bb66e9870e1d297de502767031563b8f2334cb1c authored about 9 years ago by Simon Tatham <[email protected]>
In GUI PuTTY, log standard error from local proxy commands.

On both Unix and Windows, we now redirect the local proxy command's
standard error into a third ...

297efff30350ddffbc77dd6da4269db87103789c authored about 9 years ago by Simon Tatham <[email protected]>
Log the setup of proxied network connections.

I've defined a new value for the 'int type' parameter passed to
plug_log(), which proxy sockets ...

3d4d4004e83f19310d90e6341dbf363a47382ec2 authored about 9 years ago by Simon Tatham <[email protected]>
Remove unused SSL declarations from network.h.

There was a very old plan to flesh this out into an implementation of
SSLified Telnet, back when...

42334b65b0f944f8120893a70370c34181f8b7f2 authored about 9 years ago by Simon Tatham <[email protected]>
Tell the truth about DNS lookups in the Event Log.

We've always had the back-end code unconditionally print 'Looking up
host' before calling name_l...

37cdfdcd51e03253501546f6b2fc86f90f073aaa authored about 9 years ago by Simon Tatham <[email protected]>
Move SID-getting code into a separate function so it can be shared by

make_private_security_descriptor and a new function protectprocess().

protectprocess() opens the...

aba7234bc167c8c056a9ea4f939a6dcda10e84f3 authored about 9 years ago by Owen Dunn <[email protected]>
Document 'Cannot assign requested address' error.

Often it means you tried to connect to port 0.

c4f963ebd71dd07b3c6dcade9a2a9a86a7322519 authored about 9 years ago by Jacob Nevins <[email protected]>
Convert Buildscr to use the new "do/win" mechanism.

470337d0f2591534221390f50a69f8c9f6fe0558 authored about 9 years ago by Simon Tatham <[email protected]>
Merge branch 'master' of git://git.tartarus.org/simon/putty

de5ff01aeebdb5288d7dd3f6a22e95d0d215fa4c authored about 9 years ago by MysticBoy <[email protected]>
add commad line param :

-codpage -fontname -fontsize

cc6b98af65af47e24c4cd3a574a511107bcbcf08 authored about 9 years ago by MysticBoy <[email protected]>
Big revision to CHECKLST.txt for release.pl and Mason.

Half the release checklist has changed recently, what with me
completely reworking the website a...

3e811b3dff506cef03426469fc676a519d531781 authored about 9 years ago by Simon Tatham <[email protected]>
Further release automation.

I've added extra modes to release.pl which should automate the more
tedious parts of the deploym...

f08e2de078b9122d4732a94cbbd81ca66cb87eed authored about 9 years ago by Simon Tatham <[email protected]>
Fix an out-of-bounds read in fgetline().

Forgot that a zero-length string might have come back from fgets.

Thanks to Hanno Böck for spot...

5815d6a65af992881f5462097c9320f3a4716e0c authored about 9 years ago by Simon Tatham <[email protected]>
Fix a segfault in parsing OpenSSH private key files.

The initial test for a line ending with "PRIVATE KEY-----" failed to
take into account the possi...

fa7b23ce9025daba08e86bb934fc430099792b9a authored about 9 years ago by Simon Tatham <[email protected]>
Fix potential segfaults in reading OpenSSH's ASN.1 key format.

The length coming back from ber_read_id_len might have overflowed, so
treat it as potentially ne...

5b7833cd474a24ec098654dcba8cb9509f3bf2c1 authored about 9 years ago by Simon Tatham <[email protected]>
Rationalise and document log options somewhat.

TOOLTYPE_NONNETWORK (i.e. pterm) already has "-log" (as does Unix
PuTTY), so there's no sense su...

a454399ec8d841e627d9d5e05ac977536e776754 authored about 9 years ago by Jacob Nevins <[email protected]>
Add fuzzterm to .gitignore.

222c134b5f4f5397f2a15d36813286edeb3cff5e authored about 9 years ago by Jacob Nevins <[email protected]>
Fix an SSH-breaking bug from the fuzzing merge.

When we set ssh->sc{cipher,mac} to s->sc{cipher,mac}_tobe
conditionally, we should be conditiona...

b003e5cf534235f89f4de34c8d7b61baef7fe8ea authored about 9 years ago by Simon Tatham <[email protected]>
More post-release checklist updates, and a new script.

I've added a few sample shell commands in the upload procedure (mostly
so that I don't have to f...

f3230c85457cc3d13c46e8ea91c9748dcd0054af authored about 9 years ago by Simon Tatham <[email protected]>
One small post-release checklist tweak.

I spotted that I've been checking that old-style Windows Help files
were delivered with content-...

3552f37ba5eab32247e44af96fa7a41994268159 authored about 9 years ago by Simon Tatham <[email protected]>
Make 'make install' ignore the new 'fuzzterm' binary.

It's for regression testing and fuzzing, so there's no use for it if
you're not a developer work...

f14382ccce3452a9a90c3e3eb811d30bb7d25e5c authored about 9 years ago by Simon Tatham <[email protected]>
Fix a build failure coming from the fuzzing branch.

Apparently if you maintain a branch for a long time where you only
compile with a non-default if...

fe16b577efd7f649828cfe18c1666eb2607bfa9a authored about 9 years ago by Simon Tatham <[email protected]>
Merge Ben's branch on which he's been fuzzing PuTTY.

This includes fixes arising from the fuzzing, and also changes to make
the code compile into use...

2057f7a9f8ab56bca2aa4d827758dec21a13394c authored about 9 years ago by Simon Tatham <[email protected]>
Post-0.66 release checklist updates.

The one-off reminder to finish the key rollover is now done, so I can
remove it.

503061e569af091b9c31f75e5e17c6f39a70f72f authored about 9 years ago by Simon Tatham <[email protected]>
Merge tag '0.66'

This brings in the rest of the 0.66 branch, including some changes new
on master.

Conflicts:
...

8fdeb3a95cc3d7dce5629fc22e309eb3c996f44d authored about 9 years ago by Simon Tatham <[email protected]>
Document the new session-logging command line options.

If I'm going to announce them as a feature in 0.66, it would be
embarrassing to forget to mentio...

986b8f87be4296cea2910d961eb3a4d93dc312d7 authored about 9 years ago by Simon Tatham <[email protected]>
Update version number for 0.66 release.

07af4ed100bf31b8179c38fda8ff2a8b2dc9b4a0 authored about 9 years ago by Simon Tatham <[email protected]>
Initial 'merge -s ours' from 0.66 release branch.

Everything up to here on the release branch is cherry-picks from
master anyway, and some of thei...

009ab4a20cfd685ff20b8f922068ffa6900b92c7 authored about 9 years ago by Simon Tatham <[email protected]>
PuTTYgen's default hasn't been 1024 bits since 0.63.

(cherry picked from commit 9f9d72ec58642e91b4f93ee4405a8086ee2fb2f0)

7552ddb002030c386586311ddd1d073bd1229c31 authored about 9 years ago by Jacob Nevins <[email protected]>
Fix winhandl.c's failure to ever free a foreign handle.

Handles managed by winhandl.c have a 'busy' flag, which is used to
mean two things: (a) is a sub...

98c946966b191031f4692a09147bc71d415e44c8 authored about 9 years ago by Simon Tatham <[email protected]>
Add a FAQ for 'checksum mismatch' reports.

The aim is to try to reduce the incidence of the two least helpful
classes of those reports: the...

72b659cb728b1f549c49b40d37f59b870f006fac authored about 9 years ago by Simon Tatham <[email protected]>
Emit a distinct error message when the SSH server's host key is invalid.

This also means that FUZZING can just ignore host-key verification
failure while preserving inva...

7a5cb2838fd04711a0bcfd73f24099d7e2e05bb4 authored about 9 years ago by Ben Harris <[email protected]>
fuzzterm: record characters being displayed.

6627c1ce1390ab14b16cb84ee0605e52ad91f0b5 authored about 9 years ago by Ben Harris <[email protected]>
Fix a null-pointer dereference in ecdsa_verifysig.

Bug found with the help of afl-fuzz.

12702cb17ebe3c6a79284a3d24e95df745aac5e3 authored about 9 years ago by Ben Harris <[email protected]>
fuzzterm: add some output to allow this to be used for testing.

Not very much, but it might be useful for testing that changes don't
unexpectedly break things.

9022dcd5c5b9a0bb3caa576e0ec17506e5fb0d3a authored about 9 years ago by Ben Harris <[email protected]>
Add FUZZING support to ssh.c.

This adds the "none" cipher and MAC, and also disables kex signure
verification and host-key che...

af1460d6e5044a3344aaacd15c91cfdcb58578e7 authored about 9 years ago by Ben Harris <[email protected]>
Handle packets with no type byte by returning SSH_MSG_UNIMPLEMENTED.

The previous assertion failure is obviously wrong, but RFC 4253 doesn't
explicitly declare them ...

5471539a6738484b48fb938c88dce547a3e4b299 authored about 9 years ago by Ben Harris <[email protected]>
Add FUZZING build option that disables the random number generator.

Starting up the random number generator is by far the slowest part of
plink's startup, and rando...

1d20c1b396738e66612bbdffda5dcd85b28e5267 authored about 9 years ago by Ben Harris <[email protected]>
When checking for an existing log, store the FILE * in a local variable.

It's not used outside logfopen, and leaving an invalid file pointer
lying around in the log cont...

389eb4b7e0e067ce1c425f77abc0d3d774e83c79 authored about 9 years ago by Ben Harris <[email protected]>
Add __AFL_INIT() to uxplink to allow afl-fuzz to skip some startup overhead.

b9cb75e8c5fa84f7837ea1a335381881d2227ca4 authored about 9 years ago by Ben Harris <[email protected]>
Add an explicit PROXY_FUZZ that just feeds a file into the backend.

This saves the need to fork and exec "cat", which should speed things
up. It also ensures that ...

f6b81af006cd4a9211bf97ced0fcbfb153897035 authored about 9 years ago by Ben Harris <[email protected]>
Add a -fuzznet option to Unix plink.

It just sets the proxy command to "cat %host", which is crude and slow
but seems like a good sta...

7924aa945a04f2efd5967390474771f377cfbcc3 authored about 9 years ago by Ben Harris <[email protected]>
Check the x argument to check_boundary() more carefully.

This is a minimal fix for CVE-2015-5309, and while it's probably
unnecessary now, it seems worth...

5171dcb98226332ba27c4d037367100b8564997b authored about 9 years ago by Ben Harris <[email protected]>
Fix an assertion failure when loading Ed25519 keys.

"amax == 0 || a[amax] != 0"

Essentially, when decodepoint_ed() clears the top bit of the key, i...

0629f1dfa53fe63bce41eaefd9358ea8c7227eeb authored about 9 years ago by Ben Harris <[email protected]>
Since we have bn_restore_invariant, we may as well use it more.

b94a076955cba4de8e9ad495a35abfd5506733b6 authored about 9 years ago by Ben Harris <[email protected]>
fuzzterm: Try enabling deferred implementation under afl-clang-fast

19d1ad3887feb53e7b03e46c011322353f939eb7 authored about 9 years ago by Ben Harris <[email protected]>
In get_ssh_string, don't get confused by lengths >= 0x80000000.

"confused" meaning "reading off the end of the input".

Bug found with the help of afl-fuzz.

c0e19ca19d5be1fea5bc6f75bc18c0e2c4462b64 authored about 9 years ago by Ben Harris <[email protected]>
bignum_set_bit: Don't abort if asked to clear an inaccessible bit

All those bits are clear anyway.

Bug found with the help of afl-fuzz.

4f340599029715d863b84bdfc0407f582114a23c authored about 9 years ago by Ben Harris <[email protected]>
rsa2_pubkey_bits: Cope correctly with a NULL return from rsa2_newkey()

Dereferencing it is not correct.
Bug found with the help of afl-fuzz.

7707aa24d672de5d03ae7e66fbc2fd525dc9a24d authored about 9 years ago by Ben Harris <[email protected]>
Another ecdsa_newkey crash: initialise ec->privateKey earlier.

This one might be exploitable, since without the fix, ecdsa_freekey()
tries to wipe the bignum p...

63b47ed9d504b37ac2e903715ae7bf40036473a1 authored about 9 years ago by Ben Harris <[email protected]>
ecdsa_newkey: fix a crash where the second curve name is missing or corrupt.

Bug found with the help of afl-fuzz.

f69b371bcd476a084639cddfb5cddfd3765413bc authored about 9 years ago by Ben Harris <[email protected]>
More robust control sequence parameter handling.

Parameters are now accumulated in unsigned integers and carefully checked
for overflow (which is...

e3fe709a8f6a633647088e9ed7264be5fb740426 authored about 9 years ago by Ben Harris <[email protected]>
Fuzzable terminal emulator.

1a009ab2e9d9f0baa5ff98d295d4ec7afd9ff2f9 authored about 9 years ago by Ben Harris <[email protected]>
Gratuitous colour ramps in the colour test file.

323c3c70c98072213b9aff1d04bc91e96632d260 authored about 9 years ago by Ben Harris <[email protected]>
Check the x argument to check_boundary() more carefully.

This is a minimal fix for CVE-2015-5309, and while it's probably
unnecessary now, it seems worth...

5936c55c7f2d44f61c07bac36f3fb4e21872d320 authored about 9 years ago by Ben Harris <[email protected]>