1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-09 17:38:00 +00:00
Commit Graph

209 Commits

Author SHA1 Message Date
Simon Tatham
f26b7aa0d3 Created new data types Filename' and FontSpec', intended to be
opaque to all platform-independent modules and only handled within
per-platform code. `Filename' is there because the Mac has a magic
way to store filenames (though currently this checkin doesn't
support it!); `FontSpec' is there so that all the auxiliary stuff
such as font height and charset and so on which is needed under
Windows but not Unix can be kept where it belongs, and so that I can
have a hope in hell of dealing with a font chooser in the forthcoming
cross-platform config box code, and best of all it gets the horrid
font height wart out of settings.c and into the Windows code where
it should be.
The Mac part of this checkin is a bunch of random guesses which will
probably not quite compile, but which look roughly right to me.
Sorry if I screwed it up, Ben :-)

[originally from svn r2765]
2003-02-01 12:54:40 +00:00
Jacob Nevins
01b8739894 Further cosmetic tweaks to file-selection boxes per observed conventions
on Windows:
 - Change "AllFiles" to "All Files (*.*)"
 - Extensions in lower case

[originally from svn r2748]
2003-01-29 16:39:18 +00:00
Jacob Nevins
57610f8580 Steven Shockley points out that the .PPK extension is far from obvious to
users. Update the file selection dialogs to mention it per the usual Windows
convention, and also sprinkle references to it throughout the docs. I've
also scattered hints that most tools need PuTTY's native format; perhaps this
will reduce the frequency with which FAQ A.1.2 trips people up.

[originally from svn r2625]
2003-01-16 15:43:18 +00:00
Simon Tatham
7c95ea19c8 Robustness fixes for KEXINIT handling and others. In particular, I've
created a self-mallocing variant of sprintf, to obviate any future
need for paranoid %.100s type stuff in format strings.

[originally from svn r2199]
2002-11-07 19:49:03 +00:00
Simon Tatham
4756c15fc9 Yet more global-removal. The static variables in logging.c are now
absent, and also (I think) all the frontend request functions (such
as request_resize) take a context pointer, so that multiple windows
can be handled sensibly. I wouldn't swear to this, but I _think_
that only leaves the Unicode stuff as the last stubborn holdout.

[originally from svn r2147]
2002-10-26 12:58:13 +00:00
Simon Tatham
6d0e9b205d First phase of porting. pterm now compiles and runs under Linux+gtk.
The current pty.c backend is temporarily a loopback device for
terminal emulator testing, the display handling is only just enough
to show that terminal.c is functioning, the keyboard handling is
laughable, and most features are absent. Next step: bring output and
input up to a plausibly working state, and put a real pty on the
back to create a vaguely usable prototype. Oh, and a scrollbar would
be nice too.
In _theory_ the Windows builds should still work fine after this...

[originally from svn r2010]
2002-10-09 18:09:42 +00:00
Simon Tatham
b2c7474747 Any application using non-modal dialogs must use IsDialogMessage in
its main message loop, otherwise keyboard accelerators will not work
in the dialogs. I MUST NOT FORGET THIS AGAIN.

[originally from svn r1981]
2002-09-26 18:01:21 +00:00
Simon Tatham
77475c7cdd If the user asks for the Pageant key list window and it's already
present, bring it to the front.

[originally from svn r1980]
2002-09-26 17:57:44 +00:00
Simon Tatham
8eae9c513a Add a missing space in an error message.
[originally from svn r1975]
2002-09-24 18:44:29 +00:00
Simon Tatham
437d740fb3 Pageant's command line handling now uses my new split_into_argv()
function, because it's silly to have two (and because the old one
was not the same as the new one, violating the Principle of Least
Surprise).

[originally from svn r1811]
2002-08-06 17:57:37 +00:00
Simon Tatham
afbd7779e4 Now that we've decided on a file extension for private key files
(.PPK), make it the default in all the private-key file dialogs.

[originally from svn r1808]
2002-08-06 17:27:18 +00:00
Simon Tatham
8c3a0eb50b Improved error messages if you use the wrong key type: you should
now be told that the key is the wrong type, _and_ what type it is,
rather than being given a blanket `unable to read key file' message.

[originally from svn r1662]
2002-05-11 12:13:42 +00:00
Simon Tatham
edd1ab5701 Dominique Faure's patch (slightly modified) to implement the PuTTY
saved-sessions menu in Pageant. Disabled if it can't find the PuTTY
binary on startup (just like the help features are disabled if it
can't find the help file).

[originally from svn r1606]
2002-03-27 20:30:57 +00:00
Simon Tatham
dac0d45699 Ensure our network layer is properly cleaned up before PuTTY exits.
Specifically, we explicitly closesocket() all open sockets, which
appears to be necessary since otherwise Windows sends RST rather
than FIN. I'm _sure_ that's a Windows bug, but there we go.

[originally from svn r1574]
2002-03-06 20:13:22 +00:00
Simon Tatham
cf356a9a5f Pageant is now able to avoid asking for the passphrase when asked to
load a key that is already loaded. This makes command lines such as
`pageant mykey -c mycommand' almost infinitely more useful.

[originally from svn r1522]
2001-12-30 15:58:17 +00:00
Simon Tatham
e5764eb695 Add help support to Pageant. (For the primary - non-context - help,
we just invoke the same help file and jump to the Pageant chapter.
It would be nice to be able to bring up the contents box with the
Pageant chapter expanded, but I don't think WinHelp() allows us to
request this.)

[originally from svn r1471]
2001-12-11 18:48:29 +00:00
Simon Tatham
3c24104a7d RDB's patch to allow the `-c' option to Pageant to take a command
_with arguments_. Duh, should have thought of that myself.

[originally from svn r1467]
2001-12-10 17:50:03 +00:00
Simon Tatham
51bd9e8128 Andrew Francis's Pageant updates: you can now multi-select key files
to add and keys to remove (in the open-file dialog and the key list
box respectively), and passphrases are cached during the process of
adding several keys at once (in case two of the keys have the same
passphrase).

[originally from svn r1466]
2001-12-10 17:40:14 +00:00
Simon Tatham
6608016fc2 INCOMPATIBLE CHANGE to the SSH2 private key file format. There is
now a passphrase-keyed MAC covering _all_ important data in the
file, including the public blob and the key comment. Should
conclusively scupper any attacks based on nobbling the key file in
an attempt to sucker the machine that decrypts it. MACing the
comment field also protects against a key-substitution attack (if
someone's worked out a way past our DSA protections and can extract
the private key from a signature, swapping key files and
substituting comments might just enable them to get the signature
they need to do this. Paranoid, but might as well).

[originally from svn r1413]
2001-11-25 14:31:46 +00:00
Simon Tatham
89d13dbe29 Tidy up a comment.
[originally from svn r1300]
2001-09-25 20:07:12 +00:00
Simon Tatham
988ef91d5f John Sullivan's patch to recreate the Pageant systray icon if
Explorer crashes and restarts while Pageant is running.

[originally from svn r1299]
2001-09-25 20:05:06 +00:00
Simon Tatham
d345ebc2a5 Add support for DSA authentication in SSH2, following clever ideas
on how to get round the problem of generating a good k.

[originally from svn r1284]
2001-09-22 20:52:21 +00:00
Simon Tatham
97a2c907db RDB points out that when you memset a newly allocated structure to
zero, covering the size of the _structure_ rather than the size of
the pointer to it might help :-)

[originally from svn r1245]
2001-09-07 22:52:51 +00:00
Simon Tatham
5c72d5adc5 Fix externally added SSH1 keys in Pageant. I have no idea how this
code _ever_ worked before! But it's been like this for four months
and nobody has noticed, including me. That's quite spooky.

[originally from svn r1219]
2001-08-28 08:36:27 +00:00
Simon Tatham
ea27f048f9 Fix various small compiler warnings, mostly unused local variables
[originally from svn r1218]
2001-08-28 08:08:43 +00:00
Simon Tatham
3bc9118bc4 Prevent recursive weirdnesses happening when the user selects a
system-tray menu option while a passphrase prompt is active.

[originally from svn r1170]
2001-08-04 14:59:56 +00:00
Simon Tatham
fb473cc16c Placate gcc's `-Wall' warnings.
[originally from svn r1121]
2001-05-13 14:02:28 +00:00
Simon Tatham
3730ada5ce Run entire source base through GNU indent to tidy up the varying
coding styles of the various contributors! Woohoo!

[originally from svn r1098]
2001-05-06 14:35:20 +00:00
Simon Tatham
f30937f737 Debugging improvements. Started using Dave Hinton's dmemdump
function (woohoo!), improved that function so it provides an ASCII
dump as well as hex (whee!), removed all remaining spurious \r in
debug statements (ooh!), and made enabling of packet debugging in
SSH a matter of one ifdef rather than lots (phew!).

[originally from svn r1091]
2001-04-28 17:35:18 +00:00
Simon Tatham
713679a0fa Jacob's patch to make passphrase boxes work more sanely
[originally from svn r1084]
2001-04-28 11:41:33 +00:00
Simon Tatham
3abea3d4ea Having now compiled the last few days' changes with MSVC, it's turned
up a bunch of warnings, mostly unused variables. All fixed.

[originally from svn r1058]
2001-04-17 08:24:29 +00:00
Simon Tatham
03c9b6107b Replace PuTTY's 2-3-4 tree implementation with the shiny new counted
one, in preparation for using it to speed up scrollback.

[originally from svn r1053]
2001-04-16 17:18:24 +00:00
Simon Tatham
a7f58efa85 Remove the diagnostics I checked in by mistake in the last revision.
AGAIN. I really must stop doing that.

[originally from svn r1045]
2001-04-16 11:18:15 +00:00
Simon Tatham
522f130391 Pageant interface changes. You can now do `pageant -c command' to
spawn another command after starting Pageant. Also, if Pageant is
already running, `pageant keyfile' and `pageant -c command' will do
the Right Thing, that is, add the key to the _first_ Pageant and/or
run a command and then exit. The only time you now get the `Pageant
is already running' error is if you try to start the second copy
with no arguments.
NB the affected files in this checkin are rather wide-ranging
because I renamed the not really SSH1-specific
`ssh1_bignum_bitcount' function to just `bignum_bitcount'.

[originally from svn r1044]
2001-04-16 11:16:58 +00:00
Simon Tatham
1742f1cd34 Remove some stray diagnostics
[originally from svn r979]
2001-03-03 16:10:04 +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
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
d5240d4157 Make memory management uniform: _everything_ now goes through the
smalloc() macros and thence to the safemalloc() functions in misc.c.
This should allow me to plug in a debugging allocator and track
memory leaks and segfaults and things.

[originally from svn r818]
2000-12-12 10:33:13 +00:00
Simon Tatham
384eeb3f76 Fix miscellaneous compiler warnings. Thanks to Jacob Nevins
[originally from svn r755]
2000-10-24 10:47:49 +00:00
Simon Tatham
8d0bee8629 PuTTYgen initial version. Still to do are basic user-friendliness
features (prompt for passphrase twice, prompt before overwriting a
file, check the key file was actually saved OK), testing of the
generated keys to make sure I got the file format right, and support
for a variable key size. I think what's already here is basically
sound though.

[originally from svn r715]
2000-10-19 15:43:08 +00:00
Simon Tatham
633ae5a22b Add an "Add Key" option to the systray menu in Pageant
[originally from svn r710]
2000-10-12 15:26:40 +00:00
Simon Tatham
b8967e5231 Add a compile option so that anyone who really wants to can build a
Win95-only (securityless) version of Pageant. This will refuse to
run at all under NT, so as to avoid the risk of people accidentally
running an insecure binary on a security-requiring system.

[originally from svn r688]
2000-10-09 09:10:09 +00:00
Simon Tatham
8c169b0c6d Tighten up use of "static" throughout. Module-internal things should NOT
be exported willy-nilly. It encourages people to use them.

[originally from svn r677]
2000-10-06 11:42:30 +00:00
Simon Tatham
ab68fc8a96 Local remove of first key in list wasn't working
[originally from svn r662]
2000-10-02 12:38:12 +00:00
Simon Tatham
31b58f3337 Add the About and Licence boxes to Pageant
[originally from svn r648]
2000-09-29 08:43:06 +00:00
Simon Tatham
815e2be208 Fix small compilation problem in Pageant
[originally from svn r642]
2000-09-28 08:35:20 +00:00
Simon Tatham
355cdbd5e8 Implement OpenSSH-compatible RSA key fingerprints and use them throughout
[originally from svn r637]
2000-09-26 14:26:21 +00:00
Simon Tatham
3312fd2933 Oops - free the key after removing it!
[originally from svn r636]
2000-09-26 13:31:15 +00:00
Simon Tatham
d6d53f4ae9 Remote addition and removal of keys in Pageant
[originally from svn r635]
2000-09-26 13:18:43 +00:00
Simon Tatham
99dc6ef4f7 Accelerators and wording change in Pageant systray menu
[originally from svn r634]
2000-09-26 12:54:43 +00:00
Simon Tatham
5b20c5b8ce Pageant should now not fail for lack of security APIs on 95-type platforms
[originally from svn r629]
2000-09-26 09:22:40 +00:00
Simon Tatham
1dc5147efb Pageant now detects if it is already running and refuses to start if so
[originally from svn r624]
2000-09-25 10:56:56 +00:00
Simon Tatham
603619cbfe Pageant now allows filenames with spaces on cmdline. Thanks to Brian Coogan
[originally from svn r623]
2000-09-25 10:55:00 +00:00
Simon Tatham
fa5a243407 Double-clicking on the Pageant systray icon now brings up the key list
[originally from svn r622]
2000-09-25 10:50:54 +00:00
Simon Tatham
673f2e48a7 Rationalise ordering of authentication operations. Still some work to do,
but at least pscp no longer hangs when prompting for a passphrase

[originally from svn r621]
2000-09-25 10:14:53 +00:00
Simon Tatham
0e67e1b291 Improved means of IPC between agent and PuTTY
[originally from svn r601]
2000-09-19 16:29:28 +00:00
Simon Tatham
c96384efe0 Pageant now accepts an initial key list on the command line
[originally from svn r592]
2000-09-15 10:48:42 +00:00
Simon Tatham
c366174cc2 Added Pageant, a first-attempt PuTTY authentication agent
[originally from svn r589]
2000-09-14 15:02:50 +00:00