u/mdw/putty
21 years agoAdd the ability to close sessions. This adds *_free() functions to most
ben [Wed, 15 Jan 2003 23:30:21 +0000 (23:30 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2615 cda61777-01e9-0310-a592-d414129be87e

21 years agoMake this compile again.
ben [Wed, 15 Jan 2003 22:37:58 +0000 (22:37 +0000)]
Make this compile again.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2614 cda61777-01e9-0310-a592-d414129be87e

21 years agoImplement Simon's suggestion of moving DEFAULT_PROTOCOL into a per-backend-
jacob [Wed, 15 Jan 2003 20:47:50 +0000 (20:47 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2613 cda61777-01e9-0310-a592-d414129be87e

21 years agoMacTCP returns canonical names with a trailing dot. We don't want this, so
ben [Wed, 15 Jan 2003 18:47:41 +0000 (18:47 +0000)]
MacTCP returns canonical names with a trailing dot.  We don't want this, so
strip it off.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2612 cda61777-01e9-0310-a592-d414129be87e

21 years agoPuTTYtel should use be_nossh, not be_none.
ben [Wed, 15 Jan 2003 18:45:42 +0000 (18:45 +0000)]
PuTTYtel should use be_nossh, not be_none.
While we're here, also comment the meaning of [M].

git-svn-id: svn://svn.tartarus.org/sgt/putty@2611 cda61777-01e9-0310-a592-d414129be87e

21 years agoFix small breakages as a result of yesterday's upheavals. Oops.
simon [Wed, 15 Jan 2003 16:16:36 +0000 (16:16 +0000)]
Fix small breakages as a result of yesterday's upheavals. Oops.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2610 cda61777-01e9-0310-a592-d414129be87e

21 years ago`ssh-default': change the /DSSH_DEFAULT flag to a /DTELNET_DEFAULT one
jacob [Wed, 15 Jan 2003 15:22:58 +0000 (15:22 +0000)]
`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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2608 cda61777-01e9-0310-a592-d414129be87e

21 years agoUse set_icon and set_title rather than SetWindowText. Should fix
owen [Wed, 15 Jan 2003 14:51:54 +0000 (14:51 +0000)]
Use set_icon and set_title rather than SetWindowText.  Should fix
inactive-title.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2606 cda61777-01e9-0310-a592-d414129be87e

21 years agoUse the standard linedraw->Unicode mapping from unicode.c to generate
ben [Tue, 14 Jan 2003 19:57:36 +0000 (19:57 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2601 cda61777-01e9-0310-a592-d414129be87e

21 years agoUpdate for Unicode deglobalisations.
ben [Tue, 14 Jan 2003 19:42:00 +0000 (19:42 +0000)]
Update for Unicode deglobalisations.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2600 cda61777-01e9-0310-a592-d414129be87e

21 years agoUpdate the "known bugs" and "missing features" sections.
ben [Tue, 14 Jan 2003 19:41:19 +0000 (19:41 +0000)]
Update the "known bugs" and "missing features" sections.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2599 cda61777-01e9-0310-a592-d414129be87e

21 years agoAdd constants to mac_res.r to set the binary version number.
ben [Tue, 14 Jan 2003 19:29:18 +0000 (19:29 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2598 cda61777-01e9-0310-a592-d414129be87e

21 years agoconst fallout.
ben [Tue, 14 Jan 2003 19:09:24 +0000 (19:09 +0000)]
const fallout.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2597 cda61777-01e9-0310-a592-d414129be87e

21 years agoRemove debugging printfs from mac_workoutfontscale().
ben [Tue, 14 Jan 2003 18:44:34 +0000 (18:44 +0000)]
Remove debugging printfs from mac_workoutfontscale().

git-svn-id: svn://svn.tartarus.org/sgt/putty@2595 cda61777-01e9-0310-a592-d414129be87e

21 years agoMiscellaneous fixes to finish up `remove-statics'. rlogin.c had a
simon [Tue, 14 Jan 2003 18:43:45 +0000 (18:43 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2594 cda61777-01e9-0310-a592-d414129be87e

21 years agoAdd double width/height support. This passes all the relevant parts of
ben [Tue, 14 Jan 2003 18:43:26 +0000 (18:43 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2593 cda61777-01e9-0310-a592-d414129be87e

21 years agoDeglobalise the Unicode module. Despite all my grand plans, I've
simon [Tue, 14 Jan 2003 18:28:23 +0000 (18:28 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2592 cda61777-01e9-0310-a592-d414129be87e

21 years agorequest_resize() needs to call term_size() to tell the terminal emulator
ben [Tue, 14 Jan 2003 15:24:51 +0000 (15:24 +0000)]
request_resize() needs to call term_size() to tell the terminal emulator
that its resize request has been approved.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2591 cda61777-01e9-0310-a592-d414129be87e

21 years agoIt's impossible to write a checklist from scratch without leaving
simon [Tue, 14 Jan 2003 15:01:18 +0000 (15:01 +0000)]
It's impossible to write a checklist from scratch without leaving
one or two things out of the first version.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2590 cda61777-01e9-0310-a592-d414129be87e

21 years agoAfter the New Year copyright-dates fiasco, I think it's about time
simon [Tue, 14 Jan 2003 14:19:35 +0000 (14:19 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2589 cda61777-01e9-0310-a592-d414129be87e

21 years agoCtrl-PgUp and Ctrl-PgDn now scroll by one line on Unix and Windows
owen [Tue, 14 Jan 2003 11:24:26 +0000 (11:24 +0000)]
Ctrl-PgUp and Ctrl-PgDn now scroll by one line on Unix and Windows

git-svn-id: svn://svn.tartarus.org/sgt/putty@2582 cda61777-01e9-0310-a592-d414129be87e

21 years agoOops - put the right `void *' in back->reconfig.
simon [Mon, 13 Jan 2003 18:03:55 +0000 (18:03 +0000)]
Oops - put the right `void *' in back->reconfig.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2579 cda61777-01e9-0310-a592-d414129be87e

21 years agoMake ^/ do the same as ^_ (wish control-slash)
owen [Mon, 13 Jan 2003 15:06:56 +0000 (15:06 +0000)]
Make ^/ do the same as ^_ (wish control-slash)

git-svn-id: svn://svn.tartarus.org/sgt/putty@2576 cda61777-01e9-0310-a592-d414129be87e

21 years agoSet the window title to the canonical host name when we connect.
ben [Sun, 12 Jan 2003 16:25:58 +0000 (16:25 +0000)]
Set the window title to the canonical host name when we connect.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2574 cda61777-01e9-0310-a592-d414129be87e

21 years agoConsequences of Simon's recent deglobalisation changes.
ben [Sun, 12 Jan 2003 16:11:27 +0000 (16:11 +0000)]
Consequences of Simon's recent deglobalisation changes.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2573 cda61777-01e9-0310-a592-d414129be87e

21 years agoWhen receiving data, only pass up to the backend as much as we received.
ben [Sun, 12 Jan 2003 15:46:33 +0000 (15:46 +0000)]
When receiving data, only pass up to the backend as much as we received.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2572 cda61777-01e9-0310-a592-d414129be87e

21 years agoAhem. Doing loads of stuff to inst->cfg would probably be best done
simon [Sun, 12 Jan 2003 15:45:29 +0000 (15:45 +0000)]
Ahem. Doing loads of stuff to inst->cfg would probably be best done
_after_ allocating inst. Oops.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2571 cda61777-01e9-0310-a592-d414129be87e

21 years agoMake this compile again.
ben [Sun, 12 Jan 2003 15:42:24 +0000 (15:42 +0000)]
Make this compile again.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2570 cda61777-01e9-0310-a592-d414129be87e

21 years agoAhem. Global replace of `cfg' with `inst->cfg' is all very well, but
simon [Sun, 12 Jan 2003 15:36:05 +0000 (15:36 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2569 cda61777-01e9-0310-a592-d414129be87e

21 years agoHaving laid all the groundwork, we can now remove the global `cfg'
simon [Sun, 12 Jan 2003 15:32:31 +0000 (15:32 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2568 cda61777-01e9-0310-a592-d414129be87e

21 years agoproxy.c now no longer refers to `cfg'. Instead, each of the three
simon [Sun, 12 Jan 2003 15:26:10 +0000 (15:26 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2567 cda61777-01e9-0310-a592-d414129be87e

21 years agoThe logging module now contains a local copy of cfg too.
simon [Sun, 12 Jan 2003 15:10:27 +0000 (15:10 +0000)]
The logging module now contains a local copy of cfg too.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2566 cda61777-01e9-0310-a592-d414129be87e

21 years agoThe Unicode module no longer depends on `cfg', since it gets the
simon [Sun, 12 Jan 2003 14:59:54 +0000 (14:59 +0000)]
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.)

git-svn-id: svn://svn.tartarus.org/sgt/putty@2565 cda61777-01e9-0310-a592-d414129be87e

21 years agoThere's no real need for portfwd.c to reference `cfg' directly, when
simon [Sun, 12 Jan 2003 14:56:19 +0000 (14:56 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2564 cda61777-01e9-0310-a592-d414129be87e

21 years agoprinter_start_job shouldn't need to refer to cfg.printer, since it's
simon [Sun, 12 Jan 2003 14:50:34 +0000 (14:50 +0000)]
printer_start_job shouldn't need to refer to cfg.printer, since it's
getting the printer name passed in anyway! Oops.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2563 cda61777-01e9-0310-a592-d414129be87e

21 years agoJust like under Windows, cleanup_exit() shouldn't need to check
simon [Sun, 12 Jan 2003 14:49:44 +0000 (14:49 +0000)]
Just like under Windows, cleanup_exit() shouldn't need to check
before calling random_save_seed().

git-svn-id: svn://svn.tartarus.org/sgt/putty@2562 cda61777-01e9-0310-a592-d414129be87e

21 years agoThe back ends now contain their own copies of the Config structure,
simon [Sun, 12 Jan 2003 14:48:29 +0000 (14:48 +0000)]
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.)

git-svn-id: svn://svn.tartarus.org/sgt/putty@2561 cda61777-01e9-0310-a592-d414129be87e

21 years agoCall ot_poll as appropriate.
ben [Sun, 12 Jan 2003 14:45:33 +0000 (14:45 +0000)]
Call ot_poll as appropriate.
Also use cleanup_exit() in preference to exit() so that MacTCP gets shut down
even on unclean exits.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2560 cda61777-01e9-0310-a592-d414129be87e

21 years agoDon't fatalbox() unconditionally when opening a connection, since that makes
ben [Sun, 12 Jan 2003 14:44:12 +0000 (14:44 +0000)]
Don't fatalbox() unconditionally when opening a connection, since that makes
it a little difficult to do anything.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2559 cda61777-01e9-0310-a592-d414129be87e

21 years agoForgot to match the cmdline changes in the Unix port.
simon [Sun, 12 Jan 2003 14:37:26 +0000 (14:37 +0000)]
Forgot to match the cmdline changes in the Unix port.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2558 cda61777-01e9-0310-a592-d414129be87e

21 years agoterm->cfg is now a full copy of the Config structure, not a pointer;
simon [Sun, 12 Jan 2003 14:30:02 +0000 (14:30 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2557 cda61777-01e9-0310-a592-d414129be87e

21 years agoCOmpiling _before_ committing is usually a good idea.
ben [Sun, 12 Jan 2003 14:23:00 +0000 (14:23 +0000)]
COmpiling _before_ committing is usually a good idea.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2556 cda61777-01e9-0310-a592-d414129be87e

21 years agoThe command-line routines now take a pointer to `cfg' as an
simon [Sun, 12 Jan 2003 14:17:03 +0000 (14:17 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2555 cda61777-01e9-0310-a592-d414129be87e

21 years agoSupport for XDM-AUTHORIZATION-1 at the SSH server end, making use of
simon [Sun, 12 Jan 2003 14:11:38 +0000 (14:11 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2554 cda61777-01e9-0310-a592-d414129be87e

21 years agoCorrect code to insert into a doubly-linked list.
ben [Sun, 12 Jan 2003 13:50:04 +0000 (13:50 +0000)]
Correct code to insert into a doubly-linked list.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2553 cda61777-01e9-0310-a592-d414129be87e

21 years agoEach platform's implementation of askappend() is no longer required
simon [Sun, 12 Jan 2003 13:44:35 +0000 (13:44 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2552 cda61777-01e9-0310-a592-d414129be87e

21 years agoCute though DNSAddresses are, they're a poor match for the model the
ben [Sun, 12 Jan 2003 13:06:59 +0000 (13:06 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2551 cda61777-01e9-0310-a592-d414129be87e

21 years agoUse memset() rather than OTMemzero(), and hence remove the need to weak link
ben [Sun, 12 Jan 2003 01:37:24 +0000 (01:37 +0000)]
Use memset() rather than OTMemzero(), and hence remove the need to weak link
against OTUtilityLib.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2550 cda61777-01e9-0310-a592-d414129be87e

21 years agoRemove code for splatting test data into new terminals, since we can do
ben [Sun, 12 Jan 2003 01:25:34 +0000 (01:25 +0000)]
Remove code for splatting test data into new terminals, since we can do
that over real network connections now.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2549 cda61777-01e9-0310-a592-d414129be87e

21 years agoChange error handling to store the error number rather than the string,
ben [Sun, 12 Jan 2003 01:24:03 +0000 (01:24 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2548 cda61777-01e9-0310-a592-d414129be87e

21 years agoInitial import of Owen's OpenTransport interface. It doesn't work yet, but
ben [Sat, 11 Jan 2003 23:33:57 +0000 (23:33 +0000)]
Initial import of Owen's OpenTransport interface.  It doesn't work yet, but
it does compile and link.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2547 cda61777-01e9-0310-a592-d414129be87e

21 years agoAdd an indirection layer between mtcpnet.c and the rest of PuTTY so that
ben [Sat, 11 Jan 2003 19:43:59 +0000 (19:43 +0000)]
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).

git-svn-id: svn://svn.tartarus.org/sgt/putty@2546 cda61777-01e9-0310-a592-d414129be87e

21 years agoCalling plug_closing() is highly likely to result in a call to sk_close(),
ben [Sat, 11 Jan 2003 17:36:24 +0000 (17:36 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2545 cda61777-01e9-0310-a592-d414129be87e

21 years agoWhen polling MacTCP connections, check the connection state and if the far
ben [Sat, 11 Jan 2003 17:31:59 +0000 (17:31 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2544 cda61777-01e9-0310-a592-d414129be87e

21 years agoMove the prototype for platform_get_x11_auth() from x11fwd.c to ssh.h so that
ben [Sat, 11 Jan 2003 14:20:00 +0000 (14:20 +0000)]
Move the prototype for platform_get_x11_auth() from x11fwd.c to ssh.h so that
it can be checked against the implementation.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2542 cda61777-01e9-0310-a592-d414129be87e

21 years agoAdd a cast for a char * vs unsigned char * conflict.
ben [Sat, 11 Jan 2003 14:08:46 +0000 (14:08 +0000)]
Add a cast for a char * vs unsigned char * conflict.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2541 cda61777-01e9-0310-a592-d414129be87e

21 years agoconst fallout from Simon's X forwarding changes.
ben [Sat, 11 Jan 2003 14:08:07 +0000 (14:08 +0000)]
const fallout from Simon's X forwarding changes.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2540 cda61777-01e9-0310-a592-d414129be87e

21 years agoYet _another_ `received data for nonexistent channel' bug. This time
simon [Sat, 11 Jan 2003 10:05:29 +0000 (10:05 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2539 cda61777-01e9-0310-a592-d414129be87e

21 years agoHack around an oddity in X display names and xauth.
simon [Sat, 11 Jan 2003 09:46:50 +0000 (09:46 +0000)]
Hack around an oddity in X display names and xauth.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2538 cda61777-01e9-0310-a592-d414129be87e

21 years agoSupport XDM-AUTHORIZATION-1 for connecting to local X servers. If
simon [Sat, 11 Jan 2003 09:31:54 +0000 (09:31 +0000)]
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...

git-svn-id: svn://svn.tartarus.org/sgt/putty@2537 cda61777-01e9-0310-a592-d414129be87e

21 years agoIntroduce framework for authenticating with the local X server.
simon [Fri, 10 Jan 2003 18:33:35 +0000 (18:33 +0000)]
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.)

git-svn-id: svn://svn.tartarus.org/sgt/putty@2536 cda61777-01e9-0310-a592-d414129be87e

21 years agoAsk for a meaningful subject line on messages.
ben [Fri, 10 Jan 2003 15:23:01 +0000 (15:23 +0000)]
Ask for a meaningful subject line on messages.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2532 cda61777-01e9-0310-a592-d414129be87e

21 years agoImplement get_window_title().
ben [Thu, 9 Jan 2003 23:29:22 +0000 (23:29 +0000)]
Implement get_window_title().

git-svn-id: svn://svn.tartarus.org/sgt/putty@2525 cda61777-01e9-0310-a592-d414129be87e

21 years agoForcibly close any TCP connections that are still open when PuTTY exits.
ben [Thu, 9 Jan 2003 23:04:34 +0000 (23:04 +0000)]
Forcibly close any TCP connections that are still open when PuTTY exits.
This saves leaving them lying around to crash the machine later.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2524 cda61777-01e9-0310-a592-d414129be87e

21 years agoUse c2pstrcpy() rather than silly sprintf() tricks.
ben [Thu, 9 Jan 2003 22:51:41 +0000 (22:51 +0000)]
Use c2pstrcpy() rather than silly sprintf() tricks.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2523 cda61777-01e9-0310-a592-d414129be87e

21 years agoc2pstr() is deprecated. Use c2pstrcpy() instead.
ben [Thu, 9 Jan 2003 22:45:48 +0000 (22:45 +0000)]
c2pstr() is deprecated.  Use c2pstrcpy() instead.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2522 cda61777-01e9-0310-a592-d414129be87e

21 years agoTake advantage of having control over the default font to do the job properly:
ben [Thu, 9 Jan 2003 22:39:47 +0000 (22:39 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2521 cda61777-01e9-0310-a592-d414129be87e

21 years agoSet PuTTY's canBackground flag so that it receives CPU time (to process
ben [Thu, 9 Jan 2003 19:27:29 +0000 (19:27 +0000)]
Set PuTTY's canBackground flag so that it receives CPU time (to process
incoming data) while in the background.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2520 cda61777-01e9-0310-a592-d414129be87e

21 years agoInstall a notification procedure (ASR) on each TCP connection that wakes
ben [Thu, 9 Jan 2003 19:26:39 +0000 (19:26 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2519 cda61777-01e9-0310-a592-d414129be87e

21 years agoRemove the diagnostic added in rev 1.42 [r2288]; apparently it's all
simon [Thu, 9 Jan 2003 19:26:12 +0000 (19:26 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2518 cda61777-01e9-0310-a592-d414129be87e

21 years agoSwitching from -opt space to -opt time on 68K Macs only loses us about 2K
ben [Thu, 9 Jan 2003 19:24:02 +0000 (19:24 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2517 cda61777-01e9-0310-a592-d414129be87e

21 years agoUnix plink now catches SIGWINCH and propagates local terminal
simon [Thu, 9 Jan 2003 18:28:01 +0000 (18:28 +0000)]
Unix plink now catches SIGWINCH and propagates local terminal
resizes to the remote end.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2515 cda61777-01e9-0310-a592-d414129be87e

21 years agoSupport asynchronous connect() in Unix networking. Now a port
simon [Thu, 9 Jan 2003 18:14:24 +0000 (18:14 +0000)]
Support asynchronous connect() in Unix networking. Now a port
forwarding to a nonexistent host shouldn't hold up the rest of the
program.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2514 cda61777-01e9-0310-a592-d414129be87e

21 years agoI'm sick of all those #ifdefs in settings.c, and in any case plink
simon [Thu, 9 Jan 2003 18:06:29 +0000 (18:06 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2513 cda61777-01e9-0310-a592-d414129be87e

21 years agoYikes! Forgot to zero the password after SSH2 PW authentication.
simon [Thu, 9 Jan 2003 17:33:49 +0000 (17:33 +0000)]
Yikes! Forgot to zero the password after SSH2 PW authentication.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2512 cda61777-01e9-0310-a592-d414129be87e

21 years agoAdd PuTTYtel binaries.
ben [Wed, 8 Jan 2003 23:58:50 +0000 (23:58 +0000)]
Add PuTTYtel binaries.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2503 cda61777-01e9-0310-a592-d414129be87e

21 years agoRather useless entropy-collection functions for Mac OS. These need work.
ben [Wed, 8 Jan 2003 23:56:48 +0000 (23:56 +0000)]
Rather useless entropy-collection functions for Mac OS.  These need work.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2502 cda61777-01e9-0310-a592-d414129be87e

21 years agoThe CFM-68K build isn't working at the moment (we blow past its global data
ben [Wed, 8 Jan 2003 22:48:57 +0000 (22:48 +0000)]
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".

git-svn-id: svn://svn.tartarus.org/sgt/putty@2501 cda61777-01e9-0310-a592-d414129be87e

21 years agoFairly major hackery to get SSH going on the Mac. Half the support
ben [Wed, 8 Jan 2003 22:46:12 +0000 (22:46 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2500 cda61777-01e9-0310-a592-d414129be87e

21 years agoWe just got mailed a Dr Watson log which suggests I failed to
simon [Wed, 8 Jan 2003 09:15:56 +0000 (09:15 +0000)]
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!

git-svn-id: svn://svn.tartarus.org/sgt/putty@2494 cda61777-01e9-0310-a592-d414129be87e

21 years agoUse '\012' as the end of the SSH banner line, not '\n'.
ben [Tue, 7 Jan 2003 23:05:12 +0000 (23:05 +0000)]
Use '\012' as the end of the SSH banner line, not '\n'.
Mac compilers default to making '\n' == '\015'.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2493 cda61777-01e9-0310-a592-d414129be87e

21 years agoInitialise the "protocol" field of a new ssh_tag to NULL so Bad Things don't
ben [Tue, 7 Jan 2003 22:45:12 +0000 (22:45 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2492 cda61777-01e9-0310-a592-d414129be87e

21 years agoMove the various big tables to the start of the file to save mucking about
ben [Tue, 7 Jan 2003 20:47:53 +0000 (20:47 +0000)]
Move the various big tables to the start of the file to save mucking about
with ifdefs for specific compilers.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2491 cda61777-01e9-0310-a592-d414129be87e

21 years agoAhem. Now pterm actually uses wc_to_mb in a situation where it needs
simon [Tue, 7 Jan 2003 13:09:56 +0000 (13:09 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2490 cda61777-01e9-0310-a592-d414129be87e

21 years agoIt looks like Visual C (or whatever the Windows snapshots are built with)
ben [Mon, 6 Jan 2003 21:46:56 +0000 (21:46 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2488 cda61777-01e9-0310-a592-d414129be87e

21 years agoOne usually includes .h files, not .c files. That explains why it was
ben [Sun, 5 Jan 2003 23:48:10 +0000 (23:48 +0000)]
One usually includes .h files, not .c files.  That explains why it was
taking so long to compile!

git-svn-id: svn://svn.tartarus.org/sgt/putty@2487 cda61777-01e9-0310-a592-d414129be87e

21 years agoInclude putty.h to get prototypes for exported functions.
ben [Sun, 5 Jan 2003 23:38:11 +0000 (23:38 +0000)]
Include putty.h to get prototypes for exported functions.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2486 cda61777-01e9-0310-a592-d414129be87e

21 years agozlib_disable_compression() and zlib_huflookup() are unused outside this file.
ben [Sun, 5 Jan 2003 23:36:53 +0000 (23:36 +0000)]
zlib_disable_compression() and zlib_huflookup() are unused outside this file.
Make them static.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2485 cda61777-01e9-0310-a592-d414129be87e

21 years agoSHA512_Core_Init() and SHA512_Block() are unused outside this file. Make
ben [Sun, 5 Jan 2003 23:34:00 +0000 (23:34 +0000)]
SHA512_Core_Init() and SHA512_Block() are unused outside this file.  Make
them static.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2484 cda61777-01e9-0310-a592-d414129be87e

21 years agorsa2_sign() is unused outside this file. Make it static.
ben [Sun, 5 Jan 2003 23:32:19 +0000 (23:32 +0000)]
rsa2_sign() is unused outside this file.  Make it static.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2483 cda61777-01e9-0310-a592-d414129be87e

21 years agorandom_stir() is unused outside this file. Make it static.
ben [Sun, 5 Jan 2003 23:30:48 +0000 (23:30 +0000)]
random_stir() is unused outside this file.  Make it static.
Include putty.h to get prototypes for random_init() and random_get_savedata().

git-svn-id: svn://svn.tartarus.org/sgt/putty@2482 cda61777-01e9-0310-a592-d414129be87e

21 years agoMove prototypes for base64_decode_atom(), base64_lines(), and base64_encode()
ben [Sun, 5 Jan 2003 23:28:02 +0000 (23:28 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2481 cda61777-01e9-0310-a592-d414129be87e

21 years agodss_sign() is unused outside this file. Make it static.
ben [Sun, 5 Jan 2003 23:14:04 +0000 (23:14 +0000)]
dss_sign() is unused outside this file.  Make it static.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2480 cda61777-01e9-0310-a592-d414129be87e

21 years agodes_key_setup(), des_encipher(), and des_decipher() are unreferenced outside
ben [Sun, 5 Jan 2003 23:12:58 +0000 (23:12 +0000)]
des_key_setup(), des_encipher(), and des_decipher() are unreferenced outside
this file.  Make them static.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2479 cda61777-01e9-0310-a592-d414129be87e

21 years agoInclude ssh.h for the crc32() and crc32_update() prototypes.
ben [Sun, 5 Jan 2003 23:09:53 +0000 (23:09 +0000)]
Include ssh.h for the crc32() and crc32_update() prototypes.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2478 cda61777-01e9-0310-a592-d414129be87e

21 years agobigdivmod() is unreferenced outside this file. Make it static.
ben [Sun, 5 Jan 2003 23:05:49 +0000 (23:05 +0000)]
bigdivmod() is unreferenced outside this file.  Make it static.
diagbn() is unreferenced.  #if it out.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2477 cda61777-01e9-0310-a592-d414129be87e

21 years agoaes_setup() is unused outside this file. Make it static.
ben [Sun, 5 Jan 2003 23:03:02 +0000 (23:03 +0000)]
aes_setup() is unused outside this file.  Make it static.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2476 cda61777-01e9-0310-a592-d414129be87e

21 years agoMake ssh1_pkt_type(), ssh2_pkt_type, logeventf(), setup_userpass_input(),
ben [Sun, 5 Jan 2003 23:01:43 +0000 (23:01 +0000)]
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.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2475 cda61777-01e9-0310-a592-d414129be87e

21 years agoMove x11fwd and portfwd prototypes from ssh.c into ssh.h so they can be seen
ben [Sun, 5 Jan 2003 22:53:23 +0000 (22:53 +0000)]
Move x11fwd and portfwd prototypes from ssh.c into ssh.h so they can be seen
by (and checked against) the definitions.

git-svn-id: svn://svn.tartarus.org/sgt/putty@2474 cda61777-01e9-0310-a592-d414129be87e

21 years agoSC in "finding an actual bug" shocker! Set the port number before passing
ben [Sun, 5 Jan 2003 22:52:11 +0000 (22:52 +0000)]
SC in "finding an actual bug" shocker!  Set the port number before passing
it to name_lookup().

git-svn-id: svn://svn.tartarus.org/sgt/putty@2473 cda61777-01e9-0310-a592-d414129be87e