Timeline

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

123 check-ins using file x11fwd.c version 4ec0dee437

2002-12-18
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