Timeline

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

337 check-ins using file winctrls.c version c5234322ec

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