Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
2713 check-ins using file windows/pageant.ico or pageant.ico version 219f03de17
|
2007-01-05
| ||
| 12:43 | Francois L'Archeveque spotted that the variable `winsock2_module' only exists when compiling for IPv6, so we shouldn't try assigning to it the rest of the time. check-in: a08780c4f7 user: simon tags: trunk | |
|
2007-01-01
| ||
| 15:19 | It's a new year. check-in: de6aa71b1f user: jacob tags: trunk | |
|
2006-12-31
| ||
| 09:33 | Patch inspired by one from Daniel Silverstone in Debian bug #229232: We now have an option where a remote window title query returns a well-formed response containing the empty string. This should keep stop any server-side application that was expecting a response from hanging, while not permitting the response to be influenced by an attacker. We also retain the ability to stay schtum. The existing checkbox has thus grown into a set of radio buttons. I've changed the default to the "empty string" response, even in the backward- compatibility mode of loading old settings, which is a change in behaviour; any users who want the old behaviour back will have to explicitly select it. I think this is probably the Right Thing. (The only drawback I can think of is that an attacker could still potentially use the relevant fixed strings for mischief, but we already have other, similar reports.) check-in: 793e619dd8 user: jacob tags: trunk | |
|
2006-12-30
| ||
| 17:00 | Patch from Colin Watson intended to give a clean Unix compile with GCC 4. (Since we choose to compile with -Werror, this is particularly important.) I haven't yet checked that the resulting source actually compiles cleanly with GCC 4, hence not marking `gcc4-warnings' as fixed just yet. check-in: ef14243dce user: jacob tags: trunk | |
|
2006-12-29
| ||
| 10:38 | Use va_copy() where available. This should fix a segfault in vsnprintf() on AMD 64 Linux. (This has been sitting in my checkout for ages and hasn't obviously caused any trouble -- I think I was waiting to get round to trying it with VC6, which I haven't yet. There are some notes in comments on further tweaks that could be made.) check-in: f420fa4505 user: jacob tags: trunk | |
| 08:35 | Colin Watson points out that there was no need for me to write the custom Panels container widget for the PuTTY config box, since the perfectly standard GtkNotebook does the same job. Hence, let's remove Panels completely in favour of doing it the proper way. check-in: 6231db6b35 user: simon tags: trunk | |
|
2006-12-28
| ||
| 14:56 | Add a NO_HTMLHELP option, and enable it by default in the Cygwin Makefile, since even the latest version of w32api (3.6) shows no sign of HTMLHelp support. (This touches mkfiles.pl because that's where the details of what Cygwin doesn't support are kept currently. This may be deliberate, so I haven't changed it.) check-in: fed7b51bdd user: jacob tags: trunk | |
| 09:47 | I'm not sure why I added htmlhelp.lib to the PuTTY link lines in r7000. I was probably half asleep. Actually, it's completely unnecessary to bind to it at link time, because we load it at run time in order to continue working as before on Win95. So I'm removing it again. check-in: 869dac9697 user: simon tags: trunk | |
| 04:39 | Nearly forgot: add the .CHM to the PuTTY installer. This involves making the manual shortcut in the Start menu point to one or other of the two help files depending on the version of Windows; fortunately Inno Setup has no difficulty doing that. check-in: a81b70cd1c user: simon tags: trunk | |
| 04:38 | `make mostlyclean', to remove everything directly Halibut-generated but not the CHM. It'll come in useful during the release process. check-in: 0587b1c08a user: simon tags: trunk | |
|
2006-12-24
| ||
| 10:25 | Add some CHM-related stuff to the release checklist. Don't want to forget about it when the time comes. check-in: 468f29b0f0 user: simon tags: trunk | |
|
2006-12-23
| ||
| 03:04 | After discussion with Jeroen Massar, here's a patch (mostly his) which we think fixes the vista-ipv6 problem. check-in: 7406c4f48d user: simon tags: trunk | |
|
2006-12-19
| ||
| 04:28 | Minor style tweaks for the CHM. check-in: ddecf5104c user: simon tags: trunk | |
|
2006-12-17
| ||
| 11:46 | Sort out line-endings on new file. check-in: 2a01e4927d user: jacob tags: trunk | |
| 05:16 | Initial support for HTML Help. All the ad-hoc help-file finding code and various calls to WinHelp() have been centralised into a new file winhelp.c, which in turn has been modified to detect a .CHM file as well as .HLP and select between them as appropriate. It explicitly tries to load HHCTRL.OCX and use GetProcAddress, meaning that it _should_ still work correctly on pre-HTML-Help platforms, falling gracefully back to WinHelp, but although I tested this by temporarily renaming my own HHCTRL.OCX I haven't yet been able to test it on a real HTML-Help-free platform. Also in this checkin: a new .but file and docs makefile changes to make it convenient to build the sources for a .CHM. As yet, owing to limitations of Halibut's CHM support, I'm not able to write a .CHM directly, more's the pity. check-in: e861af5aa9 user: simon tags: trunk | |
|
2006-12-09
| ||
| 09:44 | Set FD_CLOEXEC in a little convenience function that does the right thing with F_GETFD and F_SETFD. check-in: 7af697811b user: ben tags: trunk | |
|
2006-11-28
| ||
| 15:51 | Correct an embarrassingly wrong comment. check-in: 3c8ea162b2 user: simon tags: trunk | |
|
2006-11-23
| ||
| 08:32 | I've just discovered that using the saved sessions menu from Unix PuTTY causes the child process to inherit a lot of socket fds from its parent, which is a pain if one of them then ends up holding open a listening socket which the parent was using for port forwarding after the parent itself is dead. Therefore, this checkin sprinkles FD_CLOEXEC throughout the Unix platform directory wherever there looks like being a long-lived fd. check-in: 1002c29630 user: simon tags: trunk | |
|
2006-11-18
| ||
| 09:10 | Reinstate as much of the Windows font-linking behaviour as I can easily manage, by adopting a hybrid approach to Unicode text display. The old approach of simply calling ExtTextOutW provided font linking without us having to lift a finger, but didn't do the right thing when it came to bidirectional or Arabic-shaped text. Arabeyes' replacement exact_textout() supported the latter, but turned out to break the former (with no warning from the Windows API documentation, so it's not their fault). So now I've got a second wrapper layer called general_textout(), which splits the input string into substrings based on bidi character class. Any character liable to cause bidi or shaping behaviour if fed straight to ExtTextOutW is instead fed through Arabeyes' exact_textout(), but the rest is fed straight to ExtTextOutW as it used to be. The effect appears to be that font linking is restored for all characters _except_ Arabic and other bidi scripts, which means in particular that we are no longer in a state of regression over 0.57. (0.57 would have done font linking on Arabic as well, but would also have misbidied it, so we've merely exchanged one failure mode for another slightly less harmful one in that situation.) check-in: 76941fa153 user: simon tags: trunk | |
|
2006-11-15
| ||
| 17:42 | Chris Boucher spotted that after "-nc" was added (r6823), cfg->ssh_nc_host was not always initialised, which could lead to spurious attempts to open a bogus channel (typically refused: "FATAL ERROR: Server refused to open a direct-tcpip channel"). Fixed. check-in: 8472f487a9 user: jacob tags: trunk | |
| 17:12 | (Config).remote_cmd2[512] was added in r1208, but it wasn't used then and isn't now, so presumably never has been. Remove. check-in: ba05ea5d22 user: jacob tags: trunk | |
| 06:56 | publickeyfile now an RFC check-in: 81eb81326b user: jacob tags: trunk | |
| 05:48 | Link to faq-cleanup from faq-settings. check-in: 5174b633ca user: jacob tags: trunk | |
|
2006-11-08
| ||
| 15:15 | There's been an increase in people posting non-SSH PuTTY-related questions to comp.security.ssh, posting queries that are clearly about PuTTY to newsgroups without actually mentioning PuTTY, and so on. They may have been directed there by this document :( Add a futile attempt to instil a sense of etiquette. check-in: eac1e0cf0e user: jacob tags: trunk | |
|
2006-11-07
| ||
| 18:55 | Administrivia: most SSH-2 specs are no longer drafts. check-in: a5a1de44c9 user: jacob tags: trunk | |
|
2006-10-31
| ||
| 10:59 | Tiny comment fix. check-in: 2a8b9e487d user: jacob tags: trunk | |
|
2006-10-22
| ||
| 15:19 | Spotted by Tim Kosse: we were returning an incorrect path in canonify() when we couldn't get any sense out of the server. check-in: a809c336dd user: jacob tags: trunk | |
| 14:51 | Minor semantic tweak to bug-compatibility modes: make BUG_NEEDS_SSH1_PLAIN_PASSWORD do exactly what it says on the tin, independent of whether BUG_CHOKES_ON_SSH1_IGNORE is set. This is invisible in the default configuration, as all servers marked as having the second bug have the first one too, but it would allow one to manually configure PuTTY to cope with a SSH-1 server that got upset by ignore messages during authentication, but was fine with their use as keepalives. check-in: d0102515d4 user: jacob tags: trunk | |
|
2006-10-03
| ||
| 12:16 | Disable a bunch of undesirable termios flags. ICRNL, in particular, is liable to have been set on serial ports previously used as terminal devices, and definitely wants not to be set on serial ports being used for callout. check-in: b632e7b72f user: simon tags: trunk | |
|
2006-10-02
| ||
| 15:52 | IXON and IXOFF belong in _iflag_, not cflag! While I'm here, be more reliable in clearing of RTS/CTS flags. check-in: 4a236e9e9f user: simon tags: trunk | |
|
2006-09-21
| ||
| 06:48 | Fix breakage of `Restart Session' in r6802. When restarting the session, we were clearing the new session_closed flag, but failing to clear must_close_session; with that set, the session was being opened but immediately re-closed. check-in: 856b30b874 user: simon tags: trunk | |
|
2006-09-15
| ||
| 09:44 | Note that the dynamic-tunnel proxy does not support UDP, since we get asked about this quite often. check-in: 83c7b4cc04 user: jacob tags: trunk | |
|
2006-09-05
| ||
| 17:08 | CSI 3 J now clears the scrollback, as in xterm. check-in: de3c767e85 user: jacob tags: trunk | |
| 16:41 | I seem to have slightly funted Plink's display of banners etc in r6437, oops. Fixed. check-in: 93bc517218 user: jacob tags: trunk | |
| 16:39 | Slight change to password expiry UI for the benefit of Cisco servers, which are as usual slightly odd. check-in: 2887f76e0f user: jacob tags: trunk | |
|
2006-09-03
| ||
| 09:31 | Support for an alternative mechanism for displaying wide characters under X: instead of having two separate fixed-width fonts one of which is twice the width of the other, you can instead have a single font in which some characters are twice as wide as others. This is implemented very simply: if you specify a wide font, it will be used for wide characters, and if you don't then the normal font will be used for wide characters (so they'd better _be_ wide in that font, or there'll be trouble). I got this idea from Jed, whose latest version supports UTF-8 and requires a font of this type. If there are going to be X fonts like that kicking around, there will doubtless be people who want to use them. check-in: 8007266fdc user: simon tags: trunk | |
| 07:55 | Add a mini-rant to the top comment explaining why threads are required. (I just tried getting rid of them; it worked fine for serial ports, but not for anything else. The Windows I/O API sucks.) check-in: b2cd494085 user: simon tags: trunk | |
|
2006-08-29
| ||
| 16:46 | Updates for today's changes: - changes to Logging panel - breaks in serial backend (Plus, completely unrelated, an index term entry related to port forwarding which seems to have been sitting around for ages, possibly waiting for me to think about `see also' index terms in Halibut.) check-in: 8f65282e5c user: jacob tags: trunk | |
| 14:07 | New logging mode, which records the exact bytes sent over the wire in an SSH connection _in addition_ to the decrypted packets. This will hopefully come in useful for debugging wire data corruption issues: you can strace the server, enable this mode in the client, and compare the sent and received data. I'd _like_ to have this mode also log Diffie-Hellman private exponents, session IDs, encryption and MAC keys, so that the resulting log file could be used to independently verify the correctness of all cryptographic operations performed by PuTTY. However, I haven't been able to convince myself that the security implications are acceptable. (It doesn't matter that this information would permit an attacker to decrypt the session, because the _already_ decrypted session is stored alongside it in the log file. And I'm not planning, under any circumstances, to log users' private keys. But gaining access to the log file while the session was still running would permit an attacker to _hijack_ the session, and that's the iffy bit.) check-in: 5b5937160f user: simon tags: trunk | |
| 13:50 | Explicitly closing logctx on various kinds of error exit means that the log file gets fclosed properly and the critical last few messages might be recoverable from the log file more often... check-in: b802bd4ac5 user: simon tags: trunk | |
| 13:32 | The Windows HANDLE type, despite being a `void *', does not actually behave like a pointer. In particular, the right thing to set a HANDLE to to indicate that it's invalid is INVALID_HANDLE_VALUE, not NULL. Crack down on sloppy use of NULL HANDLEs across all Windows code. (There is one oddity, which is that {Create,Open}FileMapping are documented to return a NULL HANDLE instead of INVALID_HANDLE_VALUE on failure. Shrug. If MS want to be inconsistent, I suppose I have to live with it.) check-in: 8c6438590b user: simon tags: trunk | |
| 13:20 | Support for sending serial breaks, in both the Windows and Unix serial backends. check-in: 92fba70907 user: simon tags: trunk | |
| 04:18 | Inhibit the Serial configuration panel in mid-session if the session isn't a serial one. In particular, this causes pterm not to fail an assertion if you select `Change Settings'. Ahem. check-in: 0f9a8f4bb2 user: simon tags: trunk | |
|
2006-08-28
| ||
| 14:09 | Apparently MsgWaitForMultipleObjects doesn't always return the values one might expect, which means that GetMessage() was occasionally blocking the process. That appears to be the last of the annoying data loss issues, so I think the Windows serial back end actually looks vaguely reliable now. Phew. check-in: b83e5fdf72 user: simon tags: trunk | |
| 13:36 | That OVERLAPPED fix seems to have made flow control useful as well (presumably Windows's serial buffer is actually _filling up_, causing an XOFF to be sent, now that my dodgy I/O code isn't causing it to leak). So I think I'll switch the default flow control to XON/XOFF, since it actually seems to do something now. check-in: eca76f8423 user: simon tags: trunk | |
| 13:27 | Eep! Next bit flag after 1 and 2 is _4_, not 3. Perhaps it's time I stopped coding and went and sat down quietly and tried not to touch anything for a while. check-in: 8e09b64fa5 user: simon tags: trunk | |
| 13:26 | Reading 4K at a time from a serial port turns out to be a bit unfriendly in an interactive session, because at 19200 baud it takes nearly two seconds to receive that much data, and as long as the data is flowing continuously Windows waits until it has a full buffer. So here's another annoying flag in the winhandl API, which restricts reads to length 1 so that serial output shows up as it appears. (I tried this yesterday, but without the OVERLAPPED fix in r6826 it behaved very erratically. It now seems solid.) check-in: da46d6cd48 user: simon tags: trunk | |
| 13:16 | Apparently it helps for an OVERLAPPED structure to contain a valid event handle. This seems to have fixed _some_, but not all, of the curious data loss issues in the Windows serial backend. check-in: 51fdd5e6b1 user: simon tags: trunk | |
| 12:47 | Minor tweaks to -nc: - log host:port in event log - add -nc to Plink usage message check-in: 6310d3d2a4 user: jacob tags: trunk | |
| 12:41 | Missed a couple of instances of cfg_launchable(). check-in: 451f6c4481 user: simon tags: trunk | |
| 10:12 | New command-line option in Plink (and PuTTY, though it's less useful there): `plink host -nc host2:port' causes the SSH connection's main channel to be replaced with a direct-tcpip connection to the specified destination. This feature is mainly designed for use as a local proxy: setting your local proxy command to `plink %proxyhost -nc %host:%port' lets you tunnel SSH over SSH with a minimum of fuss. Works on all platforms. check-in: 3171b7e2b9 user: simon tags: trunk | |
| 09:29 | Serial back end for Unix. Due to hardware limitations (no Linux box I own has both an X display and a working serial port) I have been unable to give this the full testing it deserves; I've managed to demonstrate the basic functionality of Unix Plink talking to a serial port, but I haven't been able to test the GTK front end. I have no reason to think it will fail, but I'll be more comfortable once somebody has actually tested it. check-in: d6cb32325e user: simon tags: trunk | |
| 08:08 | ... and here's the rest of r6820. Ahem. check-in: 7f2ba0608e user: simon tags: trunk | |
| 08:08 | Because not all OSes will support the same set of serial port options, here's a slight change to the API of ser_setup_config_box() to make it filter its parity and flow control options using platform-supplied bit masks. check-in: 55bede7fcd user: simon tags: trunk | |
| 06:33 | Fix small event log bug. check-in: 8f84a68c51 user: simon tags: trunk | |
| 06:32 | Forgot to initialise serial->bufsize to zero. check-in: 13da7f5aa9 user: simon tags: trunk | |
| 06:13 | Fix line endings (svn:eol-style properties and actual CRs). check-in: a85def1d7c user: simon tags: trunk | |
| 05:35 | Support for Windows PuTTY connecting straight to a local serial port in place of making a network connection. This has involved a couple of minor infrastructure changes: - New dlg_label_change() function in the dialog.h interface, which alters the label on a control. Only used, at present, to switch the Host Name and Port boxes into Serial Line and Speed, which means that any platform not implementing serial connections (i.e. currently all but Windows) does not need to actually do anything in this function. Yet. - New small piece of infrastructure: cfg_launchable() determines whether a Config structure describes a session ready to be launched. This was previously determined by seeing if it had a non-empty host name, but it has to check the serial line as well so there's a centralised function for it. I haven't gone through all front ends and arranged for this function to be used everywhere it needs to be; so far I've only checked Windows. - Similarly, cfg_dest() returns the destination of a connection (host name or serial line) in a text format suitable for putting into messages such as `Unable to connect to %s'. check-in: d160e39029 user: simon tags: trunk | |
|
2006-08-27
| ||
| 06:55 | Now that Local proxy type exists on both Unix and Windows, document it and associated stuff. check-in: 7771df9f07 user: jacob tags: trunk | |
| 05:00 | Grow some nasty warts on the side of winhandl.c, in preparation for a serial port backend: - In order to do simultaneous reading and writing on the same HANDLE, you must enable overlapped access and pass an OVERLAPPED structure to each ReadFile and WriteFile call. This would make sense if it were an optional thing I could do if I wanted to do the reading and writing in the same thread, but making it mandatory even if I'm doing them in _different_ threads is just annoying and arbitrary. - Serial ports occasionally return length 0 from ReadFile, for no particularly good reason. Fortunately serial ports also don't have a real EOF condition to speak of, so ignoring EOFs is actually a viable response in spite of sounding utterly gross. Hence, handle_{input,output}_new() now accept a flags parameter, which includes a flag to enable the OVERLAPPED bureaucracy and a flag to cause EOFs to be ignored on input handles. The current clients of winhandl.c do not use either of these. check-in: 57c8f4b305 user: simon tags: trunk | |
| 04:53 | Remove spurious #include. check-in: 2510e22900 user: simon tags: trunk | |
| 03:34 | Call console_provide_logctx _before_ initialising the back end, so that logevent() will go to stderr in -v mode even during the back end init function. check-in: ed9c98fc34 user: simon tags: trunk | |
| 03:03 | The `socket' function in the backends is only ever checked to see if it's NULL. Since we already have one back end (uxpty) which doesn't in fact talk to a network socket, and may well have more soon, I'm replacing this TCP/IP-centric function with a nice neutral `connected' function returning a boolean. Nothing else about its semantics has currently changed. check-in: 32affe9699 user: simon tags: trunk | |
|
2006-08-26
| ||
| 05:59 | It's critically important that the local proxy process should not inherit _our_ ends of its I/O pipes! Otherwise, closing our copy of those handles does not cause it to see EOF on its stdin, because it's holding the pipe open itself. check-in: 6f9311ed1e user: simon tags: trunk | |
| 05:58 | We _can_ have handle_throttle() called on defunct handles after all, so it should just do nothing rather than failing an assertion. check-in: 4c082609c7 user: simon tags: trunk | |
| 05:20 | ProxyCommand support for Windows, using the new winhandl.c API. Seems a bit clunky when I actually try to use it - not sure why - but I think all the actual functionality is there. check-in: d173edc72d user: simon tags: trunk | |
| 05:19 | Another bug fix: always set the busy flag when telling a subthread to do something, otherwise handle_get_events will forget to tell the front end to check for that subthread finishing. This applies even when we're only setting `busy' to tell the subthread to terminate! check-in: 1ec96c6c9f user: simon tags: trunk | |
| 05:18 | Cleanups to reduce dependency on Windows SFTP tools always having a real network socket. check-in: bb3428dea2 user: simon tags: trunk | |
| 05:17 | On cleanup, PSCP and PSFTP should explicitly check that the back end is still running rather than relying on ssh_sftp_loop_iteration() to return a bogus value. check-in: 3f40f538fa user: simon tags: trunk | |
| 05:04 | Start using notify_remote_exit() in the Windows front end, in place of the previous ad-hockery which depended on the return value from select_result() and hence which will not adapt sensibly to a world in which the primary session is something local rather than a network connection. check-in: ce96560653 user: simon tags: trunk | |
| 04:21 | Return a non-zero exit code in the event of a fatal-error SSH session termination. `Close window only on clean exit' was not working properly on Unix in the absence of this: notify_remote_exit() was being called and ssh_return_exitcode was returning zero, causing gtk_main_quit() to be called, _before_ connection_fatal() happened. check-in: da0b093aaa user: simon tags: trunk | |
| 03:37 | Always initialise the `addresses' field of a SockAddr to NULL, because it gets unconditionally sfree()d in sk_addr_free(). This just bit me when running under the MSVC debugger; not sure how it hasn't bitten anyone until now! check-in: 6d715080f0 user: simon tags: trunk | |
| 03:15 | Bug fix: since the input thread does not wait for the event object until _after_ its first read, we should not start by signalling that object in order to trigger the first read. Ahem. check-in: bb6d97d9b2 user: simon tags: trunk | |
| 02:41 | Small tweak to the new handle API: provide a `privdata' field in each handle structure, set on initialisation and readable by an API call. check-in: 620f32c917 user: simon tags: trunk | |
|
2006-08-25
| ||
| 17:10 | New piece of Windows infrastructure: winhandl.c takes Plink's thread-based approach to stdin and stdout, wraps it in a halfway sensible API, and makes it a globally available service across all network tools. There is no direct functionality enhancement from this checkin: winplink.c now talks to the new API instead of doing it all internally, but does nothing different as a result. However, this should lay the groundwork for several diverse pieces of work in future: pipe-based ProxyCommand on Windows, a serial port back end, and (hopefully) a pipe-based means of communicating with Pageant, which should have sensible blocking behaviour and hence permit asynchronous agent requests and decrypt-on-demand. check-in: 2156c9bb4b user: simon tags: trunk | |
|
2006-08-15
| ||
| 17:48 | Er, ahem. Other half of r6788. :-/ check-in: 0544b4b30e user: simon tags: trunk | |
| 15:29 | Shifts left and right by 32 were tripping a gcc warning (fatal with -Werror, of course) about shifting by more than the range of a data type. They only appeared in `if' statements testing sizeof(off_t), but gcc warns even when the code is unreachable. I've removed the conditional code (the general case should still work even on 32-bit machines), and hacked each shift by 32 into a pair of shifts by 16. Note that the gcc warning is not just a helpful indication that you may be using the wrong data type; it's actually pointing out ANSI- undefined behaviour in shifting a signed integer beyond the size of its type. check-in: 3771100200 user: simon tags: trunk | |
| 07:45 | Aha! At long last I've managed to reproduce the intermittent problem I've been having with the cursor sometimes restoring to the wrong place when screen(1) terminates. The offending sequence of escape sequences goes ESC 7 (save cursor), ESC [?47h (switch to alternate screen), ESC 7 (save cursor _again_), do some stuff, ESC 8 (restore cursor), run screen session for a bit, ESC [?47l (return to main screen), ESC 8 (restore cursor). The final ESC 8 is expected to restore the cursor to where it was saved by the initial ESC 7. Translation: the ESC 7 saved cursor state is part of the state we must swap out when switching to the alternate screen. In other words, we need to track _four_ cursor positions: active and saved, on each of main and alternate screen. Previously we were tracking only three. check-in: b6448111db user: simon tags: trunk | |
|
2006-08-12
| ||
| 10:20 | Large file support for psftp and pscp on both Windows and Unix. On Unix we set _FILE_OFFSET_BITS to 64 on the compiler command line (via mkfiles.pl), and on Windows we use SetFilePointer and GetFileSize to cope with 64-bit sizes where possible. Not tested on Win9x. check-in: ec84bb61b9 user: owen tags: trunk | |
|
2006-08-05
| ||
| 08:48 | Some extra int64 functions. check-in: 7655cbbe4f user: owen tags: trunk | |
|
2006-07-07
| ||
| 15:56 | Spell out more explicitly what needs to be done with vanilla VC6, since it seems to be becoming a FAQ. check-in: 704a813ad8 user: jacob tags: trunk | |
| 09:18 | Random Unix puttygen improvements highlighted by a post to comp.security.ssh: - fix diagnostic if keyfile and '-t' both specified - add diagnostic for generating a key but discarding the private part - document '-q' option check-in: 7eabb3b6ff user: jacob tags: trunk | |
|
2006-06-20
| ||
| 16:10 | In the config dialog, clip RGB values to [0..255] rather than reducing them mod 256. Document that the RGB values can be edited, and their range. check-in: c17530c621 user: jacob tags: trunk | |
|
2006-06-17
| ||
| 08:01 | When Unix PuTTYgen gives brief usage information, it should mention "--help"! check-in: b9a8213d57 user: jacob tags: trunk | |
| 07:02 | Robert Evans spotted that bignum_decimal() failed to cope with being given a zero input. This shouldn't matter for PuTTY, as these routines are only used in PuTTYgen, to output SSH-1 format public key exponents/moduli, which should be nonzero. check-in: fced7ed12c user: jacob tags: trunk | |
|
2006-06-16
| ||
| 08:09 | Update status of our PocketPC port. check-in: 4f52be62ba user: jacob tags: trunk | |
|
2006-06-11
| ||
| 07:56 | Do not send raw mouse events in the middle of a selection operation, even if we otherwise would (for instance, if Shift is released before the mouse button being used for selection). check-in: 2e768838ff user: jacob tags: trunk | |
|
2006-06-02
| ||
| 03:46 | Lionel Fourquaux offers this very simple patch to speed up SFTP, simply by upping the packet sizes and maximum in-flight packet count. Got to be worth a try, I think! check-in: 2cb25a46b3 user: simon tags: trunk | |
|
2006-05-26
| ||
| 07:45 | Make it clearer that `psftp -b' doesn't return to the interactive prompt if the script doesn't end with an explicit `quit'. check-in: 1bc1435899 user: simon tags: trunk | |
|
2006-05-21
| ||
| 07:20 | Port r6710 from puzzles: Patch from Ben Hutchings to prevent an ugly special case in &splitline in which a line is `split' into a line ending in a backslash followed by a completely blank line. check-in: d90992e39c user: jacob tags: trunk | |
|
2006-05-17
| ||
| 07:06 | Link to new `key-formats-natively' wishlist item from appropriate FAQ. check-in: 95c74259f2 user: jacob tags: trunk | |
|
2006-05-12
| ||
| 06:02 | pty_init should put _something_ into realhost check-in: d92da8d7b9 user: owen tags: trunk | |
|
2006-04-26
| ||
| 18:01 | sbcsgen.pl was giving different results on different machines in the case where two SBCS code points mapped to a single Unicode point. Changed so that by default it favours the lower SBCS code point. On ixion, this highlighted ambiguities in CS_MAC_THAI, CS_MAC_SYMBOL, and CS_VISCII. Guessed at a preference for the first two and added "sortpriority" directives. (No idea about VISCII.) check-in: 471812fd14 user: jacob tags: trunk | |
|
2006-04-23
| ||
| 13:26 | Sprinkle some header comments in various files in an attempt to explain what they're for. check-in: 7932188e51 user: jacob tags: trunk | |
|
2006-04-16
| ||
| 06:15 | PocketPuTTY website moved. check-in: fba210a48f user: jacob tags: trunk | |
|
2006-04-13
| ||
| 16:18 | Everywhere we print an fxp_error(), try to make it clear what we were trying to do at the time. (A lot of these say just "canonify:". This isn't a nice thing to show to a user, but I don't believe canonify() will ever return failure due to a server error, so users shouldn't actually see it, and it means we have a chance of tracing it if reported.) check-in: 5196811374 user: jacob tags: trunk | |
|
2006-04-07
| ||
| 16:42 | Remove login name prompt from PSFTP. ssh.c will prompt for a login name as required, and doing so in psftp.c before we've even made a connection is incorrect wrt `bypass-ssh2-userauth'. check-in: daea38aac5 user: jacob tags: trunk | |
|
2006-03-31
| ||
| 03:26 | ECCN / FIPS - we can't be arsed. check-in: f7fda73b4a user: owen tags: trunk | |
|
2006-03-29
| ||
| 11:55 | Update size when going from maximised to full screen. check-in: 23a1c6f75e user: owen tags: trunk | |
|
2006-03-15
| ||
| 08:31 | Explicitly add linking to our website to the "asking permission for things" section. Replace the FAQ text with a summary + link to feedback.but. check-in: f4f5824aac user: jacob tags: trunk | |
|
2006-03-14
| ||
| 16:01 | Fix minor memory leak. check-in: c92727f499 user: jacob tags: trunk | |
| 05:21 | Pageant docs didn't mention that you could load keys into an existing Pageant from the command line. check-in: b338eb7806 user: jacob tags: trunk | |
|
2006-03-12
| ||
| 16:17 | Equivalent of r6583 window-border palette-change fix for Gtk. check-in: 06ec31208c user: jacob tags: trunk | |
| 13:24 | Dimitry Andric spotted that DH gex with SHA-256 was overflowing a buffer. Fixed, and added paranoia so that this shouldn't happen again. check-in: ff7555e2cd user: jacob tags: trunk | |
| 09:39 | Log the hash used for DH kex (now there's a choice). check-in: 160e173d94 user: jacob tags: trunk | |
| 08:53 | Fix inadvertent O(N^2) loop within do_paint() which I just discovered when profiling IPBT. check-in: e368f18c9a user: simon tags: trunk | |
|
2006-03-08
| ||
| 17:16 | Flesh out `-m' caveats slightly. check-in: 309de1336c user: jacob tags: trunk | |
| 12:15 | Oh, and update the docs for NetHack keypad mode too. check-in: 91b0027b9e user: simon tags: trunk | |
| 12:10 | David Damerell tells me I should be using Ctrl-hjklyubn rather than Shift-hjklyubn for batch movement in NetHack, because they have subtly different behaviour within the game and the Ctrl-moves are more useful. Unfortunately, PuTTY's NetHack keypad mode doesn't support Ctrl-moves. Therefore, it does now :-) check-in: 396c775fc5 user: simon tags: trunk | |
|
2006-02-27
| ||
| 17:55 | Fix a memory leak in key generation. check-in: 898c8db8c4 user: jacob tags: trunk | |
| 16:30 | Change XXX-REMOVE-BEFORE-RELEASE to XXX-REVIEW-BEFORE-RELEASE to allow more general changes to be queued up. check-in: 8e223dda48 user: jacob tags: trunk | |
| 16:27 | Batch of miscellaneous tweaks to the Windows installer: - Now we've fixed `win-versioninfo', choose some sensible outcomes from the installer's comparisons of binary version numbers. Also, give the installer _itself_ a matching binary version. In particular, without this change, it would not have been possible to downgrade PuTTY -- it would have silently left the "newer" files in place. Now it will make some fuss, but permit it. - Also remove descriptions from shortcuts, on the grounds that the binaries have embedded descriptions now. (Although I've not checked whether those are actually visible in the Start Menu.) - At the request of various people (e.g., PJB), add flags so that if files are in use at the time the (un)installer is run, replacement is deferred to the next restart. (The user may be prompted to restart, which isn't ideal; see comments). This is supposed to make centrally-pushed silent upgrades more robust. - Note some limitations of the installer. check-in: ae70784090 user: jacob tags: trunk | |
|
2006-02-25
| ||
| 08:13 | Alain Guibert points out that palette changes weren't causing the space between the text area and the window border to be refreshed. Fixed on Windows. Gtk still has a similar problem. check-in: e9756c0bd4 user: jacob tags: trunk | |
|
2006-02-23
| ||
| 07:38 | Do proper select-for-write on ptys. Currently, pasting a sufficiently large string into pterm in any circumstances in which it's echoed back to the terminal will cause a deadlock once the pty's write buffer fills up. check-in: f7782e75bd user: simon tags: trunk | |
|
2006-02-20
| ||
| 13:54 | Alain Guibert points out that ESC]P sequences were erroneously accepting 'G' as a hex digit. (The _first_ digit of the sequence intentionally goes up further than F, but the remaining ones shouldn't have.) check-in: 14247e5d72 user: simon tags: trunk | |
|
2006-02-19
| ||
| 16:37 | Daniel Meidlinger points out a redundant test :-) check-in: f643efedb0 user: simon tags: trunk | |
| 08:59 | Fix `restart-reset-terminal': terminal now restored to a sensible state when reusing a window to restart a session. check-in: a9fe99c1ad user: jacob tags: trunk | |
| 08:10 | Add/tweak a couple of comments. check-in: 4c1dee7ad6 user: jacob tags: trunk | |
| 06:52 | Fix up documentation/usage messages for r6572. check-in: 82ba29d738 user: jacob tags: trunk | |
| 06:05 | 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.) check-in: 312df617cd user: simon tags: trunk | |
|
2006-02-18
| ||
| 19:37 | 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. check-in: 8c998698f4 user: jacob tags: trunk | |
| 16:30 | Pointer type correction in term_clrsb(). (Harmless, as it happens.) check-in: d02651ccc3 user: jacob tags: trunk | |
|
2006-02-14
| ||
| 07:14 | Typo in r6555 spotted by Daniel Meidlinger. check-in: 43fb61a310 user: jacob tags: trunk | |
|
2006-02-13
| ||
| 16:25 | RTF pasting now includes colours and style. Say so. check-in: a6e9490e62 user: owen tags: trunk | |
| 16:18 | Preserve more attributes of text copied as RTF. Thanks to Stephen Balousek. check-in: e24538d25e user: owen tags: trunk | |
|
2006-02-11
| ||
| 13:10 | 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. check-in: 5f8792b0e9 user: jacob tags: trunk | |
| 12:29 | Failure to connect to a Unix-domain socket could cause a segfault. Fixed. check-in: 54ac07652e user: jacob tags: trunk | |
| 12:00 | 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). check-in: 2c5a04569e user: jacob tags: trunk | |
|
2006-02-10
| ||
| 14:57 | Oops. Since r6546, old "Special Commands" menus weren't being deleted from the context menu, and they tended to pile up. check-in: 963c5c5a87 user: jacob tags: trunk | |
|
2006-02-09
| ||
| 17:06 | 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. check-in: a7b8c32f79 user: jacob tags: trunk | |
|
2006-01-27
| ||
| 14:49 | 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++. check-in: 13b73ead40 user: jacob tags: trunk | |
|
2006-01-25
| ||
| 16:46 | Don't explicitly open the logfile on startup; it'll automatically be opened by logwrite() as necessary. Should fix win-askappend-multi. check-in: 5f02ab2b2a user: owen tags: trunk | |
|
2006-01-24
| ||
| 05:08 | s/PuTTY/PuTTYgen/ in two places. check-in: 571d5eb05b user: jacob tags: trunk | |
|
2006-01-11
| ||
| 17:43 | VC6 doesn't define LONG_PTR check-in: 9a3790cdaa user: owen tags: trunk | |
| 17:42 | Configurable font quality on Windows. (Together with a little bit of macro stuff to cope with the inadequacy of VC++ 6 headers.) check-in: 051f4cfea4 user: owen tags: trunk | |
|
2006-01-10
| ||
| 14:02 | Fix zero-rows-cols-crash check-in: 04df52bdb7 user: owen tags: trunk | |
|
2006-01-08
| ||
| 12:18 | It's a new year. check-in: f65373bcc5 user: jacob tags: trunk | |
|
2005-12-18
| ||
| 11:05 | Update status of this library wrt other variants. check-in: ba7f6a48ca user: jacob tags: trunk | |
| 10:57 | 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. check-in: 20a3f339c5 user: jacob tags: trunk | |
|
2005-12-16
| ||
| 10:43 | Mention compile-time directives and where they're documented. check-in: 196244c2fc user: jacob tags: trunk | |
|
2005-12-09
| ||
| 14:04 | 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. check-in: bc74216dab user: simon tags: trunk | |
|
2005-12-07
| ||
| 12:01 | 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. check-in: 0cf3aea3e9 user: jacob tags: trunk | |
|
2005-12-06
| ||
| 18:24 | Institutional failure to memset() things pointed at rather than pointers. Things should now be zeroed and memory not leaked. Spotted by Brant Thomsen. check-in: 2a7f73d55f user: jacob tags: trunk | |
| 17:18 | 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. check-in: f970409cb9 user: jacob tags: trunk | |
|
2005-12-01
| ||
| 10:41 | SSH-2 rekey bug compatibility setting wasn't being saved (but _was_ being loaded). check-in: 5af5c8f9a9 user: jacob tags: trunk | |
|
2005-11-23
| ||
| 15:26 | 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. check-in: eefc5f979e user: jacob tags: trunk | |
|
2005-11-14
| ||
| 03:41 | Missing close parenthesis. check-in: 61c0f1e69b user: jacob tags: trunk | |
|
2005-11-13
| ||
| 10:06 | 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.) check-in: 5ecfcce6b6 user: jacob tags: trunk | |
| 06:13 | Oops, used \I where I meant \i. I think this is the only instance. check-in: 6c6d33724f user: jacob tags: trunk | |
|
2005-11-09
| ||
| 17:19 | 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). check-in: eefac6dd49 user: jacob tags: trunk | |
|
2005-11-04
| ||
| 17:31 | Fix minor hiccup in SSH-1 p-k auth. check-in: b965b38836 user: jacob tags: trunk | |
| 17:21 | Placate a compiler warning introduced in r6437. (I forgot we usually compile with -Werror on Unix, oops.) check-in: 992b547918 user: jacob tags: trunk | |
| 08:49 | Fix for `ssh2-password-expiry'. Success case tested. (Much easier since r6437, and actually works to boot.) check-in: 5033091888 user: jacob tags: trunk | |
|
2005-11-02
| ||
| 17:15 | When a userpass interaction has finished, make sure the 'prompts' structure is safe for re-use. check-in: be2be716fa user: jacob tags: trunk | |
|
2005-10-31
| ||
| 16:43 | (do_ssh2_authconn_state).method is redundant since r6437; remove. Remove FIXMEs from .type assignments, as they look fine. check-in: ad1b2a4de9 user: jacob tags: trunk | |
|
2005-10-30
| ||
| 14:24 | 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.) check-in: fa1347493a user: jacob tags: trunk | |
| 13:13 | 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.) check-in: 58ea3b5986 user: jacob tags: trunk | |
| 10:28 | Fixes to make r6434 actually useful. check-in: 406df7aa52 user: jacob tags: trunk | |
| 09:16 | Allow rsakey_pubblob() to return the key comment. (like r6433 but for SSH-1) check-in: 4c5674dd5b user: jacob tags: trunk | |
| 07:42 | 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.) check-in: d7d7b6fd7d user: jacob tags: trunk | |
|
2005-10-26
| ||
| 17:18 | 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. check-in: b982e695f5 user: jacob tags: trunk | |
| 15:58 | Comment explaining back->sendok() semantics from Simon. check-in: b4c7e4df9c user: jacob tags: trunk | |
|
2005-10-13
| ||
| 17:51 | Tweak to r6392: spell "MAC" thus. check-in: bdcb94cf82 user: jacob tags: trunk | |
| 16:56 | Fix 256-colours-match-xterm, based on 256colres.pl from xterm-205. Largely untested -- may not even compile on Windows. check-in: a232015fce user: ben tags: trunk | |
| 16:51 | Make SSH_MSG_DISCONNECT reasons less scary (without removing useful content). check-in: 9ad31acae5 user: ben tags: trunk | |
|
2005-10-08
| ||
| 04:09 | Failed to call set_erase_char() after processing SCO colour sequences. check-in: adc8ae5a8d user: simon tags: trunk | |
|
2005-10-04
| ||
| 09:13 | `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. check-in: 5532c18e9c user: jacob tags: trunk | |
|
2005-10-03
| ||
| 06:38 | 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. check-in: 39c08b8213 user: simon tags: trunk | |
| 05:24 | thinko check-in: d91314ba65 user: jacob tags: trunk | |
|
2005-10-01
| ||
| 07:36 | 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.) check-in: dcf7ae3503 user: jacob tags: trunk | |
| 06:40 | A swathe of new FAQ questions, along the general theme of `will you sign something for us / give us assurances / give us indemnity'. check-in: 9777e6fa6a user: simon tags: trunk | |
|
2005-09-30
| ||
| 09:54 | Mention SSH-2 rekeys in the keepalive section. check-in: 0d7e423c6b user: jacob tags: trunk | |
|
2005-09-24
| ||
| 13:33 | 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.) check-in: 7038b14bd0 user: jacob tags: trunk | |
| 11:17 | Add DEVCPP to svn:ignore. check-in: b710d22e3a user: jacob tags: trunk | |
|
2005-09-21
| ||
| 12:09 | dlg_listbox_select() now scrolls the list box to ensure that the item it's just selected is visible. check-in: 720b8943c1 user: simon tags: trunk | |
| 09:53 | 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. check-in: 4cda7c3ac3 user: owen tags: trunk | |
|
2005-09-19
| ||
| 09:34 | Mention that sessions can be saved from "Change Settings" in using.but. check-in: 3cf3850e9e user: jacob tags: trunk | |
|
2005-09-14
| ||
| 06:00 | AIX 5.1 has <utmpx.h> but no updwtmpx(). Treat the latter as a reason to OMIT_UTMP. Reported by Mike Protts. check-in: 3a73862242 user: ben tags: trunk | |
| 05:53 | 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. check-in: 36d43f446e user: ben tags: trunk | |
|
2005-09-13
| ||
| 15:17 | 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. check-in: b6d6e37138 user: ben tags: trunk | |
| 15:08 | 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. check-in: fb2701ef6e user: ben tags: trunk | |
| 14:57 | Some hosts don't have TIOCSCTTY. Don't try to use it on them. Patch from Mike Protts. check-in: 6da243c989 user: ben tags: trunk | |
| 14:54 | A couple of places in sk_newlistener were using AF_INET6 even with NO_IPV6. Correct them. check-in: 42d139827f user: ben tags: trunk | |
| 14:24 | 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. check-in: e2a5a2ad4f user: ben tags: trunk | |
| 09:12 | Apparently the OS X port is stalled. check-in: 4aa5e07e85 user: jacob tags: trunk | |
|
2005-09-12
| ||
| 10:45 | 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. check-in: 28904047ca user: ben tags: trunk | |
|
2005-09-10
| ||
| 12:36 | Mention relationship between terminal types, keyboard sequences, and termcap/terminfo. Suggested by Joachim Durchholz. check-in: 219982d46f user: ben tags: trunk | |
| 11:19 | 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. check-in: 07e74def32 user: ben tags: trunk | |
|
2005-09-04
| ||
| 09:53 | 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. check-in: fac0751ecf user: ben tags: trunk | |
|
2005-09-03
| ||
| 12:29 | Mention xp-wont-run. check-in: 38dc422cce user: ben tags: trunk | |
| 12:03 | Now that my arcfour-fixes draft has been approved by the IESG, use the IANA-assigned names for its modes. check-in: 2269771ab3 user: ben tags: trunk | |
| 08:41 | 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. check-in: 45f5ec7b5a user: ben tags: trunk | |
|
2005-09-02
| ||
| 05:51 | Check ssh->v2_session_id_len _after_ assigning to it. check-in: 2b3bb67839 user: jacob tags: trunk | |
|
2005-08-31
| ||
| 17:32 | Don't bother compiling SHA-256 for now -- I need to think a bit before I use it. check-in: 0677815069 user: ben tags: trunk | |
| 16:48 | 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. check-in: b428aa5211 user: ben tags: trunk | |
| 15:43 | Add infrastructure for supporting multiple hashes in key exchange. Nothing very surprising here. check-in: 5e476e7efc user: ben tags: trunk | |
| 14:11 | 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. check-in: 9afc7f5e94 user: ben tags: trunk | |
| 11:14 | Explicitly note that "remote command" semantics typically involve the server closing the connection after the command has executed. check-in: 91d028877b user: jacob tags: trunk | |
|
2005-08-30
| ||
| 17:39 | 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. check-in: d49b79d098 user: ben tags: trunk | |
| 15:38 | 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. check-in: 9636ea0134 user: ben tags: trunk | |
|
2005-08-28
| ||
| 19:34 | More versions of WeOnlyDo have the rekey bug (but they've fixed it now). check-in: fb8ffeb494 user: jacob tags: trunk | |
|
2005-08-26
| ||
| 16:17 | 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. check-in: 8579417a41 user: jacob tags: trunk | |
|
2005-08-22
| ||
| 15:37 | Add support for generating project files for use with Dev-C++, contributed by Florian Gaab. check-in: 493c4ae935 user: ben tags: trunk | |
| 15:07 | 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. check-in: 6c5b1e2063 user: ben tags: trunk | |
|
2005-08-10
| ||
| 13:31 | 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.) check-in: 8b2c50dec0 user: jacob tags: trunk | |
|
2005-07-24
| ||
| 08:46 | 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. check-in: 4a58cc8686 user: ben tags: trunk | |
|
2005-07-17
| ||
| 08:37 | 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). check-in: e1741520c4 user: jacob tags: trunk | |
|
2005-07-15
| ||
| 06:47 | 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. check-in: d0c607099f user: jacob tags: trunk | |
|
2005-07-06
| ||
| 13:26 | Missing argument in MALLOC_LOG version of snrealloc() macro. check-in: 1d9695328f user: jacob tags: trunk | |
|
2005-07-05
| ||
| 16:15 | Piers Finlayson reports that "DigiSSH_2.0" chokes (in a new and exciting manner) on rekeys. Add it to the list. check-in: 1ccaca97e2 user: ben tags: trunk | |
|
2005-06-29
| ||
| 13:20 | 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). check-in: 8e13e4c6c5 user: jacob tags: trunk | |
|
2005-06-25
| ||
| 16:43 | 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. check-in: 632f55a867 user: ben tags: trunk | |
| 14:22 | Quote session name in command line example for robustness. check-in: 9aacb09159 user: ben tags: trunk | |
|
2005-06-22
| ||
| 05:00 | 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. check-in: e7afd4150b user: ben tags: trunk | |
|
2005-06-21
| ||
| 15:13 | 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. check-in: d4dea14f10 user: jacob tags: trunk | |
|
2005-06-20
| ||
| 08:56 | 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. check-in: be45b43e16 user: ben tags: trunk | |
|
2005-06-19
| ||
| 09:17 | A major purpose of PuTTY's memory-allocation functions is to succeed or die trying, so there's no need to check their return values for NULL. Spotted by Ben Rudiak-Gould. check-in: 3e02f6edcc user: ben tags: trunk | |
| 08:57 | Move comment about ECHO and LINE input modes to a more sensible position. Spotted by Ben Rudiak-Gould. check-in: da08d99cd3 user: ben tags: trunk | |
|
2005-06-14
| ||
| 18:20 | Detection of "auth-agent@openssh.com" was too liberal. Spotted by Ben Rudiak-Gould. check-in: a3dc59e09b user: jacob tags: trunk | |
| 09:48 | We should wait until the Rlogin server indicates that it's happy to receive window-size notifications before we send them. This clears up a problem where the first password entry always failed. check-in: c05a45ef27 user: jacob tags: trunk | |
|
2005-06-09
| ||
| 05:05 | "SanskritFritz" points out that digits at the start of RTF pastes were being eaten by the trailing "\f0" on the RTF preamble. The RTF spec (1.0 and 1.6) suggests that adding a space should defuse this situation and be otherwise harmless, and it works for me (Win98). check-in: 072eafc3e1 user: jacob tags: trunk | |
|
2005-06-08
| ||
| 10:14 | Double-free on mkdir error, spotted by Brian Hartsock. check-in: 9021e82fe5 user: jacob tags: trunk | |
|
2005-05-28
| ||
| 08:46 | Remove a couple of mistaken references to Telnet in comments. check-in: 28407185fe user: jacob tags: trunk | |
|
2005-05-23
| ||
| 07:41 | Miscellaneous updates: - note Visual Foo version requirements - note which things are done for you in our source snapshots - other tweaks check-in: 2dbc3b7826 user: jacob tags: trunk | |
|
2005-05-21
| ||
| 11:49 | Factor out all local SSH disconnections into a new function ssh_disconnect(), and add the ability to treat a local disconnection as "unclean" -- notably, if we can't agree any authentication methods to even try; someone was complaining that the PuTTY window by default just disappears for no apparent reason in this circumstance. Also, use appropriate disconnect codes for those SSH2_MSG_DISCONNECT messages that we do send. I don't think I've seriously broken any user-visible behaviour, but the way that connection-close distinctions are transmitted to the front-end is shaky (or so it seems to me), so there may be non-ideal changes on some platforms. check-in: e6f29ea107 user: jacob tags: trunk | |
| 10:09 | Fix documentation of NO_MANIFESTS (oops). check-in: 35009b643f user: jacob tags: trunk | |
| 09:35 | Add NO_MANIFESTS option to Windows build, as the manifests apparently cause trouble for 64-bit Windows builds. Also flag the build flags that only apply to Windows. check-in: aa0be5f249 user: jacob tags: trunk | |
| 09:16 | Use {Get,Set}WindowLongPtr() instead of {Get,Set}WindowLong() for compatibility with 64-bit Windows. Untested on 64-bit, but it doesn't appear to have broken anything on 32-bit. check-in: 15d9ec22cf user: jacob tags: trunk | |
|
2005-05-20
| ||
| 16:52 | Minor memory leak spotted by Mikhail Kruk. check-in: 5209b23aff user: jacob tags: trunk | |
|
2005-05-16
| ||
| 09:41 | connection_fatal() should be called after ssh_closing() and other accesses to `ssh', since it potentially frees it and potentially doesn't return. Only affected a couple of rare circumstances. check-in: cd4cc612f7 user: jacob tags: trunk | |
| 03:31 | Don't try and set up reconfigured port-forwardings if the connection isn't yet ready for them. Spotted by Martin Dushkov. check-in: 669d063475 user: jacob tags: trunk | |
|
2005-05-14
| ||
| 17:01 | Add experimental support for detecting BREAK on input and propagating it as TS_BRK on output. This is tested to the extent that other data survive the escaping performed by PARMRK, at least on my system. Actual passing on of BREAK is as-yet untested. check-in: 31fdd0bdc3 user: ben tags: trunk | |
|
2005-05-12
| ||
| 10:09 | Use the packet dispatch table to handle USERAUTH_BANNER messages, which should hopefully solve `drop-banner'. I haven't been able to test the failure case, but the behaviour with OpenSSH appears no worse. check-in: c9089df91e user: jacob tags: trunk | |
|
2005-05-09
| ||
| 16:01 | s/public/private/ spotted by Walter Cleverly. check-in: df8d67a25f user: jacob tags: trunk | |
| 08:27 | Make Makefile.gtk build again on Linux (assume <utmpx.h>). check-in: 298c44bd3c user: jacob tags: trunk | |
|
2005-05-08
| ||
| 06:47 | Fix what looks like a cut-and-paste error which was stopping Unix Plink building on MacOS X. check-in: dc62c29d04 user: simon tags: trunk | |
|
2005-05-06
| ||
| 05:19 | Add `install-sh' to svn:ignore check-in: fca1b751a6 user: jacob tags: trunk | |
|
2005-05-05
| ||
| 17:47 | Correct apparent misspelling of `SIOCATMARK'. check-in: 67721ff97e user: jacob tags: trunk | |
| 17:37 | Implement `bypass-ssh2-userauth', since from correspondence it sounds like there are servers which could in principle operate in this mode, although I don't know if any do in practice. (Hence, I haven't been able to test it.) check-in: a2682d011b user: jacob tags: trunk | |
|
2005-04-30
| ||
| 12:08 | Also blank X authentication data when using SSH-1, and add a comment explaining why this may not be sufficient to hide it. check-in: 56037102d7 user: ben tags: trunk | |
| 11:13 | X11 authentication data are generally sensitive, so blank them from packet logs by default. check-in: 8f27c860e7 user: ben tags: trunk | |
| 09:30 | Unlike the AES and Blowfish code, our implementations of the various DES modes of operation all took separate source and destination pointers. They were never called with those pointers different, though, so reduce them to a single pointer like everything else uses. check-in: 4b8dc4839b user: ben tags: trunk | |
| 09:26 | Fix stupid typo that probably utterly broke SSH-1 support, and caused compiles with GCC to fail. Not sure how it survived long enough to test, really. check-in: 4e40e32ee3 user: ben tags: trunk | |
|
2005-04-28
| ||
| 04:03 | Minimally document 3des-ctr and blowfish-ctr. check-in: 1e5ba103b5 user: ben tags: trunk | |
| 04:00 | Remove comment explaining why 3des-ctr is disabled, since it isn't. check-in: 74d9dcaee0 user: ben tags: trunk | |
| 03:56 | Enable blowfish-ctr by default. It's been tested and found working. Thanks to der Mouse for help with the testing. check-in: e62ce290e8 user: ben tags: trunk | |
| 03:24 | In blowfish-ctr mode, increment the counter in the correct order. Thanks to der Mouse for spotting the same error in my 3des-ctr implementation. check-in: c78d18dbc7 user: ben tags: trunk | |
| 03:21 | Fix two more stupid bugs in 3des-ctr: - We were using the first word of each block of keystream block twice and the second not at all. - We were incrementing the high-order word of the counter after every block rather than the low-order one. With those fixed, our 3des-ctr implementation interoperates with the one in Moussh. Thanks to der Mouse for his help with the testing. 3des-ctr is now enabled by default. check-in: 7b4c6bab9d user: ben tags: trunk | |
|
2005-04-27
| ||
| 16:42 | On monochrome displays, display the cursor in reverse video so that it's visible on reversed out text. This only applies to active block cursors for now. check-in: 58f5d476a6 user: ben tags: trunk | |
| 16:22 | Tiny manual CSE of previous commit. check-in: aa5d4730d1 user: ben tags: trunk | |
| 16:09 | On 1bpp displays, ignore colour attributes. This makes pterm minimally useful there, though (e.g.) switching to using reverse video for the cursor would probably also help. Displays with other silly depths (e.g. 2bpp) aren't catered for, but I suspect they're rare in the X world. check-in: cda1056254 user: ben tags: trunk | |
| 15:30 | Make palette changes use "best match" colours too. check-in: 462bcba811 user: ben tags: trunk | |
| 10:42 | Rather than checking for <sys/sockio.h>, just include it if our other attempts at finding SIOCATMARK have failed. This removes one of our Autoconf tests, which is always nice. check-in: 50cf1a835f user: ben tags: trunk | |
| 07:39 | Use the correct key order for 3des-ctr. check-in: 7e9c015fce user: ben tags: trunk | |
| 06:10 | In SSH-2 mode, PuTTY wasn't sending KEXINIT until it had received one from the server, which led to stalemate if the server did the same. PuTTY now sends KEXINIT proactively as soon as it's worked out that it's talking SSH-2. check-in: d33118fd29 user: ben tags: trunk | |
| 03:09 | mkunxarc.sh is supposed to be silent, so I'm having it discard the stderr output from mkauto.sh. (I debated discarding it within mkauto.sh itself, but decided against it.) check-in: cfbe481de8 user: simon tags: trunk | |
|
2005-04-25
| ||
| 19:03 | According to the termio(7I) on Solaris, OLCUC is overridden by OPOST, so we should send it with the SSH terminal modes too. check-in: 44c192333d user: ben tags: trunk | |
| 18:57 | Squash OPOST locally when we're not in line-editing mode, and propagate the other output flags with SSH. This means that when I log into a remote system using Plink and then run "stty -onlcr" I get the expected stair-stepping. check-in: 58f646b407 user: ben tags: trunk | |
| 18:28 | Use pututxline() in place of pututline(), since the former is standardised by X/Open and actually seems to be more common (NetBSD has it). Also use updwtmpx() rather than directly writing to the wtmpx file, though more for reasons of aesthetics than anything practical. check-in: abb9ed30fb user: ben tags: trunk | |
| 17:46 | Ask GDK to give us reasonable approximations if it can't get precisely the colours we asked it for. This means that I can run pterm on an 8-bit PseudoColor display even if I have another program running. check-in: dfe65fbf2d user: ben tags: trunk | |
| 13:51 | Check for <sys/sockio.h> and include it in uxnet.c if we find it. It's necessary on Solaris if we want to use SIOCATMARK. Using sockatmark() might be preferable, but despite being notionally standard it's missing on Solaris 9 and Mac OS X 10.3.9, whereas everyone seems to have SIOCATMARK somewhere. check-in: 373ac11e25 user: ben tags: trunk | |
| 12:21 | uxpty.c uses non-X/Open facilities (notably strsignal()), so don't define _XOPEN_SOURCE. We do still need _GNU_SOURCE in order to get grantpt() on GNU systems. This allows uxpty.c to compile on NetBSD. check-in: 43bdc0d3b5 user: ben tags: trunk | |
| 11:36 | Move generation of the "configure" script into its own script so that people who check the code out of Subversion can get it to go. check-in: e6535f2a9e user: ben tags: trunk | |
| 10:55 | Add a mechanism for using autoconf to detect the quirks of Unix systems rather than relying on the user to edit the Makefile. Makefile.gtk still works as well as it ever did, but now we get a Makefile.in alongside it. mkunxarc.sh now relies on autoconf and friends to build the configure script for the Unix source distribution. check-in: f4e8b20c96 user: ben tags: trunk | |
|
2005-04-24
| ||
| 09:43 | On some systems (NetBSD 1.6 and Solaris 9, at least), GCC doesn't understand the semantics of assert(0) and believes it can return. Add a gratuitous exit(1) to convince it that this won't happen, and hence quell a couple of warnings about variables' being used uninitialised. check-in: 99e52e867d user: ben tags: trunk | |
|
2005-04-23
| ||
| 11:22 | Now that we've got at least some SDCTR modes working (and aes256-ctr is our default preferred cipher), add code to inject SSH_MSG_IGNOREs to randomise the IV when using CBC-mode ciphers. Each cipher has a flag to indicate whether it needs this workaround, and the SSH packet output maze has gained some extra complexity to implement it. check-in: 98cafbbe9b user: ben tags: trunk | |
|
2005-04-22
| ||
| 10:47 | Stir in process ID at start. check-in: 24f22a29b4 user: jacob tags: trunk | |
|
2005-04-21
| ||
| 19:00 | Change proxy-dns `Auto' default for SOCKS5 from local DNS to remote DNS. SOCKS5 should always be able to do this, and I suspect our not doing so dates from when the SOCKS proxy types were under a single configuration option (pre-r3168). check-in: 2767d1c080 user: jacob tags: trunk | |
| 08:57 | First crack at `terminal-modes' in SSH. PuTTY now sends ERASE by default, Unix Plink sends everything sensible it can find, and it's fully configurable from the GUI. I'm not entirely sure about the precise set of modes that Unix Plink should look at; informed tweaks are welcome. Also the Mac bits are guesses (but trivial). check-in: 533d29650c user: jacob tags: trunk | |
|
2005-04-20
| ||
| 17:52 | Ifdef out the actual code supporting 3des-ctr and blowfish-ctr, since GCC now notices that it isn't used. check-in: b9f8f8776e user: ben tags: trunk | |
| 17:47 | Simon (accidentally, I think) enabled 3des-ctr and blowfish-ctr. Turn them back off again since they're still untested. check-in: 045da486d1 user: ben tags: trunk | |
| 16:29 | Minimally document our support of aes*-ctr. check-in: e9f761c95c user: ben tags: trunk | |
| 15:57 | Enable arcfour256-draft-00@putty.projects.tartarus.org, since I've now tested it against an independent implementation. check-in: e1e36d0b66 user: ben tags: trunk | |
|
2005-04-19
| ||
| 14:18 | Invent a way of specifying control characters numerically in ctrlparse(): ^<27>, ^<0x1B>, ^<033>. (This doesn't tread on any syntax that already had a non-null behaviour.) check-in: d75014453b user: jacob tags: trunk | |
| 13:58 | Pull out parsing of ^C style strings from the terminal answerback code to its own function, since I'll be wanting it for `terminal-modes'. check-in: 8baaaf38f8 user: jacob tags: trunk | |
| 08:27 | Remove "none" from the MACs we offer to support in SSH-2. (It was at the end, after the REQUIRED "hmac-sha1".) This has been present since SSH-2 support was introduced (r569). check-in: 40843350e9 user: jacob tags: trunk | |
|
2005-04-18
| ||
| 16:09 | Add ability to construct SSH-1 packets incrementally (not used yet). I've added this to support `terminal-modes', but since this unifies some SSH-1 and SSH-2 packet construction code, it saves a few hundred bytes. Bonus. check-in: 6ce70c5c20 user: jacob tags: trunk | |
| 07:21 | Add a comment describing `dummyitem' in prefslist and associated problems. check-in: 4556c394db user: jacob tags: trunk | |
| 05:01 | Recent CTR mode changes stopped OS X PuTTY from compiling, because -Werror objects at various static data items being defined but not used. Ifdef some things out to restore warning-free compilability. check-in: 3833248e32 user: simon tags: trunk | |
|
2005-04-15
| ||
| 08:11 | Index "Event Log", "system menu", and "context menu" better. check-in: b833d0f66d user: ben tags: trunk | |
|
2005-04-14
| ||
| 17:58 | Implement my experimental arcfour modes. The 256-bit version is disabled until I can test it against someone else's implementation. check-in: 3782733aa1 user: ben tags: trunk | |
|
2005-04-12
| ||
| 15:04 | Unify GET_32BIT()/PUT_32BIT() et al from numerous source files into misc.h. I've done a bit of testing (not exhaustive), and I don't _think_ I've broken anything... check-in: a434996c3e user: jacob tags: trunk | |
|
2005-04-11
| ||
| 12:37 | Comment: change "window.c" to "the front end" check-in: b50106acc1 user: jacob tags: trunk | |
| 11:24 | Factor out the code to read and write the Environment and PortForwardings mappings into two new functions. check-in: 6f46b8e06b user: jacob tags: trunk | |
| 11:23 | Retire winctrls.c:multiedit() in favour of a new simpler function for a single full-width edit box. multiedit()'s extra functionality has been superseded by the "columns" mechanism, and it didn't allow an edit box to be created with no label. Also add no-label capability to a couple of other controls. check-in: 5b60777159 user: jacob tags: trunk | |
|
2005-04-09
| ||
| 18:02 | Add WS_VSCROLL style to drop-down non-combo boxes, to add a scroll bar if needed. (Doesn't affect the appearance of any existing controls.) check-in: 1fdf9bd382 user: jacob tags: trunk | |
|
2005-04-07
| ||
| 17:33 | Tone down canonical-name resolution when using getaddrinfo(). Previously we were doing a forward+reverse lookup, which seems above and beyond the call of duty, especially given that getaddrinfo() can be persuaded to return a canonical name (this is what unix/uxnet.c does). Unfortunately, I'm unable to test this at all as Win98 doesn't have getaddrinfo(); hopefully I'll be able to find a mug with a modern version of Windows to check it's not completely broken. I think the effects of this are mostly cosmetic -- the canonical name is used for window titles (and some people have been annoyed at the new behaviour), other displays, and probably also for proxy exclusions. check-in: 3cce74bf22 user: jacob tags: trunk | |
| 07:38 | I always get a lot of personal mail about PuTTY when I send out a release announcement, because people reply directly to the putty-announce mail. I should remember to set a Reply-To header next time. check-in: 91d83f7b9a user: simon tags: trunk | |
| 07:00 | Oops, forgot to credit Ahmad Khalifa of arabeyes.org for the bidi/shaping work. check-in: 91dfa430a2 user: jacob tags: trunk | |
|
2005-04-06
| ||
| 20:42 | Add keyboard accelerators for IPv4/IPv6 selections options. (Also for `window_border'.) check-in: 71eb9cf248 user: jacob tags: trunk | |
| 20:36 | If a new session was saved from Change Settings, a side-effect on Windows was that the global `sesslist' got out of sync with the saved-sessions submenu, causing the latter to launch the wrong sessions. Also, Change Settings wasn't getting a fresh session list, so if the set of sessions had changed since session startup it wouldn't reflect that (at least until a session was saved). Fixed (on all platforms). Therefore, since the global sesslist didn't seem to be useful, I've got rid of it; config.c creates one as needed, as do the frontends. (Not tried compiling Mac changes.) Also, we now build the saved-sessions submenu on demand on Windows and Unix. (This should probably also be done on the Mac.) check-in: 11a4164f51 user: jacob tags: trunk | |
| 20:32 | In get_sesslist(), when freeing, set freed members to NULL on general principles. check-in: 249f1326fc user: jacob tags: trunk | |
| 18:40 | Remove support for the "rijndael256-cbc", "rijndael192-cbc", and "rijndael128-cbc" names for AES. These are in the IANA namespace, but never appeared in any secsh-transport draft, and no version of OpenSSH has supported them without also supporting the aes*-cbc names. "rijndael-cbc@lysator.liu.se" gets to live because it's in the private namespace. check-in: 7ee3abdcf4 user: ben tags: trunk | |
| 18:27 | Implement SDCTR modes, as defined in the newmodes draft. This adds aes128-ctr, aes192-ctr, and aes256-ctr. blowfish-ctr and 3des-ctr are present but disabled, since I haven't tested them yet. In addition, change the user-visible names of ciphers (as displayed in the Event Log) to include the mode name and, in Blowfish's case, the key size. check-in: d3f3f9c216 user: ben tags: trunk | |
| 17:16 | `xp-wont-run': Apparently my application-manifest trims of r5534 aren't acceptable on all versions of XP. Bah. Revert to pre-r5534 format (but keep version number as 0.0.0.0). People who've had this problem have reported putty.mft to make it go away. NB, putting these updated manifests alongside the executable (e.g. as `putty.exe.manifest') is also reported to work. check-in: 5370dde63c user: jacob tags: trunk | |
|
2005-04-05
| ||
| 14:36 | Version number and other tweakings prior to the 0.58 release. check-in: 49ffff2389 user: simon tags: trunk | |
| 13:38 | tweak wording in "pscp -ls" check-in: 151bf3ba13 user: jacob tags: trunk | |
| 13:15 | add XXX-REMOVE-BEFORE-RELEASE re uninstaller check-in: 233f1d558d user: jacob tags: trunk | |
| 13:11 | Add target to build `info' file. We probably already require a new enough version of Halibut that this isn't a problem; nevertheless, I've put it in a separate target for now. check-in: 94ca16030a user: jacob tags: trunk | |
| 13:03 | Add versionid for index. Also plumb in pgpkeys.but versionid. check-in: c03e6a193d user: jacob tags: trunk | |
| 13:01 | Index the complete PuTTY manual. This was a bit rushed, and could doubtless be improved. Also fix a couple of things I noted on the way, including: - "pscp -ls" wasn't documented - Windows XP wasn't mentioned enough check-in: d3a077fa53 user: jacob tags: trunk | |
|
2005-04-04
| ||
| 08:44 | NULL needs to be cast to void * when passed to a variadic function like execl(). Spotted by Damien Miller. check-in: eb7b985525 user: ben tags: trunk | |
|
2005-04-01
| ||
| 07:25 | #ifdef out expensive combining-character/scrollback diagnostics (for now). check-in: e1292dcaea user: jacob tags: trunk | |
| 02:46 | sk_address_is_local() was ignoring the possibility that a SockAddr might have an IPv4 address in `ai' rather than in `addresses'. Thanks to Martin Prikryl for pointing this out. check-in: 904f28216b user: simon tags: trunk | |
|
2005-03-31
| ||
| 12:52 | Add text to the troubleshooting chapter about the errors that can be caused when an active connection times out due to outgoing data exceeding its maximum number of retries, and mention that this can occur even when you didn't think you'd sent anything due to rekeys and/or keepalives. Unix generates ETIMEDOUT in this situation. Windows, it turns out after doing an actual experiment by disabling my firewall, generates ECONNABORTED! So _that's_ what it means under Windows. I wish I'd done this experiment years ago now. check-in: 045dd26b66 user: simon tags: trunk | |
| 07:45 | FAQ entry on rekeys: Jacob would like to pre-emptively try to avoid the possibility of people falling back to SSH-1 just because it gets rid of the irritating delays. check-in: 13f6a8ffb8 user: simon tags: trunk | |
| 06:25 | Beef up the `unfinished and experimental' warnings for the two Mac ports, mentioning in particular that even if you downloaded a _release_ source archive these particular ports are not considered to be of release quality. check-in: 654cd509e1 user: simon tags: trunk | |
| 03:02 | XXX-REMOVE-BEFORE-RELEASE: check docs too check-in: d7303869d2 user: jacob tags: trunk | |
|
2005-03-30
| ||
| 13:33 | Further fix for lcc-win32. The PuTTY suite now compiles fine for me using lcc-win32 v3.8 (compilation date Mar 2 2005 18:40:17) provided I pass COMPAT="-DNO_IPV6 -DNO_MULTIMON" on the command line. check-in: 77e295b6c2 user: simon tags: trunk | |
| 04:20 | faq-timeout: update for XP check-in: 17dff8e65f user: jacob tags: trunk | |
| 02:27 | <1112163342.018492.101240@f14g2000cwb.googlegroups.com> on comp.security.ssh contains a Dr Watson log which looks to me as if `unclean-close-crash' occurred due to a rekey timer going off after the session had closed. Hence, ssh2_timer() now avoids doing anything if the session is already closed, and also ssh_do_close() proactively calls expire_timer_context(). Between those I think they ought to solve the problem. check-in: a38745f290 user: simon tags: trunk | |
|
2005-03-29
| ||
| 08:24 | Small markup fixes I just noticed, mostly use of literal double quotes where \q{} would be better. check-in: 4fd797a1e1 user: simon tags: trunk | |
| 07:10 | After we receive EOF on stdin, we should clear ssh->send_ok so that we stop trying to read anything further from stdin. Otherwise we send a continuous stream of SSH2_MSG_CHANNEL_EOF. check-in: b8c79bfc5c user: simon tags: trunk | |
|
2005-03-28
| ||
| 11:48 | Render timing.c robust in the face of strangeness. The strangenesses in question vary per OS: on Windows the problem is that WM_TIMER sometimes goes off too early, so that GetTickCount() is right and the callback time is wrong, whereas on Unix the problem is that my GETTICKCOUNT implementation comes from the system clock which means it can change suddenly and non-monotonically if the sysadmin is messing about (meaning that the timing of callbacks from GTK or select timeouts is _more_ likely to be right than GETTICKCOUNT). This checkin provides band-aid workarounds for both problems, which aren't pretty but ought to at least prevent catastrophic assertion failure. check-in: 19b26a1cc7 user: simon tags: trunk | |
|
2005-03-23
| ||
| 20:22 | In fact, I'll document the wrinkle with "plink -load", rather than just wittering about it on a mailing list. check-in: f382c137f8 user: jacob tags: trunk | |
| 19:01 | Fix comment re dmemdumpl() check-in: 0d7a14b8db user: jacob tags: trunk | |
| 14:23 | Since Markus Kuhn no longer explicitly places wcwidth.c in the public domain, it'd probably be generous to list him in the copyrights. check-in: 53095c321f user: jacob tags: trunk | |
| 14:04 | `wcwidth-upgrade': upgrade to latest wcwidth.c from Markus Kuhn <http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c>. This is identified both internally and in HTTP headers as 2003-05-20, for Unicode 4.0. Only changes from upstream are to make mk_wcwidth_cjk() non-static and to #include "putty.h" for prototypes. The status of some code points has changed; see the wishlist item. We've had some feedback from the CJK and Arabic communities that upgrading is probably the right thing to do. check-in: 43aaadc6f0 user: jacob tags: trunk | |
|
2005-03-22
| ||
| 19:08 | Another fix from Hung-Te Lin; apparently in some IMEs (such as "MS NewPhonetics"), move events (arrow keys) were being doubled up, apparently because we turned both KEYDOWN and KEYUP events into new KEYDOWN events. I don't claim to understand the precise effect of this patch :( but I'm reasonably confident that it only affects IME users, and experimentally it doesn't seem to break anything obvious, so if piaip says it makes things better that's good enough for me :) check-in: b571a72780 user: jacob tags: trunk | |
| 17:25 | Fix my fix (r5539) to the `multi-changesettings-crash' fix. Ahem. check-in: 8eba346720 user: jacob tags: trunk | |
| 17:20 | Add an option to use wcwidth_cjk() instead of wcwidth(), as several people have asked for it. check-in: 196df61809 user: jacob tags: trunk | |
|
2005-03-21
| ||
| 16:20 | Hung-Te Lin spotted that the `multi-changesettings-crash' workaround for Windows would prevent a user opening Change Settings if they'd cancelled a previous Change Settings. check-in: b1e67f39ff user: jacob tags: trunk | |
| 11:43 | Mention PUTTY.RND by name check-in: 0fadae178d user: jacob tags: trunk | |
| 07:46 | Martin Trautmann spotted a bare char being passed to isspace. check-in: a7eef72fe4 user: simon tags: trunk | |
|
2005-03-20
| ||
| 19:51 | Trim application manifests as much as MS' documentation and Owen's experiments on XP allow while still having the desired effect -- this allows removal of some fibs. Also, change version number to 0.0.0.0 in preparation for `win-versioninfo' (not that we found anything that took any notice of the version number declared here). check-in: f01e04c784 user: jacob tags: trunk | |
| 19:05 | Improvement for IME font display from Hung-Te Lin. Not tested, but it appears only to affect Glenn Maynard's r1406 code from <20011006170741.A23470@zewt.org> and nothing else, so seems harmless enough. check-in: 6e9a512a1b user: jacob tags: trunk | |
| 16:28 | Add comments about default processing in DialogProc/WindowProc, since I often forget the rules. check-in: dafb82d057 user: jacob tags: trunk | |
|
2005-03-19
| ||
| 13:23 | Revert last change: Some versions of the GNU C Library (notably SUSE glibc-2.3.3-118 and Debian libc6 2.3.2.ds1-20) have clock_gettime() and CLOCK_MONOTONIC in their headers, but not in libc itself, which we can't detect easily. check-in: 938b498699 user: ben tags: trunk | |
| 13:02 | If it's available, try to use clock_gettime(CLOCK_MONOTONIC) rather than gettimeofday(), since the former shouldn't warp when the user resets the clock. check-in: fa500e0b32 user: ben tags: trunk | |
| 10:34 | Work around lcc's annoying (but, even more annoyingly, legitimate) refusal to allow comparison of function pointers. Unfortunately this still doesn't cause PuTTY to compile on my lcc installation, because the GetCharacterPlacement stuff in exact_textout() is missing from its header files. This may have been fixed in a future version (I'm using lcc-win32 version 3.8 from December 2003), but I haven't checked. check-in: c21f956e2f user: simon tags: trunk | |
|
2005-03-18
| ||
| 21:05 | More compact display for the key links/fingerprints. Still not ideal, but it'll probably do. check-in: 5c3fe3560a user: jacob tags: trunk | |
| 20:29 | Set SVN properties on udp.but the same as everything else check-in: d59b56948b user: jacob tags: trunk | |
| 20:26 | Try to make our PGP signing more useful: * All the PuTTY tools for Windows and Unix now contain the fingerprints of the Master Keys. The method for accessing them is crude but universal: a new "-pgpfp" command-line option. (Except Unix PuTTYgen, which takes "--pgpfp" just to be awkward.) * Move the key policy discussion from putty-website/keys.html to putty/doc/pgpkeys.but, and autogenerate the former from the latter. Also tweak the text somewhat and include the fingerprints of the Master Keys themselves. (I've merged the existing autogeneration scripts into a single new one; I've left the old scripts and keys.html around until such time as the webmonster reviews the changes and plumbs in the new script; he should remove the old files then.) check-in: d2a830c19a user: jacob tags: trunk | |
| 13:47 | After we thaw a frozen socket, we apparently need to restart the WSAAsyncSelect or else Windows loses read events. check-in: 0adf688a9c user: simon tags: trunk | |
| 06:58 | I believe MAC/CRC errors can be caused by network corruption, in principle. check-in: e8d9c0d3e9 user: jacob tags: trunk | |
|
2005-03-17
| ||
| 14:01 | Hung-Te Lin's fix for intermittent WM_PAINT problems. check-in: 20a99cf841 user: simon tags: trunk | |
| 13:49 | The structural reorganisation of ssh.c (r4909) caused ssh2_try_send() to no longer be run after receiving WINDOW_ADJUSTs. I believe this is likely to have been the cause of recent PSCP hanging issues. check-in: 5851365fea user: simon tags: trunk | |
|
2005-03-16
| ||
| 10:09 | faq-savedsettings: mention Default Settings check-in: 3ef0ba8cc0 user: jacob tags: trunk | |
| 07:20 | Fix `telnet-option-loop', I think. (Untested except to check it compiles, since I don't have a suitably awkward server to run it against; but Ben reviewed the patch before checkin so we can share the blame if it doesn't work.) check-in: ea494b5aa7 user: simon tags: trunk | |
|
2005-03-15
| ||
| 14:34 | Add protection against multiple Change Settings dialogues. check-in: ac3a20d53e user: owen tags: trunk | |
| 04:43 | Fix pterm-logtype-crash check-in: 520fa30de8 user: owen tags: trunk | |
|
2005-03-13
| ||
| 19:56 | Consistent indenting in option specs check-in: fe0ee76180 user: jacob tags: trunk | |
|
2005-03-11
| ||
| 15:05 | punctuation nit check-in: 89b2c3083f user: jacob tags: trunk | |
| 09:52 | Retire MINGW32_FIX. It was a fix for a blatant bug in MinGW's windres, which was fixed in CVS in 2000 (I think); and we now depend on MinGW much more recent than that for various other reasons. I've tested with my current MinGW (around 2.0.0 vintage) and the original symptoms (dodgy characters in edit boxes) don't appear to show up. check-in: f429068388 user: jacob tags: trunk | |
| 09:24 | Make it clearer which protocol version various bugs apply to. check-in: 154887e340 user: jacob tags: trunk | |
| 03:07 | Fiddle with source archive for new OS X files. check-in: ce65dcdd08 user: simon tags: trunk | |
|
2005-03-10
| ||
| 14:11 | Thanks to D H Becker for sending in an icon. I'd have liked to have written a script which would generate the various graphical components of the PuTTY icon suite at any given resolution and then used that to generate the OS X icon as well as all the others, but I can always do that later; this'll do for now. check-in: 1473d8d35b user: simon tags: trunk | |
| 11:08 | Expand "v" to "version" when discussing SSH protocol versions. check-in: ceed22ef62 user: ben tags: trunk | |
| 11:08 | When we're quoting user-interface text from PuTTY 0.51, we probably shouldn't correct its spelling of "SSH-2". check-in: 1f69612ab8 user: ben tags: trunk | |
| 11:06 | Fix an "SSH v1" that Jacob missed (because it spanned a line break). check-in: 9be63703bc user: ben tags: trunk | |
| 11:04 | Make it clear that even when using SSH 2, you only need the SSH-2 pubkey format if you're actually using the SSH-2 protocol. check-in: 906110b6a9 user: ben tags: trunk | |
| 10:36 | Consistently use a single notation to refer to SSH protocol versions, as discussed. Use Barrett and Silverman's convention of "SSH-1" for SSH protocol version 1 and "SSH-2" for protocol 2 ("SSH1"/"SSH2" refer to ssh.com implementations in this scheme). <http://www.snailbook.com/terms.html> check-in: 59a5e883d1 user: jacob tags: trunk | |
| 10:18 | Support multiple anchor name types now that Jacob has enhanced Halibut to be able to do so. check-in: 863778dc61 user: simon tags: trunk | |
| 04:07 | Protect against multiple Change Settings dialogues. We should probably also arrange to switch to an existing Change Settings if the user selects the menu item and we already have a Change Settings. check-in: 79b9658c13 user: owen tags: trunk | |
|
2005-03-08
| ||
| 17:06 | Ben Hutchings reports that new PuTTY instances created from the saved sessions menu (etc) can inherit listening sockets, and that this sometimes causes trouble. Can't reproduce any problems myself, but let's only allow inheritance when absolutely necessary -- Duplicate Session -- in which case there's already going to be trouble with two processes trying to listen on the same port. check-in: 6a0a90c90d user: jacob tags: trunk | |
| 08:20 | Miscellaneous tweaks. check-in: 0e3a67d55a user: jacob tags: trunk | |
|
2005-03-07
| ||
| 10:40 | Charlie at work points out that the screen FAQ contains a different - and probably better - solution to the screen-vs-alt-screen issue. Reference it and describe the fix. check-in: 022b555d74 user: simon tags: trunk | |
| 08:07 | `What commands can I type into my PuTTY session' is probably the single most frequently asked thing which isn't in the FAQ (it's in feedback.but instead), so let's add it. I'm uncertain that the people who mail us asking things like `how do I read my email' and `how do I access $database' will successfully recognise this more general question as one which includes their specific one, but it's worth a try. check-in: ef21549820 user: simon tags: trunk | |
|
2005-03-06
| ||
| 10:38 | Add notification when using the various auth methods with server-supplied prompts, to make it more obvious if a server is attempting to spoof a local passphrase prompt. I believe an alert user could have spotted this in all cases in SSH-2, although perhaps not in SSH-1. (But they'd have to have enabled TIS/CryptoCard.) check-in: 723767177f user: jacob tags: trunk | |
| 09:00 | Fix sense of test in previous checkin :) check-in: b98b0eb42e user: jacob tags: trunk | |
| 08:48 | I'm sick and tired of the persistent reports of lineptr() failing its `line != NULL' assertion, so I've replaced the assertion with a call to fatalbox() giving oodles of information. I may still not be able to reproduce it, but at least next time it happens we should see a decent amount of debugging data! check-in: 25281d58e9 user: simon tags: trunk | |
|
2005-03-05
| ||
| 12:14 | Over-enthusiastic assertions in the port forwarding code removed. Port forwardings are set up before initialising the last few details of the main shell session, so ssh->state can reasonably hold values other than SSH_STATE_SESSION and SSH_STATE_CLOSED during calls to sshfwd_*. check-in: cb0a6e9c46 user: simon tags: trunk | |
| 11:56 | Make sure we do notify_remote_exit(ssh->frontend) _before_ connection_fatal(), since the latter is entitled to destroy the backend so `ssh' may no longer be valid once it returns. For the Unix port, switch exit(0) to gtk_main_quit() in notify_remote_exit(), so that we don't exit before the subsequent connection_fatal()! check-in: 695d639fd8 user: simon tags: trunk | |
| 09:05 | Platform-independent fixes for NO_IPV6 compilation (prevent segfaults on trying to access pfd->addressfamily which doesn't exist). check-in: b4ba12b7a9 user: simon tags: trunk | |
| 09:04 | Fixes for NO_IPV6 compilation under Unix. check-in: 692140a743 user: simon tags: trunk | |
|
2005-03-03
| ||
| 19:54 | Fix potential fault where -L/-R/-D could accept a string too long for our portfwd[] array. (Not sure what would happen in this case, mind.) Also modify -L/-R/-D code to cope with IPv4/IPv6 tunnels in saved settings. check-in: 13a89da89b user: jacob tags: trunk | |
| 19:20 | rm some magic numbers in ssh_setup_portfwd() check-in: d2ef568fb3 user: jacob tags: trunk | |
| 19:02 | Fix minor imprecisions in cfg->portfwd[] bounds checking (which erred on the side of rejecting input, not buffer overflow). check-in: 88992e9df8 user: jacob tags: trunk | |
| 07:07 | Explicitly set MIN and TIME when in raw mode to request single characters with no timeout. This seems to make Plink work better on Solaris. check-in: 26d6125d5d user: ben tags: trunk | |
|
2005-03-02
| ||
| 17:33 | Draglists, implemented as up-down preference lists as in GTK. check-in: c7b9eac6fd user: owen tags: trunk | |
| 09:53 | More confusing "(BYTE *) & val" style punctuation. I blame GNU indent, although its confusion is understandable. check-in: 2674622249 user: jacob tags: trunk | |
|
2005-03-01
| ||
| 18:46 | nit: confusing punctuation check-in: edd34de4f8 user: jacob tags: trunk | |
| 18:31 | rm incorrect comment check-in: cfbbe3b7d4 user: jacob tags: trunk | |
| 17:48 | Fix off-by-one in memory management of PPK reading routine, which could cause 1-byte buffer overflow when reading .PPK files with long lines (>=128 bytes in header value -- probably only happened in practice in the comment field). check-in: ad221517bc user: jacob tags: trunk | |
| 15:38 | Close on exit. I'm not entirely happy with the distribution of this across mac_closeterm() and notify_remote_exit() but it will do for now. Also, "PuTTY (inactive)" looks strange as a Mac window title in a way it doesn't on Unix or Windows. Perhaps we should find another way of indicating that a window contains a dead session? check-in: bf0e93a2f1 user: owen tags: trunk | |
| 15:34 | Update Inno Setup script. Tested with IS 5.0.8 on Win98SE; I think there are a few things that will faze whatever we're using currently (2.0.19 or thereabouts?), but nothing desperately modern. (NB, the 0.57 putty.iss works fine with 5.0.8 and the installer is even 40k smaller.) Notable changes: - Uninstallation now runs a variant of `putty -cleanup'. The variance is only in the text displayed; the user is still prompted, and the default action is (now) "keep" in both cases. - Optionally add an icon in the Quick Launch bar. - Make desktop item optionally for all users. (not tested) - "Create a Start Menu group" now handled via IS' own mechanism. check-in: 9bde7a592f user: jacob tags: trunk | |
| 09:18 | Mention `-cleanup' caveats on multi-user systems. Mention installer in faq-cleanup. Fix indexing snafu. check-in: 78b1b62113 user: jacob tags: trunk | |
| 06:19 | VC didn't like PATH_MAX. Use MAX_PATH instead. (This macro is mentioned in MSDN's SetCurrentDirectory() documentation, although I haven't found a statement of where it's supposed to be defined.) check-in: 7c784b1894 user: jacob tags: trunk | |
|
2005-02-28
| ||
| 19:16 | Add context help to a couple of message boxes. Unfortunately the ones I wanted to get to -- "software caused connection abort" and friends -- are going to be more involved (probably requiring some cross-platform notion of help contexts), and these ones hardly seem worth the effort. Still, I've done it now. Side-effect: Pageant now uses the same `hinst' and `hwnd' globals as everything else. Tested basic functionality. check-in: ab8229cc93 user: jacob tags: trunk | |
| 18:33 | Make it clearer that `-m' is only usable with SSH. check-in: df6c8399fc user: jacob tags: trunk | |
| 18:00 | Move the MessageBox-with-help function out into winutils.c, although it's still only used for the host key popups. Side-effects: - requested_help is a winstuff.h global - Pageant now defines winstuff.h globals (Also, my previous fix to my improved host-key dialogs only got the "changed" case, not the "unknown" case. Some days I shouldn't be let near a keyboard.) check-in: 97227aaee6 user: jacob tags: trunk | |
|
2005-02-27
| ||
| 20:51 | Make things other than Pageant use request_file(), why not, although all of its funkiness is switched off so the behaviour is the same as before. check-in: baaeb6bb81 user: jacob tags: trunk | |
| 20:40 | Fix for `pageant-dirhandle': a new wrapper functions `request_file()' maintains a separate CWD for the file requester, so that when the Open File box is not open Pageant should stay where it was started. (Also some other minor cleanups in this area of Pageant.) check-in: 7496d44982 user: jacob tags: trunk | |
| 18:17 | PSFTP now needs wildcard.o, and was only getting it by luck. Make it explicit. check-in: 5d5c1a525b user: jacob tags: trunk | |
| 17:57 | Move SaneDialogBox()/SaneEndDialog() from winmisc.c to windlg.c, since they seem to be PuTTY(tel)-specific (at least at the moment). Might save a bit of space in the other binaries. check-in: 64cfacc518 user: jacob tags: trunk | |
| 17:15 | Improve Pageant's error reporting for private key load failures. check-in: c5b0d713e4 user: jacob tags: trunk | |
| 17:01 | Improvements to PuTTYgen error reporting: - will now display a reason when it fails to load a key - uses existing error return from native keys - import.c had a lot of error descriptions which weren't going anywhere; since the strings are probably taking up space in the binary, we may as well use them check-in: c5c5fb953d user: jacob tags: trunk | |
| 07:53 | Warn on close. Also warn before use. check-in: fb3994bdfe user: owen tags: trunk | |
|
2005-02-26
| ||
| 11:43 | Pull out the common compiler-specific workarounds and so on from individual resource files into windows/rcstuff.h. check-in: a7e0148dcb user: jacob tags: trunk | |
| 11:30 | Allow mkfiles.pl to put multiple verbatim sections in a Makefile, and use one of these for the MacOSX CFLAGS tweak. check-in: 8114bac791 user: jacob tags: trunk | |
| 09:50 | The comment that Private-Hash: was not allowed in DSS PuTTY-User-Key-File-1 keys was apparently incorrect; prior to r1413, it was both allowed, and generated for passphraseless keys. Remove it and associated validation so that people are able to load such keys into PuTTYgen to upgrade them, as suggested. check-in: 01e3b339bd user: jacob tags: trunk | |
| 09:13 | Fix segfault on forcible window closure. check-in: e868f0a0b5 user: simon tags: trunk | |
| 07:37 | Sort out close-on-exit, connection_fatal(), fatalbox(), and [SessionWindow dealloc] (which was required in order to avoid segfaulting when a redraw timer fired for a closed session window!). check-in: d4ced9b130 user: simon tags: trunk | |
|
2005-02-25
| ||
| 18:41 | We weren't correctly discounting "." and ".." when they came from FindFirstFile(), with hilarious consequences for recursive transfers in PSFTP. (PSCP appears to behave fine; it does its own "."/".." removal.) check-in: a539621666 user: jacob tags: trunk | |
| 15:26 | Makefile.lcc mentions version.o instead of .obj (not that it matters, probably) check-in: 5ef38b85b8 user: jacob tags: trunk | |
| 03:59 | Per Gunnar Floe spotted a reversed test in sftp_cleanup_requests(). check-in: a640094153 user: simon tags: trunk | |
|
2005-02-24
| ||
| 16:45 | Add RT_MANIFEST arguments to dependencies for Windows resource objects. check-in: 8cbeed95f5 user: jacob tags: trunk | |
| 14:28 | Some copyright dates that were missed in the Mac port. check-in: e28862c8f7 user: jacob tags: trunk | |
|
2005-02-23
| ||
| 15:19 | Support for setting some options like keepalive, oobinline, nodelay, and SO_REUSEADDR for ot_newlistener(). Also handle remote-initiated disconnections. check-in: 82fcf9c79a user: owen tags: trunk | |
| 03:25 | Fallout from my change in the semantics of cfg.remote_cmd_ptr. Spotted by Alano na Alania. check-in: 0859f5691b user: simon tags: trunk | |
|
2005-02-22
| ||
| 17:40 | A first attempt at listening sockets in Open Transport. check-in: 085e654286 user: owen tags: trunk | |
| 17:30 | Remove the two logevent calls passing NULL as the first argument. This was copied straight from winnet.c and I don't believe it's _ever_ been valid in the Unix front end. check-in: 996521bf9d user: simon tags: trunk | |
|
2005-02-21
| ||
| 17:43 | Rearrange verify_ssh_host_key() for robustness in the face of strangeness, in the same manner as windows/windlg.c (but tested this time :) check-in: 1a7f6315cd user: jacob tags: trunk | |
| 17:34 | Ahem. Fix my hostkey dialog fix so that storing the host key doesn't close the connection. check-in: dccead2ac0 user: jacob tags: trunk | |
| 12:13 | Make sure that auth->xdmseen is initialised (to NULL) even if it's not used. check-in: f576bf316d user: ben tags: trunk | |
|
2005-02-20
| ||
| 17:26 | Change "are you sure you want to close this window" default back to what it was ("yes"). Partly because it was inconsistent with gtkdlg.c, and partly because it was annoying me. check-in: dfe358ead7 user: jacob tags: trunk | |
| 17:00 | On Windows, MessageBoxIndirect() was sometimes failing to pop up the host key dialog and returning an unexpected value (0), causing everything to silently behave as if the user had said "allow this connection but don't store host key"! Initialising (MSGBOXPARAMS).hInstance seems to have cured this (although the MSDN docs seemed to indicate it wouldn't be used) -- if so, it's been broken since r5309 on 2004-02-15 -- but since this was something of a Heisenbug, and the behaviour was so catastrophic when MessageBoxIndirect() behaved oddly, I've rearranged the code to default to cancelling, and added an assertion for visibility. (Windows PuTTY still seems to be broken wrt servers that send NEWKEYS while we're waiting for the user, which happens to include the "SSH-2.0-2.4.1 SSH Secure Shell OpenVMS V1.0" I'm testing against. I don't know why. The above bug may also have been limited to this circumstance.) check-in: c2a87e26fb user: jacob tags: trunk | |
| 15:00 | Another failure to crStop(0) on user abort, this time for SSH-1 cipher askalg(). That should be the last one. check-in: 5d6cd77882 user: jacob tags: trunk | |
| 06:54 | Support the drop-down menu part of the editbox control (combobox). This cuts and pastes a lot of code from macctrl_popup, which perhaps should be consolidated. Also change the effective line codepage when it is changed with Change Settings. check-in: 02e5c18f57 user: owen tags: trunk | |
| 05:34 | README.txt needs CRLF line endings. check-in: 91eec3f336 user: simon tags: trunk | |
| 04:51 | Bump version numbers. (Forgot to do this _before_ dropping the 0.57 tag, but that's OK because SVN doesn't distinguish tags from branches anyway...) check-in: 3513ed7665 user: simon tags: trunk | |
| 04:30 | Additional robustness to SFTP packet parsing and memory allocation. check-in: 6e1691ecfd user: simon tags: trunk | |
|
2005-02-19
| ||
| 15:56 | Correct some comments based on feedback from Thomas Dickey. check-in: d2701c9e97 user: ben tags: trunk | |
| 09:53 | Grey the titles of group boxes when the config box is not frontmost. Edit box values still fail to be greyed. check-in: 96a56a0d0d user: owen tags: trunk | |
| 08:48 | Oops; missed out a crStop in the new host key verification code. check-in: db594ef974 user: simon tags: trunk | |
|
2005-02-18
| ||
| 19:20 | Log file open mode lost a "b" in r5344. Windows at least needs log files to be written in binary mode with the current code. check-in: 32af9a3e5a user: jacob tags: trunk | |
| 16:03 | New enum constant ERROR clashed with a macro in MinGW's wingdi.h. Use uglier names. check-in: 6514b4f779 user: jacob tags: trunk | |
| 12:35 | Add plain-Unix binaries to the `make clean' list in the OS X makefile. check-in: 61139cb104 user: simon tags: trunk | |
| 12:33 | Add asynchronous callback capability to the askappend() alert box. This was harder than verify_ssh_host_key() and askalg() put together, because: (a) askappend() can be called at any time, since it's a side effect of data-logging functions. Therefore there can be an unfinished askappend() alert at any time, and hence the OS X front end has to be prepared to _queue_ other alerts which occur during that time. (b) logging.c has to do something with data that comes in while it's waiting for an answer to askappend(). It buffers it until it knows what the user wants done with it. This involved something of a reorganisation of logging.c. check-in: 104367e90f user: simon tags: trunk | |
| 12:19 | A few more fixes in the new asynchronous-alert-box mechanism. check-in: a5d370224a user: simon tags: trunk | |
| 03:22 | We have a host key database, just not a very good one. check-in: 4cbbf22b3f user: owen tags: trunk | |
|
2005-02-17
| ||
| 13:31 | Adjust the semantics of cfg.remote_cmd_ptr: it is now NULL when cfg.remote_cmd is to be used, rather than actually pointing at cfg.remote_cmd. This change restores the ability to structure-copy Configs without breaking them. (Though of course this is only a temporary solution: really what wants doing is to fix `config-struct'.) check-in: ac54c8cf58 user: simon tags: trunk | |
| 12:56 | Ahem. Actually _checking_ that asynchronous askalg() worked would have been helpful. Since async verify_ssh_host_key() worked, I didn't think anything else could go wrong. How wrong I was. check-in: e84ffae719 user: simon tags: trunk | |
| 12:34 | Revamp interface to verify_ssh_host_key() and askalg(). Each of them now returns an integer: 0 means cancel the SSH connection and 1 means continue with it. Additionally, they can return -1, which means `front end has set an asynchronous alert box in motion, please wait to be called back with the result', and each one is passed a callback function pointer and context for this purpose. I have not yet done the same to askappend() yet, because it will take a certain amount of reorganisation of logging.c. Importantly, this checkin means the host key dialog box now works on OS X. check-in: 2b45db1342 user: simon tags: trunk | |
|
2005-02-16
| ||
| 20:00 | ssh_do_close() should close any listening sockets associated with port-forwardings. check-in: 8934c0e310 user: jacob tags: trunk | |
| 19:47 | ssh_do_close() was only closing about half the channels. Fixed. check-in: 835f964689 user: jacob tags: trunk | |
| 17:30 | On the Mac, support for setting the line codepage and for combining characters. I've just used libcharset in macucs.c since there seemed little reason not to, and implemented combining characters by naive overprinting. It's not yet a lot of use without the ability to select a font, of course. check-in: 694ac360c6 user: owen tags: trunk | |
| 06:13 | portfwd validation was sometimes not picking up a blank source port check-in: 88587bfc5b user: jacob tags: trunk | |
| 05:56 | Fix a minor valgrind issue in dynamic port-forwarding. check-in: 16a0978eb7 user: jacob tags: trunk | |
| 05:44 | Simon suggests a better solution to valgrind's complaining about (struct Socket_tag).connected -- it should be entirely irrelevant to listening sockets. Valgrind is still happy. check-in: be6e51d68c user: jacob tags: trunk | |
| 03:01 | Oops! Didn't mean to check in the OS X Makefile; that is of course built by mkfiles.pl just like all the rest. Well spotted, Jacob. check-in: 1ec5faee2f user: simon tags: trunk | |
|
2005-02-15
| ||
| 19:47 | Minor reorganisations to WinHelp support. (Done as part of a - failed - attempt to fix `winhelp-crash', but we may as well keep them.) check-in: 10431bbf1a user: jacob tags: trunk | |
| 17:39 | Update on Mac ports. check-in: 2013140e50 user: jacob tags: trunk | |
| 16:41 | Grouping boxes for the configuration dialogue. The System 7 version is completely untested so far, but the Appearance Manager version works and looks plausible. There are still some HI Guideline spacing issues to address. check-in: 4158a49ba3 user: owen tags: trunk | |
| 16:23 | The Windows host key dialogs now have a `Help' button that should give appropriate context help, iff the help file is present. (Shame it's prey to `winhelp-crash'.) (I've perpetrated a widening of visibility of `hwnd'; the alternative, putting it into a frontend handle, seemed too likely to cause maintenance trouble if we don't also _use_ that frontend handle everywhere we now use the global `hwnd'.) check-in: 277a81e93c user: jacob tags: trunk | |
| 15:45 | Initial checkin of a native Mac OS X port, sharing most of its code with the Unix port and layering a Cocoa GUI on top. The basics all work: there's a configuration panel and a terminal window, the timing interface works and the select interface functions. The same application can run both SSH (or other network) connections and local pty sessions, and multiple sessions in the same process are fully supported. However, it's horribly unfinished in a wide variety of other ways; anyone interested is invited to read README.OSX and wince at the length and content of its `unfinished' list. check-in: 9524a62065 user: simon tags: trunk | |
| 13:22 | Add a couple of other sensible button defaults in MessageBox()s. check-in: c96098badb user: jacob tags: trunk | |
| 13:10 | Martin Radford points out that the default action for the host key confirmation dialogs should be "cancel", not "accept". check-in: bb9c323321 user: jacob tags: trunk | |
| 11:05 | The terminal window can now indicate that PuTTY is busy in various ways, by changing its mouse pointer. Currently this is only used in the (slightly- arbitrarily-defined) "heavy" bits of SSH-2 key exchange. We override pointer hiding while PuTTY is busy, but preserve pointer-hiding state. Not yet implemented on the Mac. Also switch to frobbing window-class cursor in Windows rather than relying on SetCursor(). check-in: 14b560857a user: jacob tags: trunk | |
| 06:35 | Extra note on "connection reset by peer" on Windows. Note default circumstances of cipher warning. (I haven't bothered with the similar kex warning since it doesn't come up in the default configuration, and is in any case unlikely to be common.) check-in: d5c2714533 user: jacob tags: trunk | |
|
2005-02-14
| ||
| 09:30 | Initialise (struct Socket_tag).connected in sk_register(). Again, the value could do with review. check-in: df4a929685 user: jacob tags: trunk | |
| 09:03 | Initialise (struct Socket_tag).connected in sk_newlistener() since Valgrind complained. (I _think_ this is the correct initialisation.) check-in: 5c0134a833 user: jacob tags: trunk | |
| 05:43 | Martin Prikryl points out that we weren't always initialising new "addrinfo" members of Windows SockAddr_tag; particular in sk_nonamelookup() (proxy resolution at far end) this was causing trouble. Make sure they _always_ start out NULL (since the Windows getaddrinfo() documentation doesn't make any claims about initialisation), and also initialise 'naddresses' in sk_nonamelookup() for good measure. check-in: a61944970c user: jacob tags: trunk | |
| 05:07 | WSAECONNABORTED: Soften claims + emphasise applicability to established connections, based on KB 819124. check-in: 5e014e402c user: jacob tags: trunk | |
| 01:44 | Oh, and (there's always one) remove the unnecessary extra parameter from unix_setup_config_box(). check-in: afe9d5581e user: simon tags: trunk | |
| 01:41 | Saw uxcfg.c in half down the middle, to separate out config changes that apply to all Unix-like systems from those which apply specifically to the GTK front end. check-in: cae2b163bd user: simon tags: trunk | |
|
2005-02-12
| ||
| 18:00 | Display panel titles and grouping box titles. check-in: b5209b2944 user: owen tags: trunk | |
|
2005-02-11
| ||
| 12:01 | Tidy up the host key alerts a little, and swap the Just Once and Cancel buttons so that they appear in the standard action and cancel positions. check-in: 5ef74a6569 user: owen tags: trunk | |
|
2005-02-09
| ||
| 19:25 | Mention saving mid-session and some of its wrinkles. Formatting tweaks in the same general area. check-in: 5ef7f2f090 user: jacob tags: trunk | |
| 19:04 | Document effect of settings changes on existing connections/forwardings. Also mention that service names can be used instead of port numbers. check-in: db70d0d7eb user: jacob tags: trunk | |
| 19:03 | ssh_setup_portfwd() should usually be looking at the new cfg, not the old one, so that changes to port visibility are honoured in new forwardings. check-in: 2f298ec6aa user: jacob tags: trunk | |
| 18:16 | Slightly gratuitous logeventf() crusade and purge of fixed-length buffers. Also a bonus sfree(). check-in: 0e48334e09 user: jacob tags: trunk | |
| 15:18 | Add some host key dialogue boxes. These still look a little rough around the edges and need to have all their controls properly aligned and spaced according to the HI guidelines. Also, fix store_host_key() so that it replaces a host key correctly when the host key has changed and the user opts to update the cached one. check-in: 85f028418e user: owen tags: trunk | |
| 09:57 | Improve documentation of the SCP wildcard safety issue: in particular, mention that doing an SCP wildcard download into a clean directory is adequate protection against a malicious server trying to overwrite your files. check-in: 1cc7618cf9 user: simon tags: trunk | |
| 09:42 | Missing {Question} check-in: d58402dfbf user: jacob tags: trunk | |
|
2005-02-08
| ||
| 08:13 | We _really_ don't need to hear about WSAECONNABORTED any more. check-in: a698b14861 user: ben tags: trunk | |
| 06:40 | Mention that a common reason for keys' being rejected is dodgy permissions. check-in: fa7fd252a6 user: ben tags: trunk | |
|
2005-02-07
| ||
| 17:43 | Add the new mk.mpw to the ignore list. check-in: b4e5465141 user: simon tags: trunk | |
| 14:24 | Revert my LF->CR change following Owen's comment that it actually breaks netatalk-based setups (which _swap_ LF and CR). Instead, setfile.sh (which I have to run _anyway_ on OS X) copies mkputty.mpw to mk.mpw and then makes that CR-based. check-in: 80e340bcf7 user: simon tags: trunk | |
| 09:23 | Comment explaining location in top-level directory. check-in: f458beae5d user: jacob tags: trunk | |
| 06:23 | Petri Kero pointed out a FreeLibrary() call that should be guarded by NO_IPV6. check-in: 5ad1988749 user: jacob tags: trunk | |
| 04:47 | Add a comment about the deficiencies of the host key cache implementation. check-in: 66a04eea30 user: owen tags: trunk | |
|
2005-02-06
| ||
| 09:52 | Reinstate the broken -e option in pterm. Also I've just worked out a much better way of handling pty_argv which doesn't require uxpty.c to be linked in to Unix PuTTY and PuTTYtel. check-in: 0632fdc578 user: simon tags: trunk | |
| 09:14 | Encapsulated most of the pty backend's variables into a proper data structure, in preparation for wanting more than one of them in a single process. This can't be done cleanly, because the whole business with pty_pre_init pre-allocating the pty rather assumes we want a known number of the things before we drop privileges; so there's a horrid hack to make pty_pre_init work on platforms that have at most one pty instance per process, but at the same time things ought to work sensibly with more than one per process _if_ pty_pre_init isn't required. check-in: df1c22fdcb user: simon tags: trunk | |
| 09:00 | First stab at a host key cache on the Mac. check-in: 1d8e672a89 user: owen tags: trunk | |
| 07:33 | The pty backend won't _always_ be running under X, so it should be possible to compile it without the WINDOWID variable. check-in: 7b85fe471f user: simon tags: trunk | |
|
2005-02-05
| ||
| 09:33 | When allocating BSD-style ptys, we should not be satisfied with a /dev/ptyXX we can open: we must also check that we can open and use the corresponding /dev/ttyXX, because if it's been left in the wrong mode then we will look terribly silly when we fork and _then_ discover our pty is unusable. check-in: 04b0d0c117 user: simon tags: trunk | |
| 08:50 | Implement refreshing the whole dialogue box with dlg_refresh, so that if you load a session all the panels in the configuration dialogue reflect the new settings. However, there's a glitch which paints a white rectangle between the Saved Sessions listbox and the Close-on-exit radios. check-in: 8646a1479e user: owen tags: trunk | |
| 08:46 | Added a small shell script to run enough SetFile commands to make MPW builds work after checking out on Mac OS X. check-in: 80a92bc7ce user: simon tags: trunk | |
| 08:39 | This file needs to have CR line endings for MPW to be happy with it. check-in: 7eb218aa63 user: simon tags: trunk | |
| 04:55 | Mac PuTTY.ppc wouldn't compile for me until I added this prototype. Not sure why it's been working for Owen and not me, but the prototype ought to be there anyway, so *shrug*. check-in: 322f1d77de user: simon tags: trunk | |
|
2005-02-04
| ||
| 18:29 | Times and dates in the event log, fixing ltime() in the process. check-in: d6f5e385d3 user: owen tags: trunk | |
| 18:14 | mac_pollterm() is no longer useful and can be retired. check-in: 24b5193a6e user: owen tags: trunk | |
|
2005-02-02
| ||
| 17:51 | Implement anti-replay protection for XDM-AUTHORIZATION-1, as required by the specification. We keep a cache of tickets we've seen recently and reject duplicates. Once a ticket in our cache is old enough that we wouldn't accept a duplicate anyway, we expire it. check-in: 1d0e47190a user: ben tags: trunk | |
| 15:33 | Flashing things now work as a natural consequence of the timing interface. check-in: 2e1798a5cd user: owen tags: trunk | |
| 15:18 | Make ot_recv less voracious. check-in: 502fc43066 user: owen tags: trunk | |
| 13:56 | Update the configuration when the window is resized. check-in: 991b1e8bb0 user: owen tags: trunk | |
|
2005-01-30
| ||
| 08:59 | Hide/show the scrollbar check-in: f840505864 user: owen tags: trunk | |
| 08:10 | The HI guidelines seem adamant that the File menu should never be called anything but File, and two Mac users expressed profound distress at the thought of it being called Session. File it is. check-in: 4306c8d022 user: owen tags: trunk | |
|
2005-01-29
| ||
| 16:50 | Another compiler pickiness. It feels wrong to be doing this to perfectly idiomatic code, somehow, and I half wonder whether the Mac compilers are too stupid to be allowed to treat warnings as errors. check-in: ff9e65da30 user: owen tags: trunk | |
| 16:46 | Make Change Settings do something. check-in: c5bbbb4611 user: owen tags: trunk | |
|
2005-01-28
| ||
| 17:39 | Enable the Open Transport networking implementation unless NO_OT is defined. check-in: 5117367d1a user: owen tags: trunk | |
| 07:47 | Split discussion of diabling rekeys between time-based and data-based, since disabling the former is much more useful, and much safer, than disabling the latter. The new wording on data-based rekeys might need some polishing. check-in: 08df01e69b user: ben tags: trunk | |
| 05:50 | sfree the memory dupprintf allocated check-in: 76ee7d7459 user: owen tags: trunk | |
| 05:47 | Use AF_UNIX, not AF_LOCAL, since the former is in POSIX and the latter is not. check-in: c53b6f6ed8 user: ben tags: trunk | |
| 05:39 | Overhaul of client-side XDM-AUTHORIZATION-1: * Make sk_getxdmdata() return an arbitrary string rather than two integers. This better matches the spec, even if the current version always returns six bytes * On Unix, for PF_UNIX sockets, return a counter rather than a constant along with the PID. This should allow multiple clients to connect within one second, and is what Xlib does. * On Unix, interpret AF_INET6 addresses like Xlib does, returning the embedded IPv4 address for v4-mapped addresses, and six bytes of zeroes otherwise. The latter is silly, but if I'm going to do anything more sane I need to check that X servers won't reject it. check-in: e5bafedcaf user: ben tags: trunk | |
|
2005-01-26
| ||
| 17:49 | Buffer overruns are embarassing (even if caused by user error), so assert that this one can't happen until I actually fix it. check-in: a5f438af43 user: ben tags: trunk | |
| 17:30 | Add a Change Settings dialogue box. Doesn't do anything yet. check-in: 8115201999 user: owen tags: trunk | |
| 14:18 | Move sockaddr_is_loopback() to before sk_address_is_local(), and define the latter in terms of the former. Also adjust the definition of ipv4_is_loopback() to avoid using the non-standard inet_netof() and IN_LOOPBACKNET, and move it next to its remaining uses. check-in: 8ef41e7a61 user: ben tags: trunk | |
| 13:05 | Move sk_poll() inside (!gotevent), which is more logical but doesn't have any actual beneficial effect on event handling, sadly. check-in: a2af347d3b user: owen tags: trunk | |
| 13:04 | Add ssh.h for prototypes for the X display stubs check-in: 07f3ffc93d user: owen tags: trunk | |
| 12:11 | Make a few things static check-in: 4c389d057e user: owen tags: trunk | |
|
2005-01-23
| ||
| 09:01 | Give the config window a title. check-in: 00781b36fb user: owen tags: trunk | |
| 08:31 | When checking if a connection comes from localhost, don't assume it's an IPv4 connection. Instead, correctly check IPv4 and IPv6 connections, assume that AF_LOCAL is always local, and anything else is always remote. This makes trivial local-to-remote forwarding work on my system. check-in: c6292f3f4e user: ben tags: trunk | |
|
2005-01-22
| ||
| 10:06 | Don't abuse a remote channel number of (unsigned)(-1) to indicate a channel for which we don't yet have a remote number, and instead add a flag to indicate this fact. Fixes bug ssh-remoteid-minusone. check-in: 6039240c89 user: ben tags: trunk | |
| 09:32 | When calling getaddrinfo() for a listening socket, pass in a suggested type of SOCK_STREAM, since that's what we'll be using. check-in: 8ea07ec929 user: ben tags: trunk | |
| 09:20 | Stupid typo, spotted by GCC. check-in: 86f06745c5 user: ben tags: trunk | |
| 09:19 | If getaddrinfo() fails, it's not safe to dereference the struct addrinfo* it passes back to us, so don't. check-in: 6caff86de4 user: ben tags: trunk | |
| 08:51 | Owen's just pointed out that random_stir() is capable of recursion. I'm sure I didn't mean that to happen! Added a lock to stop it. check-in: 7efec92a4c user: simon tags: trunk | |
| 08:01 | Explicitly ignore SCI rather than translating it into DECID. Should fix bug sci-is-not-decid. check-in: 8eaf1fe1c5 user: ben tags: trunk | |
| 07:32 | Probable support for first_kex_packet_follows in KEXINIT. Not significantly tested since none of the common key-exchange protocols starts with a packet from the server, so I don't have a server that implements this. check-in: 834d6a4042 user: ben tags: trunk | |
|
2005-01-20
| ||
| 18:02 | Colours now work properly, including 256-colour stuff. Timing stuff now there, but almost certainly bogus. check-in: c0f994b601 user: owen tags: trunk | |
| 15:45 | Dispose of a variable whose only use was being set to zero. check-in: 45991831e2 user: ben tags: trunk | |
| 10:42 | Fix/bludgeon Mac compile wrinkles. check-in: 50d019225c user: owen tags: trunk | |
|
2005-01-19
| ||
| 17:30 | Add an assertion so that short-rsa2-key-crash at least avoids segfaulting while we come up with a better solution. check-in: 83675aee49 user: ben tags: trunk | |
| 11:41 | While we're here, pad USERAUTH_INFO_RESPONSEs to 256 bytes too. check-in: b1da03aeda user: ben tags: trunk | |
| 06:34 | Make the outgoing SSH2 sequence number unsigned, so as to avoid depending on overflow behaviour of signed integers. check-in: 9ab372a1fe user: ben tags: trunk | |
| 04:07 | Add a lengthy comment warning future front-end implementors about the right and wrong way to implement the timing interface. check-in: 108c4ea6f7 user: simon tags: trunk | |
|
2005-01-18
| ||
| 16:01 | Bits and pieces, mostly stubs, for the Mac port. check-in: 35d32b9f38 user: owen tags: trunk | |
| 13:09 | Yes we do mean assignment. Bah. check-in: a4d7543bf7 user: owen tags: trunk | |
| 13:04 | The terminal reengineering of r4609 left an unused `start' lying around. Remove it. check-in: b8b50be09e user: owen tags: trunk | |
| 03:38 | ssh_pkt_getstring wants a boring int rather than an unsigned int. Let's give it one. check-in: e1b90bc8b9 user: owen tags: trunk | |
|
2005-01-17
| ||
| 10:38 | Currentish ssh.com supports single-DES in SSH2 as "des-cbc@ssh.com". It seems to be entirely the same as "des-cbc", so supporting it is trivial and we may as well do so. If nothing else, it makes it clear whose fault it is. check-in: 8fabb7fcd3 user: ben tags: trunk | |
| 04:07 | Change some function arguments to void * to placate picky compilers. check-in: e8bda63d8d user: owen tags: trunk | |
|
2005-01-16
| ||
| 18:50 | In SSH2, rather than sending an SSH_MSG_IGNORE after every password, just pad the packet out to 256 bytes. Much simpler. This leavs ssh2_pkt_defer() unused, so ifdef it out. check-in: 175fa7a092 user: ben tags: trunk | |
| 08:43 | Be a little less enthusiastic about sending SSH_MSG_CHANNEL_WINDOW_ADJUST: only send it when it will significantly increase the server's idea of our window. This avoids the slew of one-byte WINDOW_ADJUSTs that an interactive shell typically generates. check-in: 0268510fc1 user: ben tags: trunk | |
| 08:33 | Mac SC compiler whinges about trailing commas in enums check-in: 3758a51734 user: owen tags: trunk | |
| 08:29 | Support for falling back through the list of addresses returned from a DNS lookup, whether they're IPv4, v6 or a mixture of both. check-in: d774282d73 user: simon tags: trunk | |
| 08:14 | Make our SSH2 maximum packet size into a constant, since it's used in several places. check-in: bb2febbcff user: ben tags: trunk | |
| 08:02 | Owen tells me the Mac compiler complains at a char / unsigned char mismatch in the invocation of hmacmd5_key(). Do it properly with a void * argument. check-in: 7b7d4829ed user: simon tags: trunk | |
| 07:40 | Add minibidi to Mac PuTTY objects check-in: 8a93208499 user: owen tags: trunk | |
| 06:37 | Rewrite of Unix sk_newlistener() which should fix any possible problems involving trying to bind an IPv6 socket to an IPv4 address. check-in: f1b4410202 user: simon tags: trunk | |
|
2005-01-15
| ||
| 14:39 | Turn of ICRNL in the client tty when we're not in editing mode. This means that we send literal CRs and let the remote pty layer work out what to do with them, so that if it wants raw mode it can have it. check-in: 4bdb86742e user: ben tags: trunk | |
| 12:30 | FWHACK has been dead for years. Remove it from the Makefiles. check-in: 3e4c94b2d7 user: ben tags: trunk | |
| 11:28 | Fix prototypes for mactcp_new and ot_new. check-in: 00cfc31784 user: owen tags: trunk | |
| 11:16 | Throw away "./" in findfile so that the Mac makefile has valid paths. check-in: 8ea6b14ef5 user: owen tags: trunk | |
|
2005-01-14
| ||
| 13:28 | INADDR_NONE is nonstandard. Use (in_addr_t)(-1) instead. check-in: 746221d47e user: ben tags: trunk | |
| 06:26 | Don't use GNUish pattern rules in the Unix Makefile, since they're not supported by non-GNU makes. This allows the standard Solaris /usr/ccs/bin/make to handle that Makefile. check-in: a7aa20415e user: ben tags: trunk | |
|
2005-01-13
| ||
| 15:50 | Mention Cygwin/X as a potential X server, since it's free. check-in: 7bacb09766 user: ben tags: trunk | |
|
2005-01-11
| ||
| 13:33 | Fix `disconnect': arrange that we keep track of when we're expecting to see the server slam the TCP connection shut (i.e. almost never, unless it's just sent us an SSH_MSG_DISCONNECT), and treat an unexpected closure as a non-clean session termination. Previously any server-initiated connection closure was being treated as a clean exit, which was a hangover from the good old Telnet-only days. check-in: cffc0c078a user: simon tags: trunk | |
| 10:33 | Versions of OpenSSH before 2.5.4 kill the connection if the client attempts to rekey. Extend the description of SSH2_BUG_REKEY to cover this situation and apply it to the relevant OpenSSH versions. check-in: 7b589f12f9 user: ben tags: trunk | |
| 09:33 | Bah, I left a rogue event log entry lying around. check-in: 885c74ec18 user: simon tags: trunk | |
| 07:24 | Sun_SSH_1.0.1 also has BUG_SSH2_REKEY. check-in: a46b1af183 user: ben tags: trunk | |
| 04:45 | The Unix `make install' target now allows you to define UTMP_GROUP, in which case pterm will be installed setgid that, or to define UTMP_USER in which case it will be installed setuid that. If you define neither, it will be installed without any set-id bits as before. check-in: 956cdd1384 user: simon tags: trunk | |
| 04:37 | Servers announcing themselves as `Sun_SSH_1.0' apparently cannot deal with rekeys at all: they totally ignore mid-session KEXINIT sent by the client. Hence, a new bug entry so we don't try it. check-in: ed28fd9a5d user: simon tags: trunk | |
|
2005-01-09
| ||
| 08:55 | sk_namelookup() on Unix was failing to translate from our platform- independent ADDRTYPE_* constants to real AF_* ones, causing explicit protocol specification to fail. check-in: b98c6290a2 user: simon tags: trunk | |
| 08:45 | Remove unwanted underscore. check-in: 77e38f22b1 user: owen tags: trunk | |
| 08:27 | New function ltime() returns a struct tm of the current local time. Fixes crashes when time() returns (time_t)-1 on Windows by using the Win32 GetLocalTime() function. (The Unix implementation still just uses time() and localtime().) check-in: b5b804da44 user: owen tags: trunk | |
| 05:58 | Having laboriously constructed a hints parameter for getaddrinfo, it would help to _use_ it! check-in: 74977dc42d user: simon tags: trunk | |
| 05:44 | I've changed my mind about what the IP version selection options in the config should do when IPv6 is configured out. They shouldn't sit there looking silly with only `Auto' and `IPv4' settings: they should instead be completely absent. I had thought the former was acceptable since IPv4-only was a configuration that people should only be using if their compilers didn't support IPv6, but now it occurs to me that ports to fundamentally non-IPv6-supporting platforms are not implausible, and on such ports the presence of a vestigial config option under the _standard_ build conditions would be a low-quality solution. check-in: b0fa9fd94c user: simon tags: trunk | |
|
2005-01-08
| ||
| 08:45 | For local and dynamic port forwardings (i.e. the ones which listen on a local port), the `Auto' protocol option on the Tunnels panel should always produce a port you can connect to in _either_ of IPv4 and v6, because the aim is for the user not to have to know or care which one they're using. This was not the case on Windows, and now is. Also, updated the docs to give more detail on issues like this. check-in: f307208157 user: simon tags: trunk | |
| 08:02 | Cleanups to sk_namelookup(). In particular, it now doesn't segfault if you explicitly specify IPv6 and then try to look up a hostname which doesn't have an IPv6 address. check-in: 096be4666f user: simon tags: trunk | |
| 07:28 | Clear the kex-specific context in ssh->pkt_ctx for every new key exchange. Without doing this, after we have done one specific-group DH exchange (group1 or group14), ssh2_pkt_type _always_ translates 30 and 31 as KEXDH_INIT and KEXDH_REPLY, making a subsequent group-exchange kex look rather strange in an SSH packet log. check-in: 779096703f user: simon tags: trunk | |
| 07:08 | Jacob points out that changing TICKSPERSEC in unix.h changed the meaning of BellOverload{T,S} in Unix saved sessions. Add a Unix- specific backwards compatibility wart to settings.c to compensate. Of course when I do the serious config format revamp, I will ensure that no config item depends on internal #defines (these time intervals will be specified as a floating-point number of seconds) and this horror will be relegated to the old-config-compatibility code. check-in: 0b3bd20177 user: simon tags: trunk | |
|
2005-01-07
| ||
| 10:55 | Simon points out that r5068 broke keyboard-interactive with multiple INFO_REQUESTs, and for some reason Debian OpenSSH is sending INFO_REQUESTs containing no prompts after a normal password authentication, so this should fix Shai's problem. check-in: 8f61fc5781 user: jacob tags: trunk | |
| 09:25 | Update faq-bce further for changes in 0.54. check-in: c9b14f9851 user: jacob tags: trunk | |
| 08:22 | Proxy command formatting now recognises `%proxyhost' and `%proxyport' in addition to the other things it interpolates. This is useful when using the Unix-only `Local' proxy type: it allows me to, for example, set up a proxy command such as ssh %proxyhost nc -q0 %host %port and then enter the name of the proxy machine in `Proxy hostname', which makes it marginally more convenient to quickly change to using a different proxy to get at the same target. I haven't documented this, because we currently don't document the Local proxy type at all. Possibly we should, though. check-in: e7bfc6f3eb user: simon tags: trunk | |
| 03:24 | Use sk_set_frozen() to ensure that no data will be accepted from an SSH connection when we're in the middle of asking the user a dialog-box-type question. Fixes `unix-kex-packet', which has just bitten me when connecting to one of the work Suns. check-in: 65b1240966 user: simon tags: trunk | |
|
2005-01-06
| ||
| 11:05 | Add an explicit message about lack of support for PASSWD_CHANGEREQ in a half-hearted attempt to flush out any uses of it. check-in: a79322b17b user: jacob tags: trunk | |
| 09:47 | I can't believe that after all this time we still had a rogue set of `' quotes! Changed to \q{}. check-in: e8f108306c user: simon tags: trunk | |
| 07:23 | `kbdint-failure': we now offer keyboard-interactive auth to the user for as long as the server offers it, rather than only once, unless the server responds to our initial USERAUTH_REQUEST("keyboard-interactive") with FAILURE, in which case we give up on it entirely. check-in: 3f7f4f0136 user: jacob tags: trunk | |
| 06:37 | Try to make it clearer that "-be" and "-bc" must be specified in _addition_ to "-b batchfile". check-in: 8773e36e4b user: jacob tags: trunk | |
|
2005-01-04
| ||
| 11:39 | Don't forget to initialise ret->ai to NULL in sk_nonamelookup. Was causing segfaults in IPv6-enabled Unix PuTTY connecting through a proxy when letting the proxy do the DNS. check-in: 3df2181140 user: simon tags: trunk | |
| 08:37 | If we're going to use select(), we need <sys/select.h>. check-in: e32d59fc67 user: ben tags: trunk | |
|
2005-01-02
| ||
| 07:17 | colon in kex UI check-in: cfb5a7b051 user: jacob tags: trunk | |
| 03:19 | It's a new year! check-in: 0dcd4c8d0c user: simon tags: trunk | |
|
2005-01-01
| ||
| 10:43 | Localise "not connected to a host" messages. check-in: 2497e12c47 user: jacob tags: trunk | |
| 10:35 | Now that rm, mkdir, and rmdir can operate on lots of files, make them more chatty like the other multiple-file commands. check-in: 4363630adb user: jacob tags: trunk | |
| 10:16 | Document recent changes to PSFTP (and other documentation tweaks). check-in: 87aa86cb7f user: jacob tags: trunk | |
| 08:06 | Remove rogue sfree()s inside new wildcard action functions -- were causing segfaults in failure cases. check-in: 394dfda4b4 user: jacob tags: trunk | |
| 07:01 | There's always one: fix small memory leak introduced in last revision. check-in: becb9e9fd7 user: simon tags: trunk | |
| 06:34 | "Nirwana Nirwana" points out that mget, mput and ls are not the only PSFTP commands that can make good use of wildcards! Now implemented wildcard support in rmdir, rm, mv and chmod. check-in: cb00dfec44 user: simon tags: trunk | |
|
2004-12-31
| ||
| 13:06 | A couple of people have pointed out that the local variable `reading' in this file is not reliably initialised. check-in: 3d18309490 user: simon tags: trunk | |
| 07:02 | Rename some of the more stupidly named files in the Unix back end. Notably pterm.c, which was a sensible name right at the start but became a misnomer as soon as I created Unix PuTTY. check-in: afc775a19a user: simon tags: trunk | |
| 05:46 | In r5043 Jacob removed the `Load' and `Delete' buttons in the saved- sessions panel in the reconfig box. I think, given that, the title of that box also wants work :-) check-in: abaca4dd76 user: simon tags: trunk | |
| 04:51 | Allow reconfiguration of compression and cipher settings in mid-session in SSH2: this forces an immediate rekey to activate the new settings. I'm not sure exactly what this will be useful for (except possibly it might make comparative performance testing easier?), but it has wonderful James Bond value for being able to switch to a more secure cipher before doing anything sensitive :-) If, that is, you weren't using the most secure one to begin with... check-in: 6bca0a2afd user: simon tags: trunk | |
|
2004-12-30
| ||
| 11:53 | Reinstate the textual service name in port forwarding Event Log messages where specified. (I had removed this in the previous revision through forgetfulness.) check-in: 084642d5c1 user: simon tags: trunk | |
| 11:48 | Jacob points out that when we reconfigure port forwarding, we ought to be destroying old ones _before_ creating new ones, so that we can reuse a port for a new purpose without colliding with ourselves. Also fixed port forwarding, which my IPv6 checkin had completely funted :-) check-in: 3e59d470f1 user: simon tags: trunk | |
| 11:29 | If we're going to define _XOPEN_SOURCE, we should at least define it to a version that includes putenv(). Make it 600 (the current one) for good measure. check-in: a7dc2dc328 user: ben tags: trunk | |
| 10:45 | Integrate unfix.org's IPv6 patches up to level 10, with rather a lot of polishing to bring them to what I think should in principle be release quality. Unlike the unfix.org patches themselves, this checkin enables IPv6 by default; if you want to leave it out, you have to build with COMPAT=-DNO_IPV6. I have tested that this compiles on Visual C 7 (so the nightlies _should_ acquire IPv6 support without missing a beat), but since I don't have IPv6 set up myself I haven't actually tested that it _works_. It still seems to make correct IPv4 connections, but that's all I've been able to verify for myself. Further testing is needed. check-in: 99d7fec46d user: simon tags: trunk | |
| 09:29 | Stray // comments. check-in: a7351a8274 user: simon tags: trunk | |
| 07:51 | I've decided that trying to do wildcards in PSFTP as a special case of directory recursion was a strategic error: it obfuscates sftp_{get,put}_file(), and also it makes it very hard to handle subdirectory wildcards such as `foo/*'. Accordingly, here's a completely different approach, in which sftp_{get,put}_file() are still responsible for directory recursion, but wildcards are expanded in sftp_general_{get,put}() before being passed thereto. Subdirectory wildcards are now handled consistently across Unix, Windows and the remote server. check-in: 46c1373c46 user: simon tags: trunk | |
| 04:58 | Remove "Load" button in mid-session configuration dialog, as it allows the user to manipulate settings they can't see so could lead to confusion. (Also remove "Delete" button for some sort of UI consistency even though it's harmless.) Also conditionalise other aspects of sessionsaver_handler() that don't make sense mid-session. check-in: 711d82ee73 user: jacob tags: trunk | |
|
2004-12-29
| ||
| 07:44 | Add some discussion of rekeys-as-keepalives, and their potential adverse effect on the life expectancy of a low-use connection over a low-reliability network. check-in: be824f099e user: simon tags: trunk | |
| 06:32 | Loose end from r5031: the Kex panel should only be displayed in mid-session if we are not using SSHv1. I've done this by introducing a generic `cfg_info' function which every back end can use to communicate an int's worth of data to setup_config_box; in SSH that's the protocol version in use, and in everything else it's currently zero. check-in: 8cec6d493a user: simon tags: trunk | |
|
2004-12-28
| ||
| 11:12 | The latest unfix.org IPv6 patch contains these apparently IPv6-unrelated changes, which convert ints into unsigned in a few key places in ssh.c. Looks harmless at worst, possibly terribly useful, so I think we'll have these no matter what the real IPv6 stuff is up to! check-in: 23840b0529 user: simon tags: trunk | |
| 10:46 | Ability to save in mid-session! Simplest possible resolution to all the difficult questions about when it's sensible to offer the option of saving to the slot we loaded from: _we never do_. The user must always explicitly specify a slot to save to. check-in: 9a448e7d3f user: simon tags: trunk | |
| 10:18 | Forgot to initialise ssh->portfwds to NULL. Unusually, this was pointed out by the MSVC debugger, not by valgrind :-) check-in: 8a11a858c7 user: simon tags: trunk | |
| 08:11 | Can't use `d' for an accelerator in the Kex panel, since it clashes with the `d' used for the Down button in the Windows preference list. check-in: c74909c32f user: simon tags: trunk | |
| 08:10 | Support reconfiguration of key exchange in mid-session. The fiddly bit is working out when to reschedule the next rekey for when the timeout or data limit changes; sometimes it will be _right now_ because we're already over the new limit. Still to do: the Kex panel should not appear in mid-session if we are using SSHv1. check-in: 25f79c1e9a user: simon tags: trunk | |
| 08:07 | SSH port forwarding is now configurable in mid-session. After doing Change Settings, the port forwarding setup function is run again, and tags all existing port forwardings as `do not keep'. Then it iterates through the config in the normal way; when it encounters a port forwarding which is already in the tree, it tags it `keep' rather than setting it up from scratch. Finally, it goes through the tree and removes any that haven't been labelled `keep'. Hence, editing the list of forwardings in Change Settings has the effect of cancelling any forwardings you remove, and adding any new ones. The SSH panel now appears in the reconfig box, and is empty apart from a message explaining that it has to be there for subpanels of it to exist. Better wording for this message would be welcome. check-in: 771c5deefb user: simon tags: trunk | |
| 08:04 | Abstracted out the rather large port-forwarding setup code into a routine which is common between SSH1 and SSH2. Since this routine is not part of the coroutine system, this means it can't sit and wait to get its various success/failure responses back. Hence, I've introduced a system of queued packet handlers, each of which waits for exactly one of a pair of messages (SSH1_SMSG_{SUCCESS,FAILURE} or SSH2_MSG_REQUEST_{SUCCESS,FAILURE}), handles it when it arrives, and automatically de-registers itself. Hence the port-forwarding setup code can be called once, and then subsequent packets related to it will automatically be handled as they arrive. The real purpose of all this is that the infrastructure is now there for me to arrange mid-session configurability of port forwarding. However, a side benefit is that fewer round trips are involved in session startup. I'd quite like to move more of the connection setup (X forwarding, agent forwarding, pty allocation etc) to using the new queued handler mechanism for this reason. check-in: 5c871b121e user: simon tags: trunk | |
| 08:04 | Fix divide overflow in internal_mod(). Thanks to William Petiot for spotting a special case that the DIV instruction can't quite cover. check-in: 7f128afe0a user: simon tags: trunk | |
|
2004-12-24
| ||
| 07:39 | Basic configurability for client-initiated rekeys. check-in: 10eff8e7d3 user: jacob tags: trunk | |
| 04:04 | Don't offer repeat key exchange as a special command in SSH-1. check-in: 7730aea1d9 user: jacob tags: trunk | |
|
2004-12-22
| ||
| 23:54 | Minimally document "repeat key exchange" special command. check-in: ece0722d35 user: jacob tags: trunk | |
| 20:24 | Add a preference list for SSH-2 key exchange algorithms, on a new "Kex" panel (which will gain more content anon). Retire BUG_SSH2_DH_GEX and add a backwards-compatibility wart, since we never did find a way of automatically detecting this alleged server bug, and in any case there was only ever one report (<3D91F3B5.7030309@inwind.it>, FWIW). Also generalise askcipher() to a new askalg() (thus touching all the front-ends). I've made some attempt to document what SSH key exchange is and why you care, but it could use some review for clarity (and outright lies). check-in: c0c1b1745c user: jacob tags: trunk | |
| 17:17 | Fix potential access of freed data (only if we couldn't create the second of two registry keys, so pretty unlikely). check-in: d6440b9496 user: jacob tags: trunk | |
| 04:53 | Support diffie-hellman-group14-sha1 group exchange. Tested against locally built OpenSSH 3.9, and seems to work fine. check-in: 1716598298 user: simon tags: trunk | |
| 04:21 | In my revamp of cursor handling I had assumed that you were supposed to call _either_ do_text() _or_ do_cursor() on a given character cell. In fact you're supposed to call do_text() no matter what, and then call do_cursor() as well if it's got the cursor on it, since do_cursor() _only_ draws the actual cursor, which often doesn't also cause the text to get drawn. I'm half tempted to change this in the interface, retire do_cursor() as an external function and relegate it to an internal function in each front end, and require that do_text() must fully process all cursor attributes it is passed. However, I haven't done this yet. check-in: ec3c52848a user: simon tags: trunk | |
|
2004-12-20
| ||
| 03:27 | The end condition in the binary search loop in the new getType() was incorrect. I must have written that binary search idiom a hundred times, so it's rather embarrassing that I can't _automatically_ get it right! This was causing all kinds of characters to be classified as ON when they should have been various other classes. Also while I'm here, I've added another test case to utf8.txt (a small piece of Arabic within a predominantly L->R line), and also supplied a means to compile minibidi.c with -DTEST_GETTYPE to produce a command-line character class lookup tool. (Not sure what use that'll be _other_ than debugging this precise problem, but I don't like to throw it away now I've written it :-) check-in: d5e3c234a7 user: simon tags: trunk | |
|
2004-12-19
| ||
| 17:37 | Restore border around terminal to default background colour rather than something outside colours[] (consistently brown on my system). (I don't understand why this code was the way it was, but it gave the correct result before r4917 `256-colours', and now doesn't.) check-in: 0302a088bc user: jacob tags: trunk | |
| 17:15 | Correct number of configurable colours (NCFGCOLOURS) to match reality (leftover from `256-colours', r4917). check-in: dd7d41edc3 user: jacob tags: trunk | |
| 16:37 | Fix line cursor colours (fallout from `256-colours'), on both Windows and Unix. check-in: fc8fba4a2e user: jacob tags: trunk | |
|
2004-12-18
| ||
| 05:34 | Make sure the docs in a Unix release tarball are generated with the correct version info. check-in: 61da0dbc9d user: jacob tags: trunk | |
| 04:46 | Missed options off mput help check-in: 8b8fc6fa16 user: jacob tags: trunk | |
| 04:00 | zip apparently gives a warning (`-l used on binary file') when you use -l on a UTF-8 text file. Move potentially UTF-8 things (the new testdata files) into a new category of source files, and suppress zip's warning for that category. check-in: 63ce6ba766 user: simon tags: trunk | |
|
2004-12-17
| ||
| 08:25 | Jacob has pointed out why SIGCHLD was blocked, so I've updated the comment when I unblock it in pty.c to reflect reality. Also I've moved block_signal() out of pterm.c into signal.c, so I can conveniently use it for unblocking SIGCHLD rather than having to reinvent it in pty.c. check-in: e6e6127715 user: simon tags: trunk | |
| 07:39 | The xfer mechanism wasn't gracefully terminating when an error was encountered part way through transfer. In particular, this caused psftp to hang (waiting for FXP_READ replies which had already arrived) if you try `get' (without -r) on a remote directory. check-in: 9b4c7b154a user: simon tags: trunk | |
| 07:00 | Document recent SFTP changes: - document behaviour of "-r" with mget/mput/reget/reput - document "close" command - document SFTP wildcard syntax for those who may not be familiar with Unix wildcards check-in: d7c8b9fbfa user: jacob tags: trunk | |
| 06:55 | I _think_ I've just fixed `font-overflow'. term->disptext now tracks the start of every contiguous run passed to do_text() or do_cursor(), and arranges never to overwrite only part of such a run on the next update. I'm a bit worried about this checkin because I've also completely revamped cursor handling: the cursor was previously being drawn _outside_ the main loop over the display line, and is now drawn as part of that loop when it gets to the cursor location. It _seems_ to still work sensibly, even in complex cases involving LATTR_WIDE and double-width CJK characters etc, but I won't be entirely happy until it's had some beta use. check-in: b868941b5d user: simon tags: trunk | |
| 06:15 | Update online help for "-r" and "--" options to get/put commands. Use command name in error messages rather than hardcoded "get:"/"put:". check-in: ce3882214d user: jacob tags: trunk | |
| 05:37 | Divide the do_paint() loop into several subloops. The activity of going through the line and working out which bits need to be redrawn is now in a separate loop from the subsequent activity of actually going through and doing the redraws. This _should_ enable me to tinker with the which-bits-to-redraw data in between the two, thus fixing `font-overflow'. However, I thought it would be sensible to break the work up into two commits so we can track bugs in the restructuring separately from bugs introduced by the new feature. Also added a couple more terminal test files. check-in: 529f5d4832 user: simon tags: trunk | |
| 05:24 | I had apparently broken wrapping of double-width characters (again). Also fixed the new UTF-8 test file so that it tests double-width wrapping both with _and_ without LATTR_WRAPPED2. check-in: 5f0baf2cd5 user: simon tags: trunk | |
| 05:18 | I'd rather not keep losing these little test files, so here's some stuff that I can `cat' into a terminal to test particular features of it. check-in: 82be78c949 user: simon tags: trunk | |
| 03:43 | Apparently SIGCHLD is blocked by default in processes run in a pterm, which was breaking my bash job notification patch. This is apparently not the case for xterm, so I've fiddled with it. Not entirely sure _why_ it did this in the first place, but there we go. check-in: 1d52612956 user: simon tags: trunk | |
|
2004-12-16
| ||
| 13:36 | General mechanism for ensuring a dodgy SFTP server can't return malicious filenames via FXP_READDIR. check-in: c846e64623 user: simon tags: trunk | |
| 13:19 | Implement the `close' command, which terminates an SFTP session but does not quit PSFTP, so you can then issue another `open' to connect to somewhere else. This has apparently been trivial for some time, for exactly the same reasons that `reuse-windows' was so easy, but it hadn't occurred to me to actually do it until now. check-in: 54f8df664d user: simon tags: trunk | |
| 13:15 | Jacob points out that I introduced a bug in PSFTP when I did the timing shakeup: just running `psftp' caused the net/stdin select loop (on both Unix and Windows) to get confused at the lack of any network connection and give up immediately. Should now be fixed. check-in: 7f1a80cc9d user: simon tags: trunk | |
| 11:45 | Wildcards in `ls'. I think that completes `psftp-multi'. Woo! check-in: 23bacbfd9f user: simon tags: trunk | |
| 11:35 | Implement mget and mput in PSFTP, supporting wildcards. check-in: 292ea1d038 user: simon tags: trunk | |
| 10:37 | Support for recursive file transfer in PSFTP. check-in: 8d0de62bb0 user: simon tags: trunk | |
| 09:38 | Fix obviously stupid segfault. Ahem. check-in: 95d7fcd0a1 user: simon tags: trunk | |
| 09:22 | Abe Crabtree complains that flushing the log file as often as we do in 0.56 results in unacceptable performance for him on Win2000. Add a checkbox to revert to the old behaviour. check-in: e3ced0602f user: jacob tags: trunk | |
| 09:01 | Rename scp.* to pscp.*, because I always misspell it that way. Also it's more consistent with PSFTP like this: scp.c/pscp.c is more similar to psftp.c (the main application framework) than it is to sftp.c (a set of back-end library routines). check-in: 769189a6e0 user: simon tags: trunk | |
|
2004-12-10
| ||
| 05:41 | Unix PSCP was tight-looping when connecting through a ProxyCommand. Turned out that sk_localproxy_close() was closing the pipe fds without removing them from the uxsel list. check-in: d33391ac70 user: simon tags: trunk | |
|
2004-12-08
| ||
| 13:41 | Replace the RLE-based getType() function with one that binary- searches a list of (start,end,type) tuples. This increases data size by about 5Kb, which is a shame; but on the plus side, it boosts performance from O(N) to O(log N). As an added bonus, the table now covers _all_ of Unicode, not just the BMP. check-in: 2a29cfc6ba user: simon tags: trunk | |
| 13:07 | Further clarity and speed cleanups of minibidi: - rewrote the reversal loop in flipThisRun to be considerably clearer - rewrote leastGreaterOdd and leastGreaterEven as bit-twiddling macros - replaced malloc/free with snewn/sfree - lost some gratuitous repeat calls of getType on the same character And most noticeably: - got rid of minibidi.h, since it was entirely full of minibidi.c internals (including constant data definitions!) and wasn't used to provide an external interface at all. Everything in it has been folded into minibidi.c. check-in: 6a1f4de516 user: simon tags: trunk | |
|
2004-12-07
| ||
| 12:18 | Reformat minibidi.[ch] in line with my coding conventions. It was just getting to be too much hassle trying to work with the existing indentation. check-in: 7c396881dd user: simon tags: trunk | |
| 12:10 | Bidi stability work. I _think_ I've now removed all the failures of array bounds checking. check-in: 985fa45e60 user: simon tags: trunk | |
| 05:50 | Fix segfault when HOME not set on Unix. check-in: 64f18d2b49 user: owen tags: trunk | |
|
2004-12-02
| ||
| 07:48 | \n and \r need double backslashes in Halibut. check-in: b51bd05d37 user: simon tags: trunk | |
| 07:37 | NULL a couple of members after freeing them in ssh_free(). In particular, should stop ssh_do_close() accessing freed ssh->channels when invoked later from ssh_free(). Spotted by Fred Sauer. (Perhaps this is the cause of the crashes people have been reporting on abnormal closures such as `Software caused connection abort'? I've not been able to test this.) check-in: f3f0eafa38 user: jacob tags: trunk | |
| 07:07 | Mention our assumptions about the execution character set. Not very well-written, since my brain is largely absent today. check-in: 70c76c16bd user: ben tags: trunk | |
|
2004-12-01
| ||
| 09:34 | Bah. Ben points out that SSH_1_ version strings should still end in \n, and also that `\r' and `\n' don't mean what I think they mean on all compilers (Mac reverses them). check-in: 5cfe4be596 user: simon tags: trunk | |
| 07:42 | And now I look at it, the latest draft also says version strings should be followed by \r\n, not just \n. check-in: 138a06123c user: simon tags: trunk | |
| 07:37 | Kimmo Parviainen points out that SSH software version strings have restrictions on the use of hyphens and spaces. check-in: 9b824c14f2 user: simon tags: trunk | |
| 03:25 | term_bidi_cache_store() now has a need to distinguish between the _width_ of a terminal line (number of character cell positions) and its _size_ (number of termchars), since of course these differ in the presence of combining characters. check-in: 3182fb76d5 user: simon tags: trunk | |
|
2004-11-30
| ||
| 07:39 | Fix large memory leak introduced in the r4915 bidi changes. check-in: 19cb7e3f26 user: simon tags: trunk | |
|
2004-11-29
| ||
| 19:07 | Another default-background fix for 256-colour mode check-in: da93f608bb user: jacob tags: trunk | |
| 10:58 | Nitpick, close bracket. check-in: 1305136e4a user: owen tags: trunk | |
| 05:31 | Some blurb about terminal types and 256-colour xterms. Thanks to Dan Nicolaescu for the suggestion. check-in: 38b8c1bf4d user: simon tags: trunk | |
| 03:40 | rm '$Source$' from comments as not meaningful under Subversion check-in: 42e6df4e40 user: jacob tags: trunk | |
| 03:27 | typo in comment check-in: c12759e021 user: jacob tags: trunk | |
| 03:23 | Briefly document the "CP866" manual-entry feature on Windows in the dialog itself (since we have a bit of room). check-in: cdce670586 user: jacob tags: trunk | |
|
2004-11-28
| ||
| 09:18 | Bah, there's always one thing I miss. Correct the background-colour handling in Unix PuTTY. check-in: b306166356 user: simon tags: trunk | |
| 09:13 | Implement xterm 256-colour mode. check-in: 1d10fbc8cf user: simon tags: trunk | |
| 03:32 | Stability fixes (thanks valgrind). check-in: 0f2074ec6b user: simon tags: trunk | |
| 03:24 | Cursor position, selection highlights and mouse clicks are now all transformed back and forth according to the character position permutation output from the bidi algorithm. I was expecting that to be a lot harder. check-in: fcf7a639b6 user: simon tags: trunk | |
|
2004-11-27
| ||
| 18:48 | Oops; forgot to add this file in r4913. check-in: 2f7ca41897 user: simon tags: trunk | |
| 13:56 | Loose end from timing shakeup: sshrand.c is now a client of timing.c, and hence takes its own responsibility for calling noise_regular() at regular intervals. Again, this means it will be called consistently in _all_ the SSH-speaking tools, not just those in which I remembered to call it! check-in: 4150c7ebb8 user: simon tags: trunk | |
| 13:41 | Changes in startup order to ensure any subsystem which might attempt to schedule timers is not started until after hwnd is initialised. check-in: 25fee5edd7 user: simon tags: trunk | |
| 13:34 | Slight improvement to cursor blink timing: since the cursor doesn't blink when the window doesn't have focus, we don't schedule blink timers at that point either. Infrastructure change: term->has_focus should now not be written directly from outside terminal.c. Instead, use the function term_set_focus, which will sort out the blink timers as well. check-in: 7a1f0222f8 user: simon tags: trunk | |
| 09:32 | Almost _all_ of the final connection-layer loop, in both SSH1 and SSH2, is now handled by the packet dispatch table. Dispatch table entries are enabled as soon as possible, so that if anyone tries to (for example) start using a forwarded port before the main shell session setup has finished, things should work sensibly. The SSH code is now a hybrid of coroutine-based sequential logic and table-driven event dispatch, each where it makes the most sense. I'm rather pleased with it. Should fix: ext-data-at-start, portfwd-at-start. check-in: b15612d1c4 user: simon tags: trunk | |
| 08:29 | Implement client-initiated rekeys after an hour, or after 1Gb of data transfer in either direction (whichever comes first), or at explicit client request (nice idea Jacob). Have tested by lowering the limits, and it all seems solid enough; in particular, this has also allowed me to test the behaviour when connection-level data is received during rekey, and that looks fine too (at least it does _now_ :-). check-in: a58a9529c0 user: simon tags: trunk | |
| 07:31 | Bah, I knew I'd miss _something_. term_out is now static, so declaring it in putty.h gives a warning under Unix. check-in: 2f29b2a9ed user: simon tags: trunk | |
| 07:20 | New timing infrastructure. There's a new function schedule_timer() which pretty much any module can call to request a call-back in the future. So terminal.c can do its own handling of blinking, visual bells and deferred screen updates, without having to rely on term_update() being called 50 times a second (fixes: pterm-timer); and ssh.c and telnet.c both invoke a new module pinger.c which takes care of sending keepalives, so they get sent uniformly in all front ends (fixes: plink-keepalives, unix-keepalives). check-in: 683ee6bed3 user: simon tags: trunk | |
|
2004-11-25
| ||
| 07:40 | uint64_decimal() incorrectly output 0 as "" instead of "0". This only affected PSFTP's "reput" chat. Spotted by Greg Parker. check-in: b78a11829c user: jacob tags: trunk | |
|
2004-11-24
| ||
| 14:35 | Re-architected the top level of the SSH protocol handlers. ssh1_protocol() and ssh2_protocol() are now high-level functions which see _every_ SSH packet and decide which lower-level function to pass it to. Also, they each support a dispatch table of simple handler functions for message types which can arrive at any time. Results are: - ignore, debug and disconnect messages are now handled by the dispatch table rather than being warts in the rdpkt functions - SSH2_MSG_WINDOW_ADJUST is handled by the dispatch table, which means that do_ssh2_authconn doesn't have to explicitly special-case it absolutely every time it waits for a response to its latest channel request - the top-level SSH2 protocol function chooses whether messages get funnelled to the transport layer or the auth/conn layer based on the message number ranges defined in the SSH architecture draft - so things that should go to auth/conn go there even in the middle of a rekey (although a special case is that nothing goes to auth/conn until initial kex has finished). This should fix the other half of ssh2-kex-data. check-in: 3ffc78a463 user: simon tags: trunk | |
| 13:53 | random_init() should be called at most once during the running of PuTTY, even if it's managing multiple sessions. check-in: 39b712e47a user: simon tags: trunk | |
| 13:23 | Now that Packet structures are dynamically allocated, it means we can keep several of them in parallel. In particular, this allows us to queue outgoing packets during repeat key exchange, to be actually sent after the rekey completes. (This doesn't fully fix ssh2-kex-data; also required is the ability to handle _incoming_ connection-layer packets during rekey without exploding.) check-in: be91e5a407 user: simon tags: trunk | |
| 12:45 | Minor refactoring: the fields `pktin' and `pktout' in the Ssh structure have been retired. Now all Packet structures are dynamically allocated. Each rdpkt function allocates one, and it's freed after being used; and the packet construction functions allocate them too, and they're freed by the send functions. `pktin' and `pktout' were ugly. They were _morally_ still global variables; even though they were replicated per SSH session to comply with the Mac no-globals requirement, they weren't really in the _spirit_ of `dynamically allocate your data'. As a side effect of this change, the `pktout_blanks' and `pktout_nblanks' fields in the Ssh structure have been moved into the Packet structure. check-in: 55fff29d00 user: simon tags: trunk | |
| 05:42 | I think rjk meant `setpgid', not `setpgrp'. check-in: ef747fcdbc user: simon tags: trunk | |
| 05:36 | RJK's OS X portability patch: - initialise blank mbstate_t using memset rather than an ad-hoc initialiser. - expand the OMIT_UTMP ifdefs to enclose a load of entire functions that would generate `static function never called' warnings if left as empty shells. - couple of other fiddly things. check-in: d8510637ed user: simon tags: trunk | |
| 05:35 | It's probably about time I took my private path to the Halibut binary out of the PuTTY docs Makefile. Instead, I expect to find Halibut as simply `halibut' on the PATH, and anyone who doesn't have it there can always do `make HALIBUT=/path/to/halibut'. check-in: ba11d868ac user: simon tags: trunk | |
|
2004-11-23
| ||
| 21:18 | \k --> \K check-in: b32223caeb user: jacob tags: trunk | |
| 10:43 | Darek Olszewski points out that telnet->ldisc is never initialised to NULL. check-in: 72fd066536 user: simon tags: trunk | |
|
2004-11-22
| ||
| 07:49 | Fix typo in term_size(), flagged by a Dr Watson log from Temme Rainer. check-in: a66ea5ad2e user: simon tags: trunk | |
| 06:42 | Minor index tweakery. check-in: 23767676d8 user: simon tags: trunk | |
| 05:02 | Trivial bug fix pointed out by Paul Fox: potentially missing fclose(). check-in: 3c03a1f730 user: simon tags: trunk | |
|
2004-11-20
| ||
| 13:07 | Add missing backslash in "Unable to create registry key" messages. check-in: ce7d538ed6 user: jacob tags: trunk | |
| 12:29 | UI tweak from Malcolm Rowe: set IDM_VIEWKEYS as the default menu item and use that mechanism to invoke it on double-click; this emboldens it in the right- click menu. check-in: 75eace3be5 user: jacob tags: trunk | |
| 11:47 | XXX comment in the logic which sends failed password auth back to username prompt for keyboard-interactive. I suspect we should do the same with that method (especially given the apparent number of systems that use it for regular password auth), but in the absence of systems to test against I've not actually made the change. (I'm worried that the `partial success' field might not be set correctly in a multi-stage authentication, for instance.) check-in: 1de0f52527 user: jacob tags: trunk | |
| 11:11 | As a result of the policy allowing changes of username to reset the authentication state, a failed `password' authentication in SSH-2 was sending us back to trying `none' and `keyboard-interactive' each time round, which uses up OpenSSH's quota of authentication attempts rather quickly. Added a check for `cfg.change_username' to the logic which sends us back to the start. check-in: ad08d145bf user: jacob tags: trunk | |
|
2004-11-19
| ||
| 15:24 | Make PSFTP use console_get_line() to fetch username, so that that prompt is affected by `-batch'. check-in: 26e5debddb user: jacob tags: trunk | |
| 15:05 | console_get_line() returns failure iff console_batch_mode is set, whereas before is would return success and the empty string. IMO this makes `-batch' much more useful; before, utilities such as Plink in `-batch' mode would attempt to plough on using empty strings for usernames, passwords, and so on. check-in: 85f4e4b0c4 user: jacob tags: trunk | |
| 14:57 | Remove FLAG_INTERACTIVE test from "login as:" prompt. Kelly John Carney pointed out that Plink would attempt to use a zero-length username iff a remote command was specified (because the FLAG_INTERACTIVE test was erroneously combined with the no-username test). I don't think this will break non-interactive use; in the cases which behave differently, Plink would be attempting to use the empty username, which was almost certainly wrong, whereas now it will give a prompt (which can be avoided with -batch as usual). (Although perhaps we should attempt to use a local username as a guess for the remote username, as PSCP does? I've not done this.) check-in: 052f19dc36 user: jacob tags: trunk | |
|
2004-11-18
| ||
| 13:44 | "Connection reset by peer" is apparently not the only error that keepalives can help with. check-in: 2ba2803830 user: jacob tags: trunk | |
| 13:41 | "Software caused connection abort": a couple of people now have got rid of this with keepalives. Also try to emphasise that this seems to be a generic catch-all type of error. check-in: e7ccea5765 user: jacob tags: trunk | |
| 11:13 | *sigh* X11 forwarding to a local display (":0" or similar) specified in the environment rather than the configuraton was failing as of 0.56 (introduced in r4604). This probably only bit users of Unix PuTTY. Didn't spot in testing as I was forwarding to already-forwarded displays. I really wasn't having a good month that month, was I? check-in: 02e36a55f2 user: jacob tags: trunk | |
| 09:16 | Add an extra appendix to the manual containing PuTTY's (hitherto) unwritten design principles, so would-be contributors won't have to either read our minds or pay _very_ close attention to the code. check-in: 795c13d68b user: simon tags: trunk | |
| 05:30 | Move MODULE files out of individual project directories into a MODULES top-level directory, which is where the Tartarus website scripts will (hopefully) start reading them from. check-in: 1e22c22481 user: simon tags: trunk | |
|
2004-11-17
| ||
| 12:27 | mkunxarc.sh was still including (mostly empty) .svn directories, and that in turn was confusing the new doc/Makefile mechanism. Fixed the former, and also put an additional safeguard in the latter in a belt-and-braces sort of fashion. check-in: 79d77aaf06 user: simon tags: trunk | |
| 12:16 | Now we use Subversion, it seems excessive to have an individual $Id$ line for every single .but file at the bottom of each page of the HTML PuTTY docs. However, we can't _always_ replace that with a single SVN revision, because there isn't always one available (SVN still allows mixed working copies in which some files are deliberately checked out against a different revision). Hence, here's a mechanism for doing better. It uses `svnversion .' to determine _whether_ a single revision number adequately describes the current directory, and replaces all the version IDs with that if so. If it can't do that, it uses the version IDs as before. Also, this allows an explicit version string to be passed on the make command line which will override _both_ these possibilities, so that release documentation can be clearly labelled with the release version number. check-in: ca9c212395 user: simon tags: trunk | |
| 02:02 | Fix mksrcarc.sh for directory reorganisation. check-in: 1f75bbb07c user: simon tags: trunk | |
|
2004-11-16
| ||
| 17:58 | pedantic s/CVS/Subversion/ check-in: 1e7235c40e user: jacob tags: trunk | |
| 17:32 | Some tweaks for Subversion and windows/ subdir. check-in: b16f306be1 user: jacob tags: trunk | |
| 17:26 | Fix Windows installer script: the paths were wrong after the directory reorganisation, and also the EOL style needs to be CRLF or Inno Setup gets upset. check-in: 1ab925824c user: simon tags: trunk | |
| 16:14 | Now that we have Subversion's file renaming ability, it's time at long last to move all the Windows-specific source files down into a `windows' subdirectory. Only platform-specific files remain at the top level. With any luck this will act as a hint to anyone still contemplating sending us a Windows-centric patch... check-in: a6928f6770 user: simon tags: trunk | |
| 12:01 | Various changes related to the Subversion migration. check-in: a885a86071 user: simon tags: trunk | |
| 09:29 | Remove .cvsignore files on all active branches. check-in: 5056e73ac2 user: simon tags: trunk | |
| 09:27 | CVS revision numbers, stored as `cvs2svn:cvs-rev' properties, are a useful piece of history in this repository but we don't want to preserve their latest values on future commits. Accordingly, I'm deleting them from all active development (though not from past release branches). check-in: 804f5806a0 user: simon tags: trunk | |
|
2004-11-15
| ||
| 09:57 | Mention that comp.terminals may also be a useful newsgroup. I've done this by centralising information about newsgroups in feedback.but and linking to that from elsewhere; I've also put in a link to Google Groups. check-in: 7f2bab7ad5 user: jacob tags: trunk | |
| 05:10 | Miloslav Cempirek Ing points out that we should return from sessionsaver_handler after processing a one-click saved session launch, to protect against accidentally calling dlg_end twice on the same dialog. check-in: 4d04cab8ad user: simon tags: trunk | |
|
2004-11-11
| ||
| 03:40 | I masked off LATTR_WRAPPED et al in do_text_internal(), but forgot to do the same in do_cursor(). Bet that's the cause of Andrey Borzenkov's cursor positioning bug. check-in: 58f5a1164f user: simon tags: trunk | |
|
2004-11-09
| ||
| 11:57 | DJSD requests a force-monochrome option for users who dislike angry- fruit-salad applications :-) check-in: 33c221f28a user: simon tags: trunk | |
|
2004-11-02
| ||
| 17:06 | Note upper limit of WM_SYSCOMMAND identifiers in a comment. check-in: 8c6f402124 user: jacob tags: trunk | |
| 17:06 | Go back to using intervals of 16 for the saved session identifiers for the system menu, but expand from 256 entries to 1024 as there seems to be plenty of space. Also remove a couple of unused IDM_* constants. check-in: bea10e6972 user: jacob tags: trunk | |
| 16:30 | Simon has reminded me _why_ menu identifiers were spaced every sixteen, so let's add a comment so that we don't forget again. Source: <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/userinput/keyboardaccelerators/keyboardacceleratorreference/keyboardacceleratormessages/wm_syscommand.asp> check-in: 00c981a774 user: jacob tags: trunk | |
| 11:44 | Since neither I nor Owen know why the IDM_ values for the saved-sessions submenu were going up in steps of 16, I've changed to steps of 1, thus increasing the possible number of sessions from ~256 to 4096, since a recent report seemed to indicate that the previous limit might not be enough for someone (!) I can't find any documentation that puts an upper limit on the number of menu items, and it seems to work on Win98, which is where I'd expect it to break if anywhere. Also a number of other tweaks to this code. check-in: 9dabd7d0df user: jacob tags: trunk | |
|
2004-11-01
| ||
| 08:18 | Argh, I messed up SSH1 remote tunnels too (same mistake). check-in: 6ef518b9a5 user: jacob tags: trunk | |
|
2004-10-31
| ||
| 18:47 | Ahem, let's not try initialising a static with a non-constant initialiser. Also, I'm pretty sure that adding a source address to a remote SSH-2 forwarding can never have worked, since we added an address string to the packet twice in that case. OpenSSH 3.4p1 certainly doesn't like it (`Server has disabled port forwarding' debug message). Fixed (and OpenSSH is happier now). check-in: fb4b938df2 user: jacob tags: trunk | |
| 18:17 | Argh. Failure to make a variable static to get round coroutine mechanics means that each SSH-2 remote tunnel will sfree() something random and thus have a chance of crashing or doing something else bad, although it won't otherwise affect execution. Introduced in 1.319 [r4529] (some of my improved diagnostics). One day I'll make a checkin to ssh.c without forgetting about the coroutines... check-in: b5c42f2525 user: jacob tags: trunk | |
|
2004-10-27
| ||
| 19:23 | Malcolm Rowe spotted that we broke display of SSH2_MSG_DEBUG messages while fixing `vuln-ssh2-debug', by missing out a field. In most cases (always_display = 0) we would log a zero-length or truncated message. (Also add a prototype for ssh2_pkt_getbool().) check-in: 911eda30fa user: jacob tags: trunk | |
| 10:50 | Malcolm Rowe's UI tweak patch for About/Licence: recognise `Esc' to close windows (PuTTY, Pageant, PuTTYgen); Licence window parent in PuTTY. check-in: 267adc6657 user: jacob tags: trunk | |
|
2004-10-26
| ||
| 14:47 | Good grief! I should create the `htmldoc' subdir in the release tree _before_ I create the md5sums files. I am a gibbon. check-in: 2ecfd9b02a user: simon tags: trunk | |
| 14:32 | Add bumping version number on trunk to new post-release checklist. Also, sometimes `0.XX' is used in the docs as a placeholder for a version number. check-in: 5bfbc957d3 user: jacob tags: trunk | |
| 13:59 | Merge version number bump (0.56) from release branch. check-in: b36810f643 user: jacob tags: trunk | |
| 13:44 | Reorder a couple of points on the wishlist, and also add a few helpful chunks of `sh' to make life easier next time I make a release. check-in: 49204859d4 user: simon tags: trunk | |
|
2004-10-24
| ||
| 17:57 | Add a note about documentation of the Unix port (i.e., we don't, specifically). This is mainly intended to make the documentation suitable for including in distributions such as the Debian package, but won't be amiss on the web site docs. It will look a bit out of place in the .HLP, but never mind. check-in: 89c758179e user: jacob tags: trunk | |
| 13:30 | Mention -i. check-in: a9b40c286e user: jacob tags: trunk | |
| 13:26 | Random tweaks: - change click-by-click advice on modifying saved sessions - add `Restart Session' as another reason you might not want to close the window on exit; other tweaks to this language - mention Shift-Backspace action - the window resizing configuration documentation was completely out of date; rewrite - add a note about Default Bold Background since it's caused confusion - "remote terminal" -> "remote system" in terminal-type doc check-in: 3cd1ba067c user: jacob tags: trunk | |
| 11:48 | Freshness tweaks: - mention `Restart Session' - tweak language of `-N' (plural->singular) check-in: 0e995a94a2 user: jacob tags: trunk | |
| 11:24 | Freshness tweaks: - soften language around changing-username-during-login section; with SSH-2 this is a misfeature of implementations rather than the protocol itself - tweak new-host-key dialog text check-in: 3206cdad9b user: jacob tags: trunk | |
| 10:58 | Differences between protocols: remove the entire paragraph about environment variables. It was no longer true (given that we support them in SSH-2 now), and the new situation was probably too complex to explain in an introductory chapter. And the utility of setting them seems to be marginal these days given the lack of server support. check-in: 557443edea user: jacob tags: trunk | |
| 10:41 | Mention PSFTP on title page check-in: 16816a48a2 user: jacob tags: trunk | |
|
2004-10-22
| ||
| 11:50 | Better bounds checking in the exit-signal handler. check-in: b0f77e81a6 user: simon tags: trunk | |
| 11:47 | We ought to be using the ssh_pkt_* routines for the messages which we process at any time in the rdpkt routines, as well as everywhere else. check-in: dcee5dd92a user: simon tags: trunk | |
|
2004-10-21
| ||
| 05:59 | I just had a need to decode a piece of Zlib data from out of the middle of a PDF. So here's a modification to sshzlib.c which enables it to be compiled into a standalone Zlib decoder if you define ZLIB_STANDALONE. As an added bonus, it (both standalone and in PuTTY) also validates the Zlib header, just to make sure someone hasn't defined a new compression format. check-in: 2fd4126e27 user: simon tags: trunk | |
|
2004-10-19
| ||
| 08:54 | Munge line-drawing description to match current naming and order of options (in the Windows version), and hopefully to clarify distinction between line charset and local font, which has occasionally foxed me. Cross-reference the Translation panel reference section from the intro section in using.but and mention line-drawing characters there also. check-in: 8e4659b566 user: jacob tags: trunk | |
|
2004-10-17
| ||
| 19:41 | Add support for logging "exit-signal", why not. This is disgustingly huge because old versions of OpenSSH got the message format wrong, so we have to infer which format is in use. Tested with Debian stable OpenSSH (3.4p1), with `uint32' packet, and lshd, which uses the correct `string' packet, and also let me test "core dumped" and the explanatory message. check-in: 4b7166ef39 user: jacob tags: trunk | |
| 16:22 | Support the SSH-2 mechanism for sending signals to a running session. Neither of the SSH servers I conveniently have access to (Debian stable OpenSSH -- 3.4p1 -- and lshd) seem to take a blind bit of notice, but the channel requests look fine to me in the packet log. I've included all the signals explicitly defined by draft-ietf-secsh-connect-19, but I've put the more obscure ones in a submenu of the specials menu; there's therefore been some minor upheaval to support such submenus. check-in: e613d9b7a0 user: jacob tags: trunk | |
| 10:32 | We shouldn't offer the Break special when we don't have a session to send it down. (A side effect of fixing this is that ssh->mainchain is set to NULL when it closes, which might avoid other sorts of trouble.) While we're here, don't bother offering SSH1_MSG_IGNORE if we believe the remote will barf on it. check-in: 48e6df5b2f user: jacob tags: trunk | |
| 09:44 | Telnet specials menu was not being reinstated after a session was restarted in the same window (Windows version only). Policy change: it's now the backend's responsibility to call update_specials_menu() at the start of a session (or whenever it feels ready), if it has any special commands. Otherwise the menu won't be displayed. check-in: df3849f621 user: jacob tags: trunk | |
|
2004-10-16
| ||
| 09:17 | Markus Kuhn's UTF-8 page http://www.cl.cam.ac.uk/~mgk25/unicode.html#activate feels strongly that it should be easy to make _all_ your applications work in UTF-8 mode, without having to remember a switch for each one. Every application should simply note a UTF-8 locale setting and switch into UTF-8 mode automatically. Therefore, for the Unix port only, there's now a checkbox, enabled by default, which causes the drop-down Translation box to be overridden if the locale indicates UTF-8. Anyone who doesn't like this, or doesn't like MGK, is welcome to turn it straight back off. I'm not _completely_ convinced by MGK's argument myself; for xterm/pterm to do _useful_ UTF-8 you also need to specify a decently Unicode-capable font, and there's no way _that_ can be automagically done on noticing a locale setting. But it's a de facto standard (i.e. xterm does it :-) so I might as well at least be _able_ to support it. check-in: c05196ad7c user: simon tags: trunk | |
| 07:36 | Fix bug in scrollback compression, which manifested when attempting to encode a very long (len>128) run of the same literal. check-in: 8d37d576b7 user: simon tags: trunk | |
| 05:56 | Moved the environment variables config block out of the Telnet panel into the Connection panel, and implemented support for the SSH2 "env" request. (I haven't yet found a server which accepts this request, so although I've visually checked the packet log and it looks OK, I haven't yet been able to do a full end-to-end test.) Also, the `pty' backend reads this data and does a series of `putenv' commands before launching the shell or application. This is mostly because in last week's UTF-8 faffings I got thoroughly sick of typing `export LANG=en_GB.UTF-8' every time I started a new testing pterm, and it suddenly occurred to me that this would be precisely the sort of thing you'd want to have pterm set up for you, particularly since you can configure it alongside the translation settings and so you can ensure they match up properly. check-in: a859123a17 user: simon tags: trunk | |
|
2004-10-15
| ||
| 18:32 | Mention plink's new -N option in usage and man page. check-in: f398d0b241 user: jacob tags: trunk | |
| 07:37 | Fix two memory leaks in the new code. (There's no point compressing the scrollback if you then leak away all the memory you saved!) One of the leaks - by far the bigger of the two - was in my temporary diagnostic function cc_check(), which is particularly embarrassing :-) check-in: 620424d7a0 user: simon tags: trunk | |
| 07:25 | And fix _cursor_ display on double-width double-width characters (as it were). check-in: e281797263 user: simon tags: trunk | |
| 07:17 | Double-height and double-width line attributes (ESC#3, ESC#4, ESC#6) were not working correctly with double-width Unicode characters (CJK). check-in: ea8e22ac07 user: simon tags: trunk | |
| 06:51 | Add missing check_boundary() calls in destructive backspace handler. check-in: f19e9e6ded user: simon tags: trunk | |
| 06:42 | A combining character on U+0020 SPACE stops it from being `uninteresting' to the clipboard processing. check-in: 0e05808329 user: simon tags: trunk | |
| 06:29 | Mark the trial decompress in every call to compressline() with the XXX-REMOVE-BEFORE-RELEASE tag. check-in: 00a7e068ee user: simon tags: trunk | |
| 06:14 | Don't forget to flush the bidi cache when the user enables or disables bidi or shaping, otherwise they'll have to do a manual screen refresh to see any difference. check-in: 22fc1ead4c user: simon tags: trunk | |
| 06:11 | Store line widths in the bidi cache, so we don't fail to re-bidi a line when the window size changes. check-in: da6aad9925 user: simon tags: trunk | |
| 05:48 | Fix many bugs in resizeline(). check-in: 48ba521b21 user: simon tags: trunk | |
| 04:28 | Fix applying combining characters to double-width characters. check-in: 424c2ef604 user: simon tags: trunk | |
| 04:16 | Fix Windows redraw problem on RH half of wrapped lines. (term_paint was checking whether lattr == LATTR_NORM, where it should have been checking (lattr & LATTR_MODE) to mask off LATTR_WRAPPED et al. check-in: 43382ea21b user: simon tags: trunk | |
| 04:06 | I broke ordinary line wrapping as a result of retiring cpos. Oops. check-in: 2c85376278 user: simon tags: trunk | |
| 03:51 | Fix cursor display on a combined character cell. check-in: 5b0b76fdd5 user: simon tags: trunk | |
| 03:22 | Mark cc_check() and all calls to it with the new XXX-REMOVE-BEFORE-RELEASE tag, since they're performance-intensive. And now that I'm reasonably confident of remembering to remove them before the next release, I feel less guilty about adding them willy- nilly all over the place, so I've shoved in a couple more for now :-) check-in: 84fb320ebc user: simon tags: trunk | |
| 03:16 | I'm instituting a policy that before every release I will grep the PuTTY source for the word XXX-REMOVE-BEFORE-RELEASE, and not release until I've got rid of all of them. Hence, here's an addition to the release checklist which will remind me to do so. I don't want this mechanism to seriously inhibit a release by being a placeholder for a large piece of work we might never get round to. It should be used only in cases where it's _simple_ to change the offending code: for example, a performance-impacting diagnostic might be invaluable while testing nightly snapshots but wouldn't want to slow down everyone's next release, and it's easy to get rid of on release day. check-in: 60ff6fea69 user: simon tags: trunk | |
|
2004-10-14
| ||
| 11:42 | First-stage support for Unicode combining characters. The `chars' array of each `termline' structure now contains optional additional entries after the normal number of columns, which are used to chain a linked list of combining characters off any primary termchar that needs it. This means we support arbitrarily many combining characters per cell (unlike xterm's hard limit of 2). Cut and paste works correctly (selecting a character cell containing multiple code points causes all those code points to be cut and pasted). Display works by simply overlaying all the relevant characters on top of one another; this is good enough for Unix (xterm does the same thing), and mostly seems OK for Windows except that the Windows Unicode fonts have a nasty habit of not containing most of the combining characters and thus overlaying an unknown-code-point box on your perfectly good base glyph. I had no idea how to add support in the Mac do_text(), so I've simply stuck in an assertion that will trigger the first time a combining character is displayed, and hopefully this will bite someone with the clue to fix it. check-in: 873b9560c1 user: simon tags: trunk | |
|
2004-10-13
| ||
| 08:43 | Implement part of `ssh2-generality': introduce the ability to tell PuTTY / Plink not to run a remote shell/command at all. Supported in the GUI configuration and via the (OpenSSH-like) -N command-line option. No effort is currently made to arrange `nice' UI properties. If you do this in GUI PuTTY, a full-size terminal window will still be created, and will sit there with almost nothing in it throughout your session. If you do it in Plink, Plink will not accept any kind of request to terminate gracefully; you'll have to ^C or kill it. Nonetheless, even this little will be useful to some people... check-in: ec1afd9c5e user: simon tags: trunk | |
| 08:35 | Fix segfaults in terminal resizing, introduced by re-engineering. check-in: a6f541d35b user: simon tags: trunk | |
| 07:29 | I think we've been told before that you're not supposed to CloseHandle() the thing returned from MonitorFromPoint. Certainly MS Visual Studio's debugger complained about it just now. CloseHandle() call removed. check-in: d3b96a42ab user: simon tags: trunk | |
| 07:10 | Fix '/*' in comment. check-in: 8e5a2d6820 user: jacob tags: trunk | |
| 06:50 | Re-engineering of terminal emulator, phase 1. The active terminal screen is no longer an array of `unsigned long' encoding 16-bit Unicode plus 16 attribute bits. Now it's an array of `termchar' structures, which currently have 32-bit Unicode and 32 attribute bits but which will probably expand further in future. To prevent bloat of the memory footprint, I've introduced a mostly RLE-like compression scheme for storing scrollback: each line is compressed into a compact (but hard to modify) form when it moves into the term->scrollback tree, and is temporarily decompressed when the user wants to scroll back over it. My initial tests suggest that this compression averages about 1/4 of the previous (32 bits per character cell) data size in typical output, which means this is an improvement even without counting the new ability to extend the information stored in each character cell. Another beneficial side effect is that the insane format in which Unicode was passed to front ends through do_text() has now been rendered sane. Testing is incomplete; this _may_ still have instabilities. Windows and Unix front ends both seem to work as far as I've looked, but I haven't yet looked very hard. The Mac front end I've edited (it seemed obvious how to change it) but I can't compile or test it. As an immediate functional effect, the terminal emulator now supports full 32-bit Unicode to whatever extent the host platform allows it to. For example, if you output a 4-or-more-byte UTF-8 character in Unix pterm, it will not display it properly, but it will correctly paste it back out in a UTF8_STRING selection. Windows is more restricted, sadly. check-in: fd15c23f41 user: simon tags: trunk | |
|
2004-10-08
| ||
| 07:38 | faq-alternate-localhost: You can now download the fix directly rather than having to go through MS support. check-in: 52297f2907 user: jacob tags: trunk | |
|
2004-10-07
| ||
| 05:19 | faq-permission: xref licence check-in: 82d263ee0a user: jacob tags: trunk | |
|
2004-10-06
| ||
| 17:31 | X forwarding changes: - new function platform_get_x_display() to find a sensible local display. On Unix, the Gtk apps weren't taking account of --display when determining where to send forwarded X traffic. - explicitly document that leaving X display location blank in config tries to do something sensible (and that it's now blank by default) - don't override X11Display setting in plink, since that's more properly done later check-in: 3d586c00d5 user: jacob tags: trunk | |
|
2004-10-01
| ||
| 19:33 | `ssh-log-pw-blank': known password fields are now omitted from SSH packet logs by default (although they can be included). There's also an option to remove session data, which is good both for privacy and for reducing the size of logfiles. check-in: a52cfa28f7 user: jacob tags: trunk | |
|
2004-09-29
| ||
| 18:57 | Mention the negotiated SSH-2 MAC algorithm(s) in the Event Log. (It should be possible to at least see what MAC is in use without going to a SSH packet log.) check-in: c7e8751c9d user: jacob tags: trunk | |
| 07:38 | Report details in Event Log when receiving SSH2_MSG_CHANNEL_OPEN_FAILURE. check-in: 860ea1bd0c user: simon tags: trunk | |
|
2004-09-28
| ||
| 15:42 | Line (as opposed to block) cursors were being displayed when they shouldn't have been, including when they were blinked off. Fixes Debian bug #272877. check-in: f3871b7c8f user: jacob tags: trunk | |
|
2004-09-26
| ||
| 19:23 | "Incoming packet was garbled on decryption": I think this could in principle be due to corruption on the wire? check-in: bf13a7252a user: jacob tags: trunk | |
|
2004-09-22
| ||
| 17:38 | Treat USER specially in event logging of Telnet ENVIRON option; it's occasionally been a pain that the username wasn't visible in the Event Log. check-in: 7a3f30def7 user: jacob tags: trunk | |
| 17:15 | Document telnet_keyboard more completely, cross-reference from "Special Commands" section, and tweak option description in code. check-in: 05721e69bd user: jacob tags: trunk | |
| 09:07 | faq-missing-slash: the missing-slash-in-PSFTP OpenSSH bug keeps coming up. check-in: 0cea8e2c2b user: jacob tags: trunk | |
|
2004-09-21
| ||
| 16:04 | Add `OSU_1.5alpha4' to BUG_CHOKES_ON_SSH1_IGNORE; this is apparently enough to enable login with this version. (I'd suspected as much -- see ssh.c CVS log 1.299 [r3359] -- and Geoffrey Hughes has now confirmed this.) check-in: 00d9c804fc user: jacob tags: trunk | |
| 11:49 | `ampersat-in-username': tweak `strchr' to `strrchr' where necessary to consistently support usernames containing `@'. check-in: b6d76d9903 user: jacob tags: trunk | |
|
2004-09-20
| ||
| 17:10 | Reformat special commands to use \b instead of \dt / \dd. check-in: f7b2b4d1f7 user: jacob tags: trunk | |
| 17:06 | Explicitly list all the special commands supported by PuTTY. check-in: 2e3478a3bf user: jacob tags: trunk | |
| 16:42 | Add accelerator for "Special Command" sub-menu. check-in: 7721346dbc user: jacob tags: trunk | |
|
2004-09-19
| ||
| 18:49 | First gentle encouragement to direct mirroring efforts to regions where we don't already _have_ lots of mirrors. check-in: 7383d2409d user: jacob tags: trunk | |
|
2004-09-17
| ||
| 09:26 | Make it a bit easier to find our explanation of `raw' mode. check-in: 95b6943b86 user: jacob tags: trunk | |
|
2004-09-16
| ||
| 10:44 | Tweak language re "Remote ports [accept connections from other hosts]" check-in: d7b7a43913 user: jacob tags: trunk | |
|
2004-09-12
| ||
| 17:02 | `dwalin' spotted a NULL dereference in the new makekey() error handling. Oops. check-in: fa5478bc99 user: simon tags: trunk | |
|
2004-09-09
| ||
| 13:00 | Mention requirement for Gtk+-1.2. Other minor cleanups. check-in: 3966759b11 user: jacob tags: trunk | |
| 05:37 | Make it clearer that the XP SP2 hotfix is described in the KB article. check-in: 938ea3b2ea user: jacob tags: trunk | |
|
2004-09-03
| ||
| 08:46 | Improved diagnostics in port-forwarding: we now log any error returned by pfd_addforward() rather than just ignoring it. check-in: 7ab101a451 user: jacob tags: trunk | |
| 07:28 | In SSH-2, list each compression algorithm only once. (No particular reason for this change, just tidiness.) check-in: 60397c817a user: jacob tags: trunk | |
|
2004-09-01
| ||
| 05:19 | Bleh, grammar. check-in: 8c57528772 user: jacob tags: trunk | |
| 05:12 | Documentation existence of SOCKS5 CHAP authentication. check-in: 93846ed333 user: jacob tags: trunk | |
|
2004-08-31
| ||
| 13:26 | Ben Hutchings points out that the initial states of the key-type radio buttons and menu items are inconsistent. check-in: 220e635f4d user: simon tags: trunk | |
|
2004-08-30
| ||
| 08:23 | Credit Malcolm Smith in the copyrights. check-in: d4475a5d51 user: simon tags: trunk | |
| 08:11 | Malcolm Smith's patch to support CHAP (digest-based) authentication when talking to SOCKS 5 proxies. Configures itself transparently (if the proxy offers CHAP it will use it, otherwise it falls back to ordinary cleartext passwords). check-in: ec02c8cc8f user: simon tags: trunk | |
|
2004-08-28
| ||
| 11:51 | More sensible error handling when we receive an SSH1 public key modulus of zero (!!), and also a robustness fix in ssh1_rdpkt which I happened to notice while debugging that. check-in: bea2fe89de user: simon tags: trunk | |
|
2004-08-27
| ||
| 08:33 | faq-alternate-localhost language tweak check-in: ed04d98dac user: jacob tags: trunk | |
| 07:24 | Handle WM_SYSCOLORCHANGE if using system colours. (Resets the whole palette, whereas ideally it would restrict itself to the affected colour slots.) check-in: 3bb030b079 user: jacob tags: trunk | |
|
2004-08-25
| ||
| 04:20 | Add comments indicating why these manifest files are present at all. check-in: 95e0a50cec user: jacob tags: trunk | |
|
2004-08-20
| ||
| 09:04 | Patch to use enum constants for cfg.funky_type instead of numeric literals, from "Anthony" <410C2A86.2010003@mail2004.ajrh.net>. check-in: c811f4d966 user: jacob tags: trunk | |
| 04:09 | alternate-localhost: add "apparently" since none of this is first-hand check-in: fd0f77c9c3 user: jacob tags: trunk | |
| 03:32 | alternate-localhost WinXP SP2: apparently SP2 fixes the problem with Terminal Services that meant you needed to use alternate-localhost in the first place! check-in: d70b051289 user: jacob tags: trunk | |
|
2004-08-19
| ||
| 10:05 | Fix an annoying inconsistency that's been bugging me for years: "plink host" and "plink user@host" differed in that the former attempted to load session `host' while the latter didn't. Now both forms attempt to load a session. Someone will probably complain, but hey. check-in: d9558ed80a user: jacob tags: trunk | |
| 08:15 | Remove claim in usage text that Plink defaults to SSH, since it's not true in a number of situations. check-in: 6c160c851e user: jacob tags: trunk | |
| 07:58 | Add the WinXPSP2 alternate-localhost problem to the FAQ. check-in: 87c50c8685 user: jacob tags: trunk | |
|
2004-08-18
| ||
| 05:24 | Mention the mirroring guidelines on the web. check-in: 25ebc5f04a user: jacob tags: trunk | |
|
2004-08-17
| ||
| 09:08 | Someone complained that their keyboard-interactive password prompt was being truncated - it was from OpenSSH on HP/UX and had all sorts of stuff in it ("last successful login" etc). Bodged it by bumping up the space allocated in the fixed array for a password prompt. Also added an indication that the prompt is being truncated, as required by draft-ietf-secsh-auth-kbdinteract-06. (NB that before this checkin, there was a more-or-less harmless buffer overread where if we ever received a keyboard-interactive prompt with echo=1, we'd probably spew goo on the terminal; fixed now.) check-in: 4614439a8b user: jacob tags: trunk | |
|
2004-08-16
| ||
| 09:43 | Update comment on dupprintf(). check-in: b56fc779d2 user: simon tags: trunk | |
| 04:38 | Patch from Kurt Roeckx: apparently on Debian amd64, the ut_time member of struct utmp is not equivalent to time_t (it's 32-bit). From Debian bug#265910. check-in: 73d18097ab user: jacob tags: trunk | |
|
2004-08-15
| ||
| 12:21 | Note behaviour of `cd' with no arguments. check-in: b479a51631 user: jacob tags: trunk | |
|
2004-08-14
| ||
| 08:04 | Implement `Restart Session', in both Unix and Windows PuTTY. Largely because Owen questioned whether it was really easy enough to be labelled `fun' in the bug database :-) check-in: 3ba6f1b539 user: simon tags: trunk | |
| 07:24 | ssh_free() should not call log_free(); it's for the front end to decide whether the logctx is finished with or not. check-in: f83300ea9e user: simon tags: trunk | |
|
2004-08-12
| ||
| 20:08 | Extra logging in SSH-2 port-forwarding. Most obviously, the opening of a forwarded X11 connection is now logged as well as the closing; but we also log the peer IP/port in case it's interesting, and log the reason for refusing to honour a channel open. check-in: 8c739cf713 user: jacob tags: trunk | |
| 15:55 | add xref at the bottom of X11 section to options in config.but check-in: 1ffac7eb65 user: jacob tags: trunk | |
|
2004-08-11
| ||
| 20:02 | Flush the logfile reasonably frequently in `printable output only' and `all session data' modes, without completely mauling the performance, by fflush()ing once per term_out(). If anyone complains I suppose we can make this optional. check-in: 5a5d921af2 user: jacob tags: trunk | |
| 04:04 | My new rsync mirror setup might need attention when we do a new release. Add to checklist. check-in: da51daeff9 user: simon tags: trunk | |
|
2004-08-10
| ||
| 12:12 | Remove the email address from the footer of the HTML manual, and replace it with a link to the Feedback page, as we have long since done everywhere else on the PuTTY website. check-in: 0bd6689864 user: simon tags: trunk | |
| 11:50 | Update link to s2putty. check-in: 788030bc57 user: jacob tags: trunk | |
|
2004-08-09
| ||
| 12:04 | Oops - merge version number bump from branch-0-55 (such was the plan). check-in: 31044e1180 user: jacob tags: trunk | |
| 12:01 | Apparently sending the tar output to stdout rather than a file causes tar to pad with trailing NULs, which slightly upsets old versions of gzip (1.2.4, not 1.3.x), which upsets some of our correspondents. Use -f to send it to a file instead. (It's not transparently clear what happens when you mix -f and -C; I've tested this with ixion's tar, 1.13.25.) Also add option -o to generate POSIX tar files, as for halibut/Makefile; apparently this shuts up a `trailing garbage' error from WinZip. check-in: 8dfaf512b2 user: jacob tags: trunk | |
|
2004-08-05
| ||
| 09:10 | Fix for `mazovia': add Mazovia translation table based on info from Slawomir Oczkowski and "Diron". check-in: 63943c9436 user: jacob tags: trunk | |
|
2004-08-03
| ||
| 18:43 | When using remote forwarding with SSH-1, you'd get bogus 'SSH1 cannot handle source address spec ":10023"; ignoring' type errors in the Event Log. The forwarding would go ahead as normal so this is cosmetic. Fixed. check-in: d385f8c410 user: jacob tags: trunk | |
| 08:23 | Merge minor usage message tweaks (but not version number changes) from branch-0-55. check-in: 0dad1fc016 user: jacob tags: trunk | |
|
2004-08-01
| ||
| 07:07 | Merged SSH1 robustness changes from 0.55 release branch on to trunk. check-in: 461113bfb0 user: simon tags: trunk | |
|
2004-07-30
| ||
| 04:38 | Tweak to make it more obvious that the System menu is only available from the _terminal_ window -- should be obvious from context but the nearest context is some distance away. check-in: b9230cffc9 user: jacob tags: trunk | |
|
2004-07-29
| ||
| 10:44 | Improve robustness in modpow(). check-in: 62ab6c37f7 user: simon tags: trunk | |
| 05:23 | "Where does PuTTY store its data?" -- mention where Unix PuTTY stores its data check-in: b8743e20af user: jacob tags: trunk | |
| 05:09 | Talk about Halibut; mention Unix `install' target; mention lack of Makefiles if you check out directly from CVS as it's come up once or twice. check-in: 52f743d33d user: jacob tags: trunk | |
|
2004-07-28
| ||
| 06:04 | Another wart in the command-line processing: if the user just specifies `-load sessname', and that mentions a hostname, that should be sufficient to start a connection. check-in: 99ccf1dbe3 user: jacob tags: trunk | |
|
2004-07-27
| ||
| 10:20 | Fix double-free in X selection code. check-in: cd12e8a582 user: simon tags: trunk | |
|
2004-07-25
| ||
| 14:52 | Attempt to make Windows pointer hiding more robust by ignoring MOUSEMOVE and NCMOUSEMOVE messages where nothing actually changes. It seems Windows likes to send such messages occasionally when other stuff is going on (e.g., in other windows). (Also spotted by Franco Barber <20040122055232.GA8168@febsun.cmhnet.org>.) check-in: 0605efdcdd user: jacob tags: trunk | |
| 11:10 | PSFTP was ignoring `-1' and `-2' and always using SSH-2 with fallback to SSH-1. It also ignored any settings forbidding fallback to SSH-1. Ignoring `-1' and `-2' is hardly the end of the world, as it'd be difficult to think of a realistic situation where fallback didn't do the right thing and PSFTP was still useful. However, ignoring a user's `SSH-2 only' setting was a bit rude. check-in: 3a402d8dab user: jacob tags: trunk | |
| 09:00 | Fix for `psftp-pscp-ignore-load': Default Settings is now loaded before "-load" is processed so that it doesn't clobber it. I've also changed the semantics of "-load" slightly for PSCP, PSFTP, and Plink: if it's specified at all, it overrides (disables) the implicit loading of session details based on a supplied hostname elsewhere (on the grounds that the user is more likely to want the "-load" session than the implicit session). (PuTTY itself doesn't do implicit loading at all, so I haven't changed it.) This means that all the PuTTY tools' behaviour is now consistent iff "-load" is specified (otherwise, some tools have implicit-session, and others don't). However, I've not documented this behaviour, as there's a good chance it will be swept away if and when we get round to sorting out how we deal with settings from multiple sources. It's intended as a "do something sensible" change. check-in: 81963a938a user: jacob tags: trunk | |
| 07:12 | Text around -load option "(although Plink still requires an explicitly specified host name)" didn't appear to actually be true any more (see `cmdline-host-override'). Removed check-in: 0bf8cf2a62 user: jacob tags: trunk | |
|
2004-07-24
| ||
| 14:25 | Comment explaining `need_save' argument to cmdline_process_param(). check-in: 1edef308e8 user: jacob tags: trunk | |
| 07:37 | In faq-bce, mention that the non-immediate effect of changing BCE only applies to versions prior to 0.54. check-in: 06491e28dd user: jacob tags: trunk | |
|
2004-07-22
| ||
| 07:38 | Add a section on the errors you see when you attempt to load a key of the wrong type. check-in: 89aee0114d user: jacob tags: trunk | |
| 06:18 | Mention bps units of terminal speeds (FWLIW). check-in: 17af8ab389 user: jacob tags: trunk | |
|
2004-07-20
| ||
| 15:13 | We shouldn't reference off the end of the display line when checking for UCSWIDE. Thanks Jacob, for catching this with valgrind. check-in: 74194b842e user: simon tags: trunk | |
| 10:34 | Limitations of -m option. check-in: 58c72ddac5 user: jacob tags: trunk | |
| 10:30 | Mention the dangers of the "-pw" option. check-in: 82de58625e user: jacob tags: trunk | |
|
2004-06-27
| ||
| 06:04 | grammer check-in: f020e52bca user: jacob tags: trunk | |
|
2004-06-20
| ||
| 12:07 | Add a configuration option for TCP keepalives (SO_KEEPALIVE), default off. No very good reason, but I've occasionally wanted to frob it to see if it makes any difference to problems I'm having, and it was easy. Tested that it does actually cause keepalives on Windows (with tcpdump); should also work on Unix. Not implemented on Mac (does nothing), but then neither is TCP_NODELAY. Quite a big checkin, much of which is adding `keepalive' alongside `nodelay' in network function calls. check-in: d6cbea6730 user: jacob tags: trunk | |
|
2004-06-15
| ||
| 06:31 | hide scrollbar - you can use more than just Shift+PgUp/Dn to scroll now. check-in: 6f546f5552 user: jacob tags: trunk | |
| 06:11 | Mention "beep using the PC speaker" on general principles (although there isn't much to say about it). check-in: 8e5c9c09ae user: jacob tags: trunk | |
| 06:00 | It's probably worth mentioning that SSH stands for `secure shell'. check-in: 8a64b9c7d6 user: jacob tags: trunk | |
| 05:38 | Add index.but to build. check-in: b1216dd33f user: jacob tags: trunk | |
| 05:17 | Fix Halibut warnings about merging distinct-case index terms. check-in: 95dc070a37 user: jacob tags: trunk | |
| 04:50 | `Authenticating with key' message when using a local key file in SSH2 was not contained within a test for FLAG_VERBOSE. Thanks to Paul Gotch for pointing this out. check-in: 916230d9e9 user: simon tags: trunk | |
|
2004-06-10
| ||
| 05:01 | Explain that the configurable window title is only an initial setting. check-in: 9aa6a0a405 user: jacob tags: trunk | |
|
2004-06-03
| ||
| 05:36 | Spotted by Dimitry Andric: `ssh-termspeed' implementation was not taking account of coroutines and used local variables over a crFoo. I believe the impact was cosmetic, affecting the speeds reported in the Event Log only. I've put the variables `ispeed' and `ospeed' in the main ssh_tag structure, even though they're only live for a short duration; I did this rather than create a new state struct for ssh1_protocol() (since ssh_tag already has short-duration junk like portfwd_strptr). check-in: dc2e4b9a58 user: jacob tags: trunk | |
|
2004-05-31
| ||
| 09:01 | RJK's patch to enable PuTTY's X forwarding to connect to local X servers using Unix sockets (on Unix only, obviously!). check-in: 8f708bbf81 user: simon tags: trunk | |
|
2004-05-26
| ||
| 04:19 | In the entry about twiddling Windows TCP timeouts, mention that it's OK to create the registry values, and link back to the original MS KB articles. check-in: 474fc44886 user: jacob tags: trunk | |
|
2004-05-24
| ||
| 12:12 | Typos in Borland Makefile pointed out by Arnaud Desitter check-in: 621b8fe48d user: jacob tags: trunk | |
| 06:30 | Arnaud Desitter points out a silly mistake in retrieve_cutbuffer() (don't test for `int *nbytes' being <= 0, test for the integer it points to being <= 0!). check-in: fdd818ac08 user: simon tags: trunk | |
| 04:55 | There do in fact appear to be help topics for the Arabic and bidi options, so use them. Also use an accelerator that actually exists for bidi. check-in: d09803c3a2 user: jacob tags: trunk | |
|
2004-05-22
| ||
| 09:21 | Fix indentation after Richard B's patch in rev 1.137 [r3409]. check-in: bc17c95964 user: simon tags: trunk | |
| 06:09 | Halibut now warns about code paragraph lines which are too long to fit in the text output format. If only to stop myself getting pestered with cron stderr messages every night, here are some changes that remove over-long code lines from the PuTTY manual. check-in: da285a278c user: simon tags: trunk | |
| 06:04 | Fix Halibut syntax errors in the new shaping/bidi doc sections. check-in: 160e0b1647 user: simon tags: trunk | |
| 05:36 | At last! After much delay, much faffing back and forth, and much enhancement and fiddling, I have now massaged Arabeyes' first patch into a form I'm happy to check in. Phew. check-in: 02962abb0e user: simon tags: trunk | |
|
2004-05-20
| ||
| 07:48 | I added more detail to the `Authentication failed at PuTTY X11 proxy' error message some time ago, but forgot to change the wording in the error messages chapter. check-in: 49edce0555 user: simon tags: trunk | |
|
2004-05-06
| ||
| 06:27 | A user at ARM just found his home directory was _world_ writable, and this caused public key authentication to fail in spite of following our instructions to the letter. It can't hurt to s/g-w/go-w/ here, just in case! check-in: b35836a8bd user: simon tags: trunk | |
|
2004-04-29
| ||
| 09:41 | Mention -scp/-sftp check-in: aab2f14c7b user: jacob tags: trunk | |
|
2004-04-28
| ||
| 12:26 | "Does PuTTY support storing settings, so I don't have to change them every time?" appears to be a FAQ. (Some renumbering will ensue.) check-in: 3ee8408f7f user: jacob tags: trunk | |
| 12:16 | update pocketputty URL check-in: dc54362daa user: jacob tags: trunk | |
|
2004-04-27
| ||
| 13:23 | Krzysztof Kowalczyk notes that 'etastr' can overflow if the times involved start to get silly. Replace it with a dynamically allocated string instead. check-in: bcf91bc3f3 user: jacob tags: trunk | |
| 13:16 | Krzysztof Kowalczyk's fix for "Assertion failed: actuallen <= len" when transferring files >2G with PSCP. (I'm unable to actually test this works, but it looks plausible, and small transfers aren't mangled.) check-in: 58b1f30aef user: jacob tags: trunk | |
| 07:57 | Remove now-unused variable pwrstat. Spotted by Krzysztof Kowalczyk. check-in: 1108804865 user: jacob tags: trunk | |
| 07:52 | Add notes on our globs' incompatibilities with POSIX check-in: 3295072e20 user: jacob tags: trunk | |
| 07:31 | Various tweaks to header comments to remind me which bits are meant to be platform-independent, etc. check-in: 9bda77c20e user: jacob tags: trunk | |
|
2004-04-25
| ||
| 17:18 | Implement `pscp-select-backend'. check-in: 322435bf8c user: jacob tags: trunk | |
| 10:33 | In the special case that handles selecting a session and hitting Enter, there is a structure copy of a Config, which invalidated the remote_cmd_ptr in that structure (pointing to its own remote_cmd). This was causing remote commands not to be executed in this special case. I've patched the pointer up manually (as is done in plink.c), but ugh. check-in: 71ac91fd07 user: jacob tags: trunk | |
| 04:26 | More portability fixes. check-in: 7201c604af user: simon tags: trunk | |
| 04:04 | Make mkfiles.pl less tied to PuTTY in particular, by inventing new directives that allow me to move some of the PuTTY-specific Makefile fragments into Recipe. Not complete yet, but ought to be enough for me to at least _try_ using mkfiles.pl in another project. check-in: 67adfc99d3 user: simon tags: trunk | |
|
2004-04-24
| ||
| 15:05 | In SSH, we now send terminal speeds to the server when requesting a pty (we didn't before) - `ssh-termspeed'. In the process, I've removed the individual controls on the Telnet and Rlogin panels and replaced them with one on the Connection panel (since they were backed by the same storage anyway). The terminal speeds sent in SSH are logged in the Event Log. check-in: fd231b00d9 user: jacob tags: trunk | |
| 07:25 | Tweak documentation of -V option. check-in: 1320ac3f25 user: jacob tags: trunk | |
|
2004-04-17
| ||
| 15:25 | Add -V for version information to plink, pscp, and psftp. check-in: f304a84750 user: owen tags: trunk | |
|
2004-04-08
| ||
| 07:38 | Added indexing for the first three chapters of the manual. This is a big job :-/ check-in: 113d20de64 user: simon tags: trunk | |
|
2004-04-01
| ||
| 11:34 | Clean up Makefile now that Halibut's new command-line options make life easier. check-in: 5425737106 user: simon tags: trunk | |
| 11:33 | What was that rogue man-mindepth directive doing in here? check-in: eb77db32a2 user: simon tags: trunk | |
|
2004-03-31
| ||
| 06:50 | Add `can I put PuTTY on a coverdisk / bundle it / etc' to the FAQ in case people are incapable of spotting it on the Feedback page. Also add to both locations Owen's point about first-line support. check-in: d0461fadad user: simon tags: trunk | |
| 03:00 | grammer check-in: b347690962 user: jacob tags: trunk | |
|
2004-03-30
| ||
| 15:35 | Reasonably grotty hacks so that the droppings left by the man page generation don't interfere with the main HTML doc generation. check-in: a417aef738 user: jacob tags: trunk | |
| 05:36 | Miscellaneous tinkering: - remove a couple of "fixed in 0.52" (or before) type questions - mention Mac OS X port that someone was working on - add a missing {Question} check-in: 2b0acbad1f user: jacob tags: trunk | |
|
2004-03-29
| ||
| 05:37 | PayPal is actually _much_ easier to work with than e-gold these days, so I've reversed the order in the donations question. check-in: ab9073ac97 user: simon tags: trunk | |
|
2004-03-26
| ||
| 09:18 | More experimental hackery for `win-dead-keys'. Works for me as well as it did in the one case I can test, but I suspect this isn't the whole story. Bletch. check-in: bedf0e581d user: jacob tags: trunk | |
|
2004-03-25
| ||
| 05:33 | tweak text about mouse reporting and copy and paste to indicate that shift's only necessary for mouse-based actions (since we seem to be growing more copy-and-paste options) check-in: 9b5b843723 user: jacob tags: trunk | |
| 03:03 | Hmm. Better turn that `make' into a `make -s', or else my nightly snapshot cron job will fill my mailbox with goo every day. check-in: de9af9cf40 user: simon tags: trunk | |
|
2004-03-24
| ||
| 14:03 | Use $(HALIBUT) variable consistently. check-in: 5bba68ed8d user: jacob tags: trunk | |
| 13:51 | Oh yes, and the Unix Makefile needs to know that as well. check-in: a0abe4a0a9 user: simon tags: trunk | |
| 13:50 | The Unix source archive ought to have pre-built docs (in particular man pages) in it, if only so that non-Halibut-users have what they need. check-in: 2ca7e92c9b user: simon tags: trunk | |
| 13:36 | Now that Halibut is capable of generating man pages better than I can do it by hand, I've converted the man page set from Unix PuTTY into Halibut format, and enhanced the Makefile so it will build them. At some future point this will also allow me to include the man pages as an appendix in the main manual (once I _have_ a main manual for Unix PuTTY). check-in: 8ed8af69e7 user: simon tags: trunk | |
| 08:53 | Fix from Thomas Henlich for bug in dead key support. I've reproduced the problem and verified the fix on Win2K with the US-International keyboard layout. (Closes: `win-dead-keys') <20040323143836.GA40414@rcs.urz.tu-dresden.de> check-in: 3efd8415bb user: jacob tags: trunk | |
|
2004-03-17
| ||
| 10:03 | Remove GetSystemPowerStatus() - should resolve hard-hangs check-in: 64f4920516 user: owen tags: trunk | |
|
2004-03-16
| ||
| 02:18 | Mention explicitly that offering us a reciprocal link is a very silly way to persuade us to link to a website. check-in: 6bd33101be user: simon tags: trunk | |
|
2004-03-11
| ||
| 04:59 | Tweak doc to reflect wrinkle in Owen's fixed implementation. check-in: 0cac237bdc user: jacob tags: trunk | |
|
2004-03-10
| ||
| 11:11 | Make `Copy all to Clipboard' copy all non-empty lines from the scrollback and the terminal to the clipboard, rather than just the content before the cursor. Should fix copyall-to-cursor. check-in: 080a2aa1ea user: owen tags: trunk | |
|
2004-03-05
| ||
| 13:01 | Finally correct REGEDIT syntax for "saving in a file" hack. (verified on Win2K) check-in: c59d59e737 user: jacob tags: trunk | |
|
2004-03-04
| ||
| 15:24 | Mention Links page in ports section, since there are now a number of third-party ports check-in: 7c9421dcd3 user: jacob tags: trunk | |
|
2004-03-01
| ||
| 12:17 | Mention that proxy password is saved in plain text in configuration, since we've had a couple of indignant e-mails. check-in: 0cd41d1245 user: jacob tags: trunk | |
|
2004-02-23
| ||
| 13:10 | Mention PocketPuTTY check-in: 19ffbc0f7a user: jacob tags: trunk | |
|
2004-02-22
| ||
| 10:52 | Expand "what platform" text to take account of Unix. check-in: 16bfe1ab55 user: jacob tags: trunk | |
| 09:05 | Add (probably frustratingly) bare-bones man pages for pscp and psftp. check-in: b234a49a5a user: jacob tags: trunk | |
| 08:57 | Correct slightly misleading usage check-in: ddafdba3a3 user: jacob tags: trunk | |
| 08:48 | Minor fix in usage message check-in: 2a40a6be8f user: jacob tags: trunk | |
| 08:40 | Fix typo in -C check-in: cf6924efab user: jacob tags: trunk | |
| 08:37 | Tart up, fix outright lies, mention web docs check-in: 45e76596ab user: jacob tags: trunk | |
|
2004-02-16
| ||
| 08:38 | Couple of new FAQ questions: `what's the point of the Unix port' and `why does scrollback no longer work when I run screen'. check-in: 757cecbb9d user: simon tags: trunk | |
|
2004-02-13
| ||
| 06:19 | bloody PageRank hackers. (since no-one objected to this wording back in October) check-in: ed84158c07 user: jacob tags: trunk | |
| 05:20 | I don't think iXplorer is now sufficiently unique to mention in the docs (given that we have a Links page full of such things now) check-in: 8f703c093d user: jacob tags: trunk | |
| 01:42 | Alexei Podtelezhnikov points out that PuTTYgen's key-type default ought to have moved in sync with PuTTY's SSH version default. check-in: dfeb697d71 user: simon tags: trunk | |
|
2004-02-12
| ||
| 18:41 | Add .map files to Cygwin "clean" target check-in: b4a718318e user: jacob tags: trunk | |
| 18:40 | Makefile.cyg now generates a link map. check-in: b7bd9aa3a7 user: jacob tags: trunk | |
| 18:21 | Remove claim that there's no Unix puttygen check-in: 04ffb96117 user: jacob tags: trunk | |
| 18:20 | Missed one: sftp-slow has gone away with 0.54 check-in: 4bd7bb3717 user: jacob tags: trunk | |
| 17:26 | Bah! Knew there'd be _something_. check-in: ff49dbc8ca user: simon tags: trunk | |
| 13:45 | Modifications to the release procedure as a result of actually trying to _follow_ it for the first time :-) And also due to the fact that it now needs to mention the Unix source tarball as well. check-in: 21ee2b6ec1 user: simon tags: trunk | |
| 12:28 | Back out my temporary edit of the FAQ, to make it once again 0.54-ready. check-in: 8344daa2ec user: simon tags: trunk | |
|
2004-02-11
| ||
| 07:58 | Jacob's last-minute testing found a couple of trivial bugs in import.c, and my attempts to reproduce them in cmdgen found another one there :-) check-in: bab44f7875 user: simon tags: trunk | |
|
2004-02-10
| ||
| 13:32 | Sigh. Since Mailman breakage means we won't be releasing 0.54 today after all, I'll slightly edit those FAQ changes. check-in: a7c334f8d3 user: simon tags: trunk | |
| 13:07 | Jacob reports a segfault when using HTTP proxying under Minefield. It appears that this is because Visual C's sscanf works by first calling strlen to get the length of the string, so that its internal read-character routine can be sure of never overrunning the buffer. Quite why the internal read-char routine can't detect \0 _itself_ rather than having to have it found for it in advance I have no idea. Sigh. check-in: 3ec197ac8d user: simon tags: trunk | |
| 12:22 | Jacob's FAQ changes for 0.54. check-in: 74c857ec0e user: simon tags: trunk | |
|
2004-02-07
| ||
| 18:14 | Briefly document the "special commands" menu. check-in: 23e50f9479 user: jacob tags: trunk | |
| 17:49 | Document the new "Compromise" mouse-handling option introduced 2003-11-20 check-in: c7619015fd user: jacob tags: trunk | |
| 17:35 | Mention the Ctrl+right-click context menu now available on Windows. check-in: b4575ce886 user: jacob tags: trunk | |
| 17:21 | Update the advice about updating the wishlist post-release check-in: a1f161f987 user: jacob tags: trunk | |
| 12:17 | Update version numbers preparatory to tagging for release. check-in: d12e611422 user: simon tags: trunk | |
| 12:14 | Another admin script, to build the Unix source archive. check-in: 5b54f9b6f6 user: simon tags: trunk | |
| 12:10 | Added a wrinkle to the version.c build in the Unix makefile, which will validate an md5sums manifest and if all md5sums match will use a version number provided in a file. This should allow me to produce a Unix release source archive with the property that when unpacked and built it will produce binaries advertising themselves as `Release X.YZ', but as soon as the user starts fiddling with the sources it will revert to `Unidentified build' (though of course the user can still _explicitly_ ask for a release tag, and in fact this will override the default if any default is specified). check-in: e466cedb10 user: simon tags: trunk | |
| 11:38 | Add some Unix blurb. check-in: c22ba93d5c user: simon tags: trunk | |
| 11:36 | Silly grammatical error. check-in: 28298cc16e user: simon tags: trunk | |
| 04:02 | Charles Wilcox reported a signature validation bug with 2500-bit RSA keys. This _appears_ to be due to me computing the byte count of the key by dividing the bit count by 8 and rounding _down_ rather than up. Therefore, I can't see how this code could ever have worked on any SSH2 RSA key whose length was not a multiple of 8 bits; and therefore I'm staggered that we haven't noticed it before! OpenSSH's keygen appears to be scrupulous about ensuring the returned key length is exactly what you asked for rather than one bit less, but even so I'm astonished that _all_ keygen implementations for servers we've ever interoperated with have avoided tripping this bug... check-in: 8b68dde6cc user: simon tags: trunk | |
|
2004-02-04
| ||
| 12:39 | Host key q: mention kh2reg.py check-in: c7c545bb08 user: jacob tags: trunk | |
|
2004-02-03
| ||
| 08:47 | Patch from Theo Markettos: apparently "BSD-derived IP stacks fall over when trying to bind to the localhost interface with a sockaddr_in which has non-zero sin_zero fields." Zero sockaddr_in (and sockaddr_in6) before any use. check-in: fbed7799c5 user: jacob tags: trunk | |
| 08:36 | Patch from Colin Watson: document pterm.WarnOnClose check-in: 26037d0de4 user: jacob tags: trunk | |
|
2004-01-24
| ||
| 12:30 | Unix PuTTYgen: exists check-in: ab3d188cf0 user: jacob tags: trunk | |
| 11:16 | Reasonably thorough test suite for command-line PuTTYgen, and several bugs fixed in the process of constructing same. check-in: 1f6bbae224 user: simon tags: trunk | |
|
2004-01-23
| ||
| 07:21 | Add a man page for the new command-line PuTTYgen. check-in: ae2438c41a user: simon tags: trunk | |
| 07:21 | Couple of bits missing from the command-line help. check-in: 1280360923 user: simon tags: trunk | |
|
2004-01-22
| ||
| 13:15 | Added a command-line key generation tool. Currently builds and runs on Linux, but the (very few) platform-specific bits are already abstracted out of the main code, so it should port to other platforms with a minimum of fuss. check-in: 78dba49b08 user: simon tags: trunk | |
| 12:52 | Placate some gcc warnings. check-in: 1b3470bc88 user: simon tags: trunk | |
| 12:37 | Fix a casting bug with the length-independent sshbn code. check-in: 6b1ac946a2 user: simon tags: trunk | |
|
2004-01-21
| ||
| 15:11 | Bah! Nicolas Barry correctly points out that my async agent code simply doesn't work - if multiple concurrent agent requests are attempted, some of them will fail for no apparent reason. I assume concurrent SendMessage() calls don't work in the Windows API, or some such. So I'm commenting out the async code for the moment (there wasn't a Windows Pageant that made helpful use of it anyway yet) and returning to the drawing board. check-in: 97b606b22e user: simon tags: trunk | |
| 14:59 | Kaisuke Nakajima points out that it's unnecessary to translate negative font sizes (meaning pixels) into positive ones (points) in winstore.c, since it gets done anyway at the point of font creation; and removing the code in winstore.c means that the precise font entered by the user is saved in the config, rather than being rounded. check-in: d86c347e2d user: simon tags: trunk | |
| 13:56 | Darryl L. Miles's patch to support an optional port number argument on the PSFTP `open' command; it was arguably a bug that this command couldn't do such an obvious thing that could be done from the main command line. Also had to fix a NULL-dereference in do_sftp_cleanup in the process. check-in: 84e5eca94f user: simon tags: trunk | |
| 13:45 | Theo Markettos's unsigned-vs-signed-char pedantry patch. check-in: d58f7637c1 user: simon tags: trunk | |
| 13:41 | Two small memory leaks, also noticed by Martin Prikryl. check-in: 086da3a301 user: simon tags: trunk | |
| 13:33 | Martin Prikryl points out that need_pw may be used uninitialised. check-in: e13b2bf694 user: simon tags: trunk | |
| 11:11 | `What is PuTTY?' gets asked _just_ frequently enough to have finally annoyed me. check-in: 6ded91a6e0 user: simon tags: trunk | |
|
2004-01-20
| ||
| 15:00 | Update for latest mkfiles.pl kerfuffle check-in: 09fcfb0ba6 user: jacob tags: trunk | |
| 14:42 | Fix unterminated comments in previous checkin check-in: e625c500bd user: jacob tags: trunk | |
| 14:35 | Oh, and mention lcc in the README. check-in: afc7394a15 user: simon tags: trunk | |
| 14:35 | Alexey Savelyev's mkfiles.pl patch to support lcc-win32. This has caused a small amount of extra inconvenience at the tops of .rc files, but it's been positive overall since lcc has managed to point out some pedantic errors (typically static/extern mismatches between function prototypes and definitions) which everything else missed. check-in: c0d4df0389 user: simon tags: trunk | |
| 13:46 | Paul van der Meij points out that do_reconfig() should not free dp.errtitle, since it's also freed in dp_cleanup(). Minefield agrees. Fixed. check-in: 55462fd892 user: simon tags: trunk | |
| 13:41 | Josh Hill's patch for full-screen mode on a multi-monitor system: clicks in the top left of the window should not be detected by comparing the coordinates with (0,0) since this won't work on secondary monitors. check-in: d8dda0a4ee user: simon tags: trunk | |
| 13:30 | Mark Wutzke points out that the comment in sk_proxy_set_frozen() states that plug_receive() may recurse back into sk_proxy_set_frozen() again. Therefore, bufchain_consume() should have been called _before_ calling plug_receive(), to prevent an infinite loop overflowing the stack. I can't immediately figure out under what circumstances this might happen, but it seems an obviously sensible precaution. check-in: 438d79e310 user: simon tags: trunk | |
| 06:46 | `portfwd-loopback-choice' was not consistently documented. - update usage info in tools - ack, plink is over 24 lines now - update man pages for Unix version - Doc changes: - move long description from (GUI) "config" to "using" - sorry if complete specification isn't what this section is meant for, but if you only read "using" it was hard to find. - ensure enough references to this made in other sections (GUI, command-line) - update instance of plink usage info check-in: d90d7ccbd4 user: jacob tags: trunk | |
|
2004-01-19
| ||
| 03:37 | Idiot me _twice_! The new store_host_key() was failing in the absence of an existing host key file. Duhh. check-in: fa6ecdda0f user: simon tags: trunk | |
|
2004-01-18
| ||
| 18:19 | Re local X server auth, clarify that it's _us_ you should mail, and link to the Feedback section. check-in: d6a959cf10 user: jacob tags: trunk | |
| 03:14 | Memory management fixes. Fixed a segfault in SSH1 compression cleanup noticed by Gerhard Wiesinger, and also fixed some memory leaks spotted by valgrind while debugging same. check-in: ce29cbc0c9 user: simon tags: trunk | |
| 02:45 | Oops, two lines moved out of my snapshot script should have been left there! Bah. check-in: a2cb22291d user: simon tags: trunk | |
|
2004-01-17
| ||
| 08:25 | Various uninitialised-variable accesses picked up by valgrind. check-in: a59ea011be user: simon tags: trunk | |
| 08:17 | Building source archives for previous releases has always been a fiddly process. Let's have a magic script designed to do it right. check-in: 586b37108e user: simon tags: trunk | |
| 07:48 | Joe Yates's patch to make mkfiles.pl generate Visual Studio project files as well as an nmake makefile. Needed line-end tweakery in order to be able to generate usable project files when run on Unix, but other than that appears fine. Ooh! check-in: 60f90a9de8 user: simon tags: trunk | |
| 07:24 | So _that's_ why mkfiles.pl was running so slowly on my Windows box! &findfile() now caches its results. At least one full order of magnitude speedup when running on an SMB-mounted volume. Phew. check-in: 0b3db4a44c user: simon tags: trunk | |
| 07:00 | Idiot me! store_host_key() was blindly _appending_ new host keys to the end of the host key file. This is perfectly all right if a host key never changes, but it's completely useless if you need to replace an existing entry. This version should do better. check-in: 5d35d98cee user: simon tags: trunk | |
|
2004-01-01
| ||
| 10:47 | It's a new year. check-in: 99a396bcef user: simon tags: trunk | |
| 10:42 | Joe Yates's memory leak patch was overenthusiastically freeing things; it called freebn on the DH gex values even if DH gex had not taken place. Bug was trivially reproducible as a NULL-dereference segfault by making any SSH2 connection with DH gex disabled. Should now be fixed. check-in: 698fe6e51d user: simon tags: trunk | |
|
2003-12-31
| ||
| 10:09 | D'oh! WideFont and WideBoldFont were being read from session files, but not written. I _thought_ something odd was happening with my UTF-8 pterms. check-in: 0b63c7c0f9 user: simon tags: trunk | |
|
2003-12-19
| ||
| 06:44 | Joe Yates's memory leak patches. check-in: e9b1098ae1 user: simon tags: trunk | |
|
2003-12-16
| ||
| 12:28 | Andy Hood points out that `#ifdef MONITOR_DEFAULTTONEAREST' would benefit from _also_ being conditional on NO_MULTIMON not being defined, to prevent the possibility of only half the multimon code being included. check-in: be5ecc4c16 user: simon tags: trunk | |
|
2003-12-03
| ||
| 18:10 | tweak for consistency with previous checkin check-in: daec97e28d user: jacob tags: trunk | |
| 17:32 | Fix from Michael Wardle in bell error message check-in: 0b83b0b033 user: jacob tags: trunk | |
| 17:25 | Spotted by Tim Kosse: reput on an already complete file was hanging. Should be fixed now (we only wait for packets if we know there are some that haven't been replied to yet). check-in: 55d3234383 user: jacob tags: trunk | |
| 16:49 | Add updating the wishlist to the Release checklist check-in: f56ed8a4b4 user: jacob tags: trunk | |
| 16:45 | fflush(stdout) after each line of stats check-in: c43e506a03 user: jacob tags: trunk | |
| 13:17 | Fix for `logging-save-default': allow logging settings to be saved with Default Settings. check-in: f702cc8509 user: jacob tags: trunk | |
|
2003-11-24
| ||
| 07:40 | I think the time has come for PuTTYgen to mention "authorized_keys" instead of "authorized_keys2" by default. I believe this change was made in OpenSSH around June 2001, so any versions which it applies should have been replaced by now for other reasons. (The docs still adequately document the confusion surrounding this) check-in: 71e1929ea0 user: jacob tags: trunk | |
|
2003-11-22
| ||
| 08:50 | Trivial braino in parsing of the port forwarding config data. Was causing all port forwardings after the first dynamic one to be ignored. check-in: 4295b1eb03 user: simon tags: trunk | |
|
2003-11-20
| ||
| 12:41 | Introduce a new mouse handling option, in which the right button brings up the context menu (and you can then paste by selecting `Paste'). Should be more friendly to Windows-oriented users as opposed to expatriate X users; also has the effect of making it more difficult to paste into PuTTY by a single misplaced mouse click, which has been a common theme of complaint recently. For the moment, `Compromise' (the X-like behaviour with the right and middle buttons reversed so that two-button users still get the two most important functions) is still the default. I'm uncertain that it might not be better to make the new option the default, though, since the compromise option is optimal for _nobody_. check-in: cc4808683d user: simon tags: trunk | |
| 12:33 | Move the `translation of line drawing characters when pasting' option from the Selection panel to the Translation panel (where it fits at least as well). This frees a line in the Selection panel which I'm about to use for an additional mouse handling option. check-in: 63b0990c9f user: simon tags: trunk | |
|
2003-11-19
| ||
| 14:48 | Introduce a context menu which appears on Ctrl+rightclick. This menu contains all the stuff in the System menu except for the standard System menu bits (move, resize, close etc), and also contains `Paste'. check-in: 27e67f22ab user: simon tags: trunk | |
| 13:09 | Make that last checkin more explicit, and in particular reference the "common errors" section of the documentation. check-in: 9c2acc565c user: jacob tags: trunk | |
| 13:03 | Soften language in `faq-incorrect-mac': buggy ssh.com servers aren't the only possible reason for this message. check-in: 5bae2a07fe user: jacob tags: trunk | |
| 11:30 | I _think_ this should fix the problem reported by `Stacey': failure to fclose a private key file. check-in: 06b26aa384 user: simon tags: trunk | |
|
2003-11-06
| ||
| 08:17 | Cosmetic fix from Daniel Fazekas: apparently we were failing to allow window-furniture in Playschool Windows be animated on mouse-over. This fix also seems like the Right Thing to do. I've tried it and it seems harmless enough on Win2K. check-in: 5436148628 user: jacob tags: trunk | |
|
2003-11-03
| ||
| 07:59 | We now mention the version number on the Download page, so I'd better remember to change it next time :-) check-in: 7ab4267691 user: simon tags: trunk | |
|
2003-10-31
| ||
| 15:45 | Close the host keys file after use. Well spotted Theo Markettos. check-in: e8d0cbf914 user: simon tags: trunk | |
|
2003-10-30
| ||
| 04:41 | Hmm, that relative link wasn't too good. Try a more helpful one. Also add to the release checklist so that I'll remember to set this up properly in the next set of release docs... check-in: 5a27b67f71 user: simon tags: trunk | |
| 04:30 | Move the reference to sitestyle.css out into a separate .but file which is only included if you explicitly tell the docs Makefile to do so. Also make it a relative reference, while we're at it. check-in: d832d51c39 user: simon tags: trunk | |
|
2003-10-21
| ||
| 08:26 | Fix usage comments check-in: 8930a931d1 user: jacob tags: trunk | |
|
2003-10-15
| ||
| 07:09 | Update faq-pscp-ascii. check-in: 5a312a46a0 user: jacob tags: trunk | |
|
2003-10-14
| ||
| 18:23 | Add `--unix' mode to generate ~/.putty/sshhostkeys from known_hosts. (should now be called `kh2putty.py') check-in: c5b55a8520 user: jacob tags: trunk | |
| 16:01 | Remove dead comment about writing settings, and query one about reading them. check-in: d9123c46c5 user: jacob tags: trunk | |
| 14:57 | We now have Unix ports of PSCP and PSFTP. check-in: 5bf0544db6 user: jacob tags: trunk | |
|
2003-10-12
| ||
| 09:12 | Actually fix winnet-if2lo, I think. Tested in an ad-hoc manner by deliberately making a connection from nemesis's real IP address to its loopback address; not tested in the original failing case of SMB. check-in: b7737bd583 user: simon tags: trunk | |
| 08:46 | The WinSock library is now loaded at run-time, which means we can attempt to load WS2 and then fall back to WS1 if that fails. This should allow us to use WS2-specific functionality to find out the local system's list of IP addresses, thus fixing winnet-if2lo, while degrading gracefully back to the previous behaviour if that functionality is unavailable. (I haven't yet actually done this; I've just laid the groundwork.) This checkin _may_ cause instability; it seemed fine to me on initial testing, but it's a bit of an upheaval and I wouldn't like to make bets on it just yet. check-in: 6773da81d2 user: simon tags: trunk | |
| 08:16 | Remove all the "assert(len>0)" which forbade zero-length writes across the from_backend() interface, after having made all implementations safe against being called with len==0 and possibly-NULL/undefined "data". (This includes making misc.c:bufchain_add() more robust in this area.) Assertion was originally added 2002-03-01; e.g., see plink.c:1.53 [r1571]. I believe this now shouldn't break anything. This should hopefully make `ppk-empty-comment' finally GO AWAY. (Tested with Unix PuTTY.) check-in: 5ec3c6472e user: jacob tags: trunk | |
|
2003-10-10
| ||
| 17:58 | Add random commentary to SOCKS code. Also fix what I think are a couple of very minor bugs in SOCKS4; one won't affect anyone AFAIK, and the other is unlikely to cause trouble. check-in: 3c15567b1d user: jacob tags: trunk | |
| 16:20 | In SOCKS5 dynamic forwarding, we were echoing back DST.{ADDR,PORT} as BND.{ADDR,PORT}. Besides being clearly wrong, correspondence with Sascha Schwarz suggests that this can confuse some SOCKS5 clients (Aventail and sockscap32) which seem to assume that the reply must have ATYP=1 (IPv4 literal) and so get the length wrong. Now all replies have ATYP=1 with BND.{ADDR,PORT} = 0.0.0.0:0 -- this apparently follows practice in OpenSSH. (We don't have enough info to fill these fields in correctly.) check-in: cb48fb86c6 user: jacob tags: trunk | |
|
2003-10-08
| ||
| 16:39 | missed a bit in last commit check-in: 46fb6c3314 user: jacob tags: trunk | |
| 15:09 | Cosmetic, to fix ssh2-des-cbc-is-std check-in: 3d5de8a690 user: owen tags: trunk | |
|
2003-10-07
| ||
| 16:31 | `baltic-default-translation': change default Baltic (CP1257) encoding from 8859-4 to 8859-13 as suggested by Vaidrius Petrauskas, on the grounds that he has a .lt address and sounds like he knows what he's talking about. check-in: 3196e02431 user: jacob tags: trunk | |
|
2003-10-03
| ||
| 16:21 | My ASN.1 decoder returned wrong IDs for anything above 0x1E! Good job it's never had to yet. Ahem. check-in: 241e1c801f user: simon tags: trunk | |
|
2003-09-29
| ||
| 10:39 | PSCP in SFTP mode now uses the fast download/upload manager. check-in: f7725510cb user: simon tags: trunk | |
| 10:39 | Obvious memory leak in new fast download management. Oops. check-in: 25ccd57cf4 user: simon tags: trunk | |
|
2003-09-28
| ||
| 09:24 | Uploads turn out to be much easier than downloads, so here's faster upload support in PSFTP as well. check-in: f977cd8508 user: simon tags: trunk | |
|
2003-09-27
| ||
| 12:52 | First cut at speeding up SFTP. Generic download-management code in sftp.c, and psftp.c now uses that instead of going it alone. Should in principle be easily installed in PSCP as well, but I haven't done it yet; also it only handles downloads, not uploads, and finally it doesn't yet properly calculate the correct number of parallel requests to queue. Still, it's a start, and in my own tests it seemed to perform as expected (download speed suddenly became roughly what you'd expect from the available bandwidth, and decreased by roughly the expected number of round-trip times). check-in: 98245922c2 user: simon tags: trunk | |
|
2003-09-26
| ||
| 08:04 | Clarify what happens when you enter a code page that's not listed. check-in: 45f26718dd user: jacob tags: trunk | |
|
2003-09-25
| ||
| 07:38 | Note what versions of SOCKS are implemented for dynamic port forwarding. check-in: 05fb7776e6 user: jacob tags: trunk | |
|
2003-09-23
| ||
| 05:12 | Imply that some features that have been implemented may appear on the Wishlist but not the Changes page, as this is now often the case. check-in: 8b4a9b1b0b user: jacob tags: trunk | |
| 05:05 | Mention Windows on Alpha as worth mentioning check-in: ed7b3cb62e user: jacob tags: trunk | |
|
2003-09-10
| ||
| 07:30 | Oops. Fix a bug in my `keyfile-diagnostic' work which caused SSH-2 key loading in pageant (and presumably puttygen) to crash. check-in: df0f8663d9 user: jacob tags: trunk | |
|
2003-09-03
| ||
| 15:14 | Implement `default-colours' on Windows based loosely on Michael Wardle's patch. check-in: 97f6c76b52 user: jacob tags: trunk | |
| 13:37 | Add pscp to .cvsignore check-in: 1865367963 user: jacob tags: trunk | |
|
2003-09-02
| ||
| 14:02 | Change an incorrect comment about "PuTTY-User-Key-File-2" private key format after discussion with Simon. check-in: 0015f045db user: jacob tags: trunk | |
| 14:00 | When loading SSH-2 key, ignore passphrase argument if key is unencrypted. This should get rid of a problem that three or four people reported where PuTTY intermittently reports "Unable to load private key" (MAC failed). (ssh.c:do_ssh2_authconn() should also initialise its passphrase so it's not passing garbage passphrases around, of course, but I haven't yet worked out where the best place in the auth loop to do that would be.) check-in: eaa02b3a3e user: jacob tags: trunk | |
| 04:52 | Include stdlib.h for exit() - thanks Colin. check-in: 655b9d0df4 user: simon tags: trunk | |
|
2003-09-01
| ||
| 16:27 | Add support for a DESTDIR variable in the Unix makefile to set the root of the installation tree (for building packages etc). check-in: 118376130e user: ben tags: trunk | |
|
2003-08-29
| ||
| 17:52 | Work towards wish `keyfile-diagnostic'. Many sshpubk.c keyfile-loading functions have sprouted `**errorstr' arguments, which if non-NULL can return a textual error message. The interface additions are patchy and ad-hoc since this seemed to suit the style of the existing interfaces. I've since realised that most of this is masked by sanity-checking that gets done before these functions are called, but it will at least report MAC failures and the like (tested on Unix), which was the original point of the exercise. Note that not everyone who could be using this information is at the moment. check-in: 3623e79240 user: jacob tags: trunk | |
| 17:14 | dupstr() should cope with being passed NULL check-in: 152e1176e6 user: jacob tags: trunk | |
| 14:41 | Minimal fixes to minimal plink man page. check-in: babae13135 user: jacob tags: trunk | |
| 14:21 | Add "-s" option to Unix plink too. Compiled, but not tested as Unix plink seems to be segfaulting today. check-in: ed421cd20a user: jacob tags: trunk | |
| 14:06 | New option for plink: "-s" specifies that the remote command is an SSH-2 subsystem. (pinched from OpenSSH) check-in: 926a02fe4a user: jacob tags: trunk | |
|
2003-08-25
| ||
| 09:30 | ... and there's a Unix port of PSCP. Ooh. check-in: 7ca13b1af9 user: simon tags: trunk | |
| 09:18 | Fix a couple of blatant memory leaks; thanks to Ruurd Beerstra for pointing at least one of them out. check-in: 2b5ae5cfd4 user: simon tags: trunk | |
| 08:53 | Windows PSCP now links against winsftp.c, and scp.c is now a platform-independent source file. Haven't yet added the extra abstraction routines to uxsftp.c to create a Unix PSCP port, but it shouldn't take long. Also in this checkin, a change of semantics in platform_default_s(): now strings returned from it are expected to be dynamically allocated. check-in: 902945de56 user: simon tags: trunk | |
|
2003-08-24
| ||
| 08:22 | And just to prove that psftp.c really is now platform-independent ... here's a Unix port of PSFTP. Woo. (Oddly PSCP looks to be somewhat harder; there's more Windows code interleaved than there was in PSFTP.) check-in: a9746849d8 user: simon tags: trunk | |
| 07:47 | Next phase of general SFTP reworking: psftp.c is now a platform- independent source file. All Windowsisms have been moved out to winsftp.c. check-in: cf9dbdd668 user: simon tags: trunk | |
|
2003-08-21
| ||
| 14:48 | Fix for `slow-startup-printer': use PRINTER_INFO_4 on NT-class systems, which apparently tries less hard to find printers so won't slow the system down. Tested on 2000 and 98; in both cases printer enumeration and printing worked as well as they did in 2003-08-21. Made a single shared copy of osVersion in winmisc.c so that printing.c can find it. Made other users (window.c, pageant.c) use this copy. check-in: 7271667d51 user: jacob tags: trunk | |
| 13:39 | Richard B's patch to enable users to explicitly request shadow bold by disabling bold-font-name guessing (if their bold fonts are ugly). I've turned the UI inside out, but the meat is pretty much the same. check-in: ff01a069c4 user: simon tags: trunk | |
| 13:07 | Richard B's patch to support X cut buffers as well as ordinary selections, meaning that (a) a pterm can leave copied text in the cut buffer after it terminates so that applications can pick it up even though it isn't still around to deliver the selection in person, and (b) pterm can pick up things left in this way by other apps. Downside is that all of this only happens in ISO8859-1, because X is weird like that. check-in: 620a90455a user: simon tags: trunk | |
| 13:03 | Richard Boulton's patch for improved correctness in selection handling (generally, selection request timestamps should be set to the timestamp on the event that caused them). check-in: ca4726e5f8 user: simon tags: trunk | |
|
2003-08-07
| ||
| 11:04 | Control of 'addr' is now handed over to {platform_,}new_connection() and sk_new() on invocation; these functions become responsible for (eventually) freeing it. The caller must not do anything with 'addr' after it's been passed in. (Ick.) Why: A SOCKS5 crash appears to have been caused by overzealous freeing of a SockAddr (ssh.c:1.257 [r2492]), which for proxied connections is squirreled away long-term (and this can't easily be avoided). It would have been nice to make a copy of the SockAddr, in case the caller has a use for it, but one of the implementations (uxnet.c) hides a "struct addrinfo" in there, and we have no defined way to duplicate those. (None of the current callers _do_ have a further use for the SockAddr.) As far as I can tell, everything _except_ proxying only needs addr for the duration of the call, so sk_addr_free()s immediately. If I'm mistaken, it should at least be easier to find the offending free()... check-in: d318104cf5 user: jacob tags: trunk | |
|
2003-07-16
| ||
| 03:28 | Clarify that '-m' takes a _local_ file. ref. <kjt9hv49dagqmvru0nq9qcc0f5p11vg0ma@4ax.com> check-in: 0174559f47 user: jacob tags: trunk | |
|
2003-07-12
| ||
| 08:45 | Add SSH-1 password camouflage bug detection for version OSU_1.4alpha3 of the OSU VMS SSH server <http://kcgl1.eng.ohio-state.edu/~jonesd/ssh/>. The changelog appears to indicate that the server was fixed for pwplain1 at 1.5alpha4, and for IGNORE and DEBUG messages at 1.5alpha6. However I'm going to go on the reports we've had as I haven't tested this; and they indicate only that 1.5alpha6 is known not to require any bug compatibility modes. (I wasn't sure whether to add this at all, given that upgrading to version OSU_1.5alpha6 is an easy way to fix the problem. However, there is precedent for adding detection for old versions of servers which have since been fixed.) check-in: 2cf32ed275 user: jacob tags: trunk | |
| 08:25 | Add section on "Access denied". This was mostly inspired by the password camouflage problems with SSH-1.5-OSU_1.4alpha3. check-in: 7efa9327f7 user: jacob tags: trunk | |
|
2003-07-06
| ||
| 04:34 | Mention Roald Ribe's success with OpenWatcom and Makefile.vc check-in: 524b21d095 user: jacob tags: trunk | |
|
2003-07-05
| ||
| 06:35 | Consider bells as a display event. check-in: 50345c3388 user: owen tags: trunk | |
|
2003-06-29
| ||
| 09:47 | Phase 1a of SFTP re-engineering: fix the glaring memory and request ID leak in the previous checkin. Oops :-) check-in: 0180a6b327 user: simon tags: trunk | |
| 09:26 | First phase of SFTP re-engineering. Each base-level fxp_* function has been split into a send half and a receive half, so that callers can set several requests in motion at a time and deal with the responses in whatever order they arrive. check-in: b9024f3254 user: simon tags: trunk | |
|
2003-06-28
| ||
| 09:11 | Failure to set multipliers[NPRIMES] was rendering the input-modulus feature (make sure your prime is not congruent to Foo mod Bar) largely ineffective. As a result, RSA keys were being generated every so often with at least one prime congruent to 1 mod 37, causing modinv(37, phi(n)) to divide by zero, and rightly so. I believe this fixes `puttygen-zero-div'. check-in: 7806f0f2c6 user: simon tags: trunk | |
| 09:10 | bignum_mod_short shouldn't be depending on a fixed place value in the bignum data! This wasn't actually causing puttygen-zero-div (its unwarranted assumption was still correct under Windows) but it would have caused the same symptoms under Unix when I got round to porting PuTTYgen. check-in: 17934d0f46 user: simon tags: trunk | |
| 02:52 | Someone pointed out that ^~ should generate the same as ^^, for consistency with xterm. check-in: 54510097cb user: simon tags: trunk | |
|
2003-06-26
| ||
| 10:08 | Implement sftp-backend-diagnostic in pscp. check-in: 2cb6a9eb00 user: owen tags: trunk | |
| 09:19 | Implement hostkey-prompt-type everywhere except Macintosh. check-in: 4f0e9c740b user: owen tags: trunk | |
| 08:41 | Fix a segfault (non-security-critical - null dereference for reading) in the zlib code when fed certain kinds of invalid data. As a result, ssh.c now needs to be prepared for zlib_decompress_block to return failure. check-in: 0d2defefe0 user: simon tags: trunk | |
|
2003-06-25
| ||
| 10:52 | Incorporate Brad Clarke's suggestion to use "REGEDIT /EA" rather than "REGEDIT /E". On newer versions of Windows (verified on 2K), this will cause the .REG file to be saved in REGEDIT4 format (ASCII) which can be read by older Windows, rather than REGEDIT5 (Unicode). On older Windows, the extra "A" is harmless (verified on Win98). check-in: c7a798eb4f user: jacob tags: trunk | |
|
2003-06-21
| ||
| 18:13 | Missing part of my recent SCOANSI fix. check-in: 43df005e0b user: ben tags: trunk | |
| 17:40 | Improve SCOANSI emulation: The colours that SGR 0 returns to are now changed by the SCO SNF and SNB sequences, which seems to be what the SCO console does (at least in the new mode documented for OpenServer 5.0.6). check-in: c31bb4b658 user: ben tags: trunk | |
| 16:19 | Oops, Ben got there first. Oh well, here's a comment. check-in: 1fe3821653 user: jacob tags: trunk | |
| 15:21 | The specific SSH cipher algorithms supported by PuTTY weren't listed anywhere in the documentation. Added some detail - feel free to tweak. check-in: d54cd3d495 user: jacob tags: trunk | |
| 14:38 | Add comments to case statements containing the mnemonics for the various escape and control sequences. This should make it easier to find the implementation of the one you're interested in. check-in: 0051dbf761 user: ben tags: trunk | |
| 14:34 | Remove -DNO_SECURITY from the cygwin build, since <aclapi.h> has been available in cygwin for a year and a half. Pointed out by Bruno Kozlowski. check-in: 820c046442 user: ben tags: trunk | |
|
2003-06-19
| ||
| 18:04 | Fix problem quitting terminal window while Change Settings active check-in: bb5b43fd80 user: owen tags: trunk | |
| 15:42 | Fix for `double-alt-keystrokes'. Thanks to Leonid Lisovskiy. check-in: fdafcc52a8 user: jacob tags: trunk | |
|
2003-06-18
| ||
| 12:25 | Make SaneDialogBox and SaneEndDialog use [GS]etWindowLong rather than a global variable. Should mean that pageant builds. check-in: fac607e778 user: owen tags: trunk | |
|
2003-06-16
| ||
| 18:55 | Fix double-keystrokes by wrapping CreateDialog check-in: f097cec457 user: owen tags: trunk | |
|
2003-06-15
| ||
| 17:05 | Support for more SCO ANSI escape sequences: CSI = Ps c CSI = Pn1 ; Pn2 C CSI = Ps D CSI = Ps F CSI = Ps G SGR 6 Patch derived from one supplied by Leonid Lisoskiy, with several fixes from me. check-in: caf1367436 user: ben tags: trunk | |
|
2003-06-14
| ||
| 13:27 | Fix a couple of memory leaks pointed out by Adam Bernstein. check-in: f251013cab user: ben tags: trunk | |
|
2003-06-06
| ||
| 13:16 | Suggest that local support staff are useful. check-in: e0337d361a user: ben tags: trunk | |
| 05:42 | Move prototype for platform_new_connection() to a header file so the definitions can be checked against it. check-in: ee0a576001 user: ben tags: trunk | |
|
2003-05-27
| ||
| 04:43 | Experimental change in the behaviour of `disable alternate terminal screen'. Now it also disables the save-and-restore-cursor behaviour of ESC[?1048h and ESC[?1049h, since these sequences seem to be output by software trying to switch to the alternate screen, and it looks very odd to have the cursor position restored to where it was before `less' when the garbage `less' wrote all over the screen is still around. The `traditional' ESC 7 and ESC 8 still function as normal, on the basis that they aren't usually used in conjunction with the alternate screen. I'm not sure whether this will be the right decision; I'm prepared to change it back if a sufficiently serious counterexample shows up. check-in: 28053f5cb7 user: simon tags: trunk | |
|
2003-05-24
| ||
| 14:03 | Add exceptions for "VShell" to the ssh.com bug compatibility modes (which are just numbers) in an attempt to fix `vshell-no-bug-compat'. Not even tested a little bit. check-in: 07103bef21 user: jacob tags: trunk | |
| 13:02 | Fixed accelerator clash between "Conversions" menu and "key comment" control (former is now "Con&versions"). Add shortcut to key fingerprint for ease of copy-and-paste. check-in: 0ef9f00904 user: jacob tags: trunk | |
| 07:31 | Modified form of Jim Lucas's PC speaker patch. I don't like discriminating on the Windows version in order to decide whether to call MessageBeep(-1) or Beep() - I'd prefer to directly test the specific OS property in any given case - but it looks as if this is the best available option. check-in: ec24b318e6 user: simon tags: trunk | |
| 05:57 | Incorporate matthew.gabeler-lee's suggested fix for badness with multiple exact hostnames in the proxy exclusion list. <OF63043512.26ABC6B9-ON85256D21.006C33C6-85256D21.006C4B81@EU.novartis.net> check-in: 19dcf6e327 user: jacob tags: trunk | |
|
2003-05-22
| ||
| 03:43 | Update a couple of bits of the FAQ. We do now default to SSH2, and we do have a Unix port of PuTTY proper. check-in: e699ed6ea4 user: simon tags: trunk | |
|
2003-05-14
| ||
| 13:53 | Rene Post's other patch: PuTTYgen was generating double file dialogs by mistake. check-in: bea54a66b8 user: simon tags: trunk | |
|
2003-05-13
| ||
| 14:57 | Real COMPOUND_TEXT support! I was expecting to have to read the spec and implement the required subset of ISO-2022 in libcharset, but it turns out that Xlib provides conversion functions between UTF-8 and compound text, which are just about ideal for us. So now we can paste multilingual stuff both to and from emacs21. Rock on. check-in: f09b9e07b0 user: simon tags: trunk | |
| 13:43 | Allow pterm to receive selections in compound text format. Doesn't actually _understand_ compound text yet - anything with non-ASCII-or-8859-1 characters will fail miserably - but it will at least successfully receive plain text if the pasting application doesn't see fit to give it out in any other format. check-in: 968a183c28 user: simon tags: trunk | |
| 13:23 | Rename crc32() to crc32_compute(), to avoid clashing catastrophically with the crc32() function in the zlib interface. (Not that PuTTY itself _uses_ zlib, but on Unix it's linked against libgtk which uses libpng which uses zlib. And zlib has poor namespace management so it defines this ridiculously intrusive function name. Arrrrgh.) check-in: 3bdddd4aca user: simon tags: trunk | |
| 13:14 | Debian bug #193013 points out that the (default-)one-pixel border is not redrawn when the window background colour is reconfigured mid- session. In addition, the Official Window Background is not reset, meaning that opaque resizes etc will flicker in the old background colour. This checkin should fix both. check-in: 58b0de2d23 user: simon tags: trunk | |
|
2003-05-12
| ||
| 08:41 | Patch from Rene Post: ctrl_{drag,drop}list both now initialise the same set of structure fields that the ordinary ctrl_listbox does. check-in: 831ebbbfab user: simon tags: trunk | |
|
2003-05-11
| ||
| 09:32 | Brief man pages for PuTTY and PuTTYtel. check-in: f5b8fd889c user: simon tags: trunk | |
| 09:19 | Missing full stop. check-in: 475007a30b user: simon tags: trunk | |
| 09:19 | Some time ago I arranged for -geometry to be able to specify window position as well as size. Now reflected in manpage. check-in: a083cca719 user: simon tags: trunk | |
| 07:28 | I think I've just fixed Debian bug #166396. The +ut option was causing pty_utmp_helper_pipe to be closed, but its fd was kept around even when stale, and closed again when the main child process terminated - by which time the fd number had been reused for a rather more vital fd, which GTK didn't appreciate having closed under its feet. Hence, spin on POLLNVAL. Should now be sorted. check-in: 3000ac05c2 user: simon tags: trunk | |
|
2003-05-10
| ||
| 15:51 | Finally, column spanning. check-in: 4801159691 user: ben tags: trunk | |
| 15:23 | Change the way that panel-switching works so that we only hide the panel we're switching from and show the panel we're switching to, rather than iterating over all the panels, hiding and showing them as appropriate. This has that consequence that all controls have to be created invisible, since they no longer get hidden after creation. As usual, the scroll bars on list boxes have a special hack of their own. check-in: acb67a74ed user: ben tags: trunk | |
| 07:54 | Make ssh_agent_callback() and ssh_agentf_callback() static. check-in: 4e8c6bdb81 user: ben tags: trunk | |
| 07:27 | I believe that verify_ssh_host_key() should now be passed a real front-end handle, which removes one of its many flaws. check-in: 05277e0eb1 user: ben tags: trunk | |
| 06:57 | Extra const for loop_init() and null_init(). check-in: d3d894df55 user: ben tags: trunk | |
| 06:50 | Eliminate a "possible unintended assignment" warning. check-in: 84bfa51b16 user: ben tags: trunk | |
| 06:40 | Update signature of agent_query() to match the rest of the world. check-in: 92853bdca9 user: ben tags: trunk | |
| 06:26 | Comment a few things I need to fix. check-in: a512e8630f user: ben tags: trunk | |
| 05:15 | Remove the now incorrect `Unicode is not supported' from the bugs in the pterm man page :-) check-in: b41b828c1d user: simon tags: trunk | |
| 05:15 | pterm will now attempt to guess suitable names for any missing fonts from the ones given; so it'll ask for a font twice as wide as your base one if you don't specify a wide font, it'll ask for a bolded version of your base font if you don't specify a bold font, and similarly for a wide/bold font. Should solve Debian bug #187389; at least it works for me. check-in: d3acdabf8d user: simon tags: trunk | |
| 04:06 | pterm's manpage now documents the NoRemoteQTitle resource. Should fix the other half of Debian bug #191751. check-in: fb72bd7176 user: simon tags: trunk | |
| 04:05 | Stupid braino in get_window_title (thanks Colin): window and icon titles were being reported the wrong way round. Should fix half of Debian bug #191751. check-in: d622d5a81e user: simon tags: trunk | |
| 03:37 | Should fix Debian bug #192674: another gcc complaint about potentially uninitialised variable. check-in: ce4d5b47fb user: simon tags: trunk | |
| 03:35 | Fixes for Debian bug #192701 (64-bit gccs warn about casts between ptrs and ints of different size and -Werror makes this serious). The GTK bits are done by Colin's patch to use GINT_TO_POINTER (thanks); the uxnet bits are done by cleaning up the rest of the code. In particular, network.h now typedefs `OSSocket' to be a type capable of holding whatever the OS's socket data type is that underlies our socket abstraction. Individual platforms can make this typedef themselves if they define OSSOCKET_DEFINED to prevent network.h redoing it; so the Unix OSSocket is now int. Default is still void *, so other platforms should be unaffected. check-in: e1f861acb0 user: simon tags: trunk | |
|
2003-05-08
| ||
| 04:07 | Fix a typo in my backwards-compatibility wart. Oops. check-in: 1ca67c7332 user: simon tags: trunk | |
|
2003-05-07
| ||
| 08:14 | Bah. Stop the Proxy panel appearing empty in Change Settings. One day I'll make a reasonably big checkin and _not_ have six tiny mop- up issues after it... check-in: 1106ef9013 user: simon tags: trunk | |
| 07:07 | Yesterday's proxy enhancements also slightly nadgered the config box, in that it started to expand under the weight of proxy options. Now fixed, by folding the SOCKS version selector into the general proxy type selector so there's one single 5- or 6-way radio button set split over two lines. settings.c has of course grown a backwards compatibility wart to deal with legacy config data. check-in: e5c791f97a user: simon tags: trunk | |
| 03:49 | Ahem. Well, the complicated Unix implementation of platform_new_connection() worked fine, but the really simple stub version for the other ports fell over horribly because I got its name wrong. NEVER ASSUME YOU'VE DONE THE EASY BIT RIGHT. check-in: af02c1fbaa user: simon tags: trunk | |
|
2003-05-06
| ||
| 14:55 | Reinstate `-T title', in pterm only. check-in: 0fed8bc460 user: simon tags: trunk | |
| 14:52 | Support, on Unix only (so far), for OpenSSH-style generic proxying (running a local command in a pair of pipes and proxying through that, for example `ssh proxyhost nc -q0 %host %port'). check-in: 5f42413627 user: simon tags: trunk | |
| 03:43 | Update to use -title rather than -T check-in: 3d5f4bd15e user: owen tags: trunk | |
|
2003-05-04
| ||
| 09:18 | Colin's const-fixing Patch Of Death. Seems to build fine on Windows as well as Unix, so it can go in. check-in: c9f1945192 user: simon tags: trunk | |
| 09:14 | Colin's and my fixes to connection_fatal(). check-in: 1bf6f94877 user: simon tags: trunk | |
|
2003-04-28
| ||
| 08:59 | Asynchronous agent requests on Windows. Actually, I've kept the ability to do synchronous ones as well, because PSCP and PSFTP don't really need async ones and it would have been a serious pain to implement them. Also, Pageant itself when run as a client of its primary instance doesn't benefit noticeably from async agent requests. check-in: e54332edd4 user: simon tags: trunk | |
| 06:41 | First half of `pageant-async' work. agent_query() is now passed a callback function; it may return 0 to indicate that it doesn't have an answer _yet_, in which case it will call the callback later on when it does, or it may return 1 to indicate that it's got an answer right now. The Windows agent_query() implementation is functionally unchanged and still synchronous, but the Unix one is async (since that one was really easy to do via uxsel). ssh.c copes cheerfully with either return value, so other ports are at liberty to be sync or async as they choose. check-in: 038bb0a77e user: simon tags: trunk | |
|
2003-04-27
| ||
| 06:11 | Add puttytel binary to .cvsignore check-in: e1c13ddcb8 user: simon tags: trunk | |
| 06:10 | Support for non-ISO-8859-1 X keysyms. So in particular, pterm in a Euro-supporting font with a Euro-enabled X key map will now actually generate a Euro character rather than shrugging and doing nothing. check-in: 63945cefc6 user: simon tags: trunk | |
| 05:02 | radioline() was broken after the portable-dialog stuff got added, so PuTTYgen was lacking its key type selector. Fixed. check-in: 2451a3c179 user: simon tags: trunk | |
| 04:45 | Take the random number generator back out of Pageant: the `random' numbers needed for RSA blinding are now done deterministically by hashes of the private key, much the same way we do it for DSA. check-in: 45ede95073 user: simon tags: trunk | |
|
2003-04-26
| ||
| 09:37 | Remove the TODO comment at the top of uxputty.c; I'm now not aware of anything that makes the Unix port of PuTTY proper significantly unfinished. That's quite a milestone :-) check-in: d9f1cd86a5 user: simon tags: trunk | |
| 09:36 | Might as well provide PuTTYtel for Unix. It's not much effort! check-in: 9ee37125d8 user: simon tags: trunk | |
| 09:35 | Finer granularity of config box handling. SSH packet logging should now not show up when it's meaningless (in PuTTYtel, in pterm, and in the middle of any non-SSH session), and the Connection panel is inhibited completely in pterm. check-in: af66e213d9 user: simon tags: trunk | |
| 09:22 | Make the `vtmode' config option work under X. In the process I've had to move another of its values out into wincfg.c - paradoxically, this was the `font has X encoding' option! (Because the Unix font handling code expects to be able to tell for _itself_ whether it has a font with X-encoded line drawing glyphs.) check-in: 42587114a6 user: simon tags: trunk | |
| 08:55 | Aha, _that's_ why the icon title didn't work properly in pterm: gtk_window_set_title() overwrote both titles at once. Icon title is now working properly under X, and since X was the reason for the whole icon/window title separation _anyway_ they default to being separate. check-in: 9772d176d4 user: simon tags: trunk | |
| 08:22 | The line-drawing paste config option has changed its meaning since it was first designed. Alter the wording and documentation to match. check-in: 3927d00818 user: simon tags: trunk | |
|
2003-04-25
| ||
| 12:44 | The new ssh_do_close() function itself causes a segfault if the connection goes foom before ssh->channels is set up. Oops. Fixed. check-in: 899cb52b70 user: simon tags: trunk | |
| 11:42 | Fix another segfault on abrupt X connection shutdown. This should have happened in rev 1.5 [r996] but didn't! Now we never call sk_get_private_ptr() on a socket unless we've ensured it's non-NULL. check-in: 738c707e42 user: simon tags: trunk | |
| 10:44 | Don't block SIGPIPE until _after_ pterm forks, since otherwise the blockage will propagate to the child process. check-in: 9546ad05f2 user: simon tags: trunk | |
| 06:48 | Robustness in the face of sudden connection closures: we now make a credible effort to shut down open forwardings cleanly when the owning SSH connection terminates abruptly (for whatever reason). check-in: 26f97a0d19 user: simon tags: trunk | |
|
2003-04-23
| ||
| 10:25 | Force gcc to use x86's built-in 64/32->32,32 division instruction rather than swanning off to a helper function. This seems to make woefully little actual performance difference, which annoys me, but it's a just-about-detectable improvement so I'll leave it in. check-in: 0aa2c11554 user: simon tags: trunk | |
| 09:48 | Added framework to sshbn.c to make it possible to vary the underlying integer type forming the Bignum. Using this, arranged that gcc/x86 uses 32-bit chunks rather than the guaranteed ANSI- portable 16-bit chunks. This has gained another 30% on key exchanges by my measurements, but I'm not yet convinced that it's all perfectly robust - it seems to work fine for SSH1 and SSH2/RSA but I haven't ensured that every bignum routine is actually being tested, so it may yet show up problems in DSA or key generation. check-in: 3769f9433e user: simon tags: trunk | |
| 08:48 | Unix makefile now uses -O2, which massively cuts down key exchange time. This gives rise to a whole bunch of spare warnings, one or two of which might have been actual bugs; now all resolved. check-in: 6c10570c0b user: simon tags: trunk | |
|
2003-04-18
| ||
| 08:09 | Missing bits for colour selection support. check-in: 95a72b4829 user: ben tags: trunk | |
| 08:09 | Missing bits for System 7 listbox support. check-in: acc262a072 user: ben tags: trunk | |
| 04:14 | Removing items from a list box using gtk_container_remove is nasty, because when the selected item is removed the selection moves on to another item. Thus, calling dlg_listbox_clear causes repeated selchanges in the list, which in turn cause repeated valchanges if the list is attached to a combo box. This has been completely scuppering the Translation panel. check-in: a530f9d4d5 user: simon tags: trunk | |
| 04:06 | Oops; we _do_ need to set dport even when doing dynamic forwarding, because otherwise the `if (sport && dport)' statement runs the risk of not working. check-in: f3060f0139 user: simon tags: trunk | |
| 04:00 | Missed out a couple of uxsel_tell() which were hanging forwarded X connections in at least some situations. Oops. check-in: 384eaf1a25 user: simon tags: trunk | |
| 04:00 | Fix obvious foulup in X forwarding: my recent `how did this ever work' change to port forwarding completely broke it, by failing to set peeraddr{,len} before reading them. Oops. check-in: 58503ab138 user: simon tags: trunk | |
|
2003-04-16
| ||
| 18:58 | Replace use of FIONBIO with POSIX-approved O_NONBLOCK (set using fcntl()). This should save us having to worry about different OSs' defining it in different headers. check-in: bc49ee811b user: ben tags: trunk | |
| 18:33 | Make IPv6 support for Unix work, and make it a lot simpler in the process. At the moment, we have to assume that getaddrinfo() will only return AF_INET and AF_INET6 addresses, since we patch in the port number into the sockaddr later. Fixing this is probably best done by redesigning the PuTTY network abstraction a little. check-in: 6206b1162a user: ben tags: trunk | |
|
2003-04-14
| ||
| 18:47 | Remove all those horrid fprintfs. check-in: 91ec589e47 user: ben tags: trunk | |
| 18:28 | Set the space required by a listbox sensibly as well. check-in: 3c809505f1 user: ben tags: trunk | |
| 18:25 | Minor fixes: - Erase the background of System 7 editboxes before drawing them. - Set the height of listboxes correctly. - Set the panel-selection listbox to 20 items high. check-in: 82e19cbda1 user: ben tags: trunk | |
| 17:55 | Don't call GetColor() if we don't have Color Quickdraw -- no good will come of it. check-in: f093d4afaa user: ben tags: trunk | |
| 17:42 | Support for colour selection in the Mac OS. check-in: 1bb87f2427 user: ben tags: trunk | |
| 16:34 | Keyboard events in Mac OS 8 list boxes should generate EVENT_SELCHANGE, not EVENT_VALCHANGE. check-in: 0d697e5d61 user: ben tags: trunk | |
| 16:15 | Enlarge the settings window so as to fill a 640x480 display. This makes enough space to actually fit all of the panels. I'll have to do a version with smaller fonts for 9" screens. check-in: c660bc8f15 user: ben tags: trunk | |
|
2003-04-13
| ||
| 09:37 | Add a list box to the config dialogue to switch between panels. Now I don't have to recompile to change panels! check-in: 22c49c931e user: ben tags: trunk | |
| 08:52 | Support for list boxes under System 7. There are some horrible kludges in this code to do with the handling of the scroll bar, but it doesn actually work better than the Mac OS 8 version. check-in: 6af1a1874e user: ben tags: trunk | |
|
2003-04-12
| ||
| 16:23 | socks5_negotiate(): rather than using an uninitialised value when passed an address of an invalid type, assert() that it will never happen. Do something similar for SOCKS4 as well. check-in: 125ea26ede user: ben tags: trunk | |
| 16:15 | Don't use an uninitialised value when we get an unsupported ATYP in a SOCKS5 request. Spotted by GCC. check-in: 0bc01ae5f3 user: ben tags: trunk | |
| 16:07 | Remove a couple of spurious semicolons. check-in: 2e726f9adc user: ben tags: trunk | |
| 16:06 | Update for Simon's from_backend changes. check-in: 099db98855 user: ben tags: trunk | |
| 12:37 | Support for New Session, Duplicate Session and the Saved Sessions submenu in Unix PuTTY, and Duplicate Session also in pterm. You do _not_ want to know how this is done. Be warned. check-in: 2a16a8e814 user: simon tags: trunk | |
| 06:03 | Further fiddlings with the size reconfiguration stuff; now everything seems to work right even when the only thing changed was the window border. check-in: b3bd56e4fb user: simon tags: trunk | |
| 05:44 | Mid-session reconfiguration of scrollback was failing (in Unix) except when width or height had _also_ been changed. Fixed. check-in: 8d3c66813d user: simon tags: trunk | |
| 04:27 | Implement the ldisc `special' mechanism in Unix, without which local line editing didn't work at all. check-in: 82c66f5741 user: simon tags: trunk | |
| 04:19 | Fix from yesterday's frontend-handle upheaval: ldisc calls from_backend(), and must now pass its frontend handle rather than its terminal handle. check-in: ea2283da3c user: simon tags: trunk | |
| 04:05 | Mid-session BCE reconfiguration wasn't taking effect immediately because I forgot to set term->erase_char in response to the change in term->use_bce. Oops. check-in: 32701df063 user: simon tags: trunk | |
| 03:59 | Disable window title reporting by default, since it's a security hazard. I considered removing it completely, but I can't rule out the possibility of an OS that actually takes security of its terminal devices seriously, and which might be able to make sensible and safe use of this feature. check-in: a301bcba32 user: simon tags: trunk | |
| 03:27 | Close On Exit and Warn On Close fixes: (a) pty_reconfig needs to remember changes in COE so it knows whether to print a message, and (b) once the session has already ended, Warn On Close should shut up. check-in: ab6d1303e3 user: simon tags: trunk | |
|
2003-04-11
| ||
| 13:44 | When I implemented the GTK messagebox() function and everything that needed to use it, I completely forgot about askappend(). D'oh. check-in: 3e873ea700 user: simon tags: trunk | |
| 13:36 | Rationalisation of the system of frontend handles. Most modular bits of PuTTY (terminal, backend, logctx etc) take a `void *' handle passed to them from the frontend, and used as a context for all their callbacks. Most of these point at the frontend structure itself (on platforms where this is meaningful), except that the handle passed to the backend has always pointed at the terminal because from_backend() was implemented in terminal.c. This has finally bitten Unix PuTTY, because both backend and logctx have been passing their respective and very different frontend handles to logevent(), so I've fixed it. from_backend() is now a function supplied by the _frontend_ itself, in all cases, and the frontend handle passed to backends must be the same as that passed to everything else. What was from_backend() in terminal.c is now called term_data(), and the typical implementation of from_backend() in a GUI frontend will just extract the terminal handle from the frontend structure and delegate to that. This appears to work on Unix and Windows, but has most likely broken the Mac build. check-in: 70ba0246e2 user: simon tags: trunk | |
| 13:15 | Implement Warn On Close. check-in: 2ae43e06b7 user: simon tags: trunk | |
| 13:10 | `Copy All' ought to de-highlight any existing selection, in line with any other operation that shifts the X selection to stuff other than the highlighted text. check-in: 6541124864 user: simon tags: trunk | |
| 12:59 | `Copy All' context-menu item, for what it's worth. check-in: b75870b6d0 user: simon tags: trunk | |
| 12:42 | Saving of Default Settings under Unix was broken, because mungestr() was translating NULL into "Default Settings" but not doing the same to "". Now fixed. check-in: 60fa437889 user: simon tags: trunk | |
| 12:40 | Cutting and pasting from the Unix Event Log. check-in: 26feaa9728 user: simon tags: trunk | |
| 12:39 | A poster on comp.security.ssh mentions that he had expected to find the location of PuTTY's data storage mentioned in the manual section about loading and storing sessions. This seems not unreasonable, so I've put it there. check-in: 9a7bf85793 user: simon tags: trunk | |
|
2003-04-10
| ||
| 13:00 | Implemented Change Settings under Unix. We are gradually getting there. check-in: bc0d66460b user: simon tags: trunk | |
| 06:57 | All the stderr messages in this file now use appname rather than guessing wrongly. check-in: bad4bd5783 user: simon tags: trunk | |
| 03:53 | Minor improvements to subsidiary window placement; with any luck the Event Log should go off the side of the screen rather less often now. check-in: 6843a0d490 user: simon tags: trunk | |
|
2003-04-09
| ||
| 13:46 | Event Log for Unix PuTTY. Doesn't yet allow X selection of its contents, and doesn't automatically maintain scroll position at the bottom when new entries are added while the list is open, but it's a start. check-in: e121761c3c user: simon tags: trunk | |
| 06:19 | Remote-to-local port forwarding in SSH2 was apparently completely broken! We were expecting the peer address/port in the incoming packet _before_ the connected address/port, which is just wrong. I wonder how I managed to mess that up. check-in: ccc0edfdd6 user: simon tags: trunk | |
| 06:18 | `dynamic' was uninitialised in other types of port forwarding. Oops. check-in: 31ab5ac85c user: simon tags: trunk | |
| 04:09 | Chas Honton's patch to dynamic port forwarding: should allow longer host names in SOCKS 4A, up to 255 characters (which is apparently the DNS limit anyway). check-in: 57a65eb3b0 user: simon tags: trunk | |
|
2003-04-08
| ||
| 09:02 | Rename pterm's -T option to -title, to avoid clashing with PuTTY's -T (don't allocate a pty) option. check-in: be7fc2e743 user: simon tags: trunk | |
| 08:49 | While writing gtkdlg.c I learned how to specify a window's initial position in GTK, so I can now implement the other half of -geometry which I'd previously believed to be impossible in GTK. It's still not perfect, because GTK apparently provides no way for us to get hold of the X reparent event in order to support negative geometries in a manner which takes account of the WM borders; but for positive position it's at least an improvement on the previous version! check-in: 026dce549a user: simon tags: trunk | |
|
2003-04-06
| ||
| 09:11 | Now that we have `appname', make much wider use of it. In particular, the config box uses it in place of the word `PuTTY', which means mid-session reconfig in pterm will look less strange once I implement it. Also, while I'm at it, I've personalised all the dialog boxes and menu items and suchlike so that PuTTYtel actually claims to be PuTTYtel rather than PuTTY. check-in: 9f2b96b3a4 user: simon tags: trunk | |
| 08:27 | To avoid gratuitous flicker, if a control already has the focus when it's clicked in, don't attempt to move the focus at all. check-in: c388e816ee user: ben tags: trunk | |
|
2003-04-05
| ||
| 16:12 | Const fallout, as predicted. check-in: 0517c2308b user: ben tags: trunk | |
| 16:10 | Bring list of applications and architectures up to date. check-in: a289f393f8 user: ben tags: trunk | |
| 16:03 | dd support for list boxes in Mac OS 8. Not entirely solid, but largely working. [ bits missed in the first commit ] check-in: 8077426a60 user: ben tags: trunk | |
| 16:00 | Add support for list boxes in Mac OS 8. Not entirely solid, but largely working. check-in: 772204cccf user: ben tags: trunk | |
| 13:52 | Bah. There's always one I forget to `cvs add'. check-in: ac3b232fe1 user: simon tags: trunk | |
| 12:00 | On System 7, draw the default ring in grey if the window is disabled. This isn't _quite_ right, since it uses a b/w dither everywhere, whereas it should use grey on colour screens. That would involve mucking around with DeviceLoop, though, and I'm not sure I can be bothered. check-in: 0d2e7b8db3 user: ben tags: trunk | |
| 11:19 | Handle Return and Escape keys in dialogue box, triggering the default and cancel buttons respectively. check-in: 4109f8092e user: ben tags: trunk | |
| 10:36 | Fixed the printing and charset combo boxes in Unix PuTTY. (The former by simply removing it; the latter by adding an enumeration function to libcharset.) This has had slight `const' repercussions on cp_name() and cp_enumerate() which might break the Mac build. check-in: 6c4b46bcec user: simon tags: trunk | |
| 10:12 | Unix can't sensibly enumerate printers (since they're defined as being lpr commands), so the Unix config box now replaces the printer combo box with an ordinary edit box. check-in: 7d4d9177e1 user: simon tags: trunk | |
| 10:05 | Ctrl+rightclick now pops up a context menu in Unix PuTTY and pterm. This menu is not yet fully populated, but it has an About box (yet another licence location :-/ ) and supports the new configurable specials menu (thus making Unix PuTTY do one tiny thing which OpenSSH-in-a-pterm can't :-). check-in: b7304dcb60 user: simon tags: trunk | |
| 09:55 | Cope with NULL labels in every control where it makes sense, and assert that all other labels are != NULL. check-in: 8618c63b89 user: ben tags: trunk | |
| 09:08 | Send EVENT_VALCHANGE when a System 7 editbox gets typed in. check-in: d7d2a4203a user: ben tags: trunk | |
| 09:01 | Implement dlg_end(). check-in: 3d5125aebd user: ben tags: trunk | |
| 08:34 | Implement update_special_menu(), which calls mac_adjustmenus() as appropriate. Eventually, mac_adjustmenus() will handle populating the Specials menu. check-in: d34a83dcea user: ben tags: trunk | |
| 08:32 | Add null_get_specials(), for both null and loop backends. check-in: 03b524f1d3 user: ben tags: trunk | |
| 05:52 | ... of course, it would help if I remembered to _document_ dynamic port forwarding. Ahem. check-in: 68bff8db5c user: simon tags: trunk | |
| 05:45 | Dynamic port forwarding by means of a local SOCKS server. Fully supports SOCKS 4, SOCKS 4A and SOCKS 5 (well, actually IPv6 in SOCKS 5 isn't supported, but it'll be no difficulty once I actually get round to it). Thanks to Chas Honton for his `stone soup' patch: I didn't end up actually using any of his code, but it galvanised me into doing it properly myself :-) check-in: 9c2b8c4c52 user: simon tags: trunk | |
|
2003-04-04
| ||
| 14:21 | Turned the old `Telnet Command' System-submenu into a more general `Special Command' menu, in which any backend can place its own list of magical things the user might want to ask the backend to do. In particular I've implemented the recently proposed "break" extension in SSH2 using this mechanism. NB this checkin slightly breaks the Mac build, since it needs to provide at least a stub form of update_specials_menu(). check-in: 53746610b8 user: simon tags: trunk | |
| 05:22 | This script has been unnecessary for some time; since the config box revamp, accelerator clashes have been checked for at run-time. check-in: 05611b4f8b user: jacob tags: trunk | |
|
2003-04-03
| ||
| 17:18 | Implement columns, based loosely on Simon's Windows implementation. Now this actually _looks_ like PuTTY. check-in: 0b67e0dffc user: ben tags: trunk | |
|
2003-04-02
| ||
| 03:20 | Another item for the release checklist: don't forget to save the link maps of the release binaries. check-in: 582f3daf86 user: simon tags: trunk | |
| 03:14 | Further .cvsignore updates. check-in: 8d950dc81d user: simon tags: trunk | |
| 03:14 | Extra bit of pre-release fiddling for the checklist. check-in: 3af0835fab user: simon tags: trunk | |
| 02:44 | Improvements to .cvsignore, to attempt to reduce the huge number of ? lines I see when running `cvs update', which in turn might help deal with my tendency to forget to `cvs add' new files before a big checkin :-) check-in: 6859cb4d59 user: simon tags: trunk | |
|
2003-04-01
| ||
| 12:10 | Various error-handling fixes, mostly in Unix PuTTY but one (failure to save a session) crosses over into the platform-independent side. check-in: 98cf799b26 user: simon tags: trunk | |
|
2003-03-31
| ||
| 07:15 | Make sure the socket is closed properly in the various SSH exit paths. check-in: 951d79cdac user: simon tags: trunk | |
| 06:57 | Trivial segfault fix from Richard B. check-in: ecdb0cdfd6 user: simon tags: trunk | |
| 06:11 | Ahem; update the TODO to reflect the cmdline changes :-) check-in: 9951432bf1 user: simon tags: trunk | |
| 06:10 | Support for PuTTY-style command-line arguments in Unix PuTTY. I think it's now actually usable as a day-to-day SSH client, even if things like the Event Log are still missing. So I call that a decent lunch hour's work :-) check-in: a52454784c user: simon tags: trunk | |
| 06:10 | pterm.c now relies on backend `exitcode' functions returning <0 when the session is still connected, and not returning an exit code until after it's finished. check-in: a2d003020b user: simon tags: trunk | |
| 05:42 | And everyone's favourite cosmetic change: Unix PuTTY now doesn't claim to be pterm in the window title :-) check-in: 3fdcb83acc user: simon tags: trunk | |
| 05:36 | Can now save and load settings under Unix. check-in: f0c65e843f user: simon tags: trunk | |
| 05:22 | Ahem; fix `bombout' so it passes the correct frontend handle to connection_fatal(). check-in: e2d4e935f5 user: simon tags: trunk | |
| 05:22 | Fix a _very_ subtle segfault in my two GTK container classes: the `forall' function has to be prepared for the list of widgets to change along the way if (for example) the callback function destroys its input widget. check-in: c74eba86e2 user: simon tags: trunk | |
| 05:21 | Checkin of last night's work on GTK message boxes. Unix PuTTY now has proper GUI prompts for host keys etc, so it should now be usable without a controlling tty. check-in: 8222ee8773 user: simon tags: trunk | |
|
2003-03-30
| ||
| 08:24 | Correct the size of editboxes under Mac OS 8. check-in: c478abfae1 user: ben tags: trunk | |
|
2003-03-29
| ||
| 18:45 | Crude keyboard support for System 7 editboxes. check-in: 0cc1580126 user: ben tags: trunk | |
| 17:57 | The entropy pool is full of unsigned ints, not longs. check-in: 254a7781a2 user: ben tags: trunk | |
| 17:07 | Move the Mac port over to using snew/snewn/sresize. check-in: fbbea4dbd6 user: ben tags: trunk | |
| 17:05 | In a couple of places, snewn() was being asked for an array of char which was then assigned to an unsigned char * variabe. This fixes that. check-in: 8f705367ec user: ben tags: trunk | |
| 16:04 | Convert the System 7 static text control to be a read-only version of the editbox control. This means that it has a persistent edit record, can have its height measured and uses the system font by default, all of which are good. check-in: 3bf16984de user: ben tags: trunk | |
| 14:16 | Add support for labels on editboxes and radios. check-in: da1b322262 user: ben tags: trunk | |
| 13:52 | Having created and used uxsel, it actually turns out to be practically trivial to put all the pieces together and create a working prototype of Unix PuTTY! It's missing a lot of things - notably GUI request boxes for host keys and logfiles and so forth, the Event Log, mid-session reconfiguration, session loading and saving, sensible population of the character sets drop-down list and probably other fiddly little things too - but it will put up a config box and then create a GUI window containing an SSH connection to the host you specified, so it's _basically_ there. Woo! check-in: c069c8a0c8 user: simon tags: trunk | |
| 12:32 | Add input-focus support for System 7, where the Control Manager can't do it itself. Also clean up Carbon builds. check-in: 8e0fe25d39 user: ben tags: trunk | |
| 12:31 | Add the System 7 editbox CDEF, which I seem to have forgotten. check-in: afc128115e user: ben tags: trunk | |
| 12:30 | pterm now uses the new uxsel module, so it's one step closer to being able to be a PuTTY as well as a pterm. In the process I've also moved icky things like actually reading from the pty fd and printing the `terminated on signal' messages into pty.c where they obviously should have been in the first place. Also there's been one interesting repercussion in the terminal code: terminal.c's from_backend now calls term_out() directly rather than expecting the front end to call it afterwards. This has had the entertaining side effect of fixing a Windows-specific bug whereby activity in a port forwarding through a PuTTY with a blinking cursor caused the cursor to blink to ON (!!!!). So, a surprisingly far-reaching checkin as it turns out... check-in: b384cf23f7 user: simon tags: trunk | |
| 11:07 | I'm sick of having to type (cd ..; perl mkfiles.pl) when I'm working on Unix. So now mkfiles.pl will look in .. as well as . when searching for Recipe, so I can run `perl ../mkfiles.pl' and it will Just Work. check-in: 28a1a156b1 user: simon tags: trunk | |
| 10:47 | Added uxsel.c, into which I've moved those parts of the uxnet.c functionality that deal with selectable fds in general. The idea is that pty.c will stop passing its fd straight to pterm.c and hand it to this module instead, and pterm.c will start requesting a general list of fds from this module rather than expecting a single one from pty.c, with the ultimate aim of pterm.c being able to form the basis of a Unix PuTTY as well as pterm proper. check-in: b740285f7b user: simon tags: trunk | |
| 10:14 | Introduced wrapper macros snew(), snewn() and sresize() for the malloc functions, which automatically cast to the same type they're allocating the size of. Should prevent any future errors involving mallocing the size of the wrong structure type, and will also make life easier if we ever need to turn the PuTTY core code from real C into C++-friendly C. I haven't touched the Mac frontend in this checkin because I couldn't compile or test it. check-in: 48c3c19745 user: simon tags: trunk | |
| 07:54 | Fix off-by-one in selection update while scrolling. Thanks Richard B. check-in: f99ffbf1c3 user: simon tags: trunk | |
|
2003-03-28
| ||
| 19:44 | Update text about ports, hopefully not too controversial. check-in: cf9f64a351 user: owen tags: trunk | |
|
2003-03-27
| ||
| 18:50 | Tidy up dlg_editbox_set() and implemen dlg_editbox_get() for System 7. check-in: 705b6030a3 user: ben tags: trunk | |
| 18:06 | Display half of a System 7 edit text CDEF, using TextEdit directly. This is the easy bit. check-in: 831e5834d4 user: ben tags: trunk | |
| 16:46 | open_settings_r() and open_settings_w() need to cope with a NULL session name. check-in: 7ff9f3f2a8 user: ben tags: trunk | |
|
2003-03-26
| ||
| 18:22 | DECCOLM fix, take 2. It turns out that my last fix wasn't causing crashes, but PuTTY was running out of memory, which is both easy and fatal under Mac OS at present. Having fixed that, I've re-instated the screen-clearing and cursor-homing on DECCOLM, and added resetting the scroll region, since this seems to help VTL's keypad diagram display correctly. check-in: 83aec2d1a3 user: ben tags: trunk | |
| 17:52 | Get preferred and minimum sizes in the right order. check-in: 85c15eca05 user: ben tags: trunk | |
| 17:13 | Revert last change. It seems to cause crashes when DECCOLM actually changes the width of the window. check-in: 50ca48ba13 user: ben tags: trunk | |
| 15:14 | DECCOLM should clear the screen and home the cursor, so it does now. Correct interactions with DECOM and DECSTBM not investigated. Should fix bug "deccolm-cls", but I'll leave it open till I've checked the interactions. check-in: e4cc7a2e89 user: ben tags: trunk | |
|
2003-03-25
| ||
| 17:45 | Rename dlg_listbox_addwithindex() to dlg_listbox_addwithid(), since the old name was, not to put too fine a point on it, wrong. check-in: c15ce8b4f5 user: ben tags: trunk | |
| 17:23 | Use CountMenuItems() rather than CountMItems() since the latter isn't available in Carbon. check-in: c71405a7dc user: ben tags: trunk | |
| 17:18 | Add support for editbox controls on Mac OS 8, and for per-control private data. check-in: ff30bf5a94 user: ben tags: trunk | |
|
2003-03-24
| ||
| 16:46 | Clean out some #ifdef'ed out junk. check-in: b55ca73a8a user: ben tags: trunk | |
| 16:41 | Initialise the "next menu ID" counter for pop-up menus. This stops crashes on Mac OS 8. Also re-do support for activate events so as not to depend on embedding hierarchies, and thus to work on System 7. check-in: 8e5be0656c user: ben tags: trunk | |
| 15:55 | Slightly improve radio button layout to more closely match the Mac OS 8 HI Guidelines. check-in: 102ef083e8 user: ben tags: trunk | |
| 04:49 | The general blurb on using Plink in batch mode ought to mention the host key prompt, and specifically mention how to ensure it won't bite you. check-in: f5f2f8848f user: simon tags: trunk | |
|
2003-03-23
| ||
| 08:11 | Add support for pop-up menus (drop-down lists in Windows parlance). For some reason, these explode horribly with the Appearance Manager present, but work fine in bare System 7. Investigations are ongoing. check-in: 181998972d user: ben tags: trunk | |
|
2003-03-22
| ||
| 11:00 | Various cosmetic fixes to the GTK config box: vertical alignment of edit box labels, Left/Right on the treeview to collapse and expand branches, a window title, and the best treatment of wrapping text widgets I could think of within the product-order-oriented GTK layout model. I think this thing is now pretty much as good as it's going to get before GTK v2 (which should fix one or two remaining minor nasties which I really couldn't be bothered to work around in GTK 1.2), so the next step is to actually start _using_ it. check-in: 8d912eb773 user: simon tags: trunk | |
| 05:07 | The GTK colour selector does not provide full 8-bit resolution in the RGB values (it deals in floats with 2 d.p. instead). Hence I've replaced the static RGB text item in the Colours panel with three little edit boxes, so that a user can type in exact 0-255 RGB values if necessary. This should have the additional advantage of being quicker than faffing with the colour selector if you already know exactly what you want and are in a hurry! check-in: 485f935492 user: simon tags: trunk | |
| 04:36 | Fiddle with the cmdline_saved mechanism: the `-load' option is now never deferred, but is evaluated instantly. This _should_ fix all the irritating problems with (for example) proxy settings and saved sessions not playing nicely. Or it may have some other ghastly side- effect I haven't considered; really I ought to have been keeping better track of all the problems in this area :-( check-in: b68ef18c3a user: simon tags: trunk | |
| 04:05 | Windows file selectors contain an edit box as well as the Browse button; we must send EVENT_VALCHANGE when the edit box is manually changed as well as when the file selector successfully completes. check-in: fceeb8e166 user: simon tags: trunk | |
| 03:49 | Yikes - saving of Default Settings must have been broken for some time! The load code in settings.c was translating an empty string into "Default Settings" to pass to {win,ux}store, whereas the save code was passing the empty string straight down and expecting it to be dealt with. So, a policy decision: the precise name of the "Default Settings" special session _at the storage level_ is up to the individual platform storage code to decide, and all platforms MUST assume Default Settings is meant if they receive NULL or the empty string as a session name. check-in: 62160c0af1 user: simon tags: trunk | |
| 03:32 | Make sure one of the Local/Remote port forwarding radio buttons actually starts off selected! check-in: 0f2a55849f user: simon tags: trunk | |
| 03:22 | Fixed the bug whereby PuTTYgen went into generation mode as soon as it started up. The problem was that I was accepting _any_ event on IDC_GENERATE to trigger this, not just the `clicked' event, and some uninteresting event like `initialise' must have occurred. Quite why this only showed up as a result of the config box revamp I can't imagine. check-in: ebf4491f72 user: simon tags: trunk | |
|
2003-03-20
| ||
| 18:24 | Add crude support for multiple panels in the config dialogue box. There's no way to switch between panels yet, though, so you're stuck on the first one. check-in: a0006bd7ef user: ben tags: trunk | |
| 17:15 | Pass a pointer to the entire dialog box structure to event handlers, rather than just the individual control pointer, because otherwise event handlers can't modify other controls. check-in: ccdc6b6bf8 user: ben tags: trunk | |
| 16:12 | Mention xterm mouse reporting in the section on copy and paste. check-in: 7c288e49db user: ben tags: trunk | |
|
2003-03-18
| ||
| 18:40 | Add support for drawing a ring around the default button in System 7. check-in: 7e74ec2588 user: ben tags: trunk | |
| 17:47 | Add support for changing the contents of a pre-Appearance static text control. check-in: db36367194 user: ben tags: trunk | |
| 17:41 | Tag the "Cancel" button appropriately, in case anyone's using a theme that pays attention to it. check-in: d521896264 user: ben tags: trunk | |
| 13:47 | Better appearance and positioning for dlg_error_msg box, and also I've just found out that it's easy to ask for the config box to be centred on the screen by default, which is kinda cool. check-in: 94e43dea51 user: simon tags: trunk | |
| 13:12 | Change the token for HTTP Basic Authentication from "basic" to "Basic". According to RFC 2617, it should be case-insensitive, but some proxies (Microsoft Proxy Server in particular) erroneously reject "basic". Should fix semi-bug msproxy-denied. check-in: 13456a37ff user: ben tags: trunk | |
| 13:06 | Big sprawling dialog-box commit covering all sorts of things. Buttons now have an `iscancel' flag to go with `isdefault'; dlg_last_focused() now explicitly passes the control it _doesn't_ care about (`I want the last control that had focus and isn't this one'); and in the GTK implementation, various fixes have happened, notably including arrow keys working sensibly in list boxes and the treeview and short font aliases being expanded correctly to initialise the font selectors. check-in: 6f4a286473 user: simon tags: trunk | |
| 03:03 | Gah, another duplicate keyword. I must stop creating new docs sections by cut and paste. check-in: 42ec2ce004 user: simon tags: trunk | |
|
2003-03-17
| ||
| 18:35 | My First CDEF: A terribly trivial static text control for System 7. Needs work. check-in: 4af8995353 user: ben tags: trunk | |
| 16:38 | Insert a missing ampersand that meant that the last version didn't even compile. check-in: d5f36308d8 user: ben tags: trunk | |
| 15:40 | Partial implementation of the platform-independent dialogue-box interface for the Mac OS. This isn't anywhere near complete, and is wrong in a few important regards, but I think it's heading in the right direction. check-in: a32dd078ae user: ben tags: trunk | |
| 15:36 | If I() and S() aren't inline, provide a prototype even if we're defining them. This is useful for compilers that warn about un-prototyped functions. check-in: 04aa552384 user: ben tags: trunk | |
| 13:00 | When running on a system with Aqua menu layout, delete the separator line above "Quit" as well as "Quit" itself. check-in: 91ba490637 user: ben tags: trunk | |
| 10:57 | Error messages update. It's now abundantly clear that WSAECONNABORTED is not the same thing as ECONNABORTED, so I've removed the `we're a bit confused about this, send us details' text. And someone has just been confused by `connection timed out', so I've added that too. check-in: f673042f10 user: simon tags: trunk | |
|
2003-03-16
| ||
| 14:18 | typo check-in: 299ae4bf30 user: jacob tags: trunk | |
| 07:28 | RSA blinding requires random numbers. Hence, Pageant now needs to have the random number generator linked in. check-in: 3eb890bc10 user: simon tags: trunk | |
| 06:37 | Further work on the GTK config box; mostly implemented keyboard shortcuts now (only treeviews and list boxes to go, which currently do very weird things and I need to overhaul them completely). check-in: 4d48e2127e user: simon tags: trunk | |
| 06:36 | Fixed accelerator clash in the Unix-specific config, since gtkdlg.c is now competent to detect them :-) check-in: 467805db99 user: simon tags: trunk | |
|
2003-03-15
| ||
| 12:39 | My comment about RSA blinding was talking slight tosh. Fixed in case anyone ever actually reads it :-) check-in: ea40516592 user: simon tags: trunk | |
| 11:51 | Implement RSA blinding, to defeat Brumley and Boneh's RSA timing attacks. In the PuTTY suite I'm pretty sure they're only applicable to a forwarded Pageant, and if your remote sysadmin is abusing your Pageant then you're shafted _anyway_; but it can't hurt to take precautions now, just in case things change in future. check-in: 3b2ef734f7 user: simon tags: trunk | |
| 09:56 | When a piece of text overflows its column in a tabbed list box, I think on balance I rather like the natural behaviour of the way I've done it, except that non-zero separation between the columns would be even nicer. Accordingly, here is some. check-in: dbf66c8765 user: simon tags: trunk | |
| 09:55 | The Telnet ENVIRON configurer also had a list box with an implicit tab stop. Fixed this one too. check-in: c8e40927a6 user: simon tags: trunk | |
| 09:50 | Event handling in the GTK dialog engine is now basically present and correct. All the callbacks are getting called, all the dialog actions are working (the port forwarding, colour and charclass configurers are all completely functional), file, font and colour selectors happen, and it's all looking pretty cool. check-in: 143bc8df10 user: simon tags: trunk | |
| 09:49 | Windows sets automatic tabs in list boxes, but GTK doesn't, so we should make the tab stop in the forwarded-ports list explicit. check-in: 7fbaff51e9 user: simon tags: trunk | |
| 03:42 | Missed a couple of the Unix-specific settings out of settings.c. One of these days I'll have to separate the platform-specific settings out into winsett and uxsett modules, but for now it's not too urgent. check-in: 4ece626eed user: simon tags: trunk | |
|
2003-03-14
| ||
| 15:20 | While I'm adding explanatory comments by the coroutine macros, it occurs to me that would also be a good place to put a copy of the instructions for disabling Edit and Continue debugging. Nobody _actually_ reads the README, after all... check-in: 1838c429d8 user: simon tags: trunk | |
| 15:18 | The divisor in the bell timing boxes should be TICKSPERSEC, not 1000. check-in: f996ba3460 user: simon tags: trunk | |
| 12:35 | Continuing work on the GTK config box. Created uxcfg.c for the Unix-specific config items; moved a stray Windows-specific config item (scrollbar-in-fullscreen) out into wincfg.c to stop it appearing on Unix; continued updates to gtkdlg.c. I now believe the GTK config box looks basically correct (modulo minor cosmetic issues and keyboard accelerators). Next step, add the event handling so it's actually functional. check-in: 65b0f014dd user: simon tags: trunk | |
|
2003-03-13
| ||
| 13:52 | First stab at a GTK layout engine. It's missing all sorts of stuff (list boxes are particularly conspicuously absent), it has no event handling at all, and it isn't in any way integrated into pterm - you have to build it specially using the test stubs in gtkdlg.c. But what there is so far seems to work plausibly well, so it's a start. Rather than browbeat the existing GTK container/layout widgets into doing what I wanted, I decided to implement two subclasses of GtkContainer myself, which implement precisely the layout model assumed by the config box specification; this has the rather cool consequence that the box can be resized and will maintain the same layout at all times that it would have had if initially created at that size. check-in: 0a548b8a35 user: simon tags: trunk | |
|
2003-03-11
| ||
| 16:35 | Increase PuTTY's default partition size to 2 MB. 1 MB just isn't enough. check-in: 9393fb8b0d user: ben tags: trunk | |
| 03:30 | Never pass a `char' to a ctype function. I had relied on gcc -Wall letting me know about instances of this, but it turns out that my ctype.h explicitly casts input values to `int' to evade the `subscript has type char' warning, so it had been carefully not letting me know! Found them all by compiling with a doctored ctype.h, and hopefully fixed them all too. check-in: 4b43abe87a user: simon tags: trunk | |
|
2003-03-08
| ||
| 05:46 | Add the ability to allocate extra per-dialog-instance private data in the portable dialog interface. This has allowed me to remove `ssd->savedsession' in config.c, which was (I believe) the only out-of-place piece of per-instance data in the dialog template stuff. Now we should actually be able to run more than one config box in the same process at the same time (for platforms that'll find that useful). check-in: 2d957c80e0 user: simon tags: trunk | |
|
2003-03-07
| ||
| 12:18 | Richard B's patch for resize behaviour. The scrollback now contains a marker which defines everything before it as `permanent' scrollback and everything after it as `temporary'; only temporary scrollback lines are returned to the main screen when the window height is increased. Screen clears mark the lines pushed into the scrollback as permanent; so lines explicitly cleared off the screen by ESC[2J are never returned to it by mistake. This patch also fixes the incorrect state the primary screen is left in when the window is resized while the alternate screen is active. check-in: c0114029ba user: simon tags: trunk | |
| 03:03 | Overnight docs build found a duplicate section keyword. Oops. Fixed. check-in: 3349adcd9e user: simon tags: trunk | |
|
2003-03-06
| ||
| 17:46 | Alert box to support host-key checking. check-in: f6cbe5c08f user: ben tags: trunk | |
| 17:44 | Slightly better than null verify_ssh_host_key(). It's broken in more ways than I can comfortably enumerate (see the comments in the code), but it's better than always assuming everything's OK. check-in: aa9c268756 user: ben tags: trunk | |
| 13:20 | Just for Jacob, the ciphers drag list is now six lines high instead of five, so that the scroll bar doesn't show up when it's active. check-in: 18b7bd8bf0 user: simon tags: trunk | |
| 13:18 | Got a bit of a better handle on the whole GDI `logical units' mess, and sorted out the static-control text wrapping rather better. Now it works under both large fonts and small fonts on Win2K, so I have high hopes that it's actually correct this time. check-in: f627d2480a user: simon tags: trunk | |
| 12:49 | Fix a couple of stupid typos in the session-saving code. check-in: d9c07e5805 user: simon tags: trunk | |
| 07:25 | Jacob points out that TS_EOL is broken in BINARY mode. check-in: c37f9b08b3 user: simon tags: trunk | |
| 07:24 | Reorganisation of misc.c: Minefield has moved out to winmisc.c, and so has the Windows dputs() - which has also acquired a Unix counterpart in uxmisc.c. -DDEBUG should now work on Unix. check-in: dca52225ef user: simon tags: trunk | |
| 06:58 | Oops, another missing forward-struct-declaration. check-in: d98f19e4da user: simon tags: trunk | |
| 06:57 | Richard B's patch to add WINDOWID support to pterm. check-in: 5bae12ff10 user: simon tags: trunk | |
| 06:52 | Repair the delete-saved-session button (trivial braino). check-in: ba3a52afd9 user: simon tags: trunk | |
| 06:51 | Richard B's patch to push erased text into the scrollback on ESC[2J clears, and also to temporarily push the primary screen contents into the scrollback while the alternate screen is active and bring it back afterwards. check-in: 99255f9ef7 user: simon tags: trunk | |
| 06:41 | As usual, gcc is better at warnings than MSVC, so here are some pedantic fiddlings with the new config-box stuff to cure some. check-in: 73136e7d3a user: simon tags: trunk | |
|
2003-03-05
| ||
| 16:07 | The long-awaited config box revamp! I've taken the whole config box to pieces, and put it back together in a new table-driven form. config.c sets up a data structure describing most of the config box; wincfg.c adds in the Windows-specific options (so that config.c can also form the basis for Mac and Unix config boxes). Then winctrls.c contains a shiny new layout engine which consumes that data structure, and windlg.c passes all WM_COMMAND and similar messages to a driver alongside that layout engine. In the process I've sorted out nicer-looking panel titles and finally fixed the list-boxes-are- never-the-right-size bug (turned out to be Windows's fault, of course). I _believe_ it should do everything the old config box did, including context help. Now everyone has to test it thoroughly... check-in: 623bf020eb user: simon tags: trunk | |
|
2003-03-04
| ||
| 08:14 | Add 'what does "PuTTY" mean?', and add some IPA to the shortened pronunciation answer. check-in: 7130221d8f user: ben tags: trunk | |
|
2003-03-03
| ||
| 10:35 | I've been meaning to get round to this for _ages_: in front of my coroutine macros, I now include a comment linking to my web article that explains what they do. check-in: d1fbd328fa user: simon tags: trunk | |
|
2003-03-01
| ||
| 09:12 | Improve scheduling on the Mac: 1: Only update the screen when there's nothing else to do. This means that it's a lot harder for a fast typist to outrun PuTTY. 2: Only sleep for at most 100ms at a time. This is a kludge to work around the WakeUpProcess caused by incoming data can happen before the WaitNextEvent it's meant to interrupt, leading to PuTTY sleeping forever because it doesn't know there's network data pending. check-in: bdadee3661 user: ben tags: trunk | |
|
2003-02-28
| ||
| 14:28 | In merging the username and password input functions I inadvertently removed the support for control characters in passwords. Replaced. check-in: 9c58e8f454 user: simon tags: trunk | |
|
2003-02-27
| ||
| 17:34 | Handle the Aqua menu layout, in which the system provides a "quit" option for us, correctly. check-in: db8bd30825 user: ben tags: trunk | |
| 17:21 | Add 'plst' 0 resources to help Mac OS X do magic things. These aren't actually compiled yet because they must only be present in the Carbon build, and I don't currently compile the resources separately for each platform. check-in: 1083ee600a user: ben tags: trunk | |
|
2003-02-24
| ||
| 16:39 | Add some parentheses for general robustness. (In particular I just tried to run mkfiles.pl on Perl 5.005_03 and it didn't work without them.) check-in: 9f567ffd5b user: simon tags: trunk | |
|
2003-02-23
| ||
| 07:42 | Set the executable fragment name (in CFM builds) to the name of the target pgram, rather than to "PuTTY" unconditionally. check-in: 46aafdd33e user: ben tags: trunk | |
| 07:34 | I think the Carbon build now works well enough to be worth turning on by default. It's not particularly useful, but it runs. check-in: 0a3937f543 user: ben tags: trunk | |
| 07:31 | Handle suspend and resume events in PuTTYgen as well. check-in: ec008baf3e user: ben tags: trunk | |
| 07:00 | Don't open the event log whenever an event is logged; instead handle the "Show Event Log" menu entry sensibly. Similarly, make it possible to close (hide) the event log. check-in: 5bac4b191f user: ben tags: trunk | |
| 06:41 | Scroll the event log to the end after adding a line if it was looking at the end before the line was added. check-in: 29a6054ba8 user: ben tags: trunk | |
| 05:58 | Add handling for suspend and resume events, and set the flags in our 'SIZE' resource that say we can handle them. This seems to avoid a crash when PuTTY's switched away from, and is necessary for Carbon anyway. check-in: 91edf3684b user: ben tags: trunk | |
|
2003-02-22
| ||
| 18:13 | Work around an SC bug that causes it to try to use the same register for two purposes in s_wrpkt_prepare(). This makes SSH1 work on 68K Macs, at least until I deactivate the terminal window... check-in: 0d1b151319 user: ben tags: trunk | |
|
2003-02-20
| ||
| 16:55 | Add a mechanism for collecting entropy, and displaying how much we've got, based on the Windows version. We don't _do_ anything with the entropy yet, though. check-in: b883ba310b user: ben tags: trunk | |
| 16:31 | Be careful not to try to get information from windows we don't own, or that don't exist at all. Also a small PuTTYgen change that I can't be bothered to filter out of this commit. check-in: 9be131f6eb user: ben tags: trunk | |
| 16:22 | Change some of the blocks of cut&pasted code into loops. check-in: 46a384efb2 user: ben tags: trunk | |
|
2003-02-19
| ||
| 18:40 | Ask for traceback tables in PowerPC objects, since that should make tracking down crashes easier. check-in: cff55ca115 user: ben tags: trunk | |
| 03:54 | Fix documentation for `ssh2-keyderive-nonbug'. check-in: 283ad53c20 user: jacob tags: trunk | |
|
2003-02-18
| ||
| 19:03 | Make this compile in Carbon. check-in: f6ac137ffc user: ben tags: trunk | |
| 14:10 | Fix `ssh2.0.11-keyderive-nonbug' on the strength of Ben's analysis. Not tested it myself. check-in: dbeef9d5a7 user: jacob tags: trunk | |
|
2003-02-16
| ||
| 08:27 | Bring PuTTYgen into the world of object-oriented event handling. Also add a non-functional "generate" button the the key window. check-in: e6bbdcb84a user: ben tags: trunk | |
| 07:44 | Make it possible to close the "about" and "licence" boxes again. check-in: 335f1c4fe0 user: ben tags: trunk | |
| 07:03 | Actually use macabout.c. check-in: a503aefc1e user: ben tags: trunk | |
| 07:03 | Stub code for handling key windows in PuTTYgen. This file will eventually include all the stuff that does actual work in PuTTYgen. check-in: e281e92371 user: ben tags: trunk | |
|
2003-02-15
| ||
| 12:47 | faq-support: Modified text to reflect the fact that the wishlist now shows bugs fixed recently (FSVO "recently"). Hopefully I haven't made it too confusing. check-in: c16ad421d2 user: jacob tags: trunk | |
| 10:22 | Rather than increasing the size of my switch statements yet further, have a bunch of function pointers associated with each window to do things like updates and click handling. This is all looking disturbingly object-oriented. . While I'm here, separate out the about box into its own file, shared by PuTTY and PuTTYgen. check-in: 3881d906eb user: ben tags: trunk | |
| 08:20 | Tiny amount of infrastructure for having actual keys in PuTTYgen. check-in: 334a2cd854 user: ben tags: trunk | |
| 08:20 | <OpenTransportInternet.h> seems to want <Files.h>. Silly thing. check-in: 1796652c7a user: ben tags: trunk | |
| 07:29 | Make various internal functions static. check-in: 25f6932e4b user: ben tags: trunk | |
|
2003-02-13
| ||
| 06:30 | Move the 'vers' resources for Mac OS into their own file, to be shared by the various applications. check-in: c03457d522 user: ben tags: trunk | |
|
2003-02-12
| ||
| 17:53 | Minimal shell of PuTTYgen for Mac. No actual PuTTYgen-specific code there yet, but an absence of PuTTY-specific code. check-in: a890ccb51e user: ben tags: trunk | |
| 17:21 | Deal with a "possible extraneous ';'" warning. check-in: e05da039a2 user: ben tags: trunk | |
| 17:06 | Convert implicit (char *) and (unsigned char *) casts to explicit ones. check-in: 864590f66f user: ben tags: trunk | |
| 13:49 | Update list of Telnet options to match what IANA currently have. check-in: 1686892274 user: ben tags: trunk | |
|
2003-02-11
| ||
| 17:10 | Clip host resize requests to the size of the desktop. check-in: 681fb05042 user: ben tags: trunk | |
| 08:10 | Remove another `please pester ssh.com for their agent protocol' bit. check-in: 51a454e99b user: simon tags: trunk | |
|
2003-02-10
| ||
| 17:49 | The event log is implemented; remove it from the list. check-in: 431ec73eb4 user: ben tags: trunk | |
|
2003-02-07
| ||
| 08:22 | Set some parent windows on PuTTYgen and Pageant About/Licence dialog to improve window management behaviour. check-in: f39872d5a5 user: jacob tags: trunk | |
| 07:54 | Give PuTTYgen an icon. check-in: aa0351520d user: jacob tags: trunk | |
|
2003-02-06
| ||
| 19:38 | Crude Event Log implementation for the Mac. I'm fairly convinced now that using the List Manager was entirely the wrong decision on my part, so I'll probably rewrite this to use TextEdit at some point, but it's better than stderr even so. check-in: e21e4e9b77 user: ben tags: trunk | |
| 19:33 | Clean up Carbon build procedures somewhat. I still don't have anything that actually works, but I think I'm getting closer. check-in: fc6c6cc4b7 user: ben tags: trunk | |
|
2003-02-05
| ||
| 19:01 | Move net_service_lookup() to macnet.c, since that's where it belongs. check-in: e45155e93a user: ben tags: trunk | |
| 03:05 | Oops; overzealous copy-and-paste in the Windows Help context names. check-in: 2af0236d59 user: simon tags: trunk | |
|
2003-02-04
| ||
| 17:39 | Add a level of indirection to make it rather easier to work out which of a session's windows we're dealing with. check-in: 917edfac77 user: ben tags: trunk | |
| 07:02 | Add another bug workaround, this one for old OpenSSH (<2.3) servers which have a strange idea of what data should be signed in a PK auth request. This actually got in my way while doing serious things at work! :-) check-in: 2a3598e202 user: simon tags: trunk | |
| 07:00 | Further fallout from the introduction of the Filename type. (Memo to self: if you change the type of a variable and everything compiles without type-checking errors, that doesn't mean it's all fixed, because variadic functions aren't type-checked! Oops.) check-in: c83f62d857 user: simon tags: trunk | |
|
2003-02-03
| ||
| 20:15 | If we're compiling for Carbon, define OTCARBONAPPLICATION so that we get the simplified (and backward-compatible) application-only interfaces. check-in: 75b5d27dc6 user: ben tags: trunk | |
| 20:10 | Carbonise, or at least disable MacTCP support under Carbon. check-in: 3fba36369a user: ben tags: trunk | |
| 20:08 | I can only quote the comment in <Scrap.h> which prompted this commit: /* Newsflash! After 15 years of arduous toil, it's finally possible for specially trained typists wielding advanced text editing technology to define symbolic names for commonly used scrap flavor type constants! Apple triumphs again! */ check-in: 90f6d5ad0c user: ben tags: trunk | |
| 20:03 | Fix various breakages my Carbonisation caused in the Classic build, notably that outside Carbon, CGrafPtr and GrafPtr are different types, even though they're mostly interchangeable, so we need to interpose a cast between GetWindowPort and SetPort. check-in: 68798e3793 user: ben tags: trunk | |
| 19:53 | Carbonise. Currently, size tips and copy/paste won't work in Carbon. check-in: deae33d0a3 user: ben tags: trunk | |
| 18:33 | Slightly improve Carbon handling: we still have to deal with the "About..." menu entry, even if the rest of the Apple Menu is done for us. check-in: 169a600cd3 user: ben tags: trunk | |
| 18:01 | Convert keyboard events into Unicode properly. I can now type all manner of interesting characters and have them work properly. check-in: d405e5ebd9 user: ben tags: trunk | |
|
2003-02-02
| ||
| 10:02 | Update to match reality. check-in: a3c46c5adf user: ben tags: trunk | |
| 09:59 | Add support for using Navigation Services to open saved sessions. Support for saving sessions using Navigation Services will come later. check-in: f09cdf55a5 user: ben tags: trunk | |
|
2003-02-01
| ||
| 18:04 | Carbonise, mostly by replacing addresource() with c2pstrcpy() and AddResource(), and similar. check-in: 2ca911cb03 user: ben tags: trunk | |
| 17:55 | Carbonise. Until we support Navigation Services, loading and saving sessions is tricky. check-in: cc9ee8dc5a user: ben tags: trunk | |
| 17:42 | Make this compile in a Carbon world (while still supporting everything else). check-in: 274e973054 user: ben tags: trunk | |
| 16:20 | Add some glue to allow building a Carbon version of PuTTY. It won't work, but it's nice to have the infrastructure in place. check-in: 867797dc22 user: ben tags: trunk | |
| 15:44 | Rather more natural (if much more complex) Mac Filename implementation. Filenames are represented as a FSSpec, which is converted to and from an alias record ('alis' resource) when saving and loading sessions. . It might be an idea to allow in-core Filenames to contain alias records too, so that they can refer to directories that don't exist on the current system, but that requires Filenames to be dynamically allocated, which is likely to be a pain. check-in: ef3dcf4a08 user: ben tags: trunk | |
| 15:39 | In xlatlognam(), use the start of the destination buffer as the destination filename, not the end. check-in: 497d4a8ca8 user: ben tags: trunk | |
| 11:25 | Initialise a variable that might otherwise have caused trouble. Thanks to Ross Younger. check-in: fdbeff0d7d user: simon tags: trunk | |
| 11:24 | Oops, Ben is quite right about the rather appalling design of filename_from_str. Here's a better fix, with some const repercussions too. check-in: f8d33b50cd user: simon tags: trunk | |
| 09:44 | Tidy up Simon's FontSpec abstraction. Also, make fontspec_to_str not return the address of an automatic variable. It now has a memory leak instead. check-in: 19ff369be2 user: ben tags: trunk | |
| 09:42 | Make save_scroll() static. check-in: d6ad9400b3 user: ben tags: trunk | |
| 06:54 | 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 :-) check-in: 497dc397e7 user: simon tags: trunk | |
| 06:28 | Fix the gcc warnings in this module (since we now seem to be building -Werror under Unix this is quite important!). check-in: f2f4ab7ddd user: simon tags: trunk | |
| 06:26 | Richard's lazy-scrolling patch. This builds up scroll operations in a list, combining adjacent ones for the same region, and runs them all in do_paint. I'm not sure it's entirely right, but it works on my Mac in every case I've tested. check-in: 6144d2df4f user: ben tags: trunk | |
|
2003-01-31
| ||
| 20:09 | Misc tweaks to proxy section check-in: 59e9cf9831 user: jacob tags: trunk | |
| 18:29 | Be slightly less negative about other people's setting up PuTTY-related fora. check-in: 14c4261726 user: ben tags: trunk | |
| 17:18 | Mention the slightly odd "too many authentication attempts" message you get from OpenSSH if you overfill Pageant. check-in: 9c12e6ca96 user: ben tags: trunk | |
|
2003-01-30
| ||
| 17:11 | Small amount of extra noise gathering -- slurp the process list in noise_get_heavy(). check-in: a7e2dbcbf1 user: ben tags: trunk | |
| 07:39 | Yet more fallout from the 16-colour changes. I think by this time these fiddly little changes are no longer bugs I introduced recently, they're bugs that have been around all along and I've only just smoked out by altering the ATTR_* definitions. check-in: 433f96b155 user: simon tags: trunk | |
| 04:19 | Antonin Brothanek points out that `Incoming packet was garbled on decryption' could be a result of the wrong setting of the `Miscomputes SSH2 encryption keys' bug workaround option. check-in: 3ed7da1881 user: simon tags: trunk | |
|
2003-01-29
| ||
| 10:39 | Further cosmetic tweaks to file-selection boxes per observed conventions on Windows: - Change "AllFiles" to "All Files (*.*)" - Extensions in lower case check-in: e7864be8f8 user: jacob tags: trunk | |
|
2003-01-28
| ||
| 06:06 | And another bit missing from the settings changes: pterm's platform default for CloseOnExit was encoded wrongly. Hopefully this should be everything now; I'm really starting to get sick of picking up the pieces after my two checkins yesterday. Perhaps I should have waited until I had a brain before doing them in the first place. check-in: d0361ae286 user: simon tags: trunk | |
| 06:05 | Gaah, another missing bit from the 16-colour support: Ben points out an out-of-date comment in putty.h. check-in: 28c32b2994 user: simon tags: trunk | |
| 05:57 | Neither do we do non-block cursors. check-in: 0409b0a9d7 user: ben tags: trunk | |
| 05:56 | We don't do blinking text/cursor yet. check-in: 8be89f7bf2 user: ben tags: trunk | |
| 03:30 | Ahem, and restore the missing & from that checkin. Arrgh. check-in: 7924f05930 user: simon tags: trunk | |
| 03:26 | Oh, _that's_ why that `if' had the sense it did. Good grief. Apparently I used to rely on the fact that the same `erase_char' used to wipe parts of the screen was also a good value to use for resetting line attributes. Should now be more robust against future reorganisations of the ATTR_* bit fields. check-in: 1bc37a873d user: simon tags: trunk | |
|
2003-01-27
| ||
| 18:35 | Don't log every keypress by default here either. check-in: 7459fe2b61 user: ben tags: trunk | |
| 18:25 | Fix a minor oversight in the new 16-colour code for the Mac, which was calculating the background colour wrongly. check-in: 4dd716d5d5 user: ben tags: trunk | |
| 18:17 | Security fascists might claim that logging every keypress to stderr is a bad idea, so stop doing that (only in the Mac port, so not actually much of a problem). check-in: a466b7e46b user: ben tags: trunk | |
| 17:46 | Add myself to the list of copyright holders, largely for term_key(). check-in: 8c416fc67d user: ben tags: trunk | |
| 17:18 | Of course, that cleanup I did earlier in which I rationalised all the various `yes/no/maybe' enums into one common one missed a vital point: all those enums mapped on to integers in different ways, which affected the format of stored settings. Arrgh. So now settings.c contains yet more painful warts and I'm _really_ starting to think it's about time we designed a new set of human-usable config keywords and retired this lot to the status of Unpleasant Backwards-Compatibility Relic. check-in: a31fb10880 user: simon tags: trunk | |
| 17:03 | xterm apparently supports ESC[90m through ESC[97m to set bright foreground colours, and ESC[100m through ESC[107m to set bright background colours. Hence, so do we. Bright-foreground is distinguishable from bold, and bright-background distinguishable from blink, when it leaves terminal.c; the front end may then choose to display them in the same way if it's configured to do so. This change makes the xterm backend for Turbo Vision (!!!) work properly. Untested on Mac. check-in: a7834c6a71 user: simon tags: trunk | |
| 12:02 | Remove all `enum'-typed variables from the Config structure. Everything in there which is integral is now an actual int, which means my forthcoming revamp of the config box will be able to work with `int *' pointers without fear of doom. check-in: b7a1f42e84 user: simon tags: trunk | |
| 09:44 | Blinking text was broken on pterm. This should fix it. check-in: 41143d93f5 user: simon tags: trunk | |
|
2003-01-26
| ||
| 18:39 | First attempt at a platform-independent keyboard handler. This isn't complete yet -- there's no Alt+keypad support, and no way for the front-end to find out what it should do with the Num Lock light. It's also not fully tested. Nonetheless, it's at least as good as the previous Mac keyboard handler. Other platforms probably shouldn't adopt it just yet. check-in: 78d8025c59 user: ben tags: trunk | |
| 18:33 | Remove some fossils. check-in: d967df13b1 user: ben tags: trunk | |
|
2003-01-25
| ||
| 13:23 | Support for pasting 'TEXT', ie text in the local character set. At the moment, we assume it's in the system script -- later we should check for 'styl' scrap in case it isn't. check-in: 24d30e0b77 user: ben tags: trunk | |
| 13:21 | Don't pass NULL to strcmp. Instead, if the user passes a font of NULL, only match table entries where the font is NULL. check-in: 037cf15232 user: ben tags: trunk | |
| 11:20 | Add support for copying non-Unicode text to the clipboard. We also send a simple 'styl' record along with it to specify the font and suchlike. I'm not sure it's worth making this optional in the way the RTF is in Windows. check-in: c32aaaea83 user: ben tags: trunk | |
| 10:23 | Fix Unix breakage from term_mouse() revamp too. check-in: e2ba46c004 user: simon tags: trunk | |
| 10:22 | Fix minor breakage on Windows as a result of term_mouse revamp. check-in: 152c010761 user: simon tags: trunk | |
| 10:16 | Change the term_mouse interface a little so that it gets passed both the raw and the cooked mouse button, with the mapping being done in advance by the front-end. This is useful because it allows the front-end to use information other than the raw button (e.g. the modifier state) to decide which cooked button to generate. . Front ends other than the Mac one are untested, but they just call translate_button() themselves and pass the result to term_mouse(). check-in: b60ae0056c user: ben tags: trunk | |
| 09:21 | The PowerPC build works on Owen's Mac, which doesn't have AppearanceLib, so that bug's definitely fixed. check-in: 712882f429 user: ben tags: trunk | |
| 09:18 | Duplicate Session is done. check-in: 131cbe6764 user: ben tags: trunk | |
| 09:15 | Add support for "Duplicate Session", moving back-end selection into mac_startsession() in the process. check-in: d09a3393de user: ben tags: trunk | |
| 08:09 | Ensure that development snapshots have a version number higher than the preceding release. check-in: ad208882de user: ben tags: trunk | |
| 08:07 | We now have _some_ useful AE support, so mention what's missing specifically. Also mentio lack of Duplicate Session. check-in: bce1cbfaeb user: ben tags: trunk | |
| 08:04 | AEGetNthPtr() is stupid and counts from 1. Allowing for this gets aevt/odoc working. check-in: cf472a08fb user: ben tags: trunk | |
|
2003-01-24
| ||
| 08:12 | Change website refs from putty/wishlist.html to putty/wishlist/ check-in: 18b7538040 user: jacob tags: trunk | |
|
2003-01-23
| ||
| 18:37 | We'd like full-screen mode too. check-in: d5cc84034d user: ben tags: trunk | |
| 18:28 | Add a bug and a missing feature. check-in: 9b3d649e18 user: ben tags: trunk | |
| 18:25 | Redesign the macnet.c infrastructure, largely so as to avoid using Gestalt(), which didn't detect the MacTCP emulation in Owen's Open Transport. check-in: e984a17713 user: ben tags: trunk | |
| 16:57 | Add Apple Event handlers for 'aevt'/'oapp', 'aevt'/'odoc' and 'aevt'/'pdoc'. None of them does anything useful yet (though the odoc one tries to). check-in: f1ab1bab49 user: ben tags: trunk | |
| 11:01 | Add {Question} to faq-psftp-slow check-in: 35f5c62479 user: jacob tags: trunk | |
| 06:30 | Mention Ctrl-PgUp/PgDn check-in: 1165483f25 user: jacob tags: trunk | |
| 05:37 | In pursuance of `icon-title-default-change': Change the sense of cfg.win_name_always' representation in the UI (from `Avoid ever using icon title' to `Separate window and icon titles'). Also update the docs to match reality. check-in: 2ca630032f user: jacob tags: trunk | |
|
2003-01-22
| ||
| 14:22 | Next instalment of the Great Incompatible Defaults Change: `avoid ever using icon title' now defaults to On, because in general it seems to cause more problems than it solves. check-in: 3e1a10c37a user: simon tags: trunk | |
|
2003-01-21
| ||
| 15:05 | accel.pl knows about the accelerators added by winctrls.c:prefslist(). (I'm amazed this still works...) check-in: 1a775309b2 user: jacob tags: trunk | |
| 13:18 | Fix "-v" in the Windows console utilities (plink, pscp, psftp). I'm not convinced I've done this the right way (I've introduced a static for logctx in console.c) but it will do for now. check-in: de3e01d206 user: jacob tags: trunk | |
|
2003-01-20
| ||
| 18:28 | We'll need the event log to work, too. check-in: bba6b378b1 user: ben tags: trunk | |
| 18:27 | Remove stray debugging printfs. check-in: 9acbdd2713 user: ben tags: trunk | |
| 16:55 | More unimplemented features. check-in: ad8e50ca15 user: ben tags: trunk | |
| 16:55 | Add minimal Apple Event support -- we handle the 'aevt'/'quit' event. check-in: f7f6836f13 user: ben tags: trunk | |
| 14:15 | Enable -Werror in GTK builds (we already have -Wall, so more GCCisms aren't _that_ evil). check-in: 023d9c2fdc user: ben tags: trunk | |
| 14:10 | Add a stub "free" routine for pterm. Thanks to rjk. check-in: 25b133ff45 user: ben tags: trunk | |
| 12:05 | Run through contrib/accel.pl 1.1 [r1585]: - Fix accelerator clash on SSH panel (D) - Fix accelerator comments check-in: 8ce8de0236 user: jacob tags: trunk | |
|
2003-01-19
| ||
| 19:07 | Sync with reality and add more things that need fixing. check-in: 9c97f21650 user: ben tags: trunk | |
|
2003-01-18
| ||
| 18:00 | unitab_xterm is now basically right. SC's optimiser seems to do something nasty to ssh.c. check-in: eb5ef02032 user: ben tags: trunk | |
| 17:26 | Use the correct ProcInfo for AddrToStr. This makes the MacTCP code work in PowerPC builds. Well, makes it not crash, anyway -- AddrToStr doesn't seem to be returning amything very useful. check-in: 3b7e6ec09e user: ben tags: trunk | |
| 16:02 | Remove stray debugging code that got in with the last commit. check-in: 454cf38c50 user: ben tags: trunk | |
| 15:56 | Clear kex_ctx in a new session so we can safely free an ssh session without one. check-in: 72ba35c7bb user: ben tags: trunk | |
| 14:52 | Remember which file a session was opened from, so it can be the default one to save back to. check-in: 171fe191f0 user: ben tags: trunk | |
| 14:09 | Support for saving sessions on the Mac. This is slightly useful even in the absence of a config dialogue, since it allows me to get Default Settings out. check-in: 00d16a81fe user: ben tags: trunk | |
| 11:24 | PuTTY doesn't remember which file it got a saved session from, so it's as stationery-pad-aware as it needs to be. check-in: 9f77d4b00e user: ben tags: trunk | |
| 11:14 | Add "Save" and "Save As..." items to the menus. No code behind them yet. check-in: 4d7cb8947c user: ben tags: trunk | |
| 10:54 | Move mac_opensession() from macterm.c to macdlg.c. check-in: 80b515afb7 user: ben tags: trunk | |
| 10:10 | Various things to make the Finder like us: - Change the creator of files we don't want the user to open to 'pTTI' (for "PuTTY internal"), and give them application-missing strings. - Provide missing-application names for saved sessions. - Provide a ResEdit 'TMPL' resource for integers in saved sessions. - Provide an icon for saved session stationery pads (maybe "Default Settings" should be one of these by default). No code to handle this yet. check-in: 16d2e8d9f1 user: ben tags: trunk | |
| 06:25 | Correct an incorrect black pixel in the PuTTY icon that's been annoying me for some time. check-in: 59297f8b8e user: ben tags: trunk | |
| 06:19 | Clear the "Inited" bit when we finish building each executable, in a bid to get the Finder to look at the new 'BNDL' resource. check-in: 59675f5f98 user: ben tags: trunk | |
| 06:18 | It would help if everything agreed on the type of PuTTY random seed files. check-in: 230dab5fda user: ben tags: trunk | |
| 06:03 | Simplify the random-seed-saving code: There's no need to take great care to preserve the old file in case the update is interrupted and replace it atomically, so we just overwrite in place. Much simpler. check-in: 1be497bfde user: ben tags: trunk | |
|
2003-01-17
| ||
| 07:32 | When voting for items already on the wishlist, a stonking new reason that we hadn't already thought of might help. check-in: 8cf7b05740 user: jacob tags: trunk | |
|
2003-01-16
| ||
| 09:43 | 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. check-in: 8a5be4d472 user: jacob tags: trunk | |
|
2003-01-15
| ||
| 18:52 | Statements after declarations, dammit check-in: 307baf6078 user: jacob tags: trunk | |
| 18:35 | Add some icons for saved sessions and random seeds. check-in: cc330ea46e user: ben tags: trunk | |
| 17:46 | "I don't think that bit means what I think it means", if you see what I mean. In other words, turn off the useTextEditServices bit in our 'SIZE' resource. check-in: 62298597b3 user: ben tags: trunk | |
| 17:30 | Add the ability to close sessions. This adds *_free() functions to most areas of the code. Not all back-ends have been tested, but Telnet and SSH behave reasonably. Incidentally, almost all of this patch was written through Mac PuTTY, admittedly over a Telnet connection. check-in: c4f9059891 user: ben tags: trunk | |
| 16:37 | Make this compile again. check-in: 63aaa3e54a user: ben tags: trunk | |
| 14:47 | Implement Simon's suggestion of moving DEFAULT_PROTOCOL into a per-backend- link-module const variable `be_default_protocol' which suggests a sensible default to the front end (which can ignore it). (DEFAULT_PORT is replaced by a lookup in the backend[] table.) Still not pretty, but it does mean that the recent fix for `ssh-default' doesn't break PuTTYtel. check-in: 184dd22aa5 user: jacob tags: trunk | |
| 12:47 | MacTCP returns canonical names with a trailing dot. We don't want this, so strip it off. check-in: 7192827858 user: ben tags: trunk | |
| 12:45 | PuTTYtel should use be_nossh, not be_none. While we're here, also comment the meaning of [M]. check-in: 4da7e1cce4 user: ben tags: trunk | |
| 10:16 | Fix small breakages as a result of yesterday's upheavals. Oops. check-in: 0f70f4c34a user: simon tags: trunk | |
| 09:22 | `ssh-default': change the /DSSH_DEFAULT flag to a /DTELNET_DEFAULT one and note its existence in Recipe. As far as I can tell there are no documentation changes required. check-in: e942898dbf user: jacob tags: trunk | |
| 08:51 | Use set_icon and set_title rather than SetWindowText. Should fix inactive-title. check-in: 10b8c5f189 user: owen tags: trunk | |
|
2003-01-14
| ||
| 13:57 | Use the standard linedraw->Unicode mapping from unicode.c to generate unitab_xterm. Most linedraw characters display correctly, but it's clear that RDB and Apple disagree on some of the mappings. check-in: d691465c13 user: ben tags: trunk | |
| 13:42 | Update for Unicode deglobalisations. check-in: a7d676d35a user: ben tags: trunk | |
| 13:41 | Update the "known bugs" and "missing features" sections. check-in: b143053804 user: ben tags: trunk | |
| 13:29 | Add constants to mac_res.r to set the binary version number. Mention this in CHECKLST as a location where the version number has to be set. check-in: 33463e913f user: ben tags: trunk | |
| 13:09 | const fallout. check-in: 7a1fadcab6 user: ben tags: trunk | |
| 12:44 | Remove debugging printfs from mac_workoutfontscale(). check-in: 55403212aa user: ben tags: trunk | |
| 12:43 | Miscellaneous fixes to finish up `remove-statics'. rlogin.c had a holdout static I hadn't noticed; unicode.c had one too; and a large number of statics that were perfectly OK due to being constants have been made `const', with assorted `const' repercussions all over the place. I now declare `remove-statics' to be fixed. check-in: 47dac3d92b user: simon tags: trunk | |
| 12:43 | Add double width/height support. This passes all the relevant parts of vttest apart from the "mad programmer" screen, which I think is a linedraw problem. This also intorduces proper clipping of the drawn text for good measure. check-in: 9c73339f07 user: ben tags: trunk | |
| 12:28 | Deglobalise the Unicode module. Despite all my grand plans, I've just done this the very simple way - bundle all the globals into a data structure and pass pointers around. One particularly ugly wart is that wc_to_mb now takes a pointer to this structure as an argument (optional, may be NULL, and unused in any Unicode layer that's even marginally less of a mess than the Windows one). I do need to do this properly at some point, but for now this should just about be adequate. As usual, the Mac port has not been updated. check-in: 483cb38b72 user: simon tags: trunk | |
| 09:24 | request_resize() needs to call term_size() to tell the terminal emulator that its resize request has been approved. check-in: 2a3a2dd2a2 user: ben tags: trunk | |
| 09:01 | It's impossible to write a checklist from scratch without leaving one or two things out of the first version. check-in: f54223cef2 user: simon tags: trunk | |
| 08:19 | After the New Year copyright-dates fiasco, I think it's about time we had one or two official checklists. This file lists the locations of _all_ the copies of the licence and the copyright dates, all the files in CVS which need to know the current version number, and also lays out the release procedure since I always find it terribly fiddly to do it all in the right order. PLEASE KEEP THESE LISTS UP TO DATE, people! Anyone adds a new copy of the licence or the copyright notice, shout about it in here. Likewise any file that needs to know the current release number and can't get away with referencing LATEST.VER. check-in: 20a4d7ccdf user: simon tags: trunk | |
| 05:24 | Ctrl-PgUp and Ctrl-PgDn now scroll by one line on Unix and Windows check-in: 62e9596ee2 user: owen tags: trunk | |
|
2003-01-13
| ||
| 12:03 | Oops - put the right `void *' in back->reconfig. check-in: 182b57a102 user: simon tags: trunk | |
| 09:06 | Make ^/ do the same as ^_ (wish control-slash) check-in: 9c37f01da2 user: owen tags: trunk | |
|
2003-01-12
| ||
| 10:25 | Set the window title to the canonical host name when we connect. check-in: eeab6cffbb user: ben tags: trunk | |
| 10:11 | Consequences of Simon's recent deglobalisation changes. check-in: 93cecb8450 user: ben tags: trunk | |
| 09:46 | When receiving data, only pass up to the backend as much as we received. check-in: 5344fdb74b user: ben tags: trunk | |
| 09:45 | Ahem. Doing loads of stuff to inst->cfg would probably be best done _after_ allocating inst. Oops. check-in: c1d670c1f5 user: simon tags: trunk | |
| 09:42 | Make this compile again. check-in: 6d5dec11b3 user: ben tags: trunk | |
| 09:36 | Ahem. Global replace of `cfg' with `inst->cfg' is all very well, but let's try to make sure it doesn't happen inside any strings! The -cfg option for cursor foreground colour nearly had a nasty accident there. check-in: 3522aa05fd user: simon tags: trunk | |
| 09:32 | Having laid all the groundwork, we can now remove the global `cfg' completely from putty.h. It's now static in each of the command-line front ends, shared only between window.c and windlg.c in PuTTY proper (I've tested this by doing #define cfg cfgsillyname in those two files only, and it still links so nobody else is using that symbol!), and part of the `inst' structure in pterm. I think that only leaves the Unicode module as the last stubborn holdout in the anti-global-variables campaign. check-in: c3e7c65a17 user: simon tags: trunk | |
| 09:26 | proxy.c now no longer refers to `cfg'. Instead, each of the three proxy-indirection network functions (name_lookup, new_connection, new_listener) takes a `const Config *' as an argument, and extracts enough information from it before returning to handle that particular network operation in accordance with the proxy settings it specifies. This involved {win,ux}net.c due to a `const' repercussion. check-in: 894cb1e750 user: simon tags: trunk | |
| 09:10 | The logging module now contains a local copy of cfg too. check-in: 425e784a06 user: simon tags: trunk | |
| 08:59 | The Unicode module no longer depends on `cfg', since it gets the relevant bits of it passed in to init_ucs(). (Actually I pass in all of it in the Windows version, since it's a bit hairy in there.) check-in: c14614baa6 user: simon tags: trunk | |
| 08:56 | There's no real need for portfwd.c to reference `cfg' directly, when it only needs one item from it and that can easily be passed in from the call site in ssh.c. check-in: e5b0235ad5 user: simon tags: trunk | |
| 08:50 | printer_start_job shouldn't need to refer to cfg.printer, since it's getting the printer name passed in anyway! Oops. check-in: 95a1b585c5 user: simon tags: trunk | |
| 08:49 | Just like under Windows, cleanup_exit() shouldn't need to check before calling random_save_seed(). check-in: e62ba2fb87 user: simon tags: trunk | |
| 08:48 | The back ends now contain their own copies of the Config structure, and have a function to pass in a new one. (Well, actually several back ends don't actually bother to do this because they need nothing out of Config after the initial setup phase, but they could if they wanted to.) check-in: f4d72755c1 user: simon tags: trunk | |
| 08:45 | Call ot_poll as appropriate. Also use cleanup_exit() in preference to exit() so that MacTCP gets shut down even on unclean exits. check-in: 51e5d253b0 user: ben tags: trunk | |
| 08:44 | Don't fatalbox() unconditionally when opening a connection, since that makes it a little difficult to do anything. check-in: f31bedf47b user: ben tags: trunk | |
| 08:37 | Forgot to match the cmdline changes in the Unix port. check-in: 7e115c6d0d user: simon tags: trunk | |
| 08:30 | term->cfg is now a full copy of the Config structure, not a pointer; and term_reconfig() now passes in a new structure which is copied over the top. This means that the old and new structures can be compared, and the _current_ as well as default states of auto wrap mode, DEC origin mode, BCE, blinking text and character classes can be conveniently reconfigured in mid-session without requiring a terminal reset. check-in: 1d1cf2f03f user: simon tags: trunk | |
| 08:23 | COmpiling _before_ committing is usually a good idea. check-in: 2a0d1e3dc5 user: ben tags: trunk | |
| 08:17 | The command-line routines now take a pointer to `cfg' as an argument, so they don't depend on it being a global any more. check-in: 5c4ededf67 user: simon tags: trunk | |
| 08:11 | Support for XDM-AUTHORIZATION-1 at the SSH server end, making use of the remote IP/port data provided by the server for forwarded connections. Disabled by default, since it's incompatible with SSH2, probably incompatible with some X clients, and tickles a bug in at least one version of OpenSSH. check-in: 55fa8e003a user: simon tags: trunk | |
| 07:50 | Correct code to insert into a doubly-linked list. check-in: 0f5c72e5d7 user: ben tags: trunk | |
| 07:44 | Each platform's implementation of askappend() is no longer required to consult cfg.logxfovr, because it gets done once in logging.c. askappend() is now called only when a question _really_ needs to be asked of the user. Also in this checkin, cleanup_exit() in console.c no longer consults cfg.protocol to decide whether to save the random seed, because random_save_seed() can make that decision for itself and do it better. check-in: 6a1531bf27 user: simon tags: trunk | |
| 07:06 | Cute though DNSAddresses are, they're a poor match for the model the rest of PuTTY has of DNS resolution, so I've replaced them with something more conventional. Sorry. The new code has the advantage of working, of course. check-in: 677e3ac503 user: ben tags: trunk | |
|
2003-01-11
| ||
| 19:37 | Use memset() rather than OTMemzero(), and hence remove the need to weak link against OTUtilityLib. check-in: a4f5dbc17e user: ben tags: trunk | |
| 19:25 | Remove code for splatting test data into new terminals, since we can do that over real network connections now. check-in: 6e48f77281 user: ben tags: trunk | |
| 19:24 | Change error handling to store the error number rather than the string, and to convert to a string only on demand. This makes it possible to have the string contain the error number if we don't recognise it. check-in: d7536c3985 user: ben tags: trunk | |
| 17:33 | Initial import of Owen's OpenTransport interface. It doesn't work yet, but it does compile and link. check-in: ebd926c45f user: ben tags: trunk | |
| 13:43 | Add an indirection layer between mtcpnet.c and the rest of PuTTY so that we can have runtime switching between MacTCP and OpenTransport, and so that we can cope if there's no TCP/IP stack available at all (albeit with very little functionality at present). check-in: ced4a2aac4 user: ben tags: trunk | |
| 11:36 | Calling plug_closing() is highly likely to result in a call to sk_close(), so arrange that mactcp_poll() can cope with that and not access freed memory when it happens. check-in: 54ae5e5df7 user: ben tags: trunk | |
| 11:31 | When polling MacTCP connections, check the connection state and if the far end has sent a FIN pass that up to the plug. TODO: handle less graceful connection closures. check-in: 0f347a7892 user: ben tags: trunk | |
| 08:20 | Move the prototype for platform_get_x11_auth() from x11fwd.c to ssh.h so that it can be checked against the implementation. check-in: 81acda317b user: ben tags: trunk | |
| 08:08 | Add a cast for a char * vs unsigned char * conflict. check-in: 2fb4a2e5b1 user: ben tags: trunk | |
| 08:08 | const fallout from Simon's X forwarding changes. check-in: f97554fe73 user: ben tags: trunk | |
| 04:05 | Yet _another_ `received data for nonexistent channel' bug. This time it was because we received WINDOW_ADJUST on a channel we'd already sent CLOSE on, and reflexively attempted to continue sending the buffered data in response. Should now be fixed. check-in: 98f54831b9 user: simon tags: trunk | |
| 03:46 | Hack around an oddity in X display names and xauth. check-in: 34e60855a6 user: simon tags: trunk | |
| 03:31 | Support XDM-AUTHORIZATION-1 for connecting to local X servers. If we're going to be a security program, we can at least make a token effort to use the most secure local X auth available! And I'm still half-tempted to see if I can support it for remote X servers too... check-in: 82547fdbe1 user: simon tags: trunk | |
|
2003-01-10
| ||
| 12:33 | Introduce framework for authenticating with the local X server. Windows and Mac backends have acquired auth-finding functions which do nothing; Unix backend has acquired one which actually works, so Plink can now do X forwarding believably. (This checkin stretches into some unlikely parts of the code because there have been one or two knock-on effects involving `const'. Bah.) check-in: 5ec7a0298b user: simon tags: trunk | |
| 09:23 | Ask for a meaningful subject line on messages. check-in: 3166a5fce9 user: ben tags: trunk | |
|
2003-01-09
| ||
| 17:29 | Implement get_window_title(). check-in: bc5029d78b user: ben tags: trunk | |
| 17:04 | Forcibly close any TCP connections that are still open when PuTTY exits. This saves leaving them lying around to crash the machine later. check-in: c527de7848 user: ben tags: trunk | |
| 16:51 | Use c2pstrcpy() rather than silly sprintf() tricks. check-in: ad409e8d2c user: ben tags: trunk | |
| 16:45 | c2pstr() is deprecated. Use c2pstrcpy() instead. check-in: 5802067d97 user: ben tags: trunk | |
| 16:39 | Take advantage of having control over the default font to do the job properly: ask the system script what it's preferred monospaced font is, and use that if possible. Failing, that, try the Roman script system, and if that fails, fall back to Monaco 9. check-in: 849df9085a user: ben tags: trunk | |
| 13:27 | Set PuTTY's canBackground flag so that it receives CPU time (to process incoming data) while in the background. check-in: 12ff76e80c user: ben tags: trunk | |
| 13:26 | Install a notification procedure (ASR) on each TCP connection that wakes PuTTY up when something happens. This should allow it to receive data without having to poll for it continuously. check-in: f5c80ac867 user: ben tags: trunk | |
| 13:26 | Remove the diagnostic added in rev 1.42 [r2288]; apparently it's all true and WinSock _does_ occasionally send us netevent messages with no socket for no reason. Ignore them when they appear. check-in: 5d62036b85 user: simon tags: trunk | |
| 13:24 | Switching from -opt space to -opt time on 68K Macs only loses us about 2K of disc space, and we need all the speed we can get, so do that. check-in: 58ef8dc86d user: ben tags: trunk | |
| 12:28 | Unix plink now catches SIGWINCH and propagates local terminal resizes to the remote end. check-in: 52b6f1b0fb user: simon tags: trunk | |
| 12:14 | Support asynchronous connect() in Unix networking. Now a port forwarding to a nonexistent host shouldn't hold up the rest of the program. check-in: 869235486e user: simon tags: trunk | |
| 12:06 | I'm sick of all those #ifdefs in settings.c, and in any case plink and pterm need at least one default setting to be _different_ (pterm needs the default term type to be `xterm', while plink needs it to be taken from $TERM). So here's a completely new alternative mechanism for platform- and app-specific default settings. Ben will probably want to check the integrity of the Mac port, since I've fiddled with it without testing that it still compiles. check-in: 22de118cfc user: simon tags: trunk | |
| 11:33 | Yikes! Forgot to zero the password after SSH2 PW authentication. check-in: aa17fae5a8 user: simon tags: trunk | |
|
2003-01-08
| ||
| 17:58 | Add PuTTYtel binaries. check-in: 1162767e1c user: ben tags: trunk | |
| 17:56 | Rather useless entropy-collection functions for Mac OS. These need work. check-in: 4669558932 user: ben tags: trunk | |
| 16:48 | The CFM-68K build isn't working at the moment (we blow past its global data limit what with libcharset and the crypto stuff), so don't include it in "all". check-in: 79d8b22e1c user: ben tags: trunk | |
| 16:46 | Fairly major hackery to get SSH going on the Mac. Half the support functions are only dummy stubs, but it's still minimally usable. At least, as long as you don't want to do anything complex like logging out. check-in: 6459e357ed user: ben tags: trunk | |
| 03:15 | We just got mailed a Dr Watson log which suggests I failed to initialise term->paste_len during initialisation, and indeed looking at the code confirms this. I'm puzzled as to why valgrind didn't spot this in pterm, though, since it's all in cross-platform code! check-in: e6bf04bb91 user: simon tags: trunk | |
|
2003-01-07
| ||
| 17:05 | Use '\012' as the end of the SSH banner line, not '\n'. Mac compilers default to making '\n' == '\015'. check-in: d44d168232 user: ben tags: trunk | |
| 16:45 | Initialise the "protocol" field of a new ssh_tag to NULL so Bad Things don't happen if we try to type things before the SSH banner has been received. check-in: b61b55710e user: ben tags: trunk | |
| 14:47 | Move the various big tables to the start of the file to save mucking about with ifdefs for specific compilers. check-in: ea9dc97847 user: ben tags: trunk | |
| 07:09 | Ahem. Now pterm actually uses wc_to_mb in a situation where it needs to pass in a default character, it would help if wc_to_mb actually _honoured_ the default-character parameter. check-in: d7a9c4eae7 user: simon tags: trunk | |
|
2003-01-06
| ||
| 15:46 | It looks like Visual C (or whatever the Windows snapshots are built with) objects to incomplete static array declarations, which I introduced to work around a bug in SC/MrC. Use #ifdefs to decide whether to enable the workaround or not. check-in: f7bf7975a3 user: ben tags: trunk | |
|
2003-01-05
| ||
| 17:48 | One usually includes .h files, not .c files. That explains why it was taking so long to compile! check-in: a199a6db2a user: ben tags: trunk | |
| 17:38 | Include putty.h to get prototypes for exported functions. check-in: 1f033399f4 user: ben tags: trunk | |
| 17:36 | zlib_disable_compression() and zlib_huflookup() are unused outside this file. Make them static. check-in: fdb9f081cc user: ben tags: trunk | |
| 17:34 | SHA512_Core_Init() and SHA512_Block() are unused outside this file. Make them static. check-in: 4245630337 user: ben tags: trunk | |
| 17:32 | rsa2_sign() is unused outside this file. Make it static. check-in: 3260047bd9 user: ben tags: trunk | |
| 17:30 | random_stir() is unused outside this file. Make it static. Include putty.h to get prototypes for random_init() and random_get_savedata(). check-in: 636691c265 user: ben tags: trunk | |
| 17:28 | Move prototypes for base64_decode_atom(), base64_lines(), and base64_encode() from import.c to ssh.h, so that the implementation can see them. This necessitates ssh.h's including <stdio.h>. Also remove a spare prototype for base64_encode_atom() from import.c. check-in: 07dc052ae1 user: ben tags: trunk | |
| 17:14 | dss_sign() is unused outside this file. Make it static. check-in: 3934d17e64 user: ben tags: trunk | |
| 17:12 | des_key_setup(), des_encipher(), and des_decipher() are unreferenced outside this file. Make them static. check-in: ba2fe1a855 user: ben tags: trunk | |
| 17:09 | Include ssh.h for the crc32() and crc32_update() prototypes. check-in: 3755b0612b user: ben tags: trunk | |
| 17:05 | bigdivmod() is unreferenced outside this file. Make it static. diagbn() is unreferenced. #if it out. check-in: e7b4c7d1a8 user: ben tags: trunk | |
| 17:03 | aes_setup() is unused outside this file. Make it static. check-in: ac0529bede user: ben tags: trunk | |
| 17:01 | Make ssh1_pkt_type(), ssh2_pkt_type, logeventf(), setup_userpass_input(), process_userpass_input(), and ssh_unthrottle() static, since they're not referenced outside this file. check-in: 0fbb2d9948 user: ben tags: trunk | |
| 16:53 | Move x11fwd and portfwd prototypes from ssh.c into ssh.h so they can be seen by (and checked against) the definitions. check-in: f286ce2a32 user: ben tags: trunk | |
| 16:52 | SC in "finding an actual bug" shocker! Set the port number before passing it to name_lookup(). check-in: 436176626c user: ben tags: trunk | |
| 09:31 | sshsha.c and sshmd5.c compile fine on PowerPC now. check-in: d50d641ccf user: ben tags: trunk | |
| 09:31 | Make SHA_Core_Init() (only used in this file) static. check-in: d794fd86f7 user: ben tags: trunk | |
| 09:29 | Make MD5_Core_Init and MD5_Block (both only referenced in this file) static. check-in: d692d91a3c user: ben tags: trunk | |
| 08:23 | "possible unintended assignment"? I think not. check-in: f6c15f8be1 user: ben tags: trunk | |
| 08:20 | char * vs unsigned char * (by explicit cast). check-in: 546b9eaebf user: ben tags: trunk | |
| 08:18 | Commas at the end of enumerator lists aren't allowed. check-in: 86f463676f user: ben tags: trunk | |
| 08:14 | Eliminate more unsigned char * vs char * errors using explicit casts. check-in: 3bfa9585d4 user: ben tags: trunk | |
| 08:11 | Fix more unsigned char * vs char * warnings, usually by making implicit casts explicit. check-in: 4f18716ac4 user: ben tags: trunk | |
| 08:00 | Replace implict char-*-to-unsigned-char-* casts with explicit ones. check-in: 912e776089 user: ben tags: trunk | |
| 07:57 | SC (Apple's 68K C compiler) seems to treat tentative definitions of complete arrya as full definitions, and hence gets upset when it finds a full definition later. This is a bug (see K&R2 A10.2), but an easy one to work around by making the tentative definitions incomplete, so I've done that. check-in: 5537b6e0a6 user: ben tags: trunk | |
| 07:46 | Deal with "possible unintended assignment" warnings. check-in: 616c91e0f9 user: ben tags: trunk | |
| 07:43 | Attack char * vs unsigned char * conversions. In most cases, I've just gone for replacing the implicit casts with explicit ones. Where there was something obviously better that I could do, I've done it, though. check-in: 768d1ae040 user: ben tags: trunk | |
| 07:04 | Fix more "possible unintended assignment" warnings. check-in: 0a86a76f46 user: ben tags: trunk | |
| 06:53 | Add reception support for MacTCP. Now I can log in over TELNET, just about. There are still lots of things to fix, like urgent data or the fact that everything seems to happen one keypress too late, but this is an important milestone. check-in: 36cecb15a9 user: ben tags: trunk | |
| 05:31 | When looking for the correct backend to use, look in the configuration structure for the session, not the almost-dead global cfg. check-in: 4b17c5fd29 user: ben tags: trunk | |
| 04:52 | Second work-in-progress MacTCP commit. We can now open a connection, but not transfer any data across it. check-in: 477d7eb08d user: ben tags: trunk | |
|
2003-01-04
| ||
| 18:06 | Add some backends, a network interface and some library routines to the Mac port. check-in: 8b6dd26a4f user: ben tags: trunk | |
| 13:51 | Beginnings of a MacTCP network layer. This has all of the DNS interface present, including stuff to find and load the MacTCP DNR. Actually making a TCP connection is still unimplemented, though, and much testing remains to be done. check-in: 84ea43dc4f user: ben tags: trunk | |
| 13:01 | Add a vsnprintf() for the Mac, which doesn't have one of its own. This is the NetBSD kernel printf, which is integer-only and under a Berkeley-style (now 3-clause) copyright owned by UCB. This has only been compile-tested, but almost all of my changes were in the definitions at the top (the exception being to remove tty output). This lacks 64-bit support because the Apple 68K C compiler, SC, lacks it too. check-in: 2a57d4473b user: ben tags: trunk | |
| 11:24 | Provide a version of stricmp() and strnicmp() for Mac OS, which doesn't have its own. These are from NetBSD's libc, and have a standard (now 3-clause) Berkeley licence. Also provide a definition of DWORD and a better definition of BYTE. check-in: 92d9baf2f5 user: ben tags: trunk | |
| 10:56 | Fix some char * vs unsigned char * conversions, plus a stylistic nit, both courtesy of Apple's compilers. check-in: ad7d112417 user: ben tags: trunk | |
| 10:42 | Hammer out some char * vs unsigned char * problems. In general, I've kept any buffers used internally by telnet.c as unsigned char, and cast to/from char * when interacting with the rest of PuTTY. Not actually tested, since I'm some way from actually being able to link this yet. Also clean up a couple of style warnings from Apple's compilers. check-in: c65b711d2a user: ben tags: trunk | |
| 10:21 | Fix a few stylistic warnings from Apple's C compilers. check-in: bd0b904aca user: ben tags: trunk | |
| 06:45 | <MacTypes.h> says we should use NULL rather than nil in C, so do that. check-in: ed057fdda3 user: ben tags: trunk | |
|
2003-01-03
| ||
| 18:48 | Re-arrange the sums in the size tip code so as to ensure that we're always do division on positive numbers, hence avoiding nasty problems of rounding towards zero when I wanted rounding down. check-in: 75816ae5a8 user: ben tags: trunk | |
| 18:31 | Small simplification in mac_init(). check-in: 552855f125 user: ben tags: trunk | |
| 18:13 | Correct handling of Mac OS 8.5 Window Manager and Control Manager. The new functions turn out to be available only to PowerPC applications, through WindowsLib and ControlsLib respectively, so we weak-link against those in the obvious way. check-in: 93bc4dcd01 user: ben tags: trunk | |
| 11:52 | Work around a weird bug in gdk_draw_text_wc(). check-in: f98d345130 user: simon tags: trunk | |
| 06:20 | Update copyright notices that both Owen and Simon managed to miss. _How_ many copies of the licence do we need? *grin* check-in: 0d2d1aec4c user: ben tags: trunk | |
| 04:59 | Update more copyright dates. Sometimes I think we ought to have an automated means of doing this every year :-( check-in: 93a7dacf1d user: simon tags: trunk | |
| 03:49 | Update copyright dates check-in: 74696bae8c user: owen tags: trunk | |
|
2003-01-02
| ||
| 18:40 | Pull in Script.r so we can use verBritain in the 'vers' resources rather than hardcoding 2. check-in: c4cf818e9f user: ben tags: trunk | |
| 17:52 | Any Mac that can handle CFM-68K code must have at least a 68020 CPU, and hence be equipped with Color QuickDraw, as are all PowerPC systems. Hence, don't bother with support for basic QuickDraw in the CFM-68K and PowerPC builds. check-in: 4485563b58 user: ben tags: trunk | |
| 17:39 | Add a prototype for init_ucs(). check-in: 0daf5a32d9 user: ben tags: trunk | |
| 12:09 | Having tested it, note that the Classic 68K build seems to work on Mac OS X now. Also describe more generally which builds work where. check-in: 929436e185 user: ben tags: trunk | |
| 11:07 | ... of course, that would be better still if I remembered to update `nvalid'. Ahem. check-in: ad06ad29a5 user: simon tags: trunk | |
| 10:56 | A better solution to the problem of duplicated positions in CS_ISO8859_1_X11: where two SBCS positions map to the same Unicode code point, we now have a `sortpriority' hint which can tell sbcsgen.pl which one it should preferentially generate when converting back to SBCS. check-in: aa609d3f62 user: simon tags: trunk | |
| 10:20 | CJK cleanups. Correct handling when the cursor is covering the right-hand half of a CJK wide character; correct handling of cut and paste when CJK text wraps between lines _irrespective of the parity of the starting column_; correct handling of wordness values irrespective of which half of a CJK character the user double-clicked on; correct handling when any terminal activity overwrites only one half of a CJK wide character. I think we now behave marginally better than xterm in this respect (it has a redraw problem when you overwrite the RH half of a CJK char), so I'm happy. Also redefined the internal UCSWIDE marker to something in the surrogate range, while I'm here, so that U+303F is available for use by actual users. check-in: c969a020c7 user: simon tags: trunk | |
| 10:17 | Fixes to direct-to-font mode: I'd inadvertently enabled it for any font whose encoding comes up as CS_NONE - but this is also true for iso10646-1 fonts, since libcharset doesn't support wide-character encodings! Hence UTF-8 cut and paste was enabled in ordinary modes, but disabled in UTF-8 mode, which was a bit embarrassing. Now we have a dedicated flag variable indicating direct-to-font mode. check-in: fb856615d4 user: simon tags: trunk | |
| 08:23 | Mention that Shift-Ins works here. check-in: 5929f24830 user: ben tags: trunk | |
| 05:14 | Fix `telnet-resize-iac'. (IAC bytes were not duplicated when they occurred in a NAWS subnegotiation. Result: a terminal width or height of 255 was not being correctly sent to the server.) check-in: 8a9f2bac80 user: simon tags: trunk | |
| 04:45 | A couple of X forwarding fixes for Unix Plink. Firstly, under Unix the default X display should be whatever comes out of $DISPLAY, rather than Windows's hardwired `localhost:0'. Secondly, this may give rise to a display name without a hostname (`:0' or similar), which we now need to be able to deal with. Of course, we still don't _properly_ support X forwarding in Unix Plink, since we still can't authenticate with the local display. check-in: b7c53546d7 user: simon tags: trunk | |
| 04:41 | Propagate the screen number from a local X display to the remote forwarded one. Fixes `x11-default-screen'. check-in: dc76e6731e user: simon tags: trunk | |
| 04:07 | sk_nonamelookup() should ensure the sockaddr it returns has `error' set to NULL. Otherwise it'll be random uninitialised goop. Not good. check-in: cf579ee730 user: simon tags: trunk | |
| 04:07 | Presence of unexpected characters in the proxy exclude list causes a tight loop in proxy_for_destination(). Fixed. check-in: 7801b75dda user: simon tags: trunk | |
|
2003-01-01
| ||
| 18:33 | If for some reason do_text() fails to translate from Unicode to the font encoding, have it go through the rest of its motions with an empty string anyway, so as to at least give a sensible empty box of the right colour. If SetFallbackUnicodeToText() fails, switch over to using the charset library, hence avoiding problems in do_text(). If the version of the Unicode Converter we're using doesn't understand about interrupt-safe fallback functions, don't try to tell it we've got one. This prevents SetFallbackUnicodeToText() from failing on systems with old Unicode Converters. check-in: d8f4c0f611 user: ben tags: trunk | |
| 16:25 | Proper support for using the font's own character encoding. If we know what that encoding actually is, we can do our best to support additional charsets (VT100 linedrawing, SCO ACS, UTF-8 mode) using the available characters; if we don't, we fall back to a mode where we disable all Unicode cut-and-paste and assume any Unicode character is undisplayable. check-in: 82f2469b77 user: simon tags: trunk | |
| 15:53 | Support for double-width (CJK) characters, using the xterm-like options -fw and -fwb to specify wide and wide-bold fonts. check-in: 21b2cdb2c9 user: simon tags: trunk | |
| 14:28 | The redirection operator I wanted was >>, not >. check-in: 136780623c user: ben tags: trunk | |
| 14:26 | Ignore .rsrc files. check-in: 5467bbdbe0 user: ben tags: trunk | |
| 13:51 | Add a mechanism for determining which charset to use for a given Mac OS font, and use it. check-in: d8ed6e3ca5 user: ben tags: trunk | |
| 11:03 | Having painstakingly generated those reverse mapping tables in sbcsdat.c, it would seem a shame not to actually use them. Ahem. Thanks to Ben, without whose checkin in this area I'd have forgotten completely :-) check-in: bc2e7ebcc5 user: simon tags: trunk | |
| 10:24 | Add all the Mac OS simple single-byte character sets from ftp.unicode.org. Also add the older variants described there, and the character set used by the "VT100" font (old and new). Since RFC 1345 defines "macintosh" to refer to the currency-sign variant of Mac OS Roman, update our table to match. check-in: d155c28797 user: ben tags: trunk | |
| 05:45 | Remove a couple of unnecessary casts that my compiler seems to have taken exception to. check-in: 55215e0e23 user: ben tags: trunk | |
|
2002-12-31
| ||
| 16:49 | Use the shiny new character-set library to handle conversion from Unicode to Mac OS Roman for display if the Unicode Converter isn't around. Support for Mac character sets other than Roman (e.g. the variant used by the Apple VT100 font) is still absent. check-in: f40b538bf5 user: ben tags: trunk | |
| 16:40 | Add "-notOnce" to the compiler options on the Mac to stop the compiler assuming that duplicate #includes of the same file are idempotent. I mean, it's not even true for the standard headers (think <assert.h>), and certainly isn't true here. check-in: e4a7932213 user: ben tags: trunk | |
| 16:37 | I have no idea what Simon thought he was doing casting what was once a struct sbcs_data * (first element an array of unsigned long) into a wchar_t *, but I think it's reasonably safe to assume that it was a mistake. check-in: 3aa3320e23 user: ben tags: trunk | |
| 15:12 | Add internal prototypes to keep my compiler from complaining. check-in: b71b21ecfd user: ben tags: trunk | |
| 14:11 | Add a small comment explaining my failure to find any way to get QuickDraw to give me the missing-character glyph for a font. While I'm here, change the character we substitute for unmappable ones to '.', since that's what the charset library uses. check-in: b4709f6309 user: ben tags: trunk | |
| 09:42 | Better, I think, to avoid mapping 0x00 -> U+0020 in the X11 nonstandard font encoding. 0x20 maps to it, so it's not as if it's in short supply. check-in: 9f9d2dbfe3 user: simon tags: trunk | |
| 06:20 | First draft of Unicode support in pterm. It's pretty complete: it does UTF-8 copy and paste (falling back to normal strings if necessary), it understands X font encodings and translates things accordingly so that if you have a Unicode font you can ask for virtually any single-byte encoding and get it (Mac-Roman pterm, anyone?), and so on. There's work left to be done (wide fonts for CJK spring to mind), but I reckon this is a pretty good start. check-in: 94580ef671 user: simon tags: trunk | |
| 05:03 | SCO ACS part 2 (ESC[12m) apparently puts the top half of CP437 into _both_ halves of the character set, rather than flipping the two halves. My source for this is linux/drivers/char/console.c. check-in: ac8af152ff user: simon tags: trunk | |
| 04:04 | Dimitrie Paun's patch for Winelib support. Actually does nothing except add a couple of commented-out lines to Makefile.cyg; the Winelib user must uncomment them to do the compilation. check-in: 631202fdb3 user: simon tags: trunk | |
|
2002-12-30
| ||
| 19:40 | Add a minimalist settings dialogue, which contains a single button marked "open". Still, it seems to work. check-in: 7664066586 user: ben tags: trunk | |
| 17:33 | Remove mentions of files and functions that no longer exist. check-in: 9f04a1cd91 user: ben tags: trunk | |
| 17:15 | No need to compile resources manually now. check-in: 48c9502107 user: ben tags: trunk | |
| 17:14 | Add support for compiling 'vers' resources into Mac applications. This is needlessly complex because Rez's preprocessor doesn't do either ANSI or K&R stringification, and the MPW Shell isn't much good as shells go. Also make _all_ the Mac executables depend on reources, not just the Classic 68K one. check-in: 14a9efc5f6 user: ben tags: trunk | |
| 13:01 | Set the default directory to somewhere useful (the PuTTY saved sessions folder) when we start up. check-in: 0ae0844a7b user: ben tags: trunk | |
| 12:21 | Add an "open" command to the "file" (now "session") menu on the Mac to open an existing saved session. This has entailed adding an extra hook to settings.c to allow for loading settings other than by name. check-in: f3d111cbe4 user: ben tags: trunk | |
| 09:41 | Remove a spurious reference to a variable I've removed. check-in: d3b3e47d66 user: ben tags: trunk | |
| 08:20 | Finally add support for building Mac resource forks. This adds a new kind of compiled resource file, .rsrc, which is built from .r, and adds mechanisms to the MPW makefile generator to handle this. check-in: c0c8b8421f user: ben tags: trunk | |
| 08:17 | Add spaces to system include lines to that mkfiles.pl doesn't try to follow them (silly Rez can't do angle-bracket includes). check-in: f316f2470c user: ben tags: trunk | |
| 07:43 | More cleanup to Mac build procedures, notably: - Remove an unused library from the CFM-68K link line. - Set the fragment name in CFM builds to "PuTTY". - Set the hasBundle and isShared bits on freshly-created applications. check-in: 7702162659 user: ben tags: trunk | |
|
2002-12-29
| ||
| 13:19 | Add various files produced by the build system. check-in: 74c534d03c user: ben tags: trunk | |
| 13:14 | Don't try to call TerminateUnicodeConverter() in the CFM world: it isn't there. check-in: d7b56f740a user: ben tags: trunk | |
| 13:11 | Brutally simplify out all the junk that MPW left here when it first wrote this file. check-in: 056c43460d user: ben tags: trunk | |
| 13:01 | Add support for building a CFM-68K version of PuTTY, which is rather smaller than the Classic 68K version. This requires installing more bits of the Text Encoding Converter SDK, since Apple seem to have forgotten to put _any_ 68k bits for it, either CFM or Classic, in Universal Interfaces. Also don't bother linking against libraries we don't seem to need. check-in: b4b1783c81 user: ben tags: trunk | |
| 09:44 | Substantial overhaul of Mac build system. We now have working PowerPC builds, and optimisation (for size) enabled. check-in: 80dda9eb2c user: ben tags: trunk | |
| 09:08 | Put prototypes for the functions exported by wcwidth.c in putty.h, and remove one from terminal.c. Have wcwidth.c include putty.h to get its prototypes. check-in: 84cbe1ec20 user: ben tags: trunk | |
| 08:47 | Make resizeline() and lineptr() static and give them prototypes. check-in: 94a4a80b07 user: ben tags: trunk | |
| 07:41 | Use the "far" versions of all libraries for which they seem to exist. This should make things less likely to break as the code gets bigger. check-in: 11541b383f user: ben tags: trunk | |
| 07:21 | Add some pragmas so that Mac compilers know that fatalbox() and modalfatalbox() don't return. check-in: 90a15a28f3 user: ben tags: trunk | |
|
2002-12-28
| ||
| 16:44 | It would be better if I deleted the unused variable from the correct function. check-in: 93fb9a8b45 user: ben tags: trunk | |
| 16:25 | Remove more unused variables. check-in: 359457afa1 user: ben tags: trunk | |
| 16:22 | Dispose of some unused local variables. check-in: e9823bb04e user: ben tags: trunk | |
| 16:17 | The current version of SC generates warnings for unused parameters just like MrC. Turn them off, since they're clearly silly. check-in: 651fb5d66f user: ben tags: trunk | |
|
2002-12-27
| ||
| 10:54 | Mention in the documentation that the method of generating RSA keys might give a bit count one less than the one the user asked for. Two people have been worried by this now, and it's probably worth documenting that it's perfectly normal. check-in: b523ff7892 user: simon tags: trunk | |
|
2002-12-19
| ||
| 08:24 | Move the stderr output of event log messages in verbose mode to the general logging module rather than localising it in ssh.c. This means it should work in other protocols as well (notably Telnet, where it might actually be useful for debugging negotiations). check-in: 9ea3dc8f8a user: simon tags: trunk | |
| 08:22 | First crack at an implementation of TELOPT_BINARY, which apparently RFC 1123 (host requirements) says is compulsory. check-in: 9adf61e6b9 user: simon tags: trunk | |
| 05:51 | logeventf() shouldn't throw stuff at stderr, since it invokes the ssh.c logevent _macro_ which has already done so! Duhh. check-in: 919330be30 user: simon tags: trunk | |
|
2002-12-18
| ||
| 10:23 | Support for doing DNS at the proxy end. I've invented a new type of SockAddr, which just contains an unresolved hostname and is created by a stub function in *net.c. It's an error to pass this to most of the real-meat functions in *net.c; these fake addresses should have been dealt with by the time they get down that far. proxy.c now contains name_lookup(), a wrapper on sk_namelookup() which decides whether or not to do real DNS, and the individual proxy implementations each deal sensibly with being handed an unresolved address and avoid ever passing one down to *net.c. check-in: 8d3480376f user: simon tags: trunk | |
| 06:32 | Better reporting of DNS errors while trying to find the proxy server. check-in: 99f372c051 user: simon tags: trunk | |
| 06:18 | Stop proxying connections to localhost by default; should fix `x11-proxy-crash'. check-in: 414b5ad689 user: simon tags: trunk | |
| 05:51 | Placate a trivial compiler warning. check-in: aa211f76ec user: simon tags: trunk | |
| 05:49 | Improve the tab order in the Tunnels box: the `Add' button should happen _after_ all the controls that set up the forwarding, since that's the obvious order you'd want to use them in. check-in: 8dd1f75204 user: simon tags: trunk | |
| 05:39 | Implement `portfwd-loopback-choice'. Works on local side in Unix as well, though it's a lot less useful since you still can't bind to low-numbered ports of odd loopback IPs. Should work in principle for SSH2 remote forwardings as well as local ones, but OpenSSH seems unwilling to cooperate. check-in: dbd436ea57 user: simon tags: trunk | |
| 04:06 | BUG_SSH2_DERIVEKEY is apparently only present in SSH 2.0.11 and before, not in 2.0.13. Verified on at least one host. Fixes bug `ssh2-keyderive-nonbug'. check-in: ae5af25955 user: simon tags: trunk | |
| 03:54 | `Leonid' points out a stupid mistake in MD5 HMAC initialisation: we should initialise _both_ MD5 states, not the same one twice. check-in: 6d0701ede7 user: simon tags: trunk | |
| 03:47 | logeventf()'s first argument is ssh, not ssh->frontend! This is what I get for making the latter a `void *' - type checking deserts me in my hour of need. Should fix Andrey Borzenkov's bug. check-in: d0d528cb50 user: simon tags: trunk | |
|
2002-12-15
| ||
| 07:31 | Fixing trivial warnings spotted by Mingw-2.0.0/gcc-3.2: window.c:90: warning: `do_mouse_wheel_msg' declared `static' but never defined Introduced in 1.185 [r1499]. This function doesn't appear to ever have existed. check-in: 338cfdddcd user: jacob tags: trunk | |
| 07:25 | Fixing trivial warnings spotted by Mingw-2.0.0/gcc-3.2: psftp.c: In function `sftp_cmd_chmod': psftp.c:835: warning: too many arguments for format check-in: 4bac67db09 user: jacob tags: trunk | |
| 07:23 | Fixing trivial warnings spotted by Mingw-2.0.0/gcc-3.2: plink.c:65: warning: `password' defined but not used (introduced in 1.50 [r1525]) check-in: 9e1703aa20 user: jacob tags: trunk | |
| 07:19 | Fixing trivial warnings spotted by Mingw-2.0.0/gcc-3.2: plink.c: In function `from_backend': plink.c:172: warning: unused variable `h' (introduced in 1.35 [r1198]) check-in: 79157afa19 user: jacob tags: trunk | |
| 06:44 | From Greg Prosser: Apparently using "MS Shell Dlg" instead of "MS Sans Serif" in resource files interoperates better with WinXP (enabling font smoothing and improving display of password boxes). I've verified that it's harmless on Win95. check-in: fb34fb93ef user: jacob tags: trunk | |
| 05:51 | faq-rh8-utf8: Problems with Red Hat 8.0 and UTF-8 check-in: ffc81b2da9 user: jacob tags: trunk | |
|
2002-12-12
| ||
| 18:50 | Remove an unnecessary "{Includes}" from the example Rez command. check-in: 98b7dfbce8 user: ben tags: trunk | |
| 18:45 | Provide a full set of small application icons for PuTTY, now equipped with small lightning flashes too. check-in: d805d34ee5 user: ben tags: trunk | |
| 18:02 | Use the Unicode Converter to convert from Unicode to the display encoding if it's available. Linking against the static Unicode Converter library costs us about 30k on Classic 68K, which I can live with. Because the default fallback converter can generate multiple output characters for a single input character, we provide our own fallback that doesn't. It converts everything to '?' instead. check-in: dcc146b8f8 user: ben tags: trunk | |
| 17:55 | When loading a string setting, expect in the same form we would have saved (raw text rather than Pascal string). check-in: 34cbd53221 user: ben tags: trunk | |
|
2002-12-11
| ||
| 12:34 | Add some documentation for the Mac port. check-in: ec4bb81593 user: ben tags: trunk | |
|
2002-12-10
| ||
| 04:19 | IPv4/IPv6 sense problem in SOCKS5 proxying spotted by Andrey Borzenkov -- recent change. check-in: 5bddd9c406 user: jacob tags: trunk | |
|
2002-12-09
| ||
| 19:11 | Since PuTTY depends on lots of features of System 7, have it bale out if it finds itself running on anything older. This is better than killing the whole system with an umimplemented trap. check-in: e43ab09ead user: ben tags: trunk | |
| 17:26 | When resizing the window, redraw the grow box as well as the scroll bar. I wasn't noticing the bug on my system, since the Appearance Manager handles the grow box itself when it's present. check-in: e3c1b93626 user: ben tags: trunk | |
| 16:49 | Update the non-Color Quickdraw code in pre_paint() to match recent changes to the Color Quickdraw code. This makes redraw work properly on old Macs again. check-in: 5dc205fd4e user: ben tags: trunk | |
|
2002-12-08
| ||
| 16:23 | Oops. When deciding which attributes are interesting, we want the union of all the screens' capabilites, not the intersection. check-in: 2e3d5339ea user: ben tags: trunk | |
| 16:15 | Remove a stray prototype for mac_set_attr_mask(). check-in: 2940fe81db user: ben tags: trunk | |
| 16:09 | Remove some unused cruft. check-in: eb485ece1b user: ben tags: trunk | |
| 10:54 | Modify bug-compatibility checks to use wildcards. Should have exactly the same behaviour as before (tested a little bit), but should be easier to expand. (This is the easy bit -- work still needs to be done to fix ssh2-keyderive-nonbug, vshell-no-bug-compat, etc -- but should be easier now.) check-in: 2a30734076 user: jacob tags: trunk | |
| 09:32 | Wrong length was causing spurious \0 to be sent during SSH negotiation with HTTP proxy -- fixed. (Also added a "len -= eol" to HTTP header munching, although it has no practical effect.) HTTP proxying now works again, hurrah. check-in: 4855a5106d user: jacob tags: trunk | |
| 08:44 | Argh. With DEBUG and MALLOC_LOG enabled, I found output intended for the console was ending up in one or other of debug.log or putty_mem.log. I don't really understand why, but I've put some extra paranoia and caching in debug(()) and that seems to have fixed it (tm). Perhaps I can get back to debugging... check-in: e721a3bd3c user: jacob tags: trunk | |
| 06:10 | Doofus Award: logfopen is shared between SSH-packet and session-logging modes, so of _course_ it has to be mode "wb". Restored, and added \r to all of the SSH packet logging stuff. check-in: cdc3577870 user: jacob tags: trunk | |
| 05:00 | Add a new diagnostic in winnet.c, to attempt to pinpoint the reason for the tree234 assertion failure we've had reported recently. check-in: 3b797c50ef user: simon tags: trunk | |
|
2002-12-07
| ||
| 19:17 | Slightly cheesy size-tip implementation. This is suboptimal in two ways: * It paints over the top-left corner of the terminal window. A little floating window would be rather nicer and not much harder to do. * It uses the low-memory global, DragHook, which is unavailable in Carbon and broken in some versions of Mac OS 8 (8.5?). I suspect this is unavoidable, though. check-in: adb5d2eab3 user: ben tags: trunk | |
| 15:35 | For some reason Roman Pompejus' original logging patch opened the log in "wb" mode. Since we were mostly writing "\n" rather than "\r\n", I've changed it to just "w" and refunded the difference. check-in: fa81f923aa user: jacob tags: trunk | |
| 15:15 | Fix write to freed memory in HTTP proxying. Things aren't entirely happy yet, though. check-in: 92c07321a3 user: jacob tags: trunk | |
| 09:21 | When scrolling part of the window, scroll the update region as well so that parts that haven't been painted yet still get an update event in their new location. This code seems far too complicated, and I suspect there's a better way. Still, scrolling continuously with the window partially off-screen now works. check-in: dba4f50b19 user: ben tags: trunk | |
| 06:03 | Ignore generated Mac Makefile check-in: eba08271c0 user: jacob tags: trunk | |
|
2002-12-05
| ||
| 18:09 | Use the Script Manager to find a small Roman font for the licence box rather than assuming that the application font at 9pt will be useful (which it probably won't be on non-Roman systems). check-in: b171e8568d user: ben tags: trunk | |
|
2002-12-04
| ||
| 13:44 | Add some comments explaining what each of these functions is used for. check-in: ab46b32ce0 user: ben tags: trunk | |
| 06:53 | Avoid potential memory leak. check-in: 7582a3be6f user: owen tags: trunk | |
| 06:40 | #include <signal.h>. Compiled fine without it on Debian 3.0, but not on 2.2. Wonder what changed. check-in: 861d27cdcc user: simon tags: trunk | |
| 06:39 | Changed to use strerror() check-in: fe6c8e80c3 user: owen tags: trunk | |
|
2002-12-02
| ||
| 15:06 | Driver script for building PuTTY under MPW. MPW isn't multi-tasking, so its "make" program just emits a script for us to run. This script wraps all that horribleness up so we don't have to see it. check-in: 3690b6d49e user: ben tags: trunk | |
| 15:03 | Add an entry for the Mac version of PuTTY. check-in: c78f03d164 user: ben tags: trunk | |
| 15:01 | Add support for generating MPW Makefiles. This makes the following changes: * splitline gets support for changing the continuation character. * deps returns a data structure for the output routine to format as appropriate. * There's a new program type, [M], for Macintosh. * There's a new backend to output mac/Makefile.mpw. check-in: 6656319f6a user: ben tags: trunk | |
|
2002-11-28
| ||
| 18:32 | Improve support for non-colour displays by adding a mask of attributes to ignore when breaking text into runs for display, and implement setting this on Mac (other ports just use 0xffffffff). We don't use DeviceLoop for this any more because Apple Technical Q&A QA1024 says we shouldn't. Unlike their example, we don't depend on the Display Manager's being present either. check-in: a3ea3b85eb user: ben tags: trunk | |
| 15:10 | Don't call SetFractEnable every time we draw some text, since SetFractEnable unconditionally flushes the Font Manager's width cache, and the default is fine for us anyway. This more or less doubles redraw speed, which is nice, but still not really fast enough. check-in: 670f1ee5f3 user: ben tags: trunk | |
| 15:02 | Follow the recommendations in Tech Note TB575 for clipping off the space for the horizontal scroll bar when drawing the grow box. check-in: db92cc34a6 user: ben tags: trunk | |
|
2002-11-27
| ||
| 18:25 | Use StdText() rather than DrawText, so that (later) we can support scaling of text to get double-width etc. Also set the background when scrolling in Original Quickdraw. check-in: 2fc3b84078 user: ben tags: trunk | |
|
2002-11-26
| ||
| 13:35 | Increase the size of the `font' buffer in the Config structure, for the benefit of X font names which are rather more verbose than Windows. One day I want to replace all these fixed-size buffers with sensible dynamically allocated stuff, but not today. check-in: af1eb83a03 user: simon tags: trunk | |
|
2002-11-25
| ||
| 19:32 | Substantial overhaul of colour handling in do_text(). Highlights include: * No more mucking about with transfer modes. We always set up the foreground and background sensibly, EraseRect the whole lot and use srcOr. Apple Tech Note QD505 suggests that this should be faster than srcCopy. * Always use the Palette Manager if we've got Color QuickDraw, even in 1bpp modes. * Apply the cursor colours _after_ all the other stuff, rather than trying to get them through everything else intact. Unfortunately, this doesn't make much difference to the speed. check-in: 027cb71bef user: ben tags: trunk | |
| 17:34 | Make the default font on Mac OS be Monaco 9 rather than Monaco 10, since the former is available as a bitmap. check-in: 7d5b90b918 user: ben tags: trunk | |
| 13:02 | Remove a spurious 'q'. check-in: ef26ead7b5 user: ben tags: trunk | |
|
2002-11-24
| ||
| 09:08 | Add support for displaying the licence window. check-in: 8279651556 user: ben tags: trunk | |
|
2002-11-23
| ||
| 18:38 | Fix scrolling on systems without Color QuickDraw. It seems that the current background colour and pen mode have some silly effects on ScrollRect, so set them back to their defaults before calling it. check-in: 0e0d9ebd85 user: ben tags: trunk | |
| 16:36 | Don't try to initialise the palette unless we have Color QuickDraw. This gets PuTTY running on my Mac SE again (albeit very slowly and with scroll optimisation broken for some reason). check-in: d53a7b1a20 user: ben tags: trunk | |
| 15:42 | Fix a bug in scroll_display(): when the scrolled region contains the cursor we need to update dispcurs as well as disptext. Add scroll optimisation to scroll(). This makes it rather obvious that scroll optimisation is breaking with PuTTY's usual policy of lazy updates, since scrolling is done eagerly. Fixing this so that all the scrolling is saved up for do_paint would be nice, but non-trivial. check-in: c9c0583c1f user: ben tags: trunk | |
| 14:40 | Remove stray debugging printfs. check-in: 01da9b4054 user: ben tags: trunk | |
| 14:02 | Add a Config * argument to ldisc_create(), and use it in place of the global cfg throughout ldisc.c. Not tested other than on Mac, but all other ports just pass &cfg as this argument for now. check-in: 94b6511b43 user: ben tags: trunk | |
| 13:58 | Return the state information from loop_init() in the correct way. This means the backend actually works now. check-in: c4b4347f36 user: ben tags: trunk | |
| 13:01 | Add a "Config *" argument to term_init(), and use that instead of the global cfg throughout the terminal emulator. Not tested in PuTTY and pterm, but they just pass in &cfg. check-in: 40ee80fefa user: ben tags: trunk | |
| 12:22 | Only try to retrieve a 'vers' resource from the current resource file (the application), rather from the entire chain. This prevents us displaying the System version if PuTTY doesn't have one. Also cope with not finding any 'vers' resource. check-in: 89b1b55a38 user: ben tags: trunk | |
| 09:11 | We don't currently need the Thread Manager (and all being well we never will), so stop checking for it. check-in: d3ceeb65ae user: ben tags: trunk | |
| 08:22 | On a keypress, hide the mouse cursor, send the key to the line discipline (rather than straight to the backend), and then prod the terminal. I think this is closer to the correct set of things to do. check-in: 092c0546f5 user: ben tags: trunk | |
| 07:16 | Remove a debugging printf. check-in: 3343e1370f user: ben tags: trunk | |
| 07:07 | Bring in some of my scroll-optimisation stuff from the old Mac port. This introduces a new front-end function, do_scroll(), which is expected to scroll a part of the physical display and cause repaint events for any areas that couldn't be scrolled (e.g. because they were hidden). scroll_display() is a wrapper around this which also updates disptext to match. Currently, scroll_display is only used in response to user scrollback requests (via term_scroll()), but extending scroll() to use it as well should be easy. All of this is conditional on the front end's defining OPTIMISE_SCROLL, since only the Mac front end currently implements do_scroll(). check-in: 541d90c0c7 user: ben tags: trunk | |
| 05:22 | Note about CTRL-C trick for copying text of error dialogs check-in: d1cf6a636f user: jacob tags: trunk | |
|
2002-11-21
| ||
| 18:07 | Update the status of the Mac port. check-in: 444194ac16 user: ben tags: trunk | |
|
2002-11-20
| ||
| 18:15 | Note that default will change to SSH-2 next release check-in: 3764566923 user: jacob tags: trunk | |
| 14:09 | Fixes for more robust handling of command-line parse errors. check-in: 7ee5329b06 user: simon tags: trunk | |
| 13:56 | Interchange two parameters in a printf, to prevent a silly segfault. check-in: f3b8077033 user: simon tags: trunk | |
| 13:49 | Largely-placeholder man page for Plink, for the sake of not irritating `make install'. Thanks RJK, again. check-in: 48b2f36b44 user: simon tags: trunk | |
|
2002-11-19
| ||
| 18:33 | Fiddle with mac_initpalette() so that the cursor works in 2bpp modes as well. check-in: c0ae1e21a6 user: ben tags: trunk | |
| 18:11 | Remove has_focus from Session and use the one in Terminal. Active vs passive cursor now behaves correctly. check-in: 076340b548 user: ben tags: trunk | |
| 17:59 | Remove CURSOR_FG_BOLD and CURSOR_BG_BOLD, and hence bring reality in line with palette_reset()'s expectations. check-in: b59ff742d9 user: ben tags: trunk | |
| 16:05 | Pass co-ordinates to term_paint() in characters rather than pixels. Partial redraws now work rather better. check-in: 6ca95659b9 user: ben tags: trunk | |
| 13:36 | Add mac/ to include paths after discussion with bjh21 check-in: aa7e2b5a71 user: jacob tags: trunk | |
| 06:29 | A couple of useful test backends. check-in: f02d55cce3 user: ben tags: trunk | |
|
2002-11-18
| ||
| 20:14 | Mac resource source file, missed in last commit. check-in: e9754805ae user: ben tags: trunk | |
| 20:13 | Tentative merge of ben-mac-port (only dead for three years!) into the trunk. This doesn't include any mkfiles.pl glue, and is missing one or two other fixes. The terminal emulator is kind of working, though, as, I believe, is the store module. Everything else is yet to be done. check-in: a8c9c17c13 user: ben tags: trunk | |
| 17:49 | When processing input, refer to CR and LF as \015 and \012 respectively, rather than \r and \n. The latter tend to get swapped around by Mac C compilers. check-in: 99f7b1fb00 user: ben tags: trunk | |
| 16:27 | ISO-IR entry 157 appears to correspond to ISO/IEC 8859-10, and lists code point 3/13 as HORIZONTAL BAR, which agrees with unicode.org's mapping table. Change ours to match (it used to have EM DASH, courtesy of RDB). This brings all our 8859-to-Unicode tables into line with unicode.org. check-in: 6681056a36 user: ben tags: trunk | |
| 14:06 | More comment cleanup. check-in: b5f2a15f53 user: ben tags: trunk | |
| 12:24 | Don't forget the IEC! check-in: 5e93843f61 user: ben tags: trunk | |
| 12:14 | Both ISO and unicode.org now admit the existence of 8859-11 (:2001, FWIW), and unicode.org agrees with our mapping table. Update text accordingly. check-in: 4aef9c405a user: ben tags: trunk | |
|
2002-11-17
| ||
| 09:06 | Thanks to Hans-Juergen Petrich for spotting this tiny memory leak: `otherbuf' should still be freed even if the RegEnumKey function that was supposed to fill it with data failed. While I'm at it, also remove the redundant check for its non-NULL-ness (what's the point of having a malloc wrapper that dies rather than return NULL if you then waste effort checking its return value for NULL _anyway_, eh?). check-in: 0d0bacf563 user: simon tags: trunk | |
|
2002-11-16
| ||
| 20:00 | Apple's C compilers don't think that putting parentheses around assignments in "if" conditions is enough. Use an actual comparison against NULL instead. check-in: 3f66765184 user: ben tags: trunk | |
| 19:56 | Change a temporary buffer from unsigned chars to chars, avoiding a pointer-cast warning. check-in: 75b250d599 user: ben tags: trunk | |
|
2002-11-12
| ||
| 12:55 | Bump latest version to 0.53b for release! check-in: 4ea63b3b0d user: simon tags: trunk | |
|
2002-11-09
| ||
| 18:03 | Use <stddef.h> to get wchar_t, rather than <wchar.h> (or nothing, in putty.h). Both are required to contain wchar_t in C99, but only <stddef.h> does in the version of MPW I've got here. check-in: fb9bb66b3f user: ben tags: trunk | |
| 15:46 | Rename CharWidth() to char_width(). The former name clashes with an API function in Mac OS. check-in: b80c92ed92 user: ben tags: trunk | |
|
2002-11-07
| ||
| 14:01 | Improve robustness in random seed file handling. check-in: 609779a448 user: simon tags: trunk | |
| 13:49 | 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. check-in: c58e86fe39 user: simon tags: trunk | |
| 13:37 | Borland makefile needs to define _WINDOWS; apparently this makefile hasn't worked since the Unix port started and nobody has noticed until now :-) check-in: fe11b098c6 user: simon tags: trunk | |
|
2002-11-05
| ||
| 07:21 | Packet-level logging should now work properly in Unix Plink. check-in: e3ba678484 user: simon tags: trunk | |
| 07:20 | Fix command-line error handling in pterm. (Hint: wrapping a multi- statement macro in `do ... while (0)' and putting a `continue' within it don't go well together. Oops.) check-in: e60a008b47 user: simon tags: trunk | |
| 03:37 | Substitute `-' (magical hyphen) for `\-' (inert minus sign) in the manpage. Fixes Debian bug #167761. check-in: 275a40ba95 user: simon tags: trunk | |
|
2002-11-03
| ||
| 02:46 | Half of Lars Gunnarsson's iXplorer compatibility patch: the PSFTP login prompt should be fflushed (presumably fgets fails to implicitly do this when stdin and stdout are redirected weirdly). check-in: 989155997f user: simon tags: trunk | |
|
2002-11-02
| ||
| 10:27 | Probably about time we mentioned the nascent Unix port in the FAQ. Not that I desperately want to shout about it just yet, but I feel a bit bad about the FAQ saying `we don't have a Unix port, anyone who told you so was wrong'. :-) check-in: fcf7cbe8bc user: simon tags: trunk | |
| 10:16 | Improve shadow bold mode: set the default shadow bold offset to +1 not -1 (it turns out _most_ X fonts prefer the former, though irritatingly my favourite real X font used to prefer the latter which was why I made the X version of my Font Of Choice do so too), and also clip to the boundaries of the rectangle we should be drawing text in. This still doesn't completely prevent display corruption in the case where text drawn in one sweep is partially overwritten in a future one, but gnome-terminal has this problem too, and now we've got the right default SB offset _and_ offer the opportunity to reconfigure it I think this is pretty good for now. check-in: 3114a70d88 user: simon tags: trunk | |
| 10:05 | Another signal-handling refinement from RJK: the SIGCHLD handler should be prepared to reap more than one child per invocation if necessary, since we do after all have two. check-in: 66d4a347b6 user: simon tags: trunk | |
| 09:23 | Improve the noise collection for the internal random pool. check-in: 3848a0c712 user: simon tags: trunk | |
| 08:35 | RJK's general signal-handling robustness patch. Should fix the weird spin behaviour occasionally seen after pterm's child process dies. check-in: e1fb5ab154 user: simon tags: trunk | |
|
2002-11-01
| ||
| 15:50 | s/public/private/ spotted by Clint Hastings; also change a "public key" to "key pair" check-in: cccd0a4419 user: jacob tags: trunk | |
| 12:51 | Introduce program category U, for non-GTK-requiring Unix apps. Plink doesn't need to be linked with libgtk, libgdk, libX11 etc! check-in: a78f436a90 user: simon tags: trunk | |
| 12:51 | Prevent another segfault. Oops. check-in: f4b568638e user: simon tags: trunk | |
| 07:49 | .HLP files should be ignored as well. Oops. check-in: b204a23ad4 user: simon tags: trunk | |
| 07:37 | Add a .cvsignore for the Unix subdir check-in: 31b7ddbfc4 user: simon tags: trunk | |
| 07:36 | Improve handling of oobinline sockets; Plink in telnet mode now doesn't hang when you hit ^C, which is nice. I think a better solution would involve nonblocking sockets; as it stands it's a little dependent on what may be quirks of the Linux socket layer. check-in: 183065be03 user: simon tags: trunk | |
| 07:01 | Another valgrind-caught error. This one has apparently been there since the Dawn O' Time, and consisted of me putting the two halves of a short-circuiting bounds check the wrong way round: instead of `p_in_range && *p', I had `*p && p_in_range'. Oops. valgrind rocks. check-in: 431505c3e0 user: simon tags: trunk | |
| 06:59 | valgrind has caught two more uninitialised elements in the SSH context structure. I knew the Unix port would be a good idea! check-in: f50e29cc8f user: simon tags: trunk | |
| 06:55 | Implement access to the SSH agent. This ought to make agent forwarding work as well, of course. check-in: 49ef903377 user: simon tags: trunk | |
| 06:54 | Replace a \r\n with an ordinary \n - this isn't Windows! check-in: fc9f9f2883 user: simon tags: trunk | |
| 06:54 | Stop the segfault on failure to resolve a host name. check-in: 9ed197e873 user: simon tags: trunk | |
| 06:54 | Add a \n at the end of an error message - oops. check-in: 76e0288a44 user: simon tags: trunk | |
| 06:53 | Move an output newline to make username entry in Plink/SSH2 look more sensible. check-in: e58385f685 user: simon tags: trunk | |
| 06:53 | Pass int rather than char to va_arg (the latter gets promoted). check-in: 811ba17fbe user: simon tags: trunk | |
| 06:52 | Split a trigraph sequence in a string constant. check-in: 3387cf424e user: simon tags: trunk | |
|
2002-10-31
| ||
| 13:49 | First attempt at a Unix port of Plink. Seems to basically work; doesn't yet use the SSH agent, no way to specify arbitrary config options, no manpage yet, couple of other fiddly things need doing, but it makes SSH connections and doesn't fall over horribly so I say it's a good start. Now to run it under valgrind... check-in: b651a46968 user: simon tags: trunk | |
|
2002-10-30
| ||
| 12:22 | RJK's `pterm --help' patch. I _must_ find a better alternative to this init sequence - it surely can't be right that `pterm --help' with no DISPLAY complains at the lack of DISPLAY rather than giving a help message! check-in: 8cab4c281e user: simon tags: trunk | |
| 12:17 | RJK's `make install' patch for the Unix makefile. check-in: 869607cc8f user: simon tags: trunk | |
| 12:12 | Further deglobalisation: settings.c now has a more sensible interface. check-in: ae09f4f6ac user: simon tags: trunk | |
| 12:12 | Fix some consts. check-in: 3ae4c6e626 user: simon tags: trunk | |
| 11:57 | More preparatory work: remove the <windows.h> include from lots of source files in which it's no longer required (it was previously required in anything that included <putty.h>, but not any more). Also moved a couple of stray bits of exposed WinSock back into winnet.c (getservbyname from ssh.c and AF_INET from proxy.c). check-in: 28f44ea3f8 user: simon tags: trunk | |
| 11:56 | Preparatory work before attempting a Unix port of plink: mkfiles.pl needs to be able to handle separate Recipe entries for the same program with different types (plink [C] and plink [X] for example, with different object lists). check-in: 8e93ab2438 user: simon tags: trunk | |
|
2002-10-29
| ||
| 10:54 | Yikes - put back a #include I accidentally removed two revs ago! That'd have been embarrassing. Mind you I'd like to remove this particular #include for good anyway, but the time is not now... check-in: 8742d8ab57 user: simon tags: trunk | |
| 08:41 | Hmm. Probably best initialise mainchan as well; oops. check-in: 67b3ab0447 user: simon tags: trunk | |
| 07:05 | Try actually initialising ssh->v1_compressing. With any luck this will be what was causing Owen's crash report today. check-in: ba0e8fb0ef user: simon tags: trunk | |
|
2002-10-28
| ||
| 15:58 | terminal.c should call the frontend beep() routine even with mode==BELL_VISUAL, otherwise taskbar flashing won't happen on visual bells. It's up to the frontend routine to spot BELL_VISUAL and avoid making any noise. check-in: 29d816b14b user: simon tags: trunk | |
| 11:39 | CloseOnExit now defaults to COE_ALWAYS for pterm, bringing it back into line with most other xtermalikes. On Unix, the exit code of a shell is the last exit code of one of its child processes, even if it's an interactive shell - so some pterms will close and some will not for no particularly good reason. Power-detaching a screen session is especially bad for this. COE_NORMAL is still useful for specialist purposes (running a single command in its own pterm), but I don't think it's a sane default, unfortunately. check-in: 5b5dba3625 user: simon tags: trunk | |
| 11:34 | Fix Alt+numberpad in pterm. For a start, there was a bug whereby if a pterm came up while Alt was down, then releasing it would cause a ^@ to be generated. Also, though, I've decided that Alt plus a single numberpad key should not generate a low-numbered control code, because that's too easy to do by mistake and the codes are too powerful. Anyone who really _wants_ to create a ^C or ^D from the numberpad can do Alt-03 or Alt-04 easily enough; two-digit codes and more such as Alt-65 are unaffected. check-in: d50e64724d user: simon tags: trunk | |
| 11:30 | Another deglobalisation bug: failed to initialise term->curstype. Thanks to valgrind for finding this one (aha! I knew there would be benefits from doing a Unix port!). check-in: 39c761da90 user: simon tags: trunk | |
| 03:38 | First bug discovered as a result of global-removal: pasting into pterm caused a crash because I had the wrong prototype for the selection_received event handler. Should be fixed. check-in: 2b272e1f86 user: simon tags: trunk | |
|
2002-10-27
| ||
| 03:24 | Arrgh! _Another_ missed commit. I really must do something about this bad habit of mine :-/ check-in: cbbd653fe6 user: simon tags: trunk | |
|
2002-10-26
| ||
| 09:06 | Retire another global in favour of adding a feature to the terminal.c interface. check-in: 13567ae2ad user: simon tags: trunk | |
| 07:58 | 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. check-in: 8fba443d8c user: simon tags: trunk | |
| 07:42 | Richard points out that it would probably help if I committed ldisc.h. Bah. :-) check-in: fc513a6cb8 user: simon tags: trunk | |
| 06:23 | X forwarding authentication is now invented on a per-SSH-connection basis, so the statics are gone from x11fwd.c. check-in: f79eb3364d user: simon tags: trunk | |
| 06:12 | Fix proxy.c so that the static variables become const. check-in: a5d6220305 user: simon tags: trunk | |
| 06:08 | Reorganised the Unicode layer somewhat: moved luni_send and lpage_send out into the line discipline, making them _clients_ of the Unicode layer rather than part of it. This means they can access ldisc->term, which in turn means I've been able to remove the temporary global variable `term'. We're slowly getting there. check-in: 457ce6905a user: simon tags: trunk | |
| 05:33 | Port forwarding module now passes backend handles around properly. As a result I've now been able to turn the global variables `back' and `backhandle' into module-level statics in the individual front ends. Now _that's_ progress! check-in: 06cff2eb6c user: simon tags: trunk | |
| 05:16 | Line discipline module now uses dynamically allocated data. Also fixed one or two other minor problems. check-in: d16199ae68 user: simon tags: trunk | |
|
2002-10-25
| ||
| 17:00 | Oops; remembering to call term_provide_resize_fn in the Unix front end would probably help. Thanks Colin. check-in: 40732d161f user: simon tags: trunk | |
| 08:26 | The Zlib module now uses dynamically allocated contexts. I think that completes the static-removal in the crypto library. Ooh. check-in: d666740d70 user: simon tags: trunk | |
| 08:08 | Diffie-Hellman key exchange now uses a dynamically allocated context. check-in: 28d1810cc5 user: simon tags: trunk | |
| 08:00 | Fix some compiler warnings. check-in: faa5c4fe6e user: simon tags: trunk | |
| 07:59 | Tidy up and fix a compiler warning. check-in: 409a2fa882 user: simon tags: trunk | |
| 07:58 | SSH CRC attack detector now uses a dynamically allocated context. check-in: 45540e784d user: simon tags: trunk | |
| 07:51 | SSH2 MACs now use dynamically allocated contexts. check-in: fb0d4d686d user: simon tags: trunk | |
| 07:35 | SSH ciphers now use dynamically allocated contexts. check-in: f12024de9a user: simon tags: trunk | |
| 06:58 | Fix the nasty flashing-light-grey-on-resize problem, after MCV helpfully alerted me to the existence of gdk_window_set_background(). check-in: 5fa48e3449 user: simon tags: trunk | |
| 06:50 | pty backend now supports the changed function interface, so pterm now compiles and runs again after the major destabilisation. Unfortunately it wasn't feasible to actually encapsulate all of the pty backend's data, since the utmp helper and the need to fork and drop privileges before doing anything else at all rather confuses matters. So the data handle passed around to the pty backend is a null pointer, and the pty backend is just as global-ridden as it always has been. Shame, but such is life. check-in: feb8faf680 user: simon tags: trunk | |
| 06:30 | Major destabilisation, phase 2. This time it's the backends' turn: each backend now stores all its internal variables in a big struct, and each backend function gets a pointer to this struct passed to it. This still isn't the end of the work - lots of subsidiary things still use globals, notably all the cipher and compressor modules and the X11 forwarding authentication stuff. But ssh.c itself has now been transformed, and that was the really painful bit, so from here on it all ought to be a sequence of much smaller and simpler pieces of work. check-in: 92e8b2cec5 user: simon tags: trunk | |
|
2002-10-24
| ||
| 09:48 | Need to stub frontend_keypress() in console.c as well as window.c. check-in: da3de94483 user: simon tags: trunk | |
| 09:12 | Oops - repercussions of the close-on-exit stuff which I forgot to check in. I must stop doing my Unix checkins in the Unix subdir :-( check-in: 74f4ced28a user: simon tags: trunk | |
|
2002-10-23
| ||
| 09:24 | Minor compiler nits: - use smalloc/sfree, not malloc/free - include <ctype.h> - include <string.h> (although this doesn't shut the compiler up about non-ANSI stricmp/strnicmp) check-in: 358caa17e7 user: jacob tags: trunk | |
| 09:21 | Implement handling of all Close On Exit modes. Default is to close only on clean exit, which is a departure from most xterm-alikes but Ian reckons people will love me for it. If this turns out to be wrong, we can always change the default for Unix. check-in: e33f2e8338 user: simon tags: trunk | |
| 09:03 | Fixes for (Backend)->size() changes -- internal declarations didn't include new arguments and neither did internal calls. check-in: f41c1604fd user: jacob tags: trunk | |
| 08:46 | Remove apparently unnecessary declaration of typedef Config from winstuff.h -- it was breaking mingw builds (gcc being more picky than Visual C). check-in: dbc6f05d2a user: jacob tags: trunk | |
| 07:41 | Cleanups from yesterday's destabilisation: lots of stuff in terminal.c was apparently relying on implicit initialisation to zero, and also I've removed the backends' dependency on terminal.h by having terminal sizes explicitly passed in to back->size(). check-in: 4bdb37398f user: simon tags: trunk | |
| 04:11 | Oops. Forgot to check in terminal.h from yesterday's work. There's always one :-/ check-in: 4c7c6ce91d user: simon tags: trunk | |
|
2002-10-22
| ||
| 11:11 | Major destabilisation, phase 1. In this phase I've moved (I think) all the global and function-static variables out of terminal.c into a dynamically allocated data structure. Note that this does not yet confer the ability to run more than one of them in the same process, because other things (the line discipline, the back end) are still global, and also in particular the address of the dynamically allocated terminal-data structure is held in a global variable `term'. But what I've got here represents a reasonable stopping point at which to check things in. In _theory_ this should all still work happily, on both Unix and Windows. In practice, who knows? check-in: c56a5fa8ee user: simon tags: trunk | |
| 08:27 | Make -ut work the right way round! :-) check-in: b42bbd8274 user: simon tags: trunk | |
| 08:26 | Stop `pterm -ut-' leaving the unnecessary utmp helper as a zombie process (Debian bug #165887). check-in: 9a67f6a55f user: simon tags: trunk | |
| 05:31 | Thanks to Richard B for pointing out that xterm has its own variants of the alternate-screen and save-cursor control sequences, with subtly different semantics and entertaining interactions with the usual ones. No thanks to xterm for doing so in the first place :-( This checkin should sort it all out. check-in: c17e8cfefd user: simon tags: trunk | |
| 04:40 | Justin Bradford's patch for increased proxy robustness. check-in: 76e58c77c8 user: simon tags: trunk | |
|
2002-10-21
| ||
| 18:01 | Make sure SIGINT and SIGQUIT haven't been nobbled in our child process by weird POSIX-required shell behaviour. check-in: 179d3e66f2 user: simon tags: trunk | |
| 18:00 | Don't bother closing fds 0-2 before dup2ing over them; there's no need, and it means we always have a valid open stderr. check-in: e44f39631e user: simon tags: trunk | |
| 17:59 | VT100 line drawing characters should only happen between 0x5F and 0x7E, not everywhere else. Silly me thought nobody would bother to depend on this :-) check-in: 9f5e3fc49d user: simon tags: trunk | |
|
2002-10-20
| ||
| 08:23 | Implement Richard's really clever idea about bell overload mode: it's automatically deactivated by any keypress, so that command-line beeps from (e.g.) filename completion don't suddenly stop occurring, but it still provides a rapid response to an accidental spewing of a binary to your terminal. check-in: 89a7cd7830 user: simon tags: trunk | |
| 07:44 | ScrollOnKey wasn't working because I failed to set seen_key_event in pterm.c. check-in: ba3068e889 user: simon tags: trunk | |
|
2002-10-18
| ||
| 10:26 | Reject unrecognised command-line options; thanks rjk. check-in: 6b1f39e18f user: simon tags: trunk | |
| 05:38 | Fix typo in man page. Thanks Richard. check-in: f623806109 user: simon tags: trunk | |
|
2002-10-17
| ||
| 11:58 | Oops - that fix wasn't _quite_ right, since it killed all non-function keys completely :-/ check-in: 13faee9f62 user: simon tags: trunk | |
| 11:51 | Make the shadow bold offset configurable, after discovering that 7x13 goes the other way to all other X fonts I've ever seen. (Arrgh.) check-in: 4245aa8933 user: simon tags: trunk | |
| 11:45 | This should fix the bug causing Alt-Shift to generate Escape. check-in: 2163edba1a user: simon tags: trunk | |
|
2002-10-16
| ||
| 17:54 | Add the -xrm command-line option, to allow specification of an arbitrary X resource which doesn't have a dedicated command-line option. check-in: a258b8a88b user: simon tags: trunk | |
| 17:43 | Add a man page. check-in: f1505a5669 user: simon tags: trunk | |
| 11:32 | Temporarily change the default for cut-and-paste of line drawing characters, under Unix only, because the stub Unicode layer makes the usual default break moderately painfully. check-in: 2ef611e291 user: simon tags: trunk | |
| 11:00 | A few more command-line options. check-in: c544ce865f user: simon tags: trunk | |
| 09:32 | Oops, forgot to add BoldFont to the settings module. check-in: 53b9f89c82 user: simon tags: trunk | |
| 09:32 | Implement reading of X resources, and -name to change the name under which to look them up. check-in: dc7f9c04de user: simon tags: trunk | |
| 07:30 | Add a file to the source archive mentioning the version number of the latest release. This is so that .tar.gz snapshots for the Unix port can be versioned as `0.53-20021016' or similar, meaning that (e.g.) Debian version numbering can be monotonic between releases and snapshots. check-in: 0372c5661c user: simon tags: trunk | |
| 07:17 | Fix utmp and pty handling so that GTK never complains about running set[ug]id. All privs-requiring pty operations are done at the very start of the run, then privs are dropped before initialising GTK. Utmp is handled by forking a still-privileged subprocess at this point, and later asking it (through a pipe) to stamp utmp. The subprocess cleans up utmp on exit, which has the additional advantage that if the main pterm process suffers some sort of unexpected termination (up to and including SIGKILL) the subprocess can still mop up utmp. check-in: 7f9a81d03e user: simon tags: trunk | |
| 06:35 | Fix for `hostname-whitespace'; thanks to Justin Bradford. check-in: 39093dcc64 user: simon tags: trunk | |
| 04:40 | Bug `shift-backspace': whichever of ^H and ^? is configured for Backspace, Shift-Backspace should do the _other_ one. Thanks to Justin Bradford. check-in: 74ba290d86 user: simon tags: trunk | |
| 04:28 | Oops - check in leftovers from yesterday's development. That's what I get for running most of my cvs commands in the unix subdir :-/ check-in: 2d5d551feb user: simon tags: trunk | |
|
2002-10-15
| ||
| 13:42 | Support bold-as-font, by means of a separate bold font (if one was supplied) or shadow bolding (if not). As usual, can't yet be turned on without a recompile. check-in: b2569827d3 user: simon tags: trunk | |
| 13:36 | Configure the pty so that it agrees with our idea of whether Backspace sends ^H or ^?. check-in: 8a75f4f208 user: simon tags: trunk | |
| 13:18 | Support underline and vertical-line cursors as well as block. check-in: 3931a8354d user: simon tags: trunk | |
| 12:41 | If we can't load the specified font, give an error message rather than segfaulting. check-in: d6f20644bd user: simon tags: trunk | |
| 12:38 | Printer support: cfg.printer is assumed to be a Unix command through which to pipe printed data. Of course by default printing is disabled; typically cfg.printer would be set to `lpr', perhaps with some arguments. check-in: 50eaa1e2b3 user: simon tags: trunk | |
| 12:24 | Scrollbar can now be configured to go on the left (although the current configuration mechanism doesn't support it). check-in: 94f7e9d448 user: simon tags: trunk | |
| 12:18 | Support ALT + numeric keypad for typing in strange character codes. check-in: 5a7aebaff7 user: simon tags: trunk | |
| 11:52 | Add newline at EOF in uxucs.c. Thanks Richard. :-) check-in: 206255935f user: simon tags: trunk | |
| 11:50 | Support scrolling with the mouse wheel (X servers apparently usually send a button 4 press for an upward wheel movement and a button 5 press for a downward one). Untested since my own trackball's button 4 does nothing obvious. Someone with a mouse wheel should give this a workout. check-in: 622fd3d843 user: simon tags: trunk | |
| 11:40 | Fixes to terminal.c to support blinking and visual bells under Unix. check-in: b34b6047b5 user: simon tags: trunk | |
| 11:38 | Support for blinking text and blinking cursor. Won't actually be accessible until there's a way to configure it on, but it worked in tests. check-in: a0a5506f59 user: simon tags: trunk | |
| 11:24 | Use the appalling gnome-terminal hack for server-controlled resizes rather than the gtk_window_set_policy approach; the GNOME people say that the former is the Right Thing in spite of the latter looking obviously plausible. check-in: 6cb6d56d5f user: simon tags: trunk | |
| 10:44 | Remove some rogue diagnostics. check-in: 842a63a48e user: simon tags: trunk | |
| 10:16 | Don't forget to initialise the pixel size parameters of the window as passed to the pty... check-in: f47218505b user: simon tags: trunk | |
| 09:58 | Richard's patch to fix `make clean' under Unix. check-in: 93fe7922e6 user: simon tags: trunk | |
| 09:55 | Richard's patch to make the scrollbar configurably absent. (Still want a new option to configure it to be on the LHS though. And some lunatic is bound to ask for an xterm-style scrollbar too... :-) check-in: c816ac1e38 user: simon tags: trunk | |
| 09:31 | Support for all the server-side window configuration requests, including server-controlled resizing. Irritatingly I've had to use a deprecated option to gtk_window_set_policy() to make this work, resulting in me raising GNOME bug #95818 to ask for it to be un- deprecated again... check-in: ef25478d2b user: simon tags: trunk | |
| 08:07 | Introduce the ability to control whether the shell run in pterm is a login shell or not. Also moved these new pieces of configuration into the Config structure, though they won't stay there forever since they will need to be moved out into platform-dependent config. check-in: 889a957cfd user: simon tags: trunk | |
| 07:42 | Finish up utmp processing: add the -ut- command-line option to suppress stamping it at all. (I suppose this ought to be part of the cfg structure really.) check-in: 48d2913a94 user: simon tags: trunk | |
| 07:29 | Support for utmp, wtmp and lastlog. Probably not terribly portable as yet, but seems to work plausibly on Linux. check-in: 04380af359 user: simon tags: trunk | |
| 05:52 | Deal with the warnings generated when passing a pointer-to-enum to gppi as a pointer-to-int. check-in: b55c35f796 user: simon tags: trunk | |
| 05:49 | Support for BSD-style pty devices. Tested under Linux; might need minor tweaks to run under other BSD-style OSes. check-in: 29530e8f6a user: simon tags: trunk | |
| 04:30 | Trim wide text properly at the RH edge of the screen. check-in: 1d7a84f45a user: simon tags: trunk | |
|
2002-10-14
| ||
| 19:22 | Support for line attributes: ESC #3, #4 and #6 for double-width and double-height text. check-in: 3a57c840d6 user: simon tags: trunk | |
| 18:39 | Don't cause the mouse pointer to reappear just because it's changed shape. check-in: b5dce740cb user: simon tags: trunk | |
| 18:32 | Only engage a GTK idle function when absolutely necessary, otherwise the whole app spins on it and takes up CPU all the time. check-in: 7a5991bb3f user: simon tags: trunk | |
| 17:14 | Set up the palette _before_ trying to paint the window black. check-in: 65d1404fa3 user: simon tags: trunk | |
| 05:33 | Add the -log option, which activates full session logging. Should be handy next time I need to debug any weird terminal problems... check-in: c3440c092b user: simon tags: trunk | |
| 05:29 | Bell overload was working in principle, but wasn't scaled to Unix's greater time resolution. Oops. check-in: 924bd61e8e user: simon tags: trunk | |
| 05:21 | Support server requests for colour palette changes. check-in: 12a36f9ab5 user: simon tags: trunk | |
| 05:14 | Don't forget to call term_paste() when we get the chance, or big pastes won't go through. (Not sure whether I should remove this weird behaviour completely for pterm. It's a bit bizarre.) check-in: 03a780c15b user: simon tags: trunk | |
| 05:06 | Support NetHack keypad mode. :-) check-in: e8759a8b36 user: simon tags: trunk | |
| 04:58 | Support for hiding the mouse pointer on keypresses. Currently activated by `-hide' on the command line. check-in: 26a987d390 user: simon tags: trunk | |
| 04:18 | xterm-class programs should exit when their primary child process dies, rather than waiting around until the last open handle on the pty closes. check-in: fe669158ac user: simon tags: trunk | |
| 04:06 | SEL_NL is different between Windows and Unix; move it out into the platform-specific header files. check-in: 85f63b0224 user: simon tags: trunk | |
| 04:04 | Oops. Defining max() the wrong way round was breaking rect select. check-in: d0017c34d9 user: simon tags: trunk | |
| 03:56 | Various faffs in the pty allocation process to get controlling terminals right. Irritatingly this was working when run from another [xsp]term but not when run from my GNOME panel. I think it's now more robust. check-in: ed8734df95 user: simon tags: trunk | |
|
2002-10-13
| ||
| 19:05 | Window title configurability: -T to set it from the command line, support for the xterm escape sequences to set it, and support for the xterm escape sequence to query it. check-in: bcb2aa106a user: simon tags: trunk | |
| 18:57 | Don't forget to set $TERM when we spawn the pty. Of course I haven't noticed this until now because I've always been spawning it _from_ another xterm! :-) check-in: d49f2941d0 user: simon tags: trunk | |
| 18:48 | gnome-terminal insists on receiving the selection as COMPOUND_TEXT rather than STRING, so we can now supply that too. Pasting both ways between pterm and gnome-terminal now works. check-in: 525fd6d0f4 user: simon tags: trunk | |
| 07:54 | Added two simple command-line arguments: -fn (so I can have my Font Of Choice back :-) and -e to run a command other than $SHELL. check-in: 7a2269ba51 user: simon tags: trunk | |
| 07:44 | Resizing of pterm now works, and the size information is correctly sent on to the pty. check-in: 2fb4abdb44 user: simon tags: trunk | |
| 07:17 | Deal with the appalling mouse pointer colours. (Why doesn't GTK let us select our own mouse pointer fg and bg for standard pointers? It's ludicrous that we can only do it for pixmap-derived ones. :-( ) check-in: c8de8d4871 user: simon tags: trunk | |
| 06:27 | Shift-Ins pastes. check-in: 4b2f26182c user: simon tags: trunk | |
| 06:24 | Selection now supported in pterm. Required small modifications outside the unix subdir, owing to more things needing to become platform-dependent. check-in: e4d89ad7c0 user: simon tags: trunk | |
| 04:57 | Fix underline, which I cleverly broke while adding support for the window border. Oops. check-in: ebd5e8cfd3 user: simon tags: trunk | |
| 04:54 | Scrollbar now exists and functions; so do Shift-PgUp / Shift-PgDn. check-in: 3bcb27e451 user: simon tags: trunk | |
| 03:56 | The Great Defaults Change (and about time too)! SSH now defaults to protocol 2, and background-colour erase now defaults to on. check-in: 1f6b063eb7 user: simon tags: trunk | |
|
2002-10-11
| ||
| 07:29 | Initialise some members of the Proxy_Socket structure that were left uninitialised. This problem only showed up with mingw builds of PuTTY (maybe MSVCRT is more forgiving with malloc initialisation than CRTDLL?). The 'error' field was causing me most trouble, and I think the other two were necessary too before things started working. Note however that I don't fully understand the code, and that there are more uninitialised fields in the structure. check-in: d8e30b5284 user: jacob tags: trunk | |
|
2002-10-10
| ||
| 09:42 | Stop hard-coding a nonstandard font. We now default to `fixed', and pick up the font's real width and height. This means I now _can't_ use my font of choice until I implement some command-line options; I wonder what feature will appear next :-) check-in: 3628bd7d8c user: simon tags: trunk | |
| 09:39 | Update to reflect 0.53 release. check-in: 79f1b92c1c user: jacob tags: trunk | |
| 07:40 | And that's it! pty.c is now a real pty backend rather than a loopback interface; pterm now runs $SHELL and gives every impression of being not a bad terminal emulator. I'm quite pleased with that. :-) check-in: df838b2e56 user: simon tags: trunk | |
| 07:14 | Half-decent keyboard handling for pterm. Not very well done - it would have been better to abstract the general key-handling rules away from the platform-specific keysyms rather than doing clone- and-hack as I've done - but it'll serve for now. Now all I need is a real pty back end and pterm should be a just-about-usable prototype. check-in: 85cfc8acc0 user: simon tags: trunk | |
| 06:33 | Temporary hack which makes vt100 line drawing work in the prototype pterm. check-in: a571f42c1a user: simon tags: trunk | |
| 05:40 | A sensible minimum of do_text() and do_cursor() is now implemented. This means pterm actually _looks_ like the PuTTY terminal emulator engine, instead of merely giving evidence to the expert eye that said engine is hidden in there somewhere :-) check-in: 3d9a36b500 user: simon tags: trunk | |
|
2002-10-09
| ||
| 13:09 | 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... check-in: 2d8039929a user: simon tags: trunk | |
|
2002-10-07
| ||
| 17:21 | Oops. Dirsep in Makefile.cyg should be / not \. check-in: fb7695beb0 user: simon tags: trunk | |
| 12:43 | Remove "-log" option from Plink. AFAICT this code has been dead since Roman Pompejus' improved logging (Jan 2001). check-in: a0a2b7568d user: jacob tags: trunk | |
| 12:31 | Fix pscp-cmdline-port-bug for PSFTP too. (Also removes what appears to be a gratuitous re-implementation of the "-l user" option.) check-in: 17d1c99570 user: jacob tags: trunk | |
| 11:52 | Fix code which was clobbering people's -P arguments in PSCP (moved it to before the deferred command line processing). Also removed a couple of unused variables. check-in: a1e4761e51 user: jacob tags: trunk | |
| 11:45 | Begin destabilisation in the wake of 0.53! This checkin contains the beginning of a Unix port. It's nowhere near done, and currently it won't even compile on Unix. But this represents the start of the process of separating out platform-specific code, and also contains the mkfiles.pl changes required to support a Unix makefile and a non-flat source tree. check-in: 1baf2504b1 user: simon tags: trunk | |
|
2002-10-01
| ||
| 13:30 | Remove last vestiges of `buggymac' in the Config structure. Might have been cause of a Plink bug since it no longer got initialised. check-in: 53f6591e2e user: simon tags: trunk | |
| 12:27 | Bump the version number on the installer script. check-in: c32f0eba5b user: simon tags: trunk | |
| 11:27 | Add a chapter explaining common error messages check-in: a03fe734a9 user: simon tags: trunk | |
|
2002-09-26
| ||
| 13:37 | Add a new SSH2 bug: some servers apparently claim to be able to do DH group exchange, but choke when you actually try it. Never automatically enabled; manual control only. check-in: 1f07089633 user: simon tags: trunk | |
| 13:01 | 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. check-in: f27b8e7e8a user: simon tags: trunk | |
| 12:57 | If the user asks for the Pageant key list window and it's already present, bring it to the front. check-in: b48429d153 user: simon tags: trunk | |
|
2002-09-24
| ||
| 14:27 | Finish replacing `Network error' with `Proxy error' throughout proxy code. check-in: 4ffa7303ca user: simon tags: trunk | |
| 13:44 | Add a missing space in an error message. check-in: faeaee8977 user: simon tags: trunk | |
|
2002-09-23
| ||
| 04:55 | Add context help support for Proxy panel check-in: 712c459cab user: jacob tags: trunk | |
|
2002-09-21
| ||
| 11:52 | Cleanups to proxy code: greater robustness in receiving proxy data, better error reporting for SOCKS 5 and HTTP proxies. check-in: 842273612c user: simon tags: trunk | |
| 11:07 | Support username/password authentication in SOCKS 5. check-in: 8ec7225e99 user: simon tags: trunk | |
| 09:03 | Support username and password authentication when talking to HTTP proxies. check-in: 67128cfa54 user: simon tags: trunk | |
|
2002-09-20
| ||
| 13:57 | Update README to make it clear it's a _source_ README. check-in: b7747e0bae user: simon tags: trunk | |
| 13:57 | Initial checkin of PuTTY installer script and associated files. check-in: 3d34fcadbe user: simon tags: trunk | |
| 12:54 | Use memcpy rather than strncpy in sk_addrcopy! How did that happen? check-in: 4b5b64e694 user: simon tags: trunk | |
|
2002-09-15
| ||
| 17:18 | Jordan Russell's mysterious workaround for an almost equally mysterious Windows GDI bug. Looks unlikely to cause any other trouble and it's pretty small, so it can go in. check-in: 42fa4ba837 user: simon tags: trunk | |
| 08:31 | Be proactively pedantic about channel-close irregularities: we no longer just sit there like a lemon if we can't find the channel in question, we bomb out and complain. With any luck, remaining problems of this type should be easier to catch under this policy. check-in: ab762b8245 user: simon tags: trunk | |
| 08:24 | Improvements to SSH1 channel close handling: track sending and receiving of CLOSE and CLOSE_CONFIRMATION separately rather than taking short cuts. I believe ssh-1.2.33 sending CLOSE_CONFIRMATION before CLOSE was causing the remaining incidences of bug `nonexistent-channel'. (ssh-1.2.33 appears to have unilaterally decreed that CLOSE and CLOSE_CONFIRMATION are respectively renamed INPUT_EOF and OUTPUT_CLOSING, hence there is no longer an ordering constraint on them. Bah.) check-in: 973da1f5cd user: simon tags: trunk | |
| 08:21 | Log file tinkering: copy Event Log entries into the SSH packet log, so that when people send us a packet log they never forget to send the Event Log alongside it :-) check-in: 019c881e88 user: simon tags: trunk | |
|
2002-09-14
| ||
| 05:24 | OpenSSH vs OpenSSL Q: mention older OpenSSH versions check-in: 248bdf7692 user: jacob tags: trunk | |
|
2002-09-12
| ||
| 11:05 | Semi-bug "long-usernames": Bump username storage from 32 to 100 chars. Also replaced a couple of magic numbers with sizeof in ssh.c. I don't believe this is going to startle any of the protocols PuTTY talks. check-in: 1a39e619f8 user: jacob tags: trunk | |
|
2002-09-11
| ||
| 12:30 | Updated usage messages for command-line utilities to reflect new options. Updated manual to reflect reality (e.g. usage messages, '-p port' not actually implemented, sprinkle references to '-i keyfile'). (I've put "Release 0.53" in the messages; let's hope this doesn't cause a flood of "where is 0.53?" email.) I don't guarantee that the result is entirely sane and sensible in all respects, but it is at least consistent. check-in: 8165c812b8 user: jacob tags: trunk | |
|
2002-09-10
| ||
| 07:30 | Note about separate client-server and server-client encryption in SSH-2 check-in: c753f62b98 user: jacob tags: trunk | |
|
2002-09-08
| ||
| 08:28 | Introduce the Bugs control panel, for overriding PuTTY's server version number checks to determine the presence or absence of server bugs. check-in: 748d581331 user: simon tags: trunk | |
| 08:25 | Update to reflect the last batch of proxy stuff we got from Justin Bradford. check-in: 9d618c33f1 user: jacob tags: trunk | |
|
2002-09-07
| ||
| 07:27 | Increase length limit on SSH1_MSG_DEBUG; 70 chars is short enough to lose vital information in some existing servers' messages. check-in: d6aae5e38d user: simon tags: trunk | |
|
2002-09-02
| ||
| 08:47 | After trying a succession of tests on Jacob's machine, I think I've finally isolated the _important_ difference between Romano Trampus's working printing.c and my failing one: he ignores the error return from the first exploratory how-big-does-my-buffer-need-to-be call to EnumPrinters(), because not having enough buffer space counts as an error condition. Hence I am officially a klutz, but this should now work. (Also reverted ENUM_LEVEL to 1, again, because that seems to be the choice of people whose code works.) check-in: 61ff40d80b user: simon tags: trunk | |
| 08:04 | Mention PocketPC in the WinCE question. I'm not sure how similar WinCE and PocketPC are, though -- perhaps it merits its own question. (Although I don't know of anyone who's looked into it yet.) check-in: fbf45efbb9 user: jacob tags: trunk | |
|
2002-09-01
| ||
| 08:12 | I'm rapidly running out of patience for trying all possible combinations of options to EnumPrinters() to see which one works, but here's another one tried at random for now. *sigh* check-in: 0680fdc776 user: simon tags: trunk | |
|
2002-08-18
| ||
| 04:27 | Add BUG_SSH2_DERIVEKEY, present (according to OpenSSH) in ssh.com versions 2.0.*, and causing the shared secret not to be included in key derivation hashes. (This doesn't quite cause a blatant security hole because the session ID - _derived_ from the shared secret - is still included.) check-in: 3926a303ff user: simon tags: trunk | |
| 04:10 | In SSH2, if decrypting the packet length gave us a negative value, subsequent packet-receiver code would fail to notice anything was wrong and segfault. Since this is clearly a silly packet length anyway, we now explicitly reject it as a daft encryption error. check-in: c4a931b9c1 user: simon tags: trunk | |
|
2002-08-15
| ||
| 09:59 | Changed wording of OpenSSH vs bad OpenSSL FAQ so that it's more obvious it applies to 3.4p1. check-in: e3ca79cb06 user: jacob tags: trunk | |
|
2002-08-12
| ||
| 09:08 | Alter the Feedback page, so that instead of saying `at some point we plan to start blocking executable attachments' it now says we _do_ block executable attachments. :-) check-in: a941cdf400 user: simon tags: trunk | |
|
2002-08-11
| ||
| 08:02 | Final fixes to keyboard-interactive so it now works with packets containing more than one prompt instead of less than one, and also correctly enables echo on prompts that the server requests it for. In the process I've moved the whole username/password input routine out into its own function, where it's called independently of which SSH protocol we're using, so this should even have _saved_ code size. Rock! check-in: 24d0aa25e9 user: simon tags: trunk | |
| 07:17 | Anecdotal evidence suggests that a single EnumPrinters() call specifying both PRINTER_ENUM_LOCAL and PRINTER_ENUM_CONNECTIONS catches more printers in some circumstances than two EnumPrinters() calls each specifying just one of them. We'll try it for a bit; if it goes wrong I might have to put back the two original calls as well and sort out some means of removing duplicate printers from the list. check-in: 928ce21464 user: simon tags: trunk | |
|
2002-08-09
| ||
| 04:14 | Actually, VirtualLock() looks better as \cw{} not \c{}. check-in: c30968c54c user: simon tags: trunk | |
| 04:11 | Add two more FAQs: `why don't you use VirtualLock()' and `are you based on OpenSSH'. check-in: 9d65ceabbf user: simon tags: trunk | |
|
2002-08-08
| ||
| 12:03 | ssh.com 3.2.0 uses zlib sync flush (start and close an empty uncompressed block at the end of each compressed packet) which we were embarrassingly unable to deal with because we assumed every uncompressed block contained at least one byte. Particularly silly because I _knew_ about the existence of sync flush when I coded this module. Arrgh. Still, now fixed. check-in: 826438c7fa user: simon tags: trunk | |
|
2002-08-07
| ||
| 14:20 | Document all the new command-line stuff. check-in: 57c582a771 user: simon tags: trunk | |
| 14:09 | Arrgh, we can't have -p for port number because we're already using it for preserving file attributes in PSCP! Ah well; looks as if that's one where we'll have to agree to differ with OpenSSH. check-in: 7e90e87344 user: simon tags: trunk | |
| 13:43 | Some of the new options shouldn't be available in the file transfer tools. check-in: df30dee415 user: simon tags: trunk | |
| 13:08 | Fix Halibut syntax error (oops). check-in: 68b76f620a user: simon tags: trunk | |
| 12:57 | Oops. Didn't quite get the new SSH protocol selection code right. *blush* check-in: d5f0c03954 user: simon tags: trunk | |
| 12:55 | Add a load of new command-line options pilfered from OpenSSH. Full list is: -A, -a, -X, -x, -T, -t, -C, -1, -2, -i keyfile. check-in: 3dc74c6868 user: simon tags: trunk | |
| 12:48 | Add an option to force SSH1 protocol only. Partly for symmetry; mostly because I'm about to want it for the -1 command line option. check-in: a87a66409f user: simon tags: trunk | |
| 12:29 | Clean up the argv splitter, and in particular stop it from bombing out ignominiously when given no arguments :-) check-in: 2b9d1f1799 user: simon tags: trunk | |
|
2002-08-06
| ||
| 12:57 | 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). check-in: 40423b941a user: simon tags: trunk | |
| 12:48 | PuTTYgen will now start by loading a private key file if one is provided on its command line. check-in: c3af1e66ed user: simon tags: trunk | |
| 12:35 | Oops. That is to say, only loading and saving of PuTTY private keys should default to .PPK - loading and saving of public keys and of foreign key formats still defaults to All Files. Ahem. check-in: 67bb09d557 user: simon tags: trunk | |
| 12:27 | 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. check-in: d49eafa9b5 user: simon tags: trunk | |
|
2002-08-05
| ||
| 05:35 | Buttress is now Halibut: change the docs makefile. check-in: d58645e39d user: simon tags: trunk | |
| 05:35 | Make it clear that we're only responsible for our own web site, and people should contact mirror admins for problems with mirrors. check-in: e27f739511 user: simon tags: trunk | |
|
2002-08-04
| ||
| 16:18 | Revamp of command-line handling. Most command line options should now be processed in cmdline.c, which is called from all utilities (well, not Pageant or PuTTYgen). This should mean we get to standardise almost all options across almost all tools. Also one major change: `-load' is now the preferred option for loading a saved session in PuTTY proper. `@session' still works but is deprecated. check-in: 6e2207da2f user: simon tags: trunk | |
|
2002-08-03
| ||
| 11:22 | Fix culpable lack of generality in keyboard-interactive authentication: a k-i request packet can contain any number of auth prompts (including zero!) and we must ask the user all of them and send back a packet containing the same number of responses. FreeBSD systems were sending a zero-prompts packet which was crashing us; this now appears fixed (we correctly return a zero-responses packet) but I haven't tested a multiple-prompts packet because I can't immediately think of a server that generates them. check-in: 2678a20dff user: simon tags: trunk | |
|
2002-07-09
| ||
| 06:34 | OpenSSH/OpenSSL versioning problems: as of 3.4p1 this is _still_ not entirely fixed. check-in: 5dda0cf55f user: jacob tags: trunk | |
|
2002-06-25
| ||
| 13:51 | Forgot to call fxp_init() in `pscp -ls' mode under SFTP. check-in: bb04719c42 user: simon tags: trunk | |
|
2002-06-17
| ||
| 11:45 | Failure to initialise a local variable was leading to free(garbage) on loading an OpenSSH key and getting the wrong passphrase. check-in: 3eeccc764c user: simon tags: trunk | |
|
2002-06-15
| ||
| 11:52 | One of the recent port forwarding crash reports contained details which suggested bufchain_prefix() was finding an improperly initialised bufchain structure. Looking at the code, this may indeed have been able to happen, since the bufchain in a SOCKDATA_DORMANT channel was not initialised until CHANNEL_OPEN_CONFIRMATION was received. This seems utterly daft, so I now call bufchain_init() when the channel structure is actually created. With any luck the crash will mystically disappear now (I wasn't able to reproduce it myself). check-in: 6e2c2cce2c user: simon tags: trunk | |
| 11:31 | Padding on the end of the encrypted data in OpenSSH key format was broken: the OpenSSL EVP layer specifies a very particular form of padding, which I wasn't generating because it hadn't occurred to me that it might be mandatory. Irritatingly this was causing our exported OpenSSH keys to load perfectly happily back in through our OpenSSH import routines, but to be rejected by OpenSSH proper. Sigh. check-in: 6623e565a3 user: simon tags: trunk | |
| 10:37 | Small memory allocation bug in openssh_encrypted() fixed. check-in: 463604eca5 user: simon tags: trunk | |
|
2002-06-08
| ||
| 04:00 | Modify the Feedback page / Appendix B to expand the section about not sending us large attachments, and in particular remove the emphasis on screen shots in the hope of also decreasing the number of _other_ large attachments we get. check-in: 712fdd4664 user: simon tags: trunk | |
|
2002-05-31
| ||
| 12:39 | Workaround for the SSH2 RSA padding bug in OpenSSH 2.5 - 3.2 inclusive. Padding is accomplished by rewriting the signature blob rather than at the point of generation, in order to avoid having to move part of the workaround into Pageant (and having to corrupt the agent wire protocol to allow PuTTY to specify whether it wants its signatures padded!). check-in: 7a4afe7b5e user: simon tags: trunk | |
|
2002-05-30
| ||
| 07:41 | Fix AltGr/Application/Compose/CtrlAlt discrepancies introduced in windlg.c rev 1.118 [r1033] (pointed out by Rob Pitman). check-in: de3aa67d0b user: jacob tags: trunk | |
|
2002-05-23
| ||
| 17:02 | Trying to use an SSH2 key with an SSH1 connection seems to be quite common, so I've added a FAQ. check-in: 7572c5d251 user: jacob tags: trunk | |
|
2002-05-22
| ||
| 16:18 | Note that answerback string can contain control characters with ^C notation, and the ^~ escape, but don't go into the gory details. check-in: a8fffb9835 user: jacob tags: trunk | |
|
2002-05-18
| ||
| 04:20 | UI changes for key imports. We now have a separate Load command and Import command; the former warns you if you load a foreign key, whereas the latter doesn't. So the user should always be aware, one way or the other, that a format conversion is taking place. check-in: 2cf1ef8dbd user: simon tags: trunk | |
|
2002-05-17
| ||
| 07:33 | ieof-for-nonexistent-channel problem: avoid comparing an unsigned with -1 check-in: 9832c81afd user: simon tags: trunk | |
|
2002-05-16
| ||
| 17:36 | Nit: PuTTYgen can generate RSA _and DSA_ keys check-in: 7dd851e21a user: jacob tags: trunk | |
|
2002-05-15
| ||
| 15:07 | Final cleanups on key import/export work. Rationalised the UI (so that menu options are greyed out helpfully) and added documentation. check-in: 08285efb5d user: simon tags: trunk | |
| 14:16 | Added export of ssh.com key files. check-in: c1a44eb091 user: simon tags: trunk | |
|
2002-05-14
| ||
| 13:11 | Implemented export of OpenSSH keys. check-in: d43d5163af user: simon tags: trunk | |
|
2002-05-13
| ||
| 11:56 | Add some basic framework code preparatory to adding key export. check-in: 43c3b91680 user: simon tags: trunk | |
| 11:48 | Update FAQ to mention ssh.com key importing check-in: 0d41be3d2e user: simon tags: trunk | |
| 11:37 | Be more careful about destroying sensitive data after private key load/store/import operations. check-in: fbb61c5a99 user: simon tags: trunk | |
| 11:32 | Add import of ssh.com private keys. check-in: e22787ee8c user: simon tags: trunk | |
|
2002-05-11
| ||
| 11:45 | Added a framework for importing foreign key formats, and implemented importing of OpenSSH SSH2 private key files (both encrypted and unencrypted). Seems to work fine. check-in: b7502058f0 user: simon tags: trunk | |
| 08:12 | Remove tiny unnecessary faff in new SSH-2-only code check-in: afee84cb9a user: simon tags: trunk | |
| 08:08 | SSH2 only support check-in: 9cc8742e75 user: owen tags: trunk | |
| 08:03 | Added SSH2 only support. check-in: 9f710e4c31 user: owen tags: trunk | |
| 07:13 | 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. check-in: 9f93ab88b5 user: simon tags: trunk | |
|
2002-04-27
| ||
| 11:30 | Removed the old Visual C++ master makefile, since it has now been superseded by the new Recipe / mkfiles.pl mechanism. check-in: 8003f4c3f0 user: simon tags: trunk | |
| 11:20 | Additions to the Feedback page to emphasise that we can't answer all our mail any more, and to encourage support questions to be sent elsewhere as a first resort. check-in: d58918be8c user: simon tags: trunk | |
| 10:01 | SOCKS proxy support added (next instalment of Justin Bradford's proxy work). SOCKS 5 username/password authentication still unsupported. check-in: 12982b75cc user: simon tags: trunk | |
|
2002-04-18
| ||
| 17:23 | Added comments to document '-gui' Windows messages, based on putty-bugs post <E14g2ty-0008WN-00@ixion.tartarus.org> (except for Ryan Finnie's extra messages). check-in: 1f3fc1c1eb user: jacob tags: trunk | |
| 15:45 | Added documentation of PuTTY command-line options (derived from the source) check-in: 852da43114 user: jacob tags: trunk | |
|
2002-04-10
| ||
| 14:54 | The SFTP form of PSCP should remember to send FXP_INIT! Oops. check-in: 4868a1912f user: simon tags: trunk | |
|
2002-04-03
| ||
| 12:24 | Mention that numeric code pages can be entered manually in the Translation box. check-in: 871adbb898 user: simon tags: trunk | |
|
2002-04-01
| ||
| 09:18 | Add a couple of extra FAQ entries. check-in: 645db2c88e user: simon tags: trunk | |
|
2002-03-31
| ||
| 10:28 | The console version of askappend() completely forgot to check cfg.logxfovr to see whether the user had already specified what should happen to log files. Fixed. check-in: 7a188749df user: simon tags: trunk | |
| 10:26 | Fix major memory leak in sftp_cmd_ls (thanks to Hans-Juergen Petrich for pointing it out). check-in: d8cae6eb26 user: simon tags: trunk | |
| 10:23 | Fix bug in Minefield's realloc() which was throwing away most of any block > 4096 bytes. Arrgh. check-in: 94f8b8611a user: simon tags: trunk | |
|
2002-03-27
| ||
| 15:58 | Remember to wait for SSH1_MSG_SUCCESS after enabling remote port forwardings in SSH1. Was causing several MSG_SUCCESS to be queued up unread, which was wrong-but-benign in most cases but caused a hard crash with compression enabled (one of those uncompressed MSG_SUCCESSes was fed to the zlib decompressor with spectacular results). check-in: c610b016d1 user: simon tags: trunk | |
| 15:43 | Matt Harden's (modified) patch to do getservbyname() lookups on port- forwarding port numbers. check-in: 35e08ba4b4 user: simon tags: trunk | |
| 15:09 | Updates to proxy support, both from me and from Justin Bradford. Removed unnecessary spin locks, added a few comments, added support for Telnet-type proxies, and wrote some documentation. check-in: 10a3981ef0 user: simon tags: trunk | |
| 14:30 | 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). check-in: 3d17bc6c5e user: simon tags: trunk | |
| 14:08 | Add -w-pia to the Borland makefile (suppress warnings about assignment statements used as truth values). check-in: 82411ffef7 user: simon tags: trunk | |
|
2002-03-24
| ||
| 08:08 | OpenSSH 3.1p1 SSH2 3DES is also broken. check-in: 2717704a62 user: jacob tags: trunk | |
| 07:42 | Added an entry for the "OpenSSH 3.1p1 built with wrong OpenSSL" problem. check-in: 9f7145e717 user: jacob tags: trunk | |
| 05:47 | Fix apparent cut'n'paste error in new printing code. (Wasn't breaking anything, to my knowledge.) check-in: 4ec94c2a69 user: jacob tags: trunk | |
|
2002-03-23
| ||
| 12:59 | Mention on the Feedback page that the mailing list archives are private, just in case anyone was concerned. check-in: d82bab87f6 user: simon tags: trunk | |
| 12:04 | Attempt to ensure that everything passed to connection_fatal() is also logged to the Event Log, so that it's easy to cut-and-paste the error message afterwards. check-in: c6a325e8ff user: simon tags: trunk | |
| 11:47 | Justin Bradford's proxy support patch. Currently supports only HTTP CONNECT, but contains an extensible framework to allow other proxies. Apparently SOCKS and ad-hoc-telnet-proxy are already planned (the GUI mentions them already even though they don't work yet). GUI includes full configurability and allows definition of exclusion zones. Rock and roll. check-in: dea04539ac user: simon tags: trunk | |
|
2002-03-20
| ||
| 16:34 | Pedantic little patch to ensure blank usernames work vaguely as expected, in case anyone really wants to use one check-in: 4bc68efeeb user: simon tags: trunk | |
| 16:16 | Fix bug in the alternative code for -DNO_MULTIMON (was breaking Cygwin build). check-in: c509d941a1 user: simon tags: trunk | |
|
2002-03-16
| ||
| 12:23 | Fixed reference to putty-bugs@lists to putty@projects. check-in: 3b45961839 user: jacob tags: trunk | |
| 12:19 | Add new 'Makefile.vc' to .cvsignore check-in: 92d1dcea9a user: jacob tags: trunk | |
| 09:49 | Completely revamped mkfiles.pl which incorporates dependency analysis (for both .c and .rc files). Generates the VC++ makefile as well as the other two; the authoritative source is now the new file `Recipe' rather than any particular Makefile. Note that `Makefile' is still here as a relic of the old way until we stop the nightly builds using it, but it'll be gone soon. check-in: 3e4034af9e user: simon tags: trunk | |
|
2002-03-13
| ||
| 16:15 | Fix multi-monitor / full-screen problems and clean up the code a little. Thanks to Wez Furlong for the patch. check-in: 3b90d0293e user: simon tags: trunk | |
| 13:55 | Rev 1.189 [r1517] of this file introduced a bug. While it is correct to avoid calling term_out() during a drag-select, it's false to assume that all drags are selects - some are xterm mouse-reported drags, and term_out absolutely _should_ be called in those so that the application can show the dragged object moving. Should now be fixed. check-in: df653f67a1 user: simon tags: trunk | |
|
2002-03-12
| ||
| 12:27 | Network printers weren't showing up on at least NT4. This version appears to be better, but Jacob has found that it still isn't perfect. Bah. check-in: abddd8b6bc user: simon tags: trunk | |
| 03:55 | Avoid needless memory management error if EnumPrinters returns no printers. check-in: fa1c6c55a5 user: simon tags: trunk | |
|
2002-03-11
| ||
| 04:38 | Bah. Add winspool.lib to libraries list. Maybe _now_ the nightly builds will start working again :-/ check-in: 8de9511573 user: simon tags: trunk | |
|
2002-03-10
| ||
| 16:00 | Slightly less grotty script to convert OpenSSH known_hosts and known_hosts2 host key files to .REG files for Windows. (renamed from 'hosts2reg' because of 8.3 considerations) check-in: cd4ab0a613 user: jacob tags: trunk | |
| 15:56 | Grotty script to sanity-check the accelerator keys in windlg.c. (private RCS rev 1.4) check-in: 0ec15b896a user: jacob tags: trunk | |
| 03:28 | Arrgh! Forgot yet another fiddly Makefile bit. Perhaps it's really time I did something about my Makefile generator... check-in: abf3698983 user: simon tags: trunk | |
|
2002-03-09
| ||
| 13:07 | ... and add its dependencies to the Makefile too. check-in: 91d45d00be user: simon tags: trunk | |
| 13:06 | As ever, There's Always One. Check in the extra source file. *blush* check-in: 991f88228b user: simon tags: trunk | |
| 11:59 | ANSI remote printer support. Raw mode only. check-in: c972c28abd user: simon tags: trunk | |
| 06:03 | Fix Makefile dependencies. check-in: be6f9d4c2f user: simon tags: trunk | |
| 05:47 | Well, there was bound to be one I'd forgotten: the new Features panel should include an option to disable xterm mouse reporting. So now it does. Woo. check-in: e6d4001b7e user: simon tags: trunk | |
|
2002-03-07
| ||
| 16:17 | Fix accelerator clash on Features panel, plus a couple of accelerator comments. (not tested) check-in: f637fcd00e user: jacob tags: trunk | |
|
2002-03-06
| ||
| 17:06 | Oops. I wrote in the docs that no-remote-resize also included no-remote-move-window, so I'd better live up to that... check-in: dd33076068 user: simon tags: trunk | |
| 17:04 | Add the Features panel, allowing you to disable a bunch of the more controversial terminal features. check-in: 3480bd8f5e user: simon tags: trunk | |
| 14:13 | 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. check-in: c483e38b9f user: simon tags: trunk | |
|
2002-03-05
| ||
| 14:39 | Add an extra example to the Plink-with-WinCVS section. check-in: 8626d85f04 user: simon tags: trunk | |
|
2002-03-02
| ||
| 11:37 | The `wrapnext' flag should be saved and restored with the cursor position. Failure to do this can give wrapnext==TRUE even with the cursor not in the rightmost column. check-in: a05f233f95 user: simon tags: trunk | |
|
2002-03-01
| ||
| 07:17 | from_backend() should always be called with len > 0. Only rlogin mode ever failed to do this, and only Plink actually had a problem with it, so this didn't become obvious for a while. rlogin mode is fixed, and all implementations of from_backend() now contain an assertion so that we should spot errors of this type more quickly in future. check-in: 30d5735d86 user: simon tags: trunk | |
| 07:16 | Memory leak fix: repair endemic failure to call sftp_pkt_free(). check-in: 053caa622c user: simon tags: trunk | |
|
2002-02-27
| ||
| 16:45 | Set SSH socket variable to NULL if connect() fails. Failure to do this was causing PSCP to hang indefinitely after reporting Connection Refused. check-in: fbc95c5557 user: simon tags: trunk | |
| 16:41 | Cisco routers apparently have yet another bug: they can't handle RSA auth attempts at all without panicking and bombing out. Workaround added. check-in: d973d3ee29 user: simon tags: trunk | |
| 16:31 | Patch to enable >512-character command lines. Thanks to Thomas Halling. check-in: f07d20bcb7 user: simon tags: trunk | |
| 16:30 | Oops - get the forward declaration right in that hack check-in: b913c2b62b user: simon tags: trunk | |
| 16:20 | Fix silly segfault due to PSFTP thinking connection is fine even if fxp_init() fails to get initial packet. check-in: 941e10e2d6 user: simon tags: trunk | |
| 16:20 | Make sure out-of-memory errors are logged to malloc.log when we're logging mallocs. check-in: 85a2ea3a1e user: simon tags: trunk | |
|
2002-02-24
| ||
| 09:25 | Document the fact that character classes are a default-only configuration option (and so you must reset the terminal if you change them in mid-session). check-in: 90955d18c2 user: simon tags: trunk | |
| 09:17 | It's 2002. Update copyright statements :-) check-in: cfac5ddbae user: simon tags: trunk | |
|
2002-02-20
| ||
| 16:28 | Work around surreal use of WM_COMMAND in radio button sets. Prevents port number field resetting unnecessarily when protocol is set to Raw using the arrow keys. check-in: a12b480dd9 user: simon tags: trunk | |
|
2002-02-12
| ||
| 05:07 | Modify the donations bit in the FAQ. (We now don't need a copy of Win2k since we already have two, but XP might be nice; also added PayPal to the donation methods.) check-in: b36f6ad5b0 user: simon tags: trunk | |
|
2002-02-04
| ||
| 07:52 | Add a general `what ports exist?' question to the FAQ, so that the next person who asks us whether we have a port for ${random_palmtop} can be treated with the contempt they deserve. check-in: 51c1e74e7f user: simon tags: trunk | |
| 07:29 | -pw in Plink doesn't work in Telnet. Mention this. check-in: 43f1aaa059 user: simon tags: trunk | |
| 07:18 | Make the section on terminal answerback mention that this is _not_ the same thing as sending the terminal type in the proper way. check-in: e1c97a2e01 user: simon tags: trunk | |
|
2002-01-23
| ||
| 03:43 | Add `can PSCP and PSFTP do ASCII mode?' to the FAQ. check-in: 624ccc5137 user: simon tags: trunk | |
|
2002-01-17
| ||
| 07:47 | Various accelerator clashes (due to the addition of the global Help button, which accel.pl wasn't prepared for) fixed. check-in: 0c073caede user: simon tags: trunk | |
| 06:22 | Experimental checkin: re-enable support for the static WM_MOUSEWHEEL even on systems where the version number check thinks we should be expecting a dynamically registered message number. I have a suspicion the version check isn't accurate in all circumstances; and in any case, in a situation like this where Windows might send you either of two things, it's better to be ready to deal with both than to try and second-guess which one you'll get. check-in: 0361f8693e user: simon tags: trunk | |
|
2002-01-14
| ||
| 06:16 | Update the FAQ to reflect 0.52 as being a current release rather than a future prospect. I'm going to move the beta-0-52 tag on this file, but that won't affect release binaries that have already been built. check-in: f8067a88c5 user: simon tags: trunk | |
|
2002-01-12
| ||
| 10:02 | Update an accelerator comment. check-in: 03a0b03c92 user: simon tags: trunk | |
|
2002-01-10
| ||
| 13:50 | Add support for sending SSH2_MSG_UNIMPLEMENTED for unrecognised messages; also do something with the debugging messages sent as SSH2_MSG_DEBUG. check-in: 877b8e74ee user: simon tags: trunk | |
| 13:50 | Flush the log file after logging each packet (so that if we're going to crash, we get an up-to-the-minute log of what happened just before then). check-in: f686fc85ea user: simon tags: trunk | |
| 10:42 | Support SSH2_MSG_GLOBAL_REQUEST (just return failure) check-in: a03d782645 user: simon tags: trunk | |
| 07:29 | Extra safety feature to avoid sending SSH2_MSG_WINDOW_ADJUST on a nonexistent channel. I don't quite know why this was happening, but whatever it was this ought to fix it. check-in: 3947916546 user: simon tags: trunk | |
| 07:06 | Plink's front-end select loop was failing to send error messages to winnet.c. The result was that complete failures to make an SSH connection (connection refused, for example) were causing a hang instead of a proper error report. check-in: a008202dd6 user: simon tags: trunk | |
|
2002-01-08
| ||
| 05:57 | Add the CRC32 compensation attack detector that all other SSH clients have had for ages and I forgot about. Of course I've got the version with the buffer overflow fixed! check-in: b36f8f4376 user: simon tags: trunk | |
| 03:56 | Patch from RDB: the ESC[8...t resize sequence and the ESC[18t size report should both quote rows before columns, not vice versa. check-in: 1b44a9efff user: simon tags: trunk | |
| 03:56 | Patch from RDB: the xterm move-window sequences now don't screw up when the window is e.g. maximised. check-in: 90f72640be user: simon tags: trunk | |
| 03:45 | Patch from RDB: invent a /DMSVC4 compile-time definition which renames header files and symbols etc. Now if I could only _find_ my copy of MSVC4 we might even be able to build Win32s binaries... check-in: 5da0466bad user: simon tags: trunk | |
| 03:44 | Patch from RDB: make /DNO_MULTIMON (mentioned as a possible compile-time definition in the Makefile) actually work. D'oh. check-in: 2150c4cd76 user: simon tags: trunk | |
| 03:32 | Add weird XML manifest resources, to enable WinXP skins to work within PuTTY's dialog boxen. check-in: 544ba776d4 user: simon tags: trunk | |
|
2002-01-02
| ||
| 09:44 | Add `where can I buy silly putty' as a FAQ, pointing to Crazy Aaron's site :-) check-in: a0af199fca user: simon tags: trunk | |
|
2002-01-01
| ||
| 10:51 | sshrsa.c should include misc.h in case I need to do debugging :-) check-in: f779ba2b19 user: simon tags: trunk | |
|
2001-12-31
| ||
| 10:15 | Create the long-awaited console.c, and move the common routines out of scp.c, psftp.c and plink.c into it. Additionally, add `batch mode', in which all the interactive prompts (bad host key, log file exists, insecure cipher, password prompt) are disabled and safe responses are assumed. (The idea being that if you run PSCP, for example, in a cron job then you'd probably rather it failed and exited instead of leaving the cron job wedged while it waits for user input that will never arrive.) check-in: 9ce037d3b4 user: simon tags: trunk | |
|
2001-12-30
| ||
| 10:27 | I have no brain at all. The SSH1 auth loop was trying all Pageant keys before _every_ other authentication; so if you tried a local pubkey _and_ a password, for example, you'd also try Pageant twice. Now fixed. check-in: dc7ec88000 user: simon tags: trunk | |
| 10:20 | PuTTY can now detect when one of the Pageant keys it tries matches the private key file given in the config; if it spots this then it avoids trying it again (and in particular avoids needing to ask for the passphrase when it knows perfectly well it won't work). check-in: 5cc6289f02 user: simon tags: trunk | |
| 09:58 | 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. check-in: 9fe4ceb718 user: simon tags: trunk | |
|
2001-12-29
| ||
| 11:25 | Oops - the help for the new Telnet NL option wasn't quite there. check-in: fbda1b3467 user: simon tags: trunk | |
| 11:21 | Add a configurable option to make Return in Telnet send an ordinary ^M instead of the Telnet New Line code. Unix-type telnetds don't care one way or the other; RDB claims some telnetds prefer Telnet NL; and now someone has found one that can't deal with Telnet NL and prefers ^M. Sigh. check-in: 7e1971702d user: simon tags: trunk | |
| 11:00 | Add a FAQ about keyboard mapping problems: basically explaining that we really need to know what character sequence you were _expecting_ your function key to generate before we can even think about making PuTTY generate it. check-in: 82cec9fb59 user: simon tags: trunk | |
| 09:31 | Add a new back-end function to return the exit code of the remote process. This is functional in SSH, and vestigial (just returns 0) in the other three protocols. Plink's Windows exit code is now determined by the remote process exit code, which should make it more usable in scripting applications. Tested in both SSH1 and SSH2. check-in: f5ca005b7e user: simon tags: trunk | |
| 08:47 | Jordan Russell's patch (3rd of several). We now don't call TermOut() if the PuTTY window has the mouse capture (i.e. a drag-select is in progress). This means you can drag-select at your leisure without the screen contents wandering around providing you with a moving target. Likewise dragging the scrollbar to find a piece of history in the scrollback. check-in: 7968928a27 user: simon tags: trunk | |
| 08:18 | Jordan Russell's patch (again): a couple of registry read operations were using RegCreateKey instead of RegOpenKey by mistake. This also required a fix in settings.c to deal gracefully with a NULL return from enum_settings_start() - since the use of RCK had caused this never to happen, the code path had never been tested. check-in: 31366f4fee user: simon tags: trunk | |
| 08:05 | Jordan Russell's patch: only process mouse drags when we have the mouse capture, which in turn will only occur if the initial click was in the PuTTY client area. Prevents mouse drag events without an initiating click, and also prevents selection occurring at unexpected moments such as if you move the mouse before releasing the second click after double-clicking the title bar to maximise the window. check-in: 3107866ddc user: simon tags: trunk | |
|
2001-12-20
| ||
| 09:27 | Document the Pageant command line. check-in: 04e8ba3b3d user: simon tags: trunk | |
| 08:19 | Oops - fputs takes the file pointer second, not first! check-in: c4cb5ff3d0 user: simon tags: trunk | |
| 08:18 | This should fix the busy-wait problem with the IME. check-in: 712c16f465 user: simon tags: trunk | |
|
2001-12-19
| ||
| 12:49 | The alphabetical ordering in the psftp command list was broken. D'oh! check-in: e9b47a6384 user: simon tags: trunk | |
|
2001-12-16
| ||
| 09:30 | Add the `can we run under win3.1' question to the FAQ. check-in: c9cc7b0785 user: simon tags: trunk | |
| 09:14 | Fiddle the header of the new feedback section to make it carefully ambiguous about whether it thinks it's on the website or in the manual. check-in: 5f1b33dc82 user: simon tags: trunk | |
| 08:56 | Add two extra appendices giving the licence text and details of how to give feedback. (I think the latter has suddenly become worthwhile now we have the ability to distribute a help file; so people won't have to come to the website for the feedback information.) check-in: 6b5fbea505 user: simon tags: trunk | |
| 07:33 | Add the `local' command set to PSFTP: lcd, lpwd, and ! to spawn a Windows command. check-in: 5daa0dc7f9 user: simon tags: trunk | |
| 06:11 | Replace the definition of WHEEL_DELTA which was removed in rev 1.185 [r1499]. For some reason Borland builds were working perfectly OK without it, but VC builds were failing. *shrug* check-in: 1a2c99f873 user: simon tags: trunk | |
|
2001-12-15
| ||
| 08:30 | A contributor tells me that WM_MOUSEWHEEL is not supported in Win95, and offers a patch that uses RegisterMessage() to acquire the correct dynamic message number to use instead. check-in: 6d34997dec user: simon tags: trunk | |
| 08:29 | `make clean' in the Borland makefile should ignore error returns from the delete commands in case nothing of a particular type needs to be cleaned up. check-in: cfdfd32153 user: simon tags: trunk | |
| 08:09 | Improvements to the malloc debugging stuff: when MALLOC_LOG is enabled, so that all mallocs and reallocs are tagged with a file name and line number, this information is now shown in the `Out of memory!' panic box. check-in: 5c05b94414 user: simon tags: trunk | |
| 06:15 | Add the remote counterpart for the `local port forwardings accept connections from outside localhost' switch. Interestingly OpenSSH 3.0 appears to ignore this (though I know it works because ssh.com 3.0 gets it right, and the SSH packet dump agrees that I'm doing the right thing). check-in: 0f9f757a26 user: simon tags: trunk | |
| 05:49 | Reverse part of RDB's pedantic patch from rev 1.129 [r1105]: app cursor and app keypad modes are now once again independently switchable. The VT100 and VT102 manuals may have done it RDB's way as he said, but xterm and rxvt disagree and at least one app depends on the xterm way. It'll have to become a configurable option if anyone has trouble with this. check-in: be908f7252 user: simon tags: trunk | |
| 05:10 | Jaeyoun Chung's mysterious patch that apparently makes Korean input work properly: call luni_send() one character at a time rather than all together after WM_IME_COMPOSITION. check-in: 823eb5868a user: simon tags: trunk | |
|
2001-12-14
| ||
| 08:57 | Retired the #ifdef DUMP_PACKETS stuff in ssh.c because I'm utterly sick of recompiling to enable packet dumps. SSH packet dumping is now provided as a logging option, and dumps to putty.log like all the other logging options. While I'm at it I cleaned up the format so that packet types are translated into strings for easy browsing. POSSIBLE SIDE EFFECT: in the course of this work I had to re-enable the SSH1 packet length checks which it turns out hadn't actually been active for some time, so it's possible things might break as a result. If need be I can always disable those checks for the 0.52 release and think about it more carefully later. check-in: 94f359321d user: simon tags: trunk | |
| 06:48 | Now that Buttress can spot duplicate section keywords, it turns out there are several of them I hadn't noticed! All fixed. check-in: 806884ea0b user: simon tags: trunk | |
| 06:22 | Add the missing psftp-pubkey section, shamelessly cribbed from the corresponding section in the PSCP chapter. check-in: 30eda25c8e user: simon tags: trunk | |
| 06:19 | Rename a clashing section keyword (why wasn't Buttress catching this? Oops). check-in: 2f6360d097 user: simon tags: trunk | |
| 06:15 | Add a chapter to the manual describing PSFTP. check-in: b4ce495221 user: simon tags: trunk | |
| 04:12 | Remove ghastly hack involving fxp_error_message. check-in: 8a0237bb44 user: simon tags: trunk | |
| 04:06 | Fix trivial problems with PSFTP batch mode check-in: 47214a0fdc user: simon tags: trunk | |
| 03:58 | Aargh, an Americanism crept in. Now corrected: favorite -> favourite. check-in: 1b93b09842 user: simon tags: trunk | |
|
2001-12-13
| ||
| 13:26 | Tidied up PSFTP batch mode. The gross hack using fxp_error_message to report command failures is now gone; instead each sftp_cmd_* routine returns 0 or 1 depending on success, like they should have done right from the start. This fixes problems with `ls' prematurely terminating PSFTP batch files. check-in: f0cba4ce69 user: simon tags: trunk | |
| 12:42 | Allow PSFTP to be run with no arguments, in which case it enters the command-line state but all commands are disallowed except `open host.name'. The idea is to provide marginal extra niceness for people who double-click the icon without realising it's a cmdline app. check-in: 3d26f9c83f user: simon tags: trunk | |
| 11:38 | Clarify that port forwarding will not be enabled until the user has authenticated. check-in: a97280b22b user: simon tags: trunk | |
|
2001-12-12
| ||
| 12:45 | Updated the PuTTYgen section in pubkey.but so that it gives individual documentation of the various PuTTYgen controls; also implemented context help in PuTTYgen to go with it. Shame there isn't space for a generic `Help' button in the PuTTYgen window. check-in: d1b6559149 user: simon tags: trunk | |
|
2001-12-11
| ||
| 15:00 | Disable username switching between SSH2 auth attempts, and add a configurable option so users can re-enable the feature _if_ they know they have an SSH2 server that isn't going to get shirty about it. Inspired by a spectacular increase in OpenSSH's shirtiness. check-in: bbebf7bd6d user: simon tags: trunk | |
| 14:08 | Fix error handling in sftp (the sftp_recv return value was being checked for NULL almost nowhere). check-in: 94042e50d4 user: simon tags: trunk | |
| 12:48 | 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.) check-in: 7528006a75 user: simon tags: trunk | |
| 12:47 | Fixes to full-screen mode. There were various problems when you went full-screen, then selected Change Settings and then changed the resize behaviour, ranging from the window staying FS but acquiring borders to the window restoring its previous size and _failing_ to acquire borders. Should now all be fixed. check-in: df96d39626 user: simon tags: trunk | |
| 12:47 | Fix compiler warnings check-in: 33277f321e user: simon tags: trunk | |
|
2001-12-10
| ||
| 12:12 | Apparently sending DISCONNECT on a normal SSH2 connection close is actually _less_ polite than just closing the connection, rather than more polite as I'd believed. So we now just close. check-in: 1aab7505ba user: simon tags: trunk | |
| 11:50 | RDB's patch to allow the `-c' option to Pageant to take a command _with arguments_. Duh, should have thought of that myself. check-in: ff1c47a5c6 user: simon tags: trunk | |
| 11:40 | 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). check-in: 3af2a243f1 user: simon tags: trunk | |
|
2001-12-07
| ||
| 15:21 | FIFTH ATTEMPT at getting full-screen mode right. This new attempt (which I'll comment at some stage) should combine the believable semantics of RDB's fullscreen-by-maximise mode with the multi- monitor friendliness of Wez Furlong's approach while also working on Win98. If we're lucky. check-in: 0d4bfb165e user: simon tags: trunk | |
| 14:37 | Owen's patch to allow PowerMenu (third-party transparency tool) to not crash PuTTY. check-in: 62789afced user: simon tags: trunk | |
| 14:36 | Add -rlogin to Plink, for orthogonality (and because I documented it yesterday!). check-in: 538fc83b1f user: simon tags: trunk | |
|
2001-12-06
| ||
| 14:05 | Documentation: filled the last few gaps and cleaned a few things up. PuTTY now has a complete manual. Stylistic review, content review and indexing are yet to do, but at least there's some plausible text in every section now. check-in: 34a3b244c4 user: simon tags: trunk | |
| 12:18 | Sort out the silly filenames. check-in: c26d254e4e user: simon tags: trunk | |
| 07:28 | Integrate PuTTY and its help file. Now that's what I call a good lunchtime's work :-) check-in: 70ffdc7b62 user: simon tags: trunk | |
|
2001-12-04
| ||
| 13:12 | Oops - replacement section types should be capitalised check-in: 8795409762 user: simon tags: trunk | |
|
2001-11-29
| ||
| 17:58 | Oops - check the _rest_ of the SSH2 DES patch back in. D'oh! check-in: 4eae8d09a2 user: simon tags: trunk | |
| 16:32 | Document the three new configuration options I've added tonight check-in: 907ced8210 user: simon tags: trunk | |
| 16:26 | Make the nonstandard "des-cbc" cipher disabled by default check-in: 3c0fa57097 user: simon tags: trunk | |
| 15:47 | Configurable TCP_NODELAY option on network connections check-in: 8daaf4c09d user: simon tags: trunk | |
| 15:30 | Set up kbd_codepage at the start of the program, as well as when the input locale changes. With any luck this should sort out the Polish Unicode problems. check-in: 2efa15e64a user: simon tags: trunk | |
| 14:34 | Make keyboard-interactive authentication configurable off. (This is a stopgap until we get round to a proper authentications preference list.) check-in: f723110def user: simon tags: trunk | |
| 14:27 | Remember to terminate the prompt string in keyboard-interactive check-in: 4fca606ec7 user: simon tags: trunk | |
|
2001-11-25
| ||
| 13:22 | Further documentation work. Tidy up the Config chapter (add a few new features - the code had got ahead of the docs), and propagate a couple of cross-references to other files as a result. check-in: 86fe61faa7 user: simon tags: trunk | |
| 12:59 | Add a new chapter full of intermediate-useful-things, somewhere between `Getting Started' (things we can barely believe you don't know) and the Configuration reference chapter (things you already knew and had just forgotten). Only half-written at the moment. check-in: afac4346f0 user: simon tags: trunk | |
| 12:55 | Split the Window panel into two to make room for proper comments check-in: efcfe77741 user: simon tags: trunk | |
| 12:39 | RDB's general resizing cleanup. He's put his favourite resize mode back in again, but as long as it's not the default it doesn't bother me too much :-) check-in: e11a7a7ba1 user: simon tags: trunk | |
| 11:32 | Editorial policy change: I've decided that it's better to use \q than \e when describing button names and menu items: the "Foo" button rather than the _Foo_ button. Certainly consistent use of either is better than the mixed use of both we had before :-) check-in: 12a0ff2c10 user: simon tags: trunk | |
| 11:14 | Arrgh, and "password" should be spelled "passphrase". check-in: 154099a773 user: simon tags: trunk | |
| 11:12 | Oops - URLs in \W{...} have to be in real URL format :-/ check-in: 09efbff2fc user: simon tags: trunk | |
| 11:05 | Oops - one last versionid :-) check-in: 577a699e63 user: simon tags: trunk | |
| 10:57 | Miscellaneous documentation updates. Finished a first draft of the Pageant chapter; wrote something about passphrase lengths; added \versionid to all chapters that didn't have it yet. check-in: 15c12ce44f user: simon tags: trunk | |
| 09:21 | Add support for most of the ESC[<low number>t sequences, which xterm uses to manipulate the window (minimise, maximise, front, back, move, resize) and report things about the window (is it minimised or maximised, how big is it, what's its title). Missing are ESC[4;X;Yt (resize to a specified pixel size; our resize code doesn't like it) and ESC[19;X;Yt (report size of _screen_ in _characters_, which it isn't even obvious how to do when you've got a variable font size). check-in: 6732f3ea58 user: simon tags: trunk | |
| 08:31 | 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). check-in: 33213fd301 user: simon tags: trunk | |
| 06:23 | Oops - fix another segfault in that -L and -R code check-in: 885bc7aeb1 user: simon tags: trunk | |
| 05:36 | Rob Wood's patch to provide standard -L and -R options for port forwarding in Plink. Cleaned up a bit to remove segfaults and work correctly with saved sessions. check-in: 3c190ee41b user: simon tags: trunk | |
| 04:24 | Jacob's patch to make full-screen mode available even when Alt-Enter isn't configured to do it: we now have a sysmenu option for it. In addition, there's a special case such that clicking the top left pixel on the screen in full-screen mode brings up the sysmenu (so you can still get at the sysmenu in FS mode without Alt-anything configured to bring it up and without ghastly fiddling with the Windows key). Also Change Settings while in full-screen mode now adds/removes the scrollbar in response to scrollbar_in_fullscreen rather than scrollbar (oops). check-in: 498eba7d6b user: simon tags: trunk | |
|
2001-11-24
| ||
| 11:51 | Make use of the new section-relabelling in Buttress to arrange for all the FAQ questions to be cross-referenced as `question A.1.2' instead of `section A.1.2'. check-in: dffa694e27 user: simon tags: trunk | |
| 07:11 | Jacob's fix to the resize-behaviour GUI check-in: 61b233242b user: simon tags: trunk | |
| 05:56 | Glenn Maynard's other IME fix check-in: bf596d8e40 user: simon tags: trunk | |
|
2001-11-23
| ||
| 13:12 | Glenn Maynard's IMM cursor position fix check-in: 23fffa3d81 user: simon tags: trunk | |
| 06:51 | Ensure we ignore a hostname in Default Settings, if a perverse user has set one up using regedit. It badly confuses Plink. check-in: 414f176325 user: simon tags: trunk | |
| 06:48 | Make it clear that you can't save a hostname into Default Settings, and also make it clear why not and what you should do instead. check-in: 386b924cce user: simon tags: trunk | |
|
2001-11-22
| ||
| 16:00 | Add background-colour erase and `set this at the start of the session' to the FAQ. check-in: 2e84da6d1b user: simon tags: trunk | |
|
2001-11-21
| ||
| 17:40 | Comment/string tweaks to reflect new DES-in-SSH2 capability. check-in: a7d9da7e8c user: jacob tags: trunk | |
| 17:06 | Add single-DES support in SSH2 check-in: f30ca2d0e9 user: simon tags: trunk | |
| 16:58 | Ryan Finnie's extensions to the GUI feedback mode in pscp. check-in: 10bd47f228 user: simon tags: trunk | |
| 16:48 | Primitive protection against SSH2 not actually agreeing a cipher in either direction. check-in: 6f9d4e869c user: jacob tags: trunk | |
| 16:31 | Make sure we always unhide the mouse pointer when the System menu is displayed. check-in: 5701095abe user: simon tags: trunk | |
| 16:23 | Ctrl and Alt shouldn't reset the scrollback even if reset-on- keypress is enabled. (Shift already didn't, because that was necessary for Shift-Pg{Up,Dn} to work sanely.) check-in: 72e56b86a0 user: simon tags: trunk | |
| 16:16 | The dummy drag-list item wasn't being removed on a single-click or double-click (DL_BEGINDRAG followed immediately by DL_DROPPED with no intervening DL_DRAGGING). Fixed. check-in: a5a4c8da61 user: simon tags: trunk | |
| 16:06 | Send SSH2_MSG_NEWKEYS _before_ expecting to receive it, rather than after. Shouldn't make a difference for any server that previously worked, but we should now interoperate sensibly with servers that wait to receive our NEWKEYS before sending their own. Apparently Unisphere produce one such. check-in: 4463361467 user: simon tags: trunk | |
|
2001-11-14
| ||
| 06:58 | Yikes! sftp.c wasn't using the misc.h wrappered malloc functions, meaning that PSFTP couldn't meaningfully be debugged using Minefield. That's what I get for developing it under Unix and forgetting to port it properly :-/ check-in: 21dd6de37e user: simon tags: trunk | |
|
2001-11-13
| ||
| 17:13 | Add a rant to the FAQ about host key checking. I'm _sick_ of people implementing a command line option to disable it and expecting us to cheerfully accept the patch. check-in: ed1ac9ce18 user: simon tags: trunk | |
| 16:39 | Modify a comment to try to remind myself that the &-in-session-names hack (to create accelerators on the System menu) should have some official status. check-in: 78f4115f10 user: simon tags: trunk | |
| 16:06 | Handle incoming SSH2_MSG_CHANNEL_REQUEST (by refusing all requests). Should have done this ages ago; the OpenSSH 3.0 ClientAliveInterval mechanism requires it so now it's really necessary. check-in: 8499811133 user: simon tags: trunk | |
| 04:34 | Clarify the how-to-use-features-in-Plink question check-in: e5813d5518 user: simon tags: trunk | |
|
2001-11-12
| ||
| 03:19 | Remember to initialise p->nphases to zero in progress report structure. check-in: e36e8a43a6 user: simon tags: trunk | |
|
2001-11-10
| ||
| 11:09 | Oops - one missing set of the ssh1 throttling indicator check-in: 0f98131cf5 user: simon tags: trunk | |
|
2001-11-08
| ||
| 03:20 | Whoops - missed out a vital bit of RTF Unicode fallback handling check-in: 16f631b503 user: simon tags: trunk | |
|
2001-11-07
| ||
| 16:22 | Implement writing RTF to the clipboard (off by default), so that if you enable it text will paste into Word et al in the same font as PuTTY itself is displaying in. In particular, this will be a fixed- pitch font, so tables and `ls' and the like will naturally line up. check-in: 3f76bd5d3b user: simon tags: trunk | |
| 07:39 | Makefile fix: we've been compiling ssh.c separately because it needs $(VER) defining, but forgetting that it also needs the rest of the stuff! check-in: 0c20a7ab29 user: simon tags: trunk | |
|
2001-11-04
| ||
| 10:41 | RDB's fix to full-screen mode. Apparently sorts out most of the fullscreen/maximised confusions, by treating fullscreen as a special case of maximised (fair enough). Removes dependency on multimon.h, but Wez thinks (though he was unable to test) that this version should naturally do the Right Thing on multi-monitor systems anyway. check-in: 72255de130 user: simon tags: trunk | |
|
2001-10-31
| ||
| 12:51 | Fix accelerators in Window panel check-in: d3cf436345 user: simon tags: trunk | |
| 12:50 | Rectangular-block selection. Enabled by Alt+drag, unless you configure it to be the default in which case it's _dis_abled by Alt+drag. check-in: a0fdeb0323 user: simon tags: trunk | |
|
2001-10-30
| ||
| 16:33 | Add a couple more FAQs (`where's the Tunnels panel' and `how do I do <blah> in Plink'). check-in: b9434b12c6 user: simon tags: trunk | |
| 16:12 | Shrink the PuTTYgen window for 640x480 friendliness (thanks Jacob) check-in: c4565ece48 user: simon tags: trunk | |
| 16:02 | Word-by-word (double-click) selection now spans line breaks if the line break was created by wrapping. (Equivalently, if the selection would _paste_ as a single word without a newline in the middle, then it will _select_ in the same way.) check-in: 5c1233a233 user: simon tags: trunk | |
| 15:45 | The other utilities should do the same processing of the hostname (parsing `user@' prefixes etc) that PuTTY proper does. check-in: 0196b546dc user: simon tags: trunk | |
| 14:57 | Tidy up the SERIOUS NETWORK ERROR fixes check-in: a36d0f7bf5 user: simon tags: trunk | |
| 14:35 | Tidy up SSH packet-level debugging check-in: 20af56aea3 user: simon tags: trunk | |
| 09:37 | Add the `will you write an SSH server' question to the FAQ. check-in: 0ef5f2ad8e user: simon tags: trunk | |
| 03:50 | Increase cfg.line_codepage buffer size to cope with the explanatory text added in a recent unicode.c patch. check-in: f64cebfe2d user: simon tags: trunk | |
|
2001-10-28
| ||
| 09:32 | Fix trivial UI buglets related to DSA key support. check-in: b361225304 user: jacob tags: trunk | |
| 09:11 | Add the FAQ about `nothing happens when I try to type my password'. check-in: 332be76921 user: simon tags: trunk | |
| 04:40 | Fix character set problems. Some systems lack the ISO8859 codepages, so we specify them explicitly to avoid this problem. Also in particular get_unitab() no longer depends on querying Windows codepage 28591 (ISO8859-1), so UTF-8 mode should stop failing on such systems. check-in: e5f0818d36 user: simon tags: trunk | |
| 03:57 | Fix the `SERIOUS NETWORK INTERNAL ERROR' oversight in winnet.c. See the comment in try_send() for details of the problem. check-in: e90219ba63 user: simon tags: trunk | |
| 03:38 | Fix silly scrolling-vs-selection bug: if you selected text on line 9, then did ANSI Delete Line on line 10, the selection highlight would move up a line even though it wasn't over any text that actually moved. Easy to reproduce in the likes of vi. Trivial fix. check-in: 822164c0fb user: simon tags: trunk | |
|
2001-10-27
| ||
| 06:06 | Add remaining comments to the last checkin (gah, remember to hit Save in the editor _before_ running cvs commit). check-in: 6830d061c8 user: simon tags: trunk | |
| 05:39 | Update to password length traffic analysis: one Cisco router can apparently not deal with SSH1_MSG_IGNORE _or_ padded passwords, so we must fall back to sending an undefended password. check-in: c0c42ff5c1 user: simon tags: trunk | |
|
2001-10-25
| ||
| 13:48 | Tiny tinkerings with FAQ check-in: a95eb10144 user: simon tags: trunk | |
| 03:09 | Fix a couple of errors in the FAQ. check-in: 71f8c6dcee user: simon tags: trunk | |
|
2001-10-24
| ||
| 14:05 | Condense the docs into fewer HTML files. Particularly useful since the new-look FAQ is now one file. check-in: 01876567f2 user: simon tags: trunk | |
| 13:56 | _Actually_ add the new-look PuTTY FAQ. When will I remember to run "cvs add"? check-in: b7fec8239b user: simon tags: trunk | |
| 13:56 | Add the new-look PuTTY FAQ check-in: 67086a1fdf user: simon tags: trunk | |
| 06:50 | Now that we can configure whether ^C and friends generate Telnet IP and friends, we should honour the user's choice even in line editing mode. In particular, Telnet talkers don't like us randomly spraying Telnet IP whenever the user accidentally hits ^C, so this is not a helpful default. check-in: e4402281bf user: simon tags: trunk | |
|
2001-10-23
| ||
| 15:25 | Add Jacob's patch for compiling without multimon.h. check-in: 1e80b47e4c user: simon tags: trunk | |
| 14:51 | Better robustness in visual bell timeouts: handling GetTickCount wraparound, not referencing vbell_timeout if in_vbell==FALSE, that sort of thing. I doubt it'll fix the reported problems with screen vbells, since none of the failure modes I've just prevented looked all that probable to me, but it's nice to have extra robustness anyway. check-in: 1a7ce9d42b user: simon tags: trunk | |
| 14:22 | Don't quit the plink main loop until the stdout and stderr buffers are empty. check-in: 8c87b1302f user: simon tags: trunk | |
|
2001-10-17
| ||
| 16:21 | Wez Furlong's patch to tidy up full-screen mode: make it multi-monitor aware and make the scrollbar separately configurable in and out of full-screen mode. Also (not Wez's patch, this bit) fix the case where the user reconfigures _while_ the window is full-screen, and disables full-screening. (In this case the window should return gracefully to normal, rather than losing all its title bars and getting confused.) check-in: e27f621300 user: simon tags: trunk | |
| 16:02 | Finally remove this pile of obsoleteness check-in: b108b76d0f user: simon tags: trunk | |
|
2001-10-12
| ||
| 16:39 | D'oh, trivial typo which was completely breaking log-all-output. check-in: 73e3e07fd0 user: simon tags: trunk | |
| 16:10 | Revamp the window-resize behaviour UI so there are only three states rather than four. Should fix all sorts of bugs, since the fourth (and default!) state was behaving weirdly and nobody liked it. check-in: f5a6ba12ab user: simon tags: trunk | |
| 14:32 | Due to fears that an incompetent WinSock might allow localhost- listening sockets to be talked to by non-local hosts, reinstate the explicit peer address check on connection acceptance. check-in: 994e1f8e80 user: simon tags: trunk | |
|
2001-09-26
| ||
| 15:31 | Extra line in the help text to mention you can use a saved session as well as a hostname. check-in: 283443dabf user: simon tags: trunk | |
| 15:29 | `Server got confused by' error messages now quote a packet type, so I can start debugging as soon as I get one sent to me. check-in: 8a15380719 user: simon tags: trunk | |
|
2001-09-25
| ||
| 16:08 | Fiddly fixes in code page handling check-in: 7a02dfa92b user: simon tags: trunk | |
| 15:12 | Spelling fix. When the user hits `Browse' next to the `Private key' box, they should see a file chooser labelled Select _Private_ Key File, not Public! check-in: a7e5666616 user: simon tags: trunk | |
| 15:07 | Another potential segfault fixed. Thanks RDB :-) check-in: c86558597a user: simon tags: trunk | |
| 15:07 | Tidy up a comment. check-in: 8fda669ade user: simon tags: trunk | |
| 15:05 | John Sullivan's patch to recreate the Pageant systray icon if Explorer crashes and restarts while Pageant is running. check-in: ad172b9961 user: simon tags: trunk | |
| 14:59 | Fix various fiddly little warnings. check-in: 74146824e9 user: simon tags: trunk | |
|
2001-09-24
| ||
| 17:00 | Restore Lars Gunnarsson's old link for iXplorer. check-in: a14c43031f user: simon tags: trunk | |
|
2001-09-23
| ||
| 11:45 | Destroy DOS line endings and unnecessary redefinition of uint32. check-in: d89d560347 user: simon tags: trunk | |
| 06:57 | Oops - another missing file :-/ check-in: aae2996f6a user: simon tags: trunk | |
|
2001-09-22
| ||
| 16:00 | Arrgh, there's always one. Actually check in the extra file :-) check-in: 31d68a363e user: simon tags: trunk | |
| 16:00 | Add extra explanatory comment about the DSA k generation. check-in: 17e11a6201 user: simon tags: trunk | |
| 15:52 | Add support for DSA authentication in SSH2, following clever ideas on how to get round the problem of generating a good k. check-in: 49dcc2ded6 user: simon tags: trunk | |
| 12:34 | Pretty much finished writing the Config chapter. check-in: 350b668142 user: simon tags: trunk | |
| 10:37 | Oops - that tweak had bad Buttress syntax. D'oh! check-in: 529611f38f user: simon tags: trunk | |
| 10:36 | Miscellaneous small documentation tweaks. check-in: 5483852ba4 user: simon tags: trunk | |
| 10:19 | Correct capitalisation in one config option (Cyrillic Caps Lock). check-in: db549fbb86 user: simon tags: trunk | |
|
2001-09-21
| ||
| 12:54 | Ongoing pastes were being abandoned on any key-down event. Quite apart from the debatable semantic sanity of abandoning mid-paste, this was breaking Shift-paste (theoretically valid in any case, actually necessary with xterm mouse reporting enabled) because when you hold down Shift the window receives a steady stream of KEYDOWN messages as the key auto-repeats. One of those is likely to show up in mid-paste and scupper you. For the moment, this has been changed so that only a key press that actually _generates session data_ aborts a paste. In future I plan to review just why we're doing this anyway (it may be that paste-little-by-little was a response to rubbish socket buffering, in which case we can dispense with it completely now). check-in: 9c04bcb4c3 user: simon tags: trunk | |
|
2001-09-19
| ||
| 15:07 | Fix pasting of newlines in local line editing mode. Possibly not a very _good_ fix; something might want doing after the release. check-in: a8202e3593 user: simon tags: trunk | |
|
2001-09-18
| ||
| 14:41 | terminal.c's from_backend() no longer calls term_out(), because term_out() can in turn call ldisc_send() which calls back to from_backend() when local echo is enabled. This was giving rise to crazy re-entrancy stuff and stack overflows. Instead from_backend() deposits its data in a bufchain which term_out() empties the next time it's called. check-in: 126e861724 user: simon tags: trunk | |
| 14:04 | Fix flaky scrollbar update when scrollback was reset to bottom. check-in: a6fd1f416a user: simon tags: trunk | |
| 13:59 | Selection point movement on scroll should move selanchor as well as selstart and selend, otherwise all those worthy ideals go *foom* while the mouse buttons are held down. check-in: 3cd0c23c8d user: simon tags: trunk | |
| 13:51 | Reintroduce Cyrillic Caps Lock mode, which was in 0.51 but got kicked out by the Unicode patch. It's not very good - only works sanely on US keyboards - but it's no worse than it was in 0.51. After 0.52 maybe I should fix it properly. check-in: e75e061854 user: simon tags: trunk | |
| 13:40 | Fix the licence again. (Despite the copyright holders being more numerous, it still only said _I_ would not be liable rather than _everybody_ not being liable; also the resource file versions weren't up to date.) check-in: 713670aae5 user: simon tags: trunk | |
| 13:16 | SSH back end should now be tolerant of garbage appearing in the data stream after the actual SSH connection is finished. Some firewalls add this for no good reason. check-in: 04b776bff9 user: simon tags: trunk | |
|
2001-09-15
| ||
| 10:54 | Three more patches from RDB: one to make Atomica work right, one to fiddle with the widths of characters in DBCS screen fonts, and (the big one) one to enable a mode in which resizing the window locks the terminal size and lets the font change, instead of vice versa. That should shut up a few feature requests! check-in: 6eb650f7e4 user: simon tags: trunk | |
| 09:58 | Cygwin build fixes: update the dependencies, add -DNO_SECURITY to the Cygwin CFLAGS, and declare `struct ssh_channel' in ssh.h to prevent gcc warning about scope-confined-to-parameter-list. check-in: 04a880af46 user: simon tags: trunk | |
|
2001-09-13
| ||
| 13:24 | Christopher Allene's patch for going full-screen on Alt-Enter. check-in: 277a51c207 user: simon tags: trunk | |
|
2001-09-12
| ||
| 15:38 | Scrollback viewing position, and selection endpoints, now keep pace with the scrollback movement. (The former is of course only detectable when reset-scrollback-on-activity is disabled.) check-in: abba2c31a9 user: simon tags: trunk | |
| 15:16 | PSFTP: when choosing a default destination filename for `get' and `put', it makes more sense to pick the _basename_ of the source rather than use the whole path - particularly when the latter might cause us to try to use a DOS pathname like `f:\stuff' in a Unix (or worse, such as VMS!) file system. check-in: 3c7affa792 user: simon tags: trunk | |
| 15:11 | psftp and pscp should disable all forwarding (ports, X, agent). Partly because that's a good idea _anyway_, and partly because it seems to be causing trouble. (Specifically, their pathetic attempt to emulate plink's proper select handling seems to get confused when the back end tries to open a local listening socket.) check-in: 0c4becfc0b user: simon tags: trunk | |
|
2001-09-10
| ||
| 03:39 | Clarify the comment at the top of scp.c to make the licensing situation more explicit. check-in: 818ff15632 user: simon tags: trunk | |
|
2001-09-09
| ||
| 11:31 | Add the `pwd' command in PSFTP. check-in: 04e99e0157 user: simon tags: trunk | |
| 11:29 | Add online help in PSFTP. check-in: 4649be3d6e user: simon tags: trunk | |
| 10:41 | Modify the FIXME into a calculated risk. I don't like this, but I don't like the thought of having to try to fix it either, particularly when I can't tell whether it'll work or not without reproducing the (probably phantom) problem. Gah. I wish WinSock would give better documentation of possible error returns. check-in: 047d2f0894 user: simon tags: trunk | |
| 09:47 | Be more careful of bombouts at the s_rdpkt level: if these happen (for example SSH_MSG_DISCONNECT) we should avoid even calling ssh_protocol. check-in: be8d17560a user: simon tags: trunk | |
| 08:54 | Add the names of major contributors to the copyright statement. I've been meaning to do this for _years_. check-in: 37ffa259b8 user: simon tags: trunk | |
| 05:41 | psftp is an interactive program and the ssh.c flags should reflect this (so we get login banners and a little more verbosity during authentication). check-in: ab17da4566 user: simon tags: trunk | |
| 05:35 | Oops - changing the prototype of statictext() affected puttygen.c too check-in: 186b2d152e user: simon tags: trunk | |
| 04:58 | Roman Pompejus's patch (heavily hacked) for parametric log file names with date, time and hostname automatically embedded. check-in: cbc09ddef1 user: simon tags: trunk | |
|
2001-09-08
| ||
| 10:16 | Fix potential float screwup in scp percentage indicator. (Don't compute (100*a)/b. Instead compute 100*(a/b), because that way there's no chance that 100*a will become inexact enough to fail to yield 100 when a==b.) check-in: 28fa3f92c1 user: simon tags: trunk | |
| 07:50 | Jacob's TIS / CCard authentication tweaks. check-in: 7122565be1 user: simon tags: trunk | |
| 07:37 | Jan Holmen Holsten's patch for drag-selects to scroll the scrollback. check-in: 2b62f6f73d user: simon tags: trunk | |
| 06:57 | Fix error message: couldn't load _private_ key, not public. check-in: 39df7148e8 user: simon tags: trunk | |
| 05:33 | When we receive SSH_MSG_DISCONNECT, say so in an error box because it's likely to be more helpful than `Strange packet received' or whatever. check-in: eb53e5ee1f user: simon tags: trunk | |
|
2001-09-07
| ||
| 18:02 | Fix to link_font() from RDB. I must get him to comment some of this :-) check-in: fa5aa97cb3 user: simon tags: trunk | |
| 18:00 | RDB also points out we don't need the CJK `not recommended for general use' wcwidth function, so we condition it out to save space. check-in: 74ee31d42a user: simon tags: trunk | |
| 17:59 | Patch from RDB: Markus Kuhn has issued an updated version of his wcwidth function. check-in: b91d59968c user: simon tags: trunk | |
| 17:58 | Another patch from RDB: prevent luni_send from sending a particular range of Unicode characters. Not entirely sure I understand this one but I trust that RDB knows what he's talking about with Unicode. check-in: e06c8a933b user: simon tags: trunk | |
| 17:52 | 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 :-) check-in: e1c1b7ba03 user: simon tags: trunk | |
| 17:51 | RDB's session logging patch: due to some ghastly special case, UTF-8 characters that failed the UTF-8 canonicality rules were being sent to the session log twice. Sounds trivial, but I bet it'd have confused anyone who turned on session logging precisely to track down a canonicality bug :-) check-in: 920138e2fa user: simon tags: trunk | |
| 17:49 | Pedantry patch from RDB: sanitise header use, correct one comment and remove an unused variable. check-in: 8da61582c8 user: simon tags: trunk | |
| 17:45 | Patch from RDB: in the case where the protocol read from the settings file is unrecognised (i.e. PuTTYtel reading PuTTY's registry), fall back to the default _port_ as well as the default protocol. check-in: 09aa9d3c6b user: simon tags: trunk | |
| 17:43 | Patch from RDB: fix the failure to display window-resize pointers when in raw mouse mode. check-in: 83eafe263a user: simon tags: trunk | |
| 17:41 | Patch from RDB: rename ISO-8859-12 to -13, add ISO-8859-16, and update the year specifications on some of the ISO-8859 names. check-in: e0837a26f5 user: simon tags: trunk | |
| 17:39 | Robert de Bath's asynchronous-connect patch. Helps a lot in port forwarding; improves Event Log; and causes the PuTTY window to appear earlier in the setup process. check-in: 30ca2ba730 user: simon tags: trunk | |
| 17:04 | Fix gratuitous assertion failure in Plink (ssh1_throttle_count was being decremented far too many times). check-in: 96bc3b496f user: simon tags: trunk | |
| 16:39 | Robert de Bath's `Patch.a_alt_key': clean up the handling of Alt-Space, Alt-only and the System menu. It lets Windows do more of the work, and also saves a static variable, so it must be good :-) check-in: e43f14f260 user: simon tags: trunk | |
| 16:07 | Use WM_SETREDRAW to disable incremental updates while the config box is switching panels. Speeds things up hugely on slow systems. check-in: ecd4562331 user: simon tags: trunk | |
| 15:35 | Jacob's patch to cause Shift to return to copy-and-paste when xterm mouse tracking is enabled. (This can be turned off if your app really wants Shift+mouse, but it defaults to on for general usefulness.) check-in: a543edc35c user: simon tags: trunk | |
| 15:32 | Oops, fix that fix. TranslateKey can return <0 and it needs to be dealt with. I don't recall being told that; I should comment it at some stage. check-in: edd03b54bc user: simon tags: trunk | |
| 15:18 | Fix mouse hiding on keypresses, which was failing due to the Unicode patch having done something bizarre to the semantics of TranslateKey. check-in: d5890df1d1 user: simon tags: trunk | |
|
2001-09-05
| ||
| 17:04 | Fix the intermittent fault in the socket layer that was occasionally bombing out X forwarding. It turns out to be a workaround for YET ANOTHER useless WinSock implementation. Arrgh! check-in: 1b815b74da user: simon tags: trunk | |
| 16:02 | Swap round the contents of the Translation panel. The codepage box should be at the top because it's by _far_ the most important. check-in: c1ff1783a1 user: simon tags: trunk | |
| 16:01 | Unicode cleanup phase 2: we now reintroduce the ability to enter a numeric code page, and also reinstate the direct-to-font zero translation mode (but now under an actual _name_ rather than blank). Also add CP437 to the list since at least one expatriate DOS user wanted it; also select a sensible ISO or KOI codepage based on the system locale. check-in: d2fd355aae user: simon tags: trunk | |
| 14:58 | Better yet, look for sftp-server on the user's PATH as well, which allows individual users with shell access to install it without reference to the admin. check-in: cceb7429f9 user: simon tags: trunk | |
| 14:48 | PSFTP will now attempt to find /usr/[local]/lib/sftp-server if it can't start the sftp subsystem. This should enable convenient sftp access to SSH1-only systems: all the admin needs is to install sftp-server in the right place. check-in: f83397733c user: simon tags: trunk | |
| 14:33 | When pscp in SFTP mode does client-side matching of a server-side wildcard, it's polite to let the user know if the wildcard didn't match any file names. check-in: 057992d7ea user: simon tags: trunk | |
|
2001-08-29
| ||
| 03:56 | Fix segfault (should free act.buf not act.name, because the latter might not point at the start of the former). Cheers Minefield :-) check-in: d02e404690 user: simon tags: trunk | |
|
2001-08-28
| ||
| 07:26 | stripslashes() should have been dealing with colons as well. I don't _think_ there was an exploit (even if the server sends "c:foobar", the client will not attempt to create "c:foobar"; instead it will try to create ".\c:foobar" which will fail), but it's as well to be sure. check-in: e6fe329d9c user: simon tags: trunk | |
| 07:24 | Semantic fix in the X11 `authentication failed' error packet construction. Doesn't actually affect anything right now, since the bug was a failure to round a length up to the next multiple of 4 and it so happens that our current message was exactly 40 bytes anyway :-) But if we start giving a wider variety of messages one day then it might be handy to be able to do them without gratuitous crashes. check-in: b37b4aae64 user: simon tags: trunk | |
| 04:53 | Add documentation of the new PSCP `-unsafe' option and the associated warning message. check-in: 24cfbbc03b user: simon tags: trunk | |
| 03:43 | D'oh! Putting keyboard-interactive authentication _before_ publickey causes password login to occur on a server that supports password- through-k-i. Of course when we use the new preference list mechanism for selecting the order of authentications this will all become much more sane, but for the moment I've put publickey back up to the top and things seem to be happier. check-in: 3cb4b5568a user: simon tags: trunk | |
| 03:36 | 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. check-in: 8ae7f39455 user: simon tags: trunk | |
| 03:08 | Fix various small compiler warnings, mostly unused local variables check-in: 0a5751b809 user: simon tags: trunk | |
|
2001-08-27
| ||
| 12:40 | PuTTYgen: add an extra button to save a public key into a file (as well as showing it for cut and paste). For SSH1, this feature is largely cosmetic and added for orthogonality; it comes into its own in SSH2, where it saves the Official One True Public Key Format as specified in the draft spec, and more particularly as used by ssh.com's product for authentication. Now that ssh-3.0.1 supports RSA user keys, this is suddenly actually useful. check-in: 3ec80d2102 user: simon tags: trunk | |
| 11:58 | Fix handling of SSH2_MSG_CHANNEL_CLOSE, which was breaking in port forwarding talking to ssh.com's ssh-3.0.1. check-in: e28e899e99 user: simon tags: trunk | |
| 10:59 | Port forwarding update: local-host-only listening sockets are now done properly (by binding to INADDR_LOOPBACK) instead of hackishly (by binding to INADDR_ANY, looking at the peer address when a connection is accepted, and slamming the connection shut at that point). check-in: da6aaddf6b user: simon tags: trunk | |
| 10:55 | Add a couple of missing return values check-in: 589e1d2cc0 user: simon tags: trunk | |
| 10:13 | Port forwarding bug fix: we were unable to handle receiving CHANNEL_OPEN_FAILURE messages, which occur when the remote side is unable to open a forwarded network connection we have requested. (It seems they _don't_ show up if you get something mundane like Connection Refused - the channel is cheerfully opened and immediately slammed shut - but they do if you try to connect to a host that doesn't even exist. Try forwarding a port to frogwibbler:4800 and see what you get.) check-in: f7b3ee5549 user: simon tags: trunk | |
| 10:02 | Finally tighten up the server-side wildcard security hole, the _right_ way. (SSWs are disabled by default and can be re-enabled using `-unsafe', meaning that pscp will _never_ do anything unexpected to your local file system unless you explicitly give consent. The sftp-based variant will work fine because the corresponding mechanism is _not_ unsafe.) check-in: b3d4e1612d user: simon tags: trunk | |
| 09:51 | Fix tiny bug in new sftp-mode wildcards: when there wasn't a leading path component (just `host:*' rather than `host:directory/*') there was trouble. check-in: 912522e575 user: simon tags: trunk | |
| 05:24 | Minor modification: in remote->local non-recursive mode matching a wildcard, we don't abandon ship completely if the wildcard matches a directory; we just warn and carry on with the rest. check-in: a6483ad1a9 user: simon tags: trunk | |
| 05:17 | Implemented a simple wildcard matching engine, and used it to restore remote wildcard capability in sftp-style PSCP. check-in: ad2723cc77 user: simon tags: trunk | |
|
2001-08-26
| ||
| 13:32 | PSCP now uses the modern SFTP protocol if it can, and falls back to scp1 if it can't. Currently not very tested - I checked it in as soon as it completed a successful recursive copy in both directions. Also, one known bug: you can't specify a remote wildcard, because by the nature of SFTP we'll need to implement the wildcard engine on the client side. I do intend to do this (and use the same wildcard engine in PSFTP as well) but I haven't got round to it yet. check-in: 0d8a92d58d user: simon tags: trunk | |
| 10:45 | Arrgh; yet again I make my security checking too draconian to actually get things done. I'm sure this is the second time I've checked in this mistake :-/ Still, this time I've got right to the bottom of the cause, and commented it clearly. Phew. check-in: 85efe1705a user: simon tags: trunk | |
| 10:32 | Oops. ^X^S comes _before_ `cvs commit'. Two more diagnostics gone :-) check-in: 635360f2f9 user: simon tags: trunk | |
| 10:31 | Further tightening up in PSCP. Fixed a couple more holes whereby a malicious SCP server could have written to areas other than the ones the user requested; cleared up buffer overruns everywhere. Hopefully we now do not use arbitrary buffer limits _anywhere_. check-in: 0963d65406 user: simon tags: trunk | |
| 09:53 | Preparatory work for allowing PSCP to work over SFTP as well as old- style scp1. I've built a layer of abstraction covering all the gory details of the old scp network protocol. check-in: 1cb1d6ddd8 user: simon tags: trunk | |
| 06:35 | More upgrades to psftp: it now supports mv, chmod, reget and reput. check-in: eb0b3ce73c user: simon tags: trunk | |
| 05:01 | D'oh, remove two rogue diagnostics check-in: 243bd7a5da user: simon tags: trunk | |
|
2001-08-25
| ||
| 15:02 | Remove gratuitous FIXME entries in cipher list. Oops, didn't mean to check those in :-) check-in: e7c38cac84 user: simon tags: trunk | |
| 15:01 | Fiddle with the registry format so that backwards compatibility is natural and defaults are sensible. check-in: 0836233667 user: simon tags: trunk | |
| 14:33 | Jacob's patch for a drag-list to select SSH ciphers. Heavily hacked by me to make the drag list behaviour slightly more intuitive. WARNING: DO NOT LOOK AT pl_itemfrompt() IF YOU ARE SQUEAMISH. check-in: fb691d08cf user: simon tags: trunk | |
| 12:09 | Extensive changes that _should_ fix the socket buffering problems, by ceasing to listen on input channels if the corresponding output channel isn't accepting data. Has had basic check-I-didn't-actually- break-anything-too-badly testing, but hasn't been genuinely tested in stress conditions (because concocting stress conditions is non- trivial). check-in: e84a3c910c user: simon tags: trunk | |
|
2001-08-22
| ||
| 15:23 | Oops - fix that fix :-/ check-in: 1ca082b7a7 user: simon tags: trunk | |
| 14:56 | Wording change: make it explicit that you can enter an IP address as well as a hostname. check-in: a49a1a4a38 user: simon tags: trunk | |
| 14:47 | Fix to allow more than one challenge/response pair during keyboard-interactive authentication. UNTESTED except that I checked it compiles. Will ask for testing from the user who complained. check-in: 74c9730afc user: simon tags: trunk | |
|
2001-08-16
| ||
| 06:09 | Add a comment about Dragon NaturallySpeaking: it apparently requires Alt+Space to work the Windows way. check-in: e40bc2bab9 user: simon tags: trunk | |
|
2001-08-15
| ||
| 14:47 | Document /DNO_SECURITY compile option. check-in: 55a35cf13f user: jacob tags: trunk | |
| 14:41 | Updated Makefile.cyg for Glenn Maynard's IME patch. check-in: c986796e5e user: jacob tags: trunk | |
| 13:23 | Trivial port forwarding fixes from Jacob check-in: 60c2a03bbb user: simon tags: trunk | |
|
2001-08-13
| ||
| 07:43 | Fix potential segfault in port forwarding code check-in: e2e3891622 user: simon tags: trunk | |
|
2001-08-12
| ||
| 14:25 | First phase of Unicode polishing: replace the edit box with a combo box. Also default to ISO8859-1 so that CSI works in the default mode; this is ridiculously Western-centric but I can't honestly think of a better option. check-in: 025226f072 user: simon tags: trunk | |
|
2001-08-09
| ||
| 16:22 | Stop yelling about Access Denied if the server refuses even to attempt keyboard-interactive authentication. We can yell about it if we make a creditable attempt and are rejected, but if the server just refuses to even consider it then the user won't really want to know (and if they do there's the Event Log). check-in: 1b859669ff user: simon tags: trunk | |
| 16:17 | Port forwarding now works in SSH 2 as well as SSH 1. check-in: 8309fd3a31 user: simon tags: trunk | |
| 15:13 | Keyboard-interactive authentication, thanks to Paul Sokolovsky. check-in: ae0e59a01d user: simon tags: trunk | |
|
2001-08-08
| ||
| 15:53 | Oops - actually check in portfwd.c itself! (Makefile also modified because it's been renamed to fit in 8.3, just in case.) check-in: 9775f87713 user: simon tags: trunk | |
| 15:44 | SSH port forwarding! How cool is that? Only currently works on SSH1; SSH2 should be doable but it's late and I have other things to do tonight. The Cool Guy award for this one goes to Nicolas Barry, for doing most of the work and actually understanding the code he was adding to. check-in: c9959c44e1 user: simon tags: trunk | |
|
2001-08-07
| ||
| 03:42 | Remove the OSVERSIONINFOEX code because there's no obvious way to determine whether it'll compile before receiving the compile error. Gah. check-in: e7014303b2 user: simon tags: trunk | |
|
2001-08-04
| ||
| 10:45 | Glenn Maynard's patch completely disabled PuTTY{,tel} on any system that didn't support OSVERSIONINFOEX. For example, such wildly out of date things as NT4. Now fixed. check-in: c5403c3d00 user: simon tags: trunk | |
| 10:22 | Oops - IDC not IDV. Typo. check-in: 61e93dd42c user: simon tags: trunk | |
| 10:15 | Glenn Maynard's IME patch check-in: 294111b8ec user: simon tags: trunk | |
| 10:04 | Rainer Loritz noticed that the Telnet environment box is not cleared when loading a new session. Oops! check-in: bd679c97a4 user: simon tags: trunk | |
| 09:59 | Prevent recursive weirdnesses happening when the user selects a system-tray menu option while a passphrase prompt is active. check-in: 8e4b5db635 user: simon tags: trunk | |
| 09:35 | SCO function key mode now affects the small keypad (Ins, Del, etc) in accordance with the keymap dump sent by Len Christiansen. check-in: ef483ba629 user: simon tags: trunk | |
| 09:19 | Patch to PSFTP: implement mkdir, rmdir, rm and scripting. Still to do: wildcards, chmod, mv, probably other things. check-in: 4277930ada user: simon tags: trunk | |
| 08:06 | Mention PLINK_PROTOCOL in the Plink chapter. check-in: f5a3267717 user: simon tags: trunk | |
| 08:05 | Add description of the keepalives option check-in: 69d680f3b0 user: simon tags: trunk | |
| 07:37 | Fix segfault if the server maliciously sends the wrong type of key after a different type has been agreed. check-in: b0f7665fed user: simon tags: trunk | |
|
2001-07-31
| ||
| 09:23 | Yet another possible segfault path in the backends fixed. I don't _believe_ I'm still finding these. I have no idea what I was thinking when I wrote this stuff. check-in: d92d20c31c user: simon tags: trunk | |
|
2001-07-01
| ||
| 04:21 | Minor wording clarification: somebody took the word `sessionname:' literally. check-in: c763f93187 user: simon tags: trunk | |
|
2001-06-28
| ||
| 08:36 | Added = to instructions for setting PATH check-in: dc761acc71 user: owen tags: trunk | |
|
2001-06-23
| ||
| 11:59 | Robert de Bath's implementation of ESC [ Z (backtab) check-in: 74b221fe14 user: simon tags: trunk | |
|
2001-06-15
| ||
| 14:31 | Add some extra documentation: filled in the Getting Started chapter, added an introduction to public key authentication, and made a couple of changes in intro.but. Transatlantic flights have some uses after all. check-in: ebacebc80e user: simon tags: trunk | |
|
2001-06-03
| ||
| 06:46 | Bell panel docs. check-in: 5c7eb8dcdc user: owen tags: trunk | |
| 06:10 | Added mention of rlogin, and a few words on VT100+ and SCO function key settings. check-in: d66466be46 user: owen tags: trunk | |
|
2001-05-28
| ||
| 05:26 | Disable the most irritating compiler warnings in the Borland makefile. check-in: 26ba25f08f user: simon tags: trunk | |
|
2001-05-21
| ||
| 08:33 | Oops - fixing the line-resizing segfault introduced a new line-resizing segfault! Remind me to test under Minefield next time. Should now be fine, as I've just done so. check-in: 9ba5a614d9 user: simon tags: trunk | |
|
2001-05-19
| ||
| 10:59 | Make sure the default protocol doesn't ever end up undefined in Plink. check-in: a5783c1360 user: simon tags: trunk | |
| 10:23 | Add some spare SetForegroundWindow and SetActiveWindow calls to try to improve window behaviour. Also make the About box a subdialog of the config box instead of a separate child of the root. check-in: 0abdaf66e2 user: simon tags: trunk | |
| 10:21 | RDB: fix various UTF-8 glitches. check-in: 535ae2faab user: simon tags: trunk | |
| 09:12 | SCO ACS patch from RDB. Apparently required for the Linux console terminfo. check-in: fcd74f7ec1 user: simon tags: trunk | |
| 08:56 | Update the two commented-out CFLAGS to include the same _WIN32_WINDOWS definition as the uncommented one. check-in: 8aef6fcaeb user: simon tags: trunk | |
| 08:41 | Be prepared to print spaces at the end of a statistics line in case the previously printed line was longer. Avoids multiple trailing percents. check-in: cc1e87e246 user: simon tags: trunk | |
| 06:34 | Fix from RDB: patch up mis-aimed fallthroughs in a terminal emulation switch. (Bug was introduced in mouse reporting.) check-in: 75f119d180 user: simon tags: trunk | |
| 06:33 | Terminal fix from RDB: probably didn't mean to compare a Y value with a column count! check-in: 4ccb365f31 user: simon tags: trunk | |
| 06:32 | Small terminal fix from RDB: CSI 1 K should erase the cursor position itself, as well as everything to the left of it. check-in: ffcb088cd9 user: simon tags: trunk | |
|
2001-05-17
| ||
| 05:06 | Reinstate the Shift-Ins paste behaviour, which was accidentally broken by the mouse button redesignation that came with xterm mouse reporting. check-in: db22a9a980 user: simon tags: trunk | |
| 03:53 | Fix the line-resizing bug in scroll(). (Thanks to RDB for pointing it out. A line was removed from the scrollback, cleared, and placed at the bottom of the screen. Fine, except that the clearing process assumed the line was the right length already, and thanks to lazy resizing this wasn't necessarily the case. Segfaults and memory corruption ensued.) check-in: 69e8590373 user: simon tags: trunk | |
|
2001-05-14
| ||
| 17:20 | Specify a few things that were unsepcified. check-in: f2725ed8a7 user: ben tags: trunk | |
| 08:31 | Scrollbar was failing to update when no scrollback-reset event had happened check-in: eaecb6d52c user: simon tags: trunk | |
|
2001-05-13
| ||
| 11:13 | Fix the sense of posdiff(), causing the extend-selection mouse action to work correctly again. check-in: 053c2208c8 user: simon tags: trunk | |
| 10:01 | Fix wrong button codes in WM_MOUSEMOVE. check-in: 54b1873e8d user: simon tags: trunk | |
| 09:42 | Glenn Maynard's patch (as adapted by Jacob) for taskbar flashing when a bell occurs and the window is minimised. check-in: ea3235431d user: simon tags: trunk | |
| 09:11 | The host-key-unknown prompt now offers the same three options as the host-key-changed prompt: update-cache-and-connect, connect-without- updating-cache, and abandon-connection. (Previously the middle one was missing.) check-in: f44e289959 user: simon tags: trunk | |
| 09:02 | Placate gcc's `-Wall' warnings. check-in: e91a557356 user: simon tags: trunk | |
| 08:23 | Trim leading whitespace off the hostname if it's there. check-in: 04601e8451 user: simon tags: trunk | |
| 08:11 | Oops - initialise sesslist_has_focus. check-in: 12406577a0 user: simon tags: trunk | |
| 06:58 | Jacob's patch to make pressing Return on a selected saved session load it and go, and simultaneously allow Alt-L on a selected saved session not to change the focus. check-in: 1502040ade user: simon tags: trunk | |
| 06:46 | Borland and Cygwin makefiles now support XFLAGS. check-in: 0eca193546 user: simon tags: trunk | |
| 06:44 | Control characters are now allowed as part of the password, if they're not special control characters processed by the line input routines. check-in: 6f7e910d13 user: simon tags: trunk | |
| 06:19 | Define WM_MOUSEWHEEL (to 0x20A) if it's not defined by windows.h. check-in: 5614953563 user: simon tags: trunk | |
| 06:15 | Attempt to report the error condition right when an SCP connection with a pre-supplied password fails to authenticate. check-in: 1d8cec3ee3 user: simon tags: trunk | |
| 05:58 | Fix the SCO function keys, which weren't quite right. check-in: 6aba0e120d user: simon tags: trunk | |
| 05:45 | Added a new large icon for the PuTTY config box. Doesn't show up in the actual window at all, but appears in the Alt-Tab task switcher box in place of the tedious Windows Default icon. check-in: 6ace7fc353 user: simon tags: trunk | |
|
2001-05-10
| ||
| 05:31 | A patch to the new character set stuff to add the Windows code pages themselves (Win1250 - Win1258). check-in: 730471786a user: simon tags: trunk | |
| 03:34 | RDB's Unicode patch. Fonts are now used in Unicode mode where possible and we have a single unified means of trying to display any Unicode code point. Instead of the various ad-hoc translation modes we had before, we now have a single `codepage' option which allows us to treat the incoming (and outgoing) text as any given character set, and locally we map that to Unicode and back. check-in: 07c01546d9 user: simon tags: trunk | |
|
2001-05-09
| ||
| 10:12 | From RDB: a patch to allow special keys (^C, ^Z, Delete, Return) to send Telnet special sequences (Interrupt Process, Suspend, Erase Char, End Of Line) instead of their ASCII equivalents. In particular Return -> Telnet End Of Line is _always_ enabled irrespective of the configuration, while the others are optional. Also in this patch, an entertainingly ghastly use of `switch' to allow literal ^M^J to do the same thing as magic-^M (the Return key) when in Raw protocol. check-in: 79d07d1f16 user: simon tags: trunk | |
| 09:01 | `realhost', passed back from all the backend init functions, was scoped within those functions. It's now dynamically allocated. check-in: b0b7726ce6 user: simon tags: trunk | |
| 08:51 | From RDB: telnet can now start up in passive mode, in which it doesn't do any negotiation until the remote side does. check-in: 76ff3c1741 user: simon tags: trunk | |
| 08:35 | From RDB: a few extra escape sequences seen in SCO terminals. check-in: d18d2b1422 user: simon tags: trunk | |
| 08:30 | From RDB: according to VT manuals, application cursor keys should never be enabled when app keypad is disabled. Also CTRL+arrows flips the application-ness to make it easy to generate the other sequences if required. check-in: ee9eb094a4 user: simon tags: trunk | |
| 08:26 | We can now save the protocol and port number in Default Settings. check-in: c9f6b77eb4 user: simon tags: trunk | |
| 08:12 | From RDB: yet another fix in the ongoing quest to deal correctly with font point sizes :-( check-in: 3215de7b40 user: simon tags: trunk | |
| 08:03 | RDB's alternative way to interpret the window size in Change Settings: it describes the size of the _unmaximised_ window. Maximisedness is a separate property which Change Settings doesn't affect. So if you change the font while the window is maximised, the terminal size adjusts accordingly. The downside is that you can't read the width and height of a maximised window out of Change Settings. Suggestions that restore this property are welcome. check-in: 6fa615e2f7 user: simon tags: trunk | |
| 07:48 | Fix due to Robert de Bath: backspace should not cross line boundaries when auto wrap is disabled. check-in: a66363bfa4 user: simon tags: trunk | |
|
2001-05-06
| ||
| 11:18 | Fix de Bath's last-ditch bell overload check-in: c9e608f9cb user: simon tags: trunk | |
| 10:09 | Strip off and ignore `:port' on the end of a hostname. check-in: d04cb0347a user: simon tags: trunk | |
| 09:35 | Run entire source base through GNU indent to tidy up the varying coding styles of the various contributors! Woohoo! check-in: 18fcbbf5a2 user: simon tags: trunk | |
| 09:20 | Wez Furlong's patch to add xterm mouse reporting and proper mouse wheel support. check-in: 0f7d39ca35 user: simon tags: trunk | |
|
2001-05-03
| ||
| 05:10 | Remove diagnostics and attempt to work around VC compiler bug :-( check-in: 11ca64770c user: simon tags: trunk | |
|
2001-05-02
| ||
| 09:45 | Extra diagnostics in the hope that we can track down the problem with the nightlies. I must remember to take it all out again when we do! check-in: 9ae48676d9 user: simon tags: trunk | |
| 03:59 | TEMPORARY ONLY: enable debugging on default build to try to get tomorrow's nightly to show us what the problem with term_size is. check-in: c789629ac9 user: simon tags: trunk | |
|
2001-04-28
| ||
| 13:23 | Reduce out-of-focus timer interval to 2 seconds so we still have some control over keepalives when not in the foreground. check-in: abf72593a3 user: simon tags: trunk | |
| 13:02 | Add Jordan Russell's patch for a sunken-edge border like a DOS box. Configurable, of course, because I for one like the border as thin as possible. check-in: 99c55fd985 user: simon tags: trunk | |
| 12:35 | 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!). check-in: 78ce267f58 user: simon tags: trunk | |
| 12:18 | Put the \001 prefix back on scp error messages when they're sent to the server. (Not sure _why_ they're sent to the server; scp is weird.) It may be pointless when sent to the screen, which is why I removed it, but it's extremely pointful on the wire :-( check-in: beae6ab7c7 user: simon tags: trunk | |
| 10:47 | The bell overload times are now measured in milliseconds, although the config box still enters them in seconds (it allows fractions). check-in: e04cd69761 user: simon tags: trunk | |
| 10:33 | Remove stray diagnostics. When will I learn? check-in: 5076daec9a user: simon tags: trunk | |
| 10:32 | Implement lazy horizontal resizing of screen and scrollback. check-in: 7663b57b53 user: simon tags: trunk | |
| 09:39 | Arrange that explicit visual bells performed using ESC[?5h and ESC[?5l in immediate succession will still give a visibly long flash of the screen. check-in: c5f6c7a36a user: simon tags: trunk | |
| 07:07 | Add the missing "all" target in the Cygwin makefile check-in: 9d130d6b04 user: simon tags: trunk | |
| 06:41 | Jacob's patch to make passphrase boxes work more sanely check-in: a1e1b76501 user: simon tags: trunk | |
| 06:27 | Only update the system caret when we have the focus. This was apparently causing the weird caret behaviour in Change Settings, because that routine was still being called... check-in: 7887d61a80 user: simon tags: trunk | |
| 06:25 | Fix completely stupid agent_exists test. (Hint to self: you have to actually _call_ a boolean-returning function, not just test its address for nonzerohood.) Thanks Jacob. check-in: 10b7803a78 user: simon tags: trunk | |
| 06:25 | Add -lwinmm to Cygwin makefile. Thanks Jacob. check-in: 3b87617780 user: simon tags: trunk | |
| 06:24 | Remove my dire-warning `FIXME' in IPv4 dotted-decimal handling because Jeroen points out that it's perfectly OK the way it is :-) check-in: 2cb3b8a7ce user: simon tags: trunk | |
| 04:24 | Dave Hinton's debugging patch. check-in: ef3833ca92 user: simon tags: trunk | |
| 03:42 | Add some fflushes to make it easier for piped programs to talk to plink and pscp check-in: 3ca35402c6 user: simon tags: trunk | |
| 02:49 | Updated dependencies thanks to Dave Hinton's mkdeps script check-in: 855dddf6f7 user: simon tags: trunk | |
|
2001-04-18
| ||
| 10:23 | Using plink with CVS - need to make sure the saved session uses SSH check-in: 5f88d97855 user: owen tags: trunk | |
|
2001-04-17
| ||
| 05:39 | Useful workaround I was given, to fake storing settings in a file. check-in: 0141c9049e user: simon tags: trunk | |
| 04:25 | Two more small bugs introduced by the B-tree reorg: scroll() now requires fix_cpos() to be called after it (otherwise cpos might point to a line that isn't where you remember it being), and a mis-aimed incpos() was causing forward selection dragging not to include the char under the mouse. Both fixed. check-in: e7a989dce7 user: simon tags: trunk | |
| 03:53 | Fix alternate-screen bugs introduced by move to B-trees. Alternate screen wasn't being correctly cleared on creation, and also wasn't inhibiting scrollback like it should have. check-in: a9f85fca1b user: simon tags: trunk | |
| 03:24 | Having now compiled the last few days' changes with MSVC, it's turned up a bunch of warnings, mostly unused variables. All fixed. check-in: 24eb277009 user: simon tags: trunk | |
|
2001-04-16
| ||
| 16:33 | Include <mmsystem.h> and winmm.lib for PlaySound. check-in: 382c2cdb71 user: simon tags: trunk | |
| 16:29 | Put back Robert de Bath's second level of bell overload tracking. It had a useful purpose: when primary overload handling is disabled, it prevents MessageBeep calls overloading the program, because they don't cancel each other like async PlaySounds do. check-in: ecb3fee8fc user: simon tags: trunk | |
| 16:25 | Terminal now uses unsorted counted tree234 as its basic data type. Should speed up scrollback to usable levels no matter how big your scrollback buffer. check-in: 2be3e9189f user: simon tags: trunk | |
| 16:24 | countnode234() should politely return 0 when passed NULL. Was breaking delpos234(empty_tree, 0). check-in: dd587abb87 user: simon tags: trunk | |
| 12:18 | Replace PuTTY's 2-3-4 tree implementation with the shiny new counted one, in preparation for using it to speed up scrollback. check-in: eaf375d551 user: simon tags: trunk | |
| 11:25 | Fix excessive calls to random_byte() check-in: 6c3d4344ad user: simon tags: trunk | |
| 11:19 | Quote the hostname in the `unable to connect' box so that if the user starts up N PuTTYs at once and one reports failure, they know which one. check-in: b190ef48b3 user: simon tags: trunk | |
| 11:16 | Add two more ghastly function key options. WE HAVE TOO MANY! check-in: 8fba8a3021 user: simon tags: trunk | |
| 10:58 | Roman Pompejus's patch to allow you to automatically select overwrite or append in logging mode. check-in: 676bb6f70a user: simon tags: trunk | |
| 07:38 | Makefile enhancements by Robert de Bath. check-in: 9233e85b41 user: simon tags: trunk | |
| 07:25 | Increase the read buffer size in network processing for extra speed. check-in: e667e6ef78 user: simon tags: trunk | |
| 07:08 | Small keyboard patches from Robert de Bath. Should fix the dead-key problem and also some unspecified woe with the ever-problematic Compose key. check-in: de331e82c3 user: simon tags: trunk | |
| 06:18 | Remove the diagnostics I checked in by mistake in the last revision. AGAIN. I really must stop doing that. check-in: d7d0dd4eca user: simon tags: trunk | |
| 06:16 | 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'. check-in: 64fef963cc user: simon tags: trunk | |
| 04:10 | Log the text message in SSH_MSG_DISCONNECT (both protocols) so that when people submit Event Logs for diagnosis it's a little easier to work out what's up. check-in: 7b0a25342b user: simon tags: trunk | |
| 02:49 | After we fall back to 3DES, double-check the server really does support it, and bomb out with a complaint if not. check-in: a19cc07470 user: simon tags: trunk | |
|
2001-04-14
| ||
| 06:37 | Bell can now play an arbitrary sound file. check-in: f62324cb45 user: simon tags: trunk | |
|
2001-04-13
| ||
| 06:01 | Oops - remove rogue debug messages! check-in: 09b376f851 user: simon tags: trunk | |
| 05:52 | New improved bell handling. Choice between visual and audible bell; configurable bell overload handling. Thanks to Robert de Bath for galvanising me into doing this, but I've had to rip most of his code out and redo it myself... check-in: 09d0105a65 user: simon tags: trunk | |
| 04:39 | Some introductory blurb in the docs check-in: 42bf099edc user: simon tags: trunk | |
|
2001-04-11
| ||
| 07:29 | Experimental checkin to see if we can prevent multiple closes ever being sent on an SSH1 forwarding (or indeed primary) channel. check-in: 38fbf062db user: simon tags: trunk | |
| 05:03 | Jordan Russell's patch to match the PuTTY cursor blink rate to the system-configured one. check-in: deca9a0b7f user: simon tags: trunk | |
|
2001-04-09
| ||
| 07:52 | Keyboard handling patch from RDB: the Windows Application key is now always Compose (we have no better use for it), and Ctrl-Alt can be made to act like AltGr (but it's never Compose even when AltGr is). check-in: 69c754c890 user: simon tags: trunk | |
| 07:46 | Don't assume OEM fonts have a space in position 255. We know there's one in position 32 so let's use that! (Thanks RDB.) check-in: 824897540b user: simon tags: trunk | |
| 07:43 | We can now configure the terminal's answerback string when it receives ^E. check-in: deba6874d6 user: simon tags: trunk | |
| 07:23 | The About box now contains a button that starts up a browser pointing at the PuTTY web site. Thanks to Eric Theriault. check-in: 8c512d39c4 user: simon tags: trunk | |
| 06:59 | Default handling of VT100 line drawing characters in cut and paste is now to translate them into poor man's characters (+--+ and |). We also have an option to disable this (and map line drawing characters to the corresponding ASCII code as before). Thanks to Robert de Bath. check-in: 84292c384f user: simon tags: trunk | |
|
2001-03-29
| ||
| 07:40 | Fix the detect_bugs routine, which was failing to find the right bit of the version string :-) check-in: 187803a9b3 user: simon tags: trunk | |
|
2001-03-28
| ||
| 10:38 | 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 :-/ ) check-in: 88af46225e user: simon tags: trunk | |
|
2001-03-23
| ||
| 07:02 | 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.) check-in: 903c16451b user: simon tags: trunk | |
| 04:28 | 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. check-in: ff0d0a3692 user: simon tags: trunk | |
| 03:20 | Fix a couple of silly compiler warnings check-in: dd4600f52e user: simon tags: trunk | |
|
2001-03-22
| ||
| 15:48 | 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. check-in: 1d114af59c user: simon tags: trunk | |
| 15:48 | Remove needless redeclaration of word32 (it was in ssh.h) check-in: 62cb12f675 user: simon tags: trunk | |
| 11:32 | 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...) check-in: e6c77ffa94 user: simon tags: trunk | |
|
2001-03-19
| ||
| 04:27 | 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. check-in: 0a38f11c5d user: simon tags: trunk | |
| 04:24 | 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. check-in: 1aa859782c user: simon tags: trunk | |
|
2001-03-16
| ||
| 06:09 | 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). check-in: dd506852aa user: simon tags: trunk | |
| 05:58 | 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. check-in: 63e041800b user: simon tags: trunk | |
|
2001-03-15
| ||
| 11:14 | 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! check-in: 1170b92531 user: simon tags: trunk | |
| 07:25 | David Brinegar's workaround for an error reporting problem in some WinSocks. check-in: c4ef2ddd63 user: simon tags: trunk | |
| 06:15 | 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 :-) check-in: 8291e66ea6 user: simon tags: trunk | |
| 06:14 | Fix a trivial compiler warning check-in: 5dad092a2a user: simon tags: trunk | |
| 05:39 | Fix a few trivial compiler warnings check-in: 68118804a2 user: simon tags: trunk | |
| 05:38 | Bit more robustness when talking to Pageant check-in: 0abac01e0f user: simon tags: trunk | |
| 05:32 | Oops - don't invent an X authorisation when doing agent forwarding! Overenthusiastic c'n'p breaks the world. check-in: a2542209d8 user: simon tags: trunk | |
| 05:19 | Fix a segfault on abrupt X connection shutdown. check-in: 4c83fcb2bd user: simon tags: trunk | |
|
2001-03-14
| ||
| 05:47 | AES should have accelerator s, not a, to avoid a clash check-in: 318ddb27e1 user: simon tags: trunk | |
|
2001-03-13
| ||
| 04:22 | Dave Hinton's modifications to the network layer interface, which should make it possible to add SSL support later. check-in: 0c3b3070c4 user: simon tags: trunk | |
| 03:41 | Add dependencies for x11fwd.obj to Makefile (thanks Catbells :-) check-in: d0f8edee33 user: simon tags: trunk | |
|
2001-03-12
| ||
| 09:31 | 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. check-in: fa069c172a user: simon tags: trunk | |
| 09:12 | Zero length passwords no longer cause an assertion failure :-) check-in: b982530d97 user: simon tags: trunk | |
| 06:24 | 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. check-in: 31527be6a5 user: simon tags: trunk | |
|
2001-03-10
| ||
| 05:04 | 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. :-) check-in: d67b4799b9 user: simon tags: trunk | |
| 05:03 | Tiny bug in bn_power_2() - didn't work with powers that were a multiple of 16. Oops! check-in: 2fb75ebea1 user: simon tags: trunk | |
| 04:22 | Update the text format of the public key as the comment box is edited check-in: e67e208029 user: simon tags: trunk | |
|
2001-03-09
| ||
| 07:30 | Complete analysis of the magic ASN.1 stuff in RSASSA signatures check-in: ffe3af2d16 user: simon tags: trunk | |
|
2001-03-08
| ||
| 04:07 | Having introduced a new function into the SSH2 compression structure, it would help if I implemented it in the dummy no-compression case! check-in: 6b991175b2 user: simon tags: trunk | |
|
2001-03-06
| ||
| 04:32 | Introduce the ability to distinguish remote SSH implementations by their version strings and enable bug compatibility modes. check-in: f363cd4fcd user: simon tags: trunk | |
| 03:29 | 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 :-) check-in: 21fd39c25b user: simon tags: trunk | |
|
2001-03-05
| ||
| 11:31 | Fix various trivial compiler warnings check-in: 585485e79e user: simon tags: trunk | |
| 10:38 | 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. check-in: b3e5c90b5b user: simon tags: trunk | |
| 04:32 | Further traffic analysis defences check-in: 5a6aa0319a user: simon tags: trunk | |
|
2001-03-03
| ||
| 10:38 | 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. check-in: 3851216d60 user: simon tags: trunk | |
| 10:10 | Remove some stray diagnostics check-in: defcaaecaf user: simon tags: trunk | |
| 10:05 | Remove a spurious \r\n from an Event Log message check-in: 95b45d0cd5 user: simon tags: trunk | |
| 09:56 | SSH2 can now use Pageant to obtain keys from check-in: 3ae72a462d user: simon tags: trunk | |
| 09:31 | Add support for the OpenSSH SSH2 agent protocol. check-in: 328b5f83c7 user: simon tags: trunk | |
| 07:53 | 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 :-). check-in: e1aa7ffa13 user: simon tags: trunk | |
| 06:05 | Oops - fix silly segfault in new puttygen check-in: ffa475b6e8 user: simon tags: trunk | |
| 05:54 | 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. check-in: 0761a1ad90 user: simon tags: trunk | |
| 05:53 | More options for bignum debugging check-in: 74ad85582b user: simon tags: trunk | |
|
2001-03-02
| ||
| 11:16 | Include key type in SSH2 key fingerprints, now we have more than one check-in: 1ff73fc595 user: simon tags: trunk | |
| 11:14 | Argh, sshrsa.c now depends on sshsha.c so Pageant needs it :-( check-in: 71f3b4536e user: simon tags: trunk | |
| 11:13 | Added support for RSA host keys (not user keys yet) check-in: e92b8a0de1 user: simon tags: trunk | |
| 11:13 | Extra crash-safety in decoding a DSS signature blob check-in: eaf96566f8 user: simon tags: trunk | |
| 07:55 | 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). check-in: 6c598766ba user: simon tags: trunk | |
| 05:44 | Add AES support in SSH2. Not yet complete: there's no way to select it in the GUI (or even in the registry). check-in: 4640d5ae4b user: simon tags: trunk | |
| 04:29 | A fix in modmul: don't segfault or fill the result with rubbish if the unreduced product is shorter than the modulus. check-in: 8f2b0e482b user: simon tags: trunk | |
| 03:25 | Fix problem with pointer hiding check-in: d2672cfce9 user: simon tags: trunk | |
| 03:24 | Jacob's fixes for the Event Log check-in: 1a91f8f9d3 user: simon tags: trunk | |
|
2001-03-01
| ||
| 11:55 | Diffie-Hellman group exchange in SSH2. Currently #ifdeffed out (change the sense of #ifdef DO_DIFFIE_HELLMAN_GEX in ssh.c) because it's _far_ too slow. Will be re-enabled once the bignum routines work a bit faster (or rather a _lot_ faster). check-in: 886d6012e2 user: simon tags: trunk | |
| 11:45 | Add a key length indication to each SSH2 cipher structure, in preparation for needing to know how much key material each cipher needs in order to select a suitable Diffie-Hellman group. check-in: c3e83708f2 user: simon tags: trunk | |
| 11:41 | Remove the last lingering knowledge, outside sshbn.c, of the internal structure of the Bignum type. Bignum is now a fully opaque type unless you're inside sshbn.c. check-in: 92ac2a679e user: simon tags: trunk | |
| 06:27 | Stop accidental subsystem attempts check-in: 9c5e583e06 user: simon tags: trunk | |
| 05:49 | Fix a potential segfault check-in: 304e70314e user: simon tags: trunk | |
|
2001-02-27
| ||
| 11:09 | Oops, that broke Telnet negotiation display. Fix tabstops in eventlog. check-in: bb6286cbdb user: simon tags: trunk | |
| 11:02 | Timestamp every line of the Event Log. The primary reason for this (generating detail in bug reports when SSH2 repeat key exchange failed) is no longer an issue, but it might be useful for other things. It's a _log_ dammit, and logs should be timestamped. check-in: 28b331bc7c user: simon tags: trunk | |
| 03:11 | Patches to prevent a couple of silly crashes check-in: 373c05b772 user: simon tags: trunk | |
|
2001-02-26
| ||
| 10:39 | Moderately evil workaround to compensate for a variation in behaviour of FXP_REALPATH. (Specifically, BSD and GNU realpath(3) disagree over whether to return success when computing the realpath for a putative new file to be created in a valid directory. There's no way we can tell from (say) the OpenSSH version string because OpenSSH might have been compiled to use the local realpath _or_ its own nonbroken one.) check-in: 0ec311cd06 user: simon tags: trunk | |
| 10:37 | Ahem. sftp.obj depends on sftp.c not on psftp.c! check-in: 14ef9c586d user: simon tags: trunk | |
| 03:21 | Finish adding PSFTP to the master Makefile (oops!) check-in: a5be8021cc user: simon tags: trunk | |
|
2001-02-24
| ||
| 10:08 | psftp now works as part of the PuTTY suite check-in: 4ce457b44f user: simon tags: trunk | |
| 06:02 | SFTP client now successfully handles cd, ls, get and put. check-in: 952f067aa8 user: simon tags: trunk | |
|
2001-02-23
| ||
| 12:21 | First stab at an SFTP client. Currently a Unixland testing app, not integrated into PuTTY. check-in: 5c89fa98d9 user: simon tags: trunk | |
| 12:21 | 64-bit integer routines check-in: bac39448ac user: simon tags: trunk | |
| 07:15 | Add a traffic analysis defence to SSH2 password authentication check-in: ea984bef10 user: simon tags: trunk | |
|
2001-02-22
| ||
| 03:07 | Update copyright dates to 2001 :-) check-in: 1c4e5fbfeb user: simon tags: trunk | |
|
2001-02-20
| ||
| 07:55 | Attempt to fix the remaining key re-exchange bug check-in: 5d29e6606b user: simon tags: trunk | |
|
2001-02-19
| ||
| 17:24 | More proto `how-to' documentation: CVS and WinCVS check-in: 77e1489eda user: owen tags: trunk | |
| 04:54 | Add a how-to section on public-key authentication in PSCP check-in: ce3f6668e3 user: simon tags: trunk | |
| 04:54 | Add "make clean" target check-in: e0ced5572b user: simon tags: trunk | |
|
2001-02-07
| ||
| 05:20 | Prelim. CVS/plink howto check-in: 9ea6761e36 user: owen tags: trunk | |
|
2001-02-06
| ||
| 03:34 | Mostly Mathias Leinmueller's PuTTYgen documentation, modified slightly and Buttressed. check-in: 013cfd5538 user: owen tags: trunk | |
|
2001-02-05
| ||
| 07:42 | Modifications to the new Close On Exit option: - wording change (required a patch to winctrls.c:radioline()) - `only on clean exit' is used when an old-style config says `yes', on the grounds that it's more generally useful than `always' and also we want to map the old default to the new default. check-in: 98357f76b8 user: simon tags: trunk | |
| 07:08 | Jacob's patch to improve Close On Exit behaviour check-in: 0d1af1db05 user: simon tags: trunk | |
| 07:04 | Various bug/warning fixes from Jacob check-in: 0859a0ede3 user: simon tags: trunk | |
|
2001-02-04
| ||
| 09:49 | Fix various slashes. check-in: f9b757f58e user: owen tags: trunk | |
| 09:47 | Plink documentation cribs heavily from PSCP documentation, film at 11. check-in: 23cab600a0 user: owen tags: trunk | |
| 09:35 | Some examples. check-in: 021554d40f user: owen tags: trunk | |
|
2001-02-01
| ||
| 08:13 | Shrink the keepalive-timeout box so the text beside it can all fit in check-in: 903a927c8b user: simon tags: trunk | |
| 08:11 | Yet another attempt at OOB handling in the network abstraction. This version allows you to specify, per socket, which sockets receive OOB data in-line (so that you know what was before the mark and what was after) and which receive it out of line (so it's really a one-byte out-of-band facility rather than discard-to-mark). This reflects the fact that rlogin appears to make more sense in the latter mode, and telnet in the former. This patch makes rlogin work right for me. check-in: a766f640f1 user: simon tags: trunk | |
| 08:09 | Ignore the zero byte at the start of the rlogin main protocol check-in: ffbd4dcd12 user: simon tags: trunk | |
| 08:07 | Fix an always-false comparison (don't compare a char to 0x80!) check-in: 5b9e0a3933 user: simon tags: trunk | |
| 05:35 | Avoid mallocing zero bytes in the event log Copy processing, which was apparently a problem for compilers other than Visual C. Thanks to Roman Pompejus for pointing it out. check-in: 5caa8fa87b user: simon tags: trunk | |
|
2001-01-31
| ||
| 03:10 | Add zlib_freetable() to prevent memory leaks. Thanks to Kevin Eric Saunders check-in: 04b0ae2606 user: simon tags: trunk | |
|
2001-01-30
| ||
| 18:28 | This time, a working version of the pscp docs. check-in: 5922543b52 user: owen tags: trunk | |
| 18:25 | More pscp documentation. check-in: 7be1300fe6 user: owen tags: trunk | |
|
2001-01-29
| ||
| 11:26 | More stuff is written. check-in: c27c0fdb11 user: simon tags: trunk | |
| 09:10 | Don't forget to read any outstanding data on receipt of FD_CLOSE. Particularly useful for people speaking HTTP, Finger etc over raw connections. check-in: 47af7bf5e2 user: simon tags: trunk | |
| 08:49 | Robert de Bath's TCP Urgent / Telnet SYNCH patch. check-in: dae404c16f user: simon tags: trunk | |
| 08:31 | Prevent "Connection closed" message box from appearing after the "Network error" box. The latter on its own is enough. check-in: 9a505cf629 user: simon tags: trunk | |
| 08:30 | Prevent duplicate sk_close() calls on the same socket when the connection dies unexpectedly (CONNABORTED / CONNRESET) check-in: edd16e834d user: simon tags: trunk | |
| 07:19 | Remove a segfault in bombout() macro: don't sk_close() the socket if it's already NULL. The `Incorrect MAC' problem was causing ssh2_rdpkt to bombout(), setting s to NULL, and then a secondary bombout() was happening at the next level up, causing a segfault. check-in: 51b9f5b532 user: simon tags: trunk | |
|
2001-01-28
| ||
| 08:38 | Instructions on setting PATH more permanently. check-in: b092443bae user: owen tags: trunk | |
| 08:27 | More options documented check-in: d11e573be5 user: owen tags: trunk | |
| 08:00 | Use the PuTTY site's CSS stylesheet. Add Contact mail address to the page footer. check-in: 82e9fb1907 user: owen tags: trunk | |
|
2001-01-27
| ||
| 11:49 | Documentation for -P and -pw check-in: 3fa3d91b66 user: owen tags: trunk | |
| 10:26 | A start at some proper PSCP documentation check-in: e1c2dc9073 user: owen tags: trunk | |
| 09:51 | Remove -gui from the command-line help in pscp, because it's an internal option only. check-in: 7f9d2b3e36 user: simon tags: trunk | |
|
2001-01-26
| ||
| 12:50 | Fix the SSH2 key re-exchange bug. Session id != exchange hash, because the session id is the exchange hash from the _first_ key exchange, so in subsequent key exchanges they're different. check-in: 8ff44d5b9d user: simon tags: trunk | |
| 06:22 | Ensure all backends _remember_ the connection has closed after receiving a network error. Should prevent the cascading-error-box bug. check-in: 6942ae0f1a user: simon tags: trunk | |
| 03:48 | Jacob's patch to fix all the accelerators. AGAIN. check-in: b8078eef9c user: simon tags: trunk | |
| 03:33 | Fix build errors in PSCP after line discipline upheaval check-in: 259c83c009 user: simon tags: trunk | |
|
2001-01-24
| ||
| 08:55 | Use `default_port' rather than `22' when loading a default session. check-in: 29621124d4 user: simon tags: trunk | |
| 08:08 | Rethink the whole line discipline architecture. Instead of having multiple switchable line disciplines, we now have a single unified one which changes its behaviour based on option settings. Each option setting can be suggested by the back end and/or the terminal handler, and can be forcibly overridden by the configuration. Local echo and local line editing are separate, independently switchable, options. check-in: d2a045d8e1 user: simon tags: trunk | |
| 04:11 | Improve socket error handling so that a socket error isn't an automatic fatalbox(). Instead, the error is passed to the receiver routine, which can decide just how fatal the problem really is. check-in: d2802d2956 user: simon tags: trunk | |
| 03:29 | Ahem. The log-file Browse button should set cfg.logfilename and not cfg.keyfile. Next time I copy and paste a huge chunk of code, I should take more care about it :-/ check-in: 3871bb8535 user: simon tags: trunk | |
|
2001-01-23
| ||
| 11:40 | Roman Pompejus's suggestion: do sensible things with focus when the event log window appears or disappears. check-in: 4cdb496284 user: simon tags: trunk | |
| 11:37 | Roman Pompejus's fix for the TAB-not-working-in-Event-Log bug check-in: 3c6a9820e7 user: simon tags: trunk | |
| 08:20 | When the SSH panel disappears in puttytel, the Tunnels panel should too! check-in: a7c0af232a user: simon tags: trunk | |
| 05:02 | Remove the entirely pointless fourth parameter from x11_init(). check-in: 5be6940dc1 user: simon tags: trunk | |
| 04:19 | Fix a subtle bug affecting multiple-socket handling in Plink. (Was interfering with X forwarding.) Details of bug: the event object used as the target of WSAEventSelect is created in such a way that it is automatically reset when it releases a thread from WaitFor*Objects. Subsequently, a read on the first socket in the list causes another network event if not all the available data was read; thus the event object is set again. Then, WSAEnumNetworkEvents is called again for the _second_ socket, and is passed the network event, which it therefore resets. So an event has been dropped, and things only get restarted when some more data arrives on the first socket. check-in: 400ef788d3 user: simon tags: trunk | |
|
2001-01-22
| ||
| 11:25 | Update puttygen GUI code to use Jeremy Sawicki's better group boxes check-in: 691481e5fc user: simon tags: trunk | |
| 11:24 | Add dependencies for puttygen.c check-in: d58e69cacf user: simon tags: trunk | |
| 11:24 | Clean up a couple of trivial compiler warnings. check-in: 29cff11599 user: simon tags: trunk | |
| 11:17 | Jeremy Sawicki's fix for the multiple-conflicting-accelerators problems: controls are now destroyed and recreated on a panel switch. In addition, this patch also introduces a better means of doing the group boxes. check-in: 9f716a9c9b user: simon tags: trunk | |
| 10:38 | Ability to hide the mouse pointer on a keypress a la Word check-in: e5b34e2fac user: simon tags: trunk | |
| 09:36 | Bring the SSH2 channel architecture up to scratch, enabling X forwarding to work under SSH2. Also - surprise! - implement X forwarding under SSH2. check-in: eaa1421496 user: simon tags: trunk | |
| 07:32 | Update the file list in .cvsignore check-in: d2d1f165d1 user: simon tags: trunk | |
| 07:15 | Add a title to the Tunnels panel check-in: db2da24bb3 user: simon tags: trunk | |
| 06:35 | Try the blindingly-obvious fix for the hidden-controls-are-still- accessible GUI bug. check-in: b6c382f8ab user: simon tags: trunk | |
| 05:34 | Add X11 forwarding, mainly thanks to Andreas Schultz check-in: ac34515183 user: simon tags: trunk | |
|
2001-01-20
| ||
| 05:00 | Make sure it's SSH, and not Rlogin, which gets omitted from the PuTTYtel config box. Oops! check-in: caed58cea0 user: simon tags: trunk | |
|
2001-01-19
| ||
| 04:10 | Experimental Rlogin support, thanks to Delian Delchev. Local flow control is unsupported, and server-to-client comms may fail for want of working TCP Urgent. check-in: da6b4093b4 user: simon tags: trunk | |
| 03:01 | Keepalives are now in seconds not minutes check-in: 848d3511b0 user: simon tags: trunk | |
|
2001-01-18
| ||
| 11:29 | Add a .cvsignore file check-in: 170183088b user: simon tags: trunk | |
|
2001-01-17
| ||
| 11:25 | The `wrapnext' variable now states whether we _would_ wrap next character if we were wrapping, not whether we _will_ wrap next character. Makes for saner behaviour with vertical-line cursor and also when changing autowrap mode while on rightmost column. Does entail small behavioural changes to backspace and destructive- backspace when in rightmost column with Auto Wrap off, but I don't think they should be catastrophic, or indeed that there's a well defined Right Behaviour. check-in: 1268f6737a user: simon tags: trunk | |
| 11:20 | Tidy up that latest checkin. PS_DOTTED is spelled PS_DOT and in any case doesn't really cut it; we have to SetPixel every other one manually because although PS_ALTERNATE exists it only works under NT. Meanwhile, IDC_CURSTATIC was already used, for the cursor _keys_. Duh. check-in: ddf71499af user: simon tags: trunk | |
| 10:57 | Introduce alternative cursor shapes: underline, vertical line check-in: e2c48178f1 user: simon tags: trunk | |
| 10:57 | Trivial fix for when the two directions select different encryption algorithms check-in: c5de262295 user: simon tags: trunk | |
| 10:33 | Further work on writing the manual check-in: 7b1e64bc51 user: simon tags: trunk | |
| 06:46 | Continue writing documentation. Looks like a long job :-( check-in: 17a02ba753 user: simon tags: trunk | |
| 04:11 | Initial checkin of an outline for the PuTTY user manual. check-in: 771beaaf03 user: simon tags: trunk | |
|
2001-01-11
| ||
| 07:19 | Remove rogue debug statement check-in: 09024141b8 user: simon tags: trunk | |
|
2001-01-09
| ||
| 11:25 | IPv4 numeric addresses were broken thanks to IPv6 patch check-in: e807c51eed user: simon tags: trunk | |
| 11:16 | Oops - accidentally undid rev 1.82 [r844] check-in: d817959ee0 user: simon tags: trunk | |
|
2001-01-08
| ||
| 10:28 | Enable explicit changing of the window title after session start check-in: aaeb10004c user: simon tags: trunk | |
| 10:24 | Disable logging completely if the user selects Cancel when told the file already exists check-in: a2fc91fd2c user: simon tags: trunk | |
| 07:57 | Ensure ssh specials (EOF and PING) don't occur except in connection states where they're meaningful. In case Plink misses an EOF by attempting to send it before reaching SSH_STATE_SESSION, it is buffered and sent later. PINGs can be sent during any part of the initialisation phase _except_ before deciding whether to use protocol 1 or 2. check-in: d9a5cfe18b user: simon tags: trunk | |
|
2001-01-07
| ||
| 13:16 | Jeroen Massar's IPv6 patch. Disabled by default, for now. check-in: 4646b62243 user: simon tags: trunk | |
| 13:15 | Fix for spurious Space getting sent when alt_space and alt_only are both set and you bring up the Sysmenu with an alt_space and dispatch it with an alt_only. (The SYSKEYDOWN for alt_only is never received, but we get the SYSKEYUP which PostMessages the space since it expects to be triggering the _creation_ of a sysmenu. Solution: set alt_state to 0 when an alt_space triggers a sysmenu, so that the final SYSKEYUP will be seen as spurious, which it is. Perhaps we could do this better.) check-in: add0639425 user: simon tags: trunk | |
| 12:28 | Kestutis Kupciunas's Lithuanian-friendliness patch to TranslateKey check-in: 44e495b996 user: simon tags: trunk | |
| 12:24 | Improved session logging courtesy of Roman Pompejus check-in: 1df3fef130 user: simon tags: trunk | |
| 11:18 | Squelch some spurious resize events. check-in: 23269ced0c user: simon tags: trunk | |
| 11:18 | Adam D Ligas's segfault: one form of connection closure was failing to set SSH_STATE_CLOSED, causing subsequent resize events to go foom. check-in: 9bf6fbf735 user: simon tags: trunk | |
| 10:38 | Oops - that do-we-need-to-resize-window check failed to spot font changes check-in: 0bc2bf0ff0 user: simon tags: trunk | |
| 10:35 | Fix the System Caret so it really is invisible, and the right size too. check-in: a574cdd922 user: simon tags: trunk | |
| 10:27 | `Change Settings' now behaves sensibly w.r.t. window size. check-in: eae8ad51cc user: simon tags: trunk | |
| 09:27 | Turn a rogue malloc to smalloc check-in: 6e73bcca6c user: simon tags: trunk | |
| 09:12 | Apply `getservbyname' to the Port Number field in case it's non-numeric. Patch due to Christian Biesinger. check-in: 08e1baff3f user: simon tags: trunk | |
| 08:30 | AltGr should now work again even when Compose key disabled check-in: 2c4038fa5b user: simon tags: trunk | |
| 07:39 | Make the colour list failsafe. Patch due to Robert de Bath check-in: 1827f40db5 user: simon tags: trunk | |
| 07:31 | Patch from Christian Biesinger: pscp guesses your Windows username by default check-in: ca7e00ef21 user: simon tags: trunk | |
|
2000-12-18
| ||
| 03:20 | Apply improved WinSock error handling to the few situations it still hadn't been applied to. check-in: a4b94cebe6 user: simon tags: trunk | |
| 03:20 | Attempt to get repeated key exchange working in SSH2. Still under test - might not be 100%. I think it _ought_ to work though. check-in: 1cf3831915 user: simon tags: trunk | |
|
2000-12-12
| ||
| 08:04 | Remove unnecessary printfs from Minefield check-in: 0385d044d3 user: simon tags: trunk | |
| 05:07 | Fix an intermittent segfault that prevented the new Zlib compression from being very useful. (Thanks to Minefield for catching it.) check-in: b5b8638aa8 user: simon tags: trunk | |
| 04:57 | Added Minefield: an alternative memory allocator along the lines of Electric Fence. Enable by compiling with /DMINEFIELD. check-in: 19ecd40b6f user: simon tags: trunk | |
| 04:33 | 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. check-in: 6f56ef599a user: simon tags: trunk | |
|
2000-12-02
| ||
| 06:48 | Improve SSH2 host key abstraction into a generic `signing key' abstraction, so as to be able to re-use the same abstraction for user authentication keys and probably in the SSH2 agent (when that happens) as well. check-in: be763a8b3a user: simon tags: trunk | |
| 05:43 | Fix bugtraq 1949: server could open an agent forwarding channel even if agent forwarding had not been negotiated on, and more particularly even if it had been deliberately disabled by the user. check-in: 947325c657 user: simon tags: trunk | |
|
2000-11-30
| ||
| 15:35 | Prevent wildcards in source specs from matching . or .. check-in: 08b255ecfa user: simon tags: trunk | |
|
2000-11-24
| ||
| 16:27 | Correct pointer types in new clipme function check-in: 96753e1a99 user: simon tags: trunk | |
|
2000-11-21
| ||
| 13:28 | Ron Kuris's "copy everything to clipboard" patch check-in: 0e8671fa0a user: simon tags: trunk | |
| 13:00 | Patch from Robert de Bath: increase timer resolution. check-in: 3bc6819ea5 user: simon tags: trunk | |
| 13:00 | Patch from Robert de Bath: blank the saved-session name edit box when loading `Default Settings'. check-in: 4777288517 user: simon tags: trunk | |
| 05:14 | Oops - and if we generate link maps, "make clean" should remove them too check-in: 217d6c4bf9 user: simon tags: trunk | |
| 05:13 | Add link map files to Makefile, in case people send crash dumps check-in: 67be9535ee user: simon tags: trunk | |
| 04:53 | Fix segfault when you press a key before the SSH protocol decides whether it's doing SSH1 or SSH2. Only visible on slow servers :-) check-in: 84fe71154e user: simon tags: trunk | |
|
2000-11-16
| ||
| 04:47 | Improve comment so I don't misunderstand when I come back to this :-) check-in: 3b7a47022e user: simon tags: trunk | |
|
2000-11-15
| ||
| 09:03 | Use a Miller-Rabin test instead of a Fermat test; add comments check-in: dc5e4019cd user: simon tags: trunk | |
| 05:13 | Fix another silly segfault check-in: 53076fab9e user: simon tags: trunk | |
|
2000-11-07
| ||
| 11:50 | Software invocation of the System menu now pops up the actual menu, rather than just putting the window into the state where Down will do so check-in: 44a2c2d5ae user: simon tags: trunk | |
|
2000-11-01
| ||
| 15:34 | Implement Zlib compression, in both SSH1 and SSH2. check-in: 7db26db390 user: simon tags: trunk | |
| 13:54 | Move dprintf and the debug system out into misc.c, to centralise it. Saves binary space and also allows redirection of debug statements to a file `debug.log'. check-in: 57f58e5e4d user: simon tags: trunk | |
|
2000-10-31
| ||
| 03:29 | Back off a bit of that vulnerability fix, which was breaking `pscp host:wildcard* .' and suchlike. check-in: af2916ab05 user: simon tags: trunk | |
|
2000-10-30
| ||
| 04:39 | Fix side-effect of Always On Top patch: any reconfiguring in mid-session was zapping the window to the top left corner of the screen check-in: 588ae44083 user: simon tags: trunk | |
| 04:16 | Reset compose state to zero when PuTTY window gains focus check-in: 19ea12852a user: simon tags: trunk | |
| 03:54 | Couple of fixes for pscp's GUI interface mode check-in: 1cb85da9d1 user: simon tags: trunk | |
|
2000-10-27
| ||
| 04:46 | Add support for Always On Top. Patch due to Janes "Ender" Brown. check-in: ffad775a06 user: simon tags: trunk | |
| 04:24 | Stop the "Sent username %s" message coming up twice in pscp -v check-in: bae801d3a5 user: simon tags: trunk | |
| 04:17 | Misc bugfixes check-in: 194fd0cfeb user: simon tags: trunk | |
|
2000-10-26
| ||
| 08:10 | Format SSH2_MSG_DISCONNECT correctly (with reason code, reason string, and language tag). check-in: 4e229e82b1 user: simon tags: trunk | |
| 03:25 | Fix a segfault (addr->error was unpredictable following a dotted-dec lookup) check-in: cd97c41b0b user: simon tags: trunk | |
|
2000-10-25
| ||
| 09:29 | Impose a lower limit of 256 on key lengths. This is mostly because the primegen() function doesn't work well with <100 bits, so RSA keys need to be >=200 to be generated correctly, and I thought 256 was a nice round number beyond that just to be sure. Perhaps I should also have a security warning on any key less than 768; or perhaps I should let people shoot themselves in the feet if they really want to. check-in: 562fe0c8c5 user: simon tags: trunk | |
| 09:20 | Gaaah, I might have known. Split combined app cursor / app keypad disablement option into two options so the app cursor keys and app keypad can be controlled separately. The Pedantic Software Award in this case goes to the Midnight Commander for its egregious failure to just use the terminal in Perfectly Normal mode. check-in: f2d29d597a user: simon tags: trunk | |
| 05:25 | Be more sure that state->collecting_entropy can't be spuriously set check-in: dadec84bc8 user: simon tags: trunk | |
| 03:23 | Fix control ID bug causing rogue Appearance title bars in other panels check-in: 7f37c711fd user: simon tags: trunk | |
| 01:59 | Reintroduce random_stir() check-in: 4c316a8029 user: simon tags: trunk | |
| 01:57 | Enhance Diffie-Hellman implementation to use bignum_cmp check-in: 0e4dabfdd6 user: simon tags: trunk | |
|
2000-10-24
| ||
| 16:43 | Fix another bignum formatting problem. This one hit Diffie-Hellmann check-in: 79bb8babda user: simon tags: trunk | |
| 08:49 | Add configurable option to disable application keypad/cursor keys totally check-in: 309f8cc397 user: simon tags: trunk | |
| 08:40 | Add a couple of ellipses in system menu check-in: 5580e1dab3 user: simon tags: trunk | |
| 08:39 | Remove a rogue diagnostic check-in: 2bbb846f47 user: simon tags: trunk | |
| 08:38 | Add the Appearance panel and reorganise things a bit check-in: c940c019a0 user: simon tags: trunk | |
| 06:16 | Fix failure to re-enable local line discipline when TELOPT_ECHO is turned _back off_ by the remote server. (server sends WONT) check-in: e7bff0823a user: simon tags: trunk | |
| 05:47 | Fix miscellaneous compiler warnings. Thanks to Jacob Nevins check-in: 8952007fd8 user: simon tags: trunk | |
| 04:55 | SSH2 connections weren't closing cleanly after socket revamp. Fixed. check-in: 70d31a0ebd user: simon tags: trunk | |
| 04:49 | Window resizing wasn't working in SSH2 check-in: 90820ba887 user: simon tags: trunk | |
|
2000-10-23
| ||
| 11:11 | Make the frankly ridiculous prototypes for modpow() and modmul() more sane check-in: 85bccc2b87 user: simon tags: trunk | |
| 11:03 | Update DSS implementation to use new bignum routines check-in: 16fb7a4678 user: simon tags: trunk | |
| 10:20 | Improved entropy gathering. check-in: bef540f589 user: simon tags: trunk | |
| 10:18 | Fix a bug which was causing occasional failed-host-key-check messages. Also left some diagnostics in, under #if 0, so that next time this happens it'll be easier to debug. check-in: 7d82ec4952 user: simon tags: trunk | |
| 07:31 | Oops. A field like `sending_oob' in the Socket structure really deserves to be initialised to something sane at creation time. check-in: bade166428 user: simon tags: trunk | |
| 07:20 | Plink and PSCP were failing to load the `Default Settings' options when connecting to an arbitrary hostname. In particular, setting a default user name didn't work. Now it does. check-in: 05ecf49826 user: simon tags: trunk | |
| 06:57 | Remove the NO_SECURITY define I accidentally copied from Pageant check-in: 8c4be9beb8 user: simon tags: trunk | |
| 06:55 | Created a shiny new abstraction for the socket handling. Has many advantages: - protocol modules can call sk_write() without having to worry about writes blocking, because blocking writes are handled in the abstraction layer and retried later. - `Lost connection while sending' is a thing of the past. - <winsock.h> is no longer needed in most modules, because "putty.h" doesn't have to declare `SOCKET' variables any more, only the abstracted `Socket' type. - select()-equivalent between multiple sockets will now be handled sensibly, which opens the way for things like SSH port forwarding. check-in: 59c2b0e4fd user: simon tags: trunk | |
| 05:32 | Created a shiny new abstraction for the socket handling. Has many advantages: - protocol modules can call sk_write() without having to worry about writes blocking, because blocking writes are handled in the abstraction layer and retried later. - `Lost connection while sending' is a thing of the past. - <winsock.h> is no longer needed in most modules, because "putty.h" doesn't have to declare `SOCKET' variables any more, only the abstracted `Socket' type. - select()-equivalent between multiple sockets will now be handled sensibly, which opens the way for things like SSH port forwarding. check-in: a2baae931e user: simon tags: trunk | |
|
2000-10-21
| ||
| 12:52 | Ooh. Actually, that vulnerability is further-reaching than I thought. As well as the ".." attack in recursive copies, the name sent by the client was also trusted in a single-file implicit- destination copy such as "pscp host:foo .". (The result was ./foo, where foo is what the server claimed the file was rather than what the user asked for. I think it's not unreasonable that if the user requests file `foo' from the host, he should get the result in a file called `foo' no matter what the host thinks.) check-in: 45b7073ca1 user: simon tags: trunk | |
| 12:36 | Fix a potential vulnerability in incoming `pscp -r'. The server sends filenames of things in the directory being copied. A malicious server could have sent, for example, "..\..\windows\system\foo.dll" and overwritten something crucial. The filenames are now vetted to ensure they don't contain slashes or backslashes. check-in: fb06cc0f0f user: simon tags: trunk | |
| 11:30 | Three new configurable options: - Robert de Bath's Compose key is now off by default and configurable on - The ages-old controversy over whether ALT by itself should bring the System menu up is now controllable by a config option - You can now independently configure whether scrollback resets on a keypress _and_ whether it resets on screen activity. check-in: 36e1cf31e3 user: simon tags: trunk | |
|
2000-10-20
| ||
| 13:36 | Chinese support patch from zmx@cdpa.nsysu.edu.tw check-in: 61d9f40750 user: simon tags: trunk | |
| 12:57 | Remember to close key files when rsakey_encrypted meets a bogus one check-in: 79cdab1ba7 user: simon tags: trunk | |
| 10:20 | Put back the code that ensures "Default Settings" is always in the session list even if it isn't in the Registry. This got deleted overenthusiastically because I didn't have a comment explaining what it was doing there. Now there's a comment, so I probably won't remove it again. check-in: ed6506d04e user: simon tags: trunk | |
| 10:09 | Rename "Stored Sessions" to "Saved Sessions" for consistency check-in: cc1dd19f91 user: simon tags: trunk | |
| 10:09 | Some better IDC_* names for the controls on the Colours panel check-in: c762c25eb4 user: simon tags: trunk | |
| 09:45 | Add the LBS_NOTIFY style to the list box in colouredit(), which was vital to it working right check-in: 5c40e9c36c user: simon tags: trunk | |
| 08:51 | Introduce a sane interface function, from_backend(), for backends to use when they have data from the network. Replaces the utterly daft inbuf / inbuf_head / term_out() interface, which only made sense when feeding to terminal.c. (terminal.c now implements from_backend() as a small function that gateways to the old interface.) As a side effect, from_backend() also has an `is_stderr' parameter, so scp can once again separate the server's pronouncements on stderr from the actual protocol progress on stdout. check-in: 07725a2915 user: simon tags: trunk | |
| 08:23 | Trim trailing whitespace off saved session names on the command line check-in: 889672b0ee user: simon tags: trunk | |
| 07:31 | Remember to update scrollbar when scrollback is reset check-in: 24264a1c40 user: simon tags: trunk | |
| 06:16 | Replace the 8859-2 -> Win1250 translation which I accidentally blew away check-in: 1c1f98fd70 user: simon tags: trunk | |
| 05:47 | A couple of UI tweaks in puttygen check-in: 15e8f8e0d3 user: simon tags: trunk | |
| 05:44 | Removed TODO comment after verifying that generated keys work check-in: 6d0f485169 user: simon tags: trunk | |
| 05:42 | Entropy fix after better statistical analysis check-in: 997ad13ebf user: simon tags: trunk | |
| 05:07 | Variable key size in PuTTYgen. Also required adding WM_VSCROLL to the window style in bigeditctrl() in winctrls.c. check-in: 16f42d028f user: simon tags: trunk | |
| 04:50 | Add a PuTTYgen icon check-in: 2ba40c2260 user: simon tags: trunk | |
| 04:43 | Check whether key was actually saved, and warn if not check-in: c266d0396c user: simon tags: trunk | |
| 04:41 | Save Key now prompts before overwriting an existing file check-in: a677373c49 user: simon tags: trunk | |
| 04:36 | Adjust the title of the PuTTYgen window check-in: 3da231957f user: simon tags: trunk | |
| 04:31 | Add a second passphrase prompt to protect against typos check-in: f2cff3718f user: simon tags: trunk | |
| 04:24 | We must InitCommonControls() or the progress bar doesn't work on 95 check-in: 738a36faa4 user: simon tags: trunk | |
|
2000-10-19
| ||
| 10:43 | 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. check-in: 6ca7ca4b41 user: simon tags: trunk | |
|
2000-10-18
| ||
| 10:36 | Miscellaneous cleanups and reorgs in preparation for building PuTTYgen. In particular, moved self-managing controls stuff out of windlg.c into the new and reusable winctrls.c. check-in: bc05912afb user: simon tags: trunk | |
| 10:33 | Add some more commented-out diagnostics for ssh1 check-in: d06b20ce5f user: simon tags: trunk | |
| 10:00 | RSA key generation routines, and the bignum enhancements required to support them. A key generation tool will be forthcoming soon. check-in: 0867c6f5f7 user: simon tags: trunk | |
|
2000-10-12
| ||
| 10:26 | Add an "Add Key" option to the systray menu in Pageant check-in: 4b00c86902 user: simon tags: trunk | |
| 09:24 | Implement MD5 MAC for the benefit of old SSH2 servers check-in: 9343a578d9 user: simon tags: trunk | |
| 08:34 | Miscellaneous fixes for better interoperation with commercial SSH 2 check-in: 8481f684cf user: simon tags: trunk | |
| 07:56 | Implement a much more visually appealing, but much more internally grotty, hack to get around Explorer maximising the config box. check-in: bae4981c5c user: simon tags: trunk | |
| 07:39 | Add a config option to emulate the HMAC bug in commercial SSH v2.3.x and earlier (namely, it uses only 16 bytes of key rather than 20). check-in: 1c4e477710 user: simon tags: trunk | |
| 04:10 | Stop the SSH panel appearing in PuTTYtel check-in: 6463fb6e02 user: simon tags: trunk | |
| 04:10 | Stop plink's key verification locking up on input check-in: 864a5e6eec user: simon tags: trunk | |
|
2000-10-11
| ||
| 14:56 | Add UNE 10053 to the cleartext ones check-in: b71f1daa72 user: simon tags: trunk | |
|
2000-10-10
| ||
| 11:02 | Turn off paste-as-poorman for line drawing chars until it's configurable check-in: 989ea651c4 user: simon tags: trunk | |
| 07:43 | ISO8859-2 to CP852 output translation wants to have Win1250 to ISO8859-2 input translation as its counterpart, not CP852 to ISO8859-2. Because the reason you want this translation is if your _font_ is coded CP852 - in which case your keymap will not follow suit but will still be in Win1250. check-in: e8d9334312 user: simon tags: trunk | |
| 05:50 | Scroll regions of two lines are allowed check-in: fd9b98daed user: simon tags: trunk | |
| 04:17 | Trivial bug with the function-key radio buttons check-in: 8b631197c0 user: simon tags: trunk | |
| 04:03 | Now when a saved session is loaded, its name appears in the IDC_SESSEDIT box, so that clicking Save will save over it. Useful for people who want to load, modify, and re-save. Special case: this doesn't apply to Default Settings, because I think people will be more likely to load DS, modify it, and save under a _different_ name, so it's good not to allow a single mouse click to screw them up. check-in: f610916c9f user: simon tags: trunk | |
| 03:33 | Move initialisation of the saved session box outside init_dlg_ctrls() so that you don't end up with twice as many items after clicking Load check-in: f6b663e5a5 user: simon tags: trunk | |
| 03:20 | Rename IDC_FUNCTILDE from "VT400" to "ESC[n~" because another VT400 now exists! check-in: 780b68abf3 user: simon tags: trunk | |
|
2000-10-09
| ||
| 11:29 | Add ISO8859-2 / CP852 translation courtesy of Jaromir Filsak check-in: 26f88ae09e user: simon tags: trunk | |
| 11:12 | Work around horrifyingly nonportable use of unions in <commctrl.h> check-in: 1e13f019c3 user: simon tags: trunk | |
| 10:51 | Abandon the tab control in favour of a tree view check-in: 5d24c9ea3a user: simon tags: trunk | |
| 07:53 | Robert de Bath's big patch: - cope with strange WinSock wrappers not supporting SIOCATMARK - define yet more terminal compatibility modes - support UK-ASCII (just like US-ASCII but # is a sterling sign) - support connection keepalives at a configurable interval check-in: dacc5f4049 user: simon tags: trunk | |
| 07:19 | Miscellaneous fixes to try to make other compilers happier check-in: d26ab350ad user: simon tags: trunk | |
| 07:16 | Remove the hierarchical dialog structure check-in: b7def76c13 user: simon tags: trunk | |
| 04:10 | 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. check-in: 9a28745289 user: simon tags: trunk | |
|
2000-10-07
| ||
| 03:10 | Alt-Enter was fouling up on Win95; added explicit handler check-in: ea5ef7a4d3 user: simon tags: trunk | |
|
2000-10-06
| ||
| 11:19 | Fix sorting of saved sessions list box so Default Settings is back at the top of the list instead of being filed under D check-in: 6a2fce62c1 user: simon tags: trunk | |
| 11:01 | Stop throwing out the Connection panel during midsession reconfig. Instead, only throw out the useless parts of it. See, the new auto- layout features bear fruit immediately! check-in: ea01413e4c user: simon tags: trunk | |
| 10:54 | Update Makefile generation and ensure everything works with Borland 5.5 check-in: d5536a524f user: simon tags: trunk | |
| 08:21 | Create settings.c and move the load/save session code out of windlg.c into it. Allows plink and pscp to no longer link with windlg.c, meaning they lose some of the sillier stub functions and also can provide a console-based form of verify_ssh_host_key(). check-in: 6a5608b815 user: simon tags: trunk | |
| 07:43 | Move omission of SSH protocol setting in PuTTYtel into windlg.c and remove nosshres.rc accordingly check-in: 82bc60153d user: simon tags: trunk | |
| 07:32 | Add a parameter to write_clip() so that windlg.c need not call term_deselect check-in: 21437e2618 user: simon tags: trunk | |
| 07:31 | Re-enable copying the Event Log. (rev 1.39 [r661] accidentally disabled it) check-in: 9744355ccf user: simon tags: trunk | |
| 07:10 | Cross-reference cleanup: winstore.c should not use fatalbox() check-in: 6fc22be474 user: simon tags: trunk | |
| 06:49 | Mistaken identity in sesssaver() was breaking saved-session edit box check-in: b39f2bdf42 user: simon tags: trunk | |
| 06:42 | Tighten up use of "static" throughout. Module-internal things should NOT be exported willy-nilly. It encourages people to use them. check-in: 39b5dda1d1 user: simon tags: trunk | |
| 04:06 | Localise control IDs in each dialog procedure, for maintainability check-in: d05c8d9f4a user: simon tags: trunk | |
| 03:10 | Add LBS_STANDARD on saved session list box, so you can double-click check-in: 08f80b9777 user: simon tags: trunk | |
| 03:06 | Remove rogue debug statement check-in: 9584bc880b user: simon tags: trunk | |
|
2000-10-05
| ||
| 12:19 | Revamp the auto-layout of PuTTY configuration box controls. They are now auto-laid-out at runtime instead of compile time. Byebye win_res.inp and mkres.c; byebye most of win_res.rc; hello a whole new load of control-creation functions in windlg.c. Also, now that we're creating the tab control at runtime, we can check to see if it succeeded and use an alternative if so. This _should_ enable the config box to work on Win32s, although at the time of checkin that's untested. check-in: 7c331ba284 user: simon tags: trunk | |
| 11:48 | Remove /DWIN32S_COMPAT by detecting presence of GetSystemPowerStatus at runtime using GetProcAddress check-in: 849cfeb488 user: simon tags: trunk | |
| 07:15 | We now honour the PLINK_PROTOCOL environment variable if it's set. Also we are able to notice when a backend is instantly sendok(), rather than waiting until after the first successful socket read. (This was zogging raw connections. They're still slightly zogged but not as badly as they were.) check-in: 4403babd9a user: simon tags: trunk | |
|
2000-10-04
| ||
| 09:35 | Enable protocol prefix on [user@]host argument in Plink check-in: 978f627fbe user: simon tags: trunk | |
| 09:35 | Store default port number in each back end check-in: aa9735db7e user: simon tags: trunk | |
| 09:13 | Plink now honours the Default Settings protocol and supports -l for username. Also removed a diagnostic which had got in by mistake. check-in: 0b37467f3c user: simon tags: trunk | |
| 05:02 | Fix a typo; thanks to Al Sutton check-in: b990c09d65 user: simon tags: trunk | |
|
2000-10-03
| ||
| 04:05 | Work around DSA formatting bug in commercial-SSH 2.0.13 check-in: 8bc8e8a1a1 user: simon tags: trunk | |
|
2000-10-02
| ||
| 10:22 | Ability to specify a remote command in PuTTY proper check-in: 1c8cc2988e user: simon tags: trunk | |
| 08:57 | Make the new test suite's comment more accurate :-) check-in: 58ccb1fd31 user: simon tags: trunk | |
| 07:38 | Local remove of first key in list wasn't working check-in: 0d0eb1da40 user: simon tags: trunk | |
| 07:24 | Add ability to configure the initial window title check-in: cd8a3399a0 user: simon tags: trunk | |
| 06:47 | Deletion case 2c can shift the root; case 3b is not the only case that can do that. The bad case happens when you have a root node containing only one actual element, and its two child nodes have only one element each, and you try to delete the element in the root. check-in: 4fd084c2e3 user: simon tags: trunk | |
| 06:47 | Add trailing newline in tree234.h check-in: efe451f712 user: simon tags: trunk | |
| 06:46 | Shiny new test harness for the 2-3-4 tree check-in: 89ce8ddbcb user: simon tags: trunk | |
|
2000-09-29
| ||
| 10:56 | Further restructuring check-in: a8fad32e72 user: simon tags: trunk | |
| 10:53 | Fix ssh2 after the rev 1.54 [r649] reorg broke it check-in: 5fa56c8f05 user: simon tags: trunk | |
| 07:04 | Make sure a locally entered login name still comes up in the pw prompt check-in: 7e03c47c01 user: simon tags: trunk | |
| 07:04 | Oops - remove ugly debugging test pattern in cursor check-in: 1154a575ce user: simon tags: trunk | |
| 05:32 | Try to improve the caret usage check-in: d286e670e1 user: simon tags: trunk | |
| 03:56 | Add -pw and -P options, and usage/version message, to plink check-in: b7b9c438f2 user: simon tags: trunk | |
| 03:43 | Minor restructuring to ssh.c in preparation for portability drive check-in: 19989375f0 user: simon tags: trunk | |
| 03:43 | Add the About and Licence boxes to Pageant check-in: f1cce9068b user: simon tags: trunk | |
| 03:42 | Fix a very old bug nobody ever noticed: multiple About boxes :-) check-in: 75f705b883 user: simon tags: trunk | |
|
2000-09-28
| ||
| 06:05 | DSS key format string was missing some commas check-in: 06bdebe617 user: simon tags: trunk | |
| 04:48 | Keep parent pointers valid during deletion check-in: c982d0028c user: simon tags: trunk | |
| 03:37 | Remove some spurious #includes check-in: 12854689df user: simon tags: trunk | |
| 03:37 | While we're doing a hostkey reorg, store port numbers as well check-in: 730c1dee4e user: simon tags: trunk | |
| 03:35 | Fix small compilation problem in Pageant check-in: ad24f836ee user: simon tags: trunk | |
|
2000-09-27
| ||
| 11:44 | Remove unnecessary DSS bit check-in: eda8d19d65 user: simon tags: trunk | |
| 11:21 | Finish creating the storage.h abstraction and winstore.c implementation check-in: e557ea5fa5 user: simon tags: trunk | |
| 10:21 | Rationalised host key storage. Also started code reorg: persistent-state routines have been moved out into a replaceable module winstore.c. check-in: 0483920aa1 user: simon tags: trunk | |
| 04:36 | Remove the special hooks in ssh.c for pscp. pscp now uses the standard interface to the outside of the ssh module. This means pscp now works without change in SSH2. check-in: 8fc7f9ff56 user: simon tags: trunk | |
|
2000-09-26
| ||
| 09:26 | Implement OpenSSH-compatible RSA key fingerprints and use them throughout check-in: 17b8b5895e user: simon tags: trunk | |
| 08:31 | Oops - free the key after removing it! check-in: 8c1c63765e user: simon tags: trunk | |
| 08:18 | Remote addition and removal of keys in Pageant check-in: 5135e2cd1c user: simon tags: trunk | |
| 07:54 | Accelerators and wording change in Pageant systray menu check-in: 03a25a8daf user: simon tags: trunk | |
| 06:16 | Fix a segfault in agent forwarding code check-in: 54891bde65 user: simon tags: trunk | |
| 06:16 | Fix tree corruption in the "really easy" case on deletion check-in: ff9f35aea0 user: simon tags: trunk | |
| 05:06 | The "Authenticated using key from agent" message is a verbose-only one check-in: 21e51ebc1d user: simon tags: trunk | |
| 05:05 | Fix a small bug in 2-3-4 tree enumeration check-in: 2bd8724989 user: simon tags: trunk | |
| 04:22 | Pageant should now not fail for lack of security APIs on 95-type platforms check-in: 83c546e1ae user: simon tags: trunk | |
|
2000-09-25
| ||
| 11:25 | Oops - puttytel now needs a stub random_destroy_seed() to compile check-in: 11d704cb90 user: simon tags: trunk | |
| 11:17 | Add an invisible System Caret for blind-helper-software to track check-in: 2f46e58f50 user: simon tags: trunk | |
| 10:47 | Implement "putty -cleanup" check-in: e6791e9da7 user: simon tags: trunk | |
| 06:11 | Robert de Bath has a better alternative to revs 1.47/48 [r582,r583]; back out those changes and commit the simpler version check-in: 9b884bb6e1 user: simon tags: trunk | |
| 05:56 | Pageant now detects if it is already running and refuses to start if so check-in: 6ce249bd07 user: simon tags: trunk | |
| 05:55 | Pageant now allows filenames with spaces on cmdline. Thanks to Brian Coogan check-in: 8b97c8da6a user: simon tags: trunk | |
| 05:50 | Double-clicking on the Pageant systray icon now brings up the key list check-in: 20ecae08be user: simon tags: trunk | |
| 05:14 | Rationalise ordering of authentication operations. Still some work to do, but at least pscp no longer hangs when prompting for a passphrase check-in: 8a1e546ec2 user: simon tags: trunk | |
| 04:27 | Enable PuTTY command line to deal with "user@host" format check-in: be23b22b9a user: simon tags: trunk | |
|
2000-09-22
| ||
| 09:46 | Enable copying the Event Log check-in: cd3e56e839 user: simon tags: trunk | |
| 09:24 | Make the Event Log scroll down when more things appear on it check-in: 47b79c3c63 user: simon tags: trunk | |
| 09:10 | Avoid rapid-fire resize events during NT opaque drags check-in: ae6ce77dbd user: simon tags: trunk | |
| 08:23 | Everyone's favourite trivial change: Shift-Ins now pastes check-in: 59bb4bd45e user: simon tags: trunk | |
| 08:16 | Enable better build-time flexibility over which WinSock to include check-in: 710e30e69c user: simon tags: trunk | |
| 08:10 | Bug fix: line discipline selection is not enabled until after ssh authentication phase to stop user/password prompts behaving oddly check-in: 6a62bd814c user: simon tags: trunk | |
| 06:04 | Prevent network errors from summarily closing the window when CoE is off check-in: 9a812d08ee user: simon tags: trunk | |
| 04:49 | Num Lock shouldn't send anything in non-app-keypad mode check-in: e6a81f12c2 user: simon tags: trunk | |
| 04:38 | Closing the About box now returns focus to the config box, and likewise closing the Licence box returns focus to the About box check-in: 53b0cd0a5b user: simon tags: trunk | |
| 04:35 | Saved-session name box now persists over panel switches check-in: e882f53818 user: simon tags: trunk | |
| 04:30 | Work around the missing underline in some fonts check-in: b0da7a2348 user: simon tags: trunk | |
|
2000-09-21
| ||
| 09:34 | Miscellaneous ssh2 fixes. plink is now relatively sane check-in: 95ba42915d user: simon tags: trunk | |
|
2000-09-20
| ||
| 10:15 | Fix Blowfish-with-SSH2 combination, and enable user cipher selection for SSH2 check-in: d9a5271cd4 user: simon tags: trunk | |
| 09:58 | Remove a spurious WS_GROUP check-in: 32a5ffa98f user: simon tags: trunk | |
| 09:29 | SSH2 is now more plausible - window sizes listened to, basic non-crashing check-in: 8c5d667bcc user: simon tags: trunk | |
| 06:40 | Ensure backend netevent handlers are never reentered - fixes many strange problems with the ssh.c coroutines check-in: 2ec133bcd4 user: simon tags: trunk | |
| 05:59 | A couple of SSH2 fixes check-in: 5c68403ec1 user: simon tags: trunk | |
|
2000-09-19
| ||
| 11:29 | Improved means of IPC between agent and PuTTY check-in: a085cbc7c5 user: simon tags: trunk | |
| 03:24 | Fix Jacob's fix for mingw32 resource compiler so that it _only_ happens when using the mingw32 resource compiler! check-in: bbef848662 user: simon tags: trunk | |
|
2000-09-17
| ||
| 02:30 | Jacob Nevins provided this workaround for a bug in mingw32's resource compiler check-in: 12fe270690 user: simon tags: trunk | |
|
2000-09-15
| ||
| 10:54 | Lars Gunnarsson's GUI interface changes check-in: eb5bb44383 user: simon tags: trunk | |
| 06:26 | Configuration option for agent forwarding check-in: 98e7e211ec user: simon tags: trunk | |
| 06:17 | Rationalise accelerators in dialog boxes check-in: b6e415cc9d user: simon tags: trunk | |
| 05:57 | A couple of small cleanups check-in: 554d36098b user: simon tags: trunk | |
| 05:48 | Delete should be void not void *; also use correct compare fn in find. check-in: 83f86a518c user: simon tags: trunk | |
| 05:48 | Delete should be void not void *. check-in: 4f6f0c3aee user: simon tags: trunk | |
| 05:48 | Pageant now accepts an initial key list on the command line check-in: 8cc0645020 user: simon tags: trunk | |
|
2000-09-14
| ||
| 10:04 | Source form of win_res.rc check-in: f61c396818 user: simon tags: trunk | |
| 10:02 | 2-3-4 tree routines check-in: c3493ebd82 user: simon tags: trunk | |
| 10:02 | Added Pageant, a first-attempt PuTTY authentication agent check-in: 73ed12aa69 user: simon tags: trunk | |