1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-10 18:07:59 +00:00
Commit Graph

322 Commits

Author SHA1 Message Date
Owen Dunn
3aa041b157 Draglists, implemented as up-down preference lists as in GTK.
[originally from svn r5434]
2005-03-02 23:33:59 +00:00
Owen Dunn
d403e31233 Close on exit. I'm not entirely happy with the distribution of this
across mac_closeterm() and notify_remote_exit() but it will do for now.
Also, "PuTTY (inactive)" looks strange as a Mac window title in a way it
doesn't on Unix or Windows.  Perhaps we should find another way of
indicating that a window contains a dead session?

[originally from svn r5424]
2005-03-01 21:38:06 +00:00
Owen Dunn
114b750d93 Warn on close. Also warn before use.
[originally from svn r5407]
2005-02-27 13:53:08 +00:00
Jacob Nevins
d13338f581 Some copyright dates that were missed in the Mac port.
[originally from svn r5392]
2005-02-24 20:28:10 +00:00
Owen Dunn
71e91e2bcc Support for setting some options like keepalive, oobinline, nodelay, and
SO_REUSEADDR for ot_newlistener().  Also handle remote-initiated
disconnections.

[originally from svn r5388]
2005-02-23 21:19:53 +00:00
Owen Dunn
54d45f602c A first attempt at listening sockets in Open Transport.
[originally from svn r5385]
2005-02-22 23:40:47 +00:00
Owen Dunn
8f5075e182 Support the drop-down menu part of the editbox control (combobox). This
cuts and pastes a lot of code from macctrl_popup, which perhaps should be
consolidated.  Also change the effective line codepage when it is changed
with Change Settings.

[originally from svn r5363]
2005-02-20 12:54:10 +00:00
Simon Tatham
97154e55da Bump version numbers. (Forgot to do this _before_ dropping the 0.57
tag, but that's OK because SVN doesn't distinguish tags from
branches anyway...)

[originally from svn r5361]
2005-02-20 10:51:02 +00:00
Owen Dunn
27e62034ce Grey the titles of group boxes when the config box is not frontmost.
Edit box values still fail to be greyed.

[originally from svn r5355]
2005-02-19 15:53:26 +00:00
Simon Tatham
f73fcb0424 Add asynchronous callback capability to the askappend() alert box.
This was harder than verify_ssh_host_key() and askalg() put
together, because:
 (a) askappend() can be called at any time, since it's a side effect
     of data-logging functions. Therefore there can be an unfinished
     askappend() alert at any time, and hence the OS X front end has
     to be prepared to _queue_ other alerts which occur during that
     time.
 (b) logging.c has to do something with data that comes in while
     it's waiting for an answer to askappend(). It buffers it until
     it knows what the user wants done with it. This involved
     something of a reorganisation of logging.c.

[originally from svn r5344]
2005-02-18 18:33:31 +00:00
Owen Dunn
a2567371a6 We have a host key database, just not a very good one.
[originally from svn r5340]
2005-02-18 09:22:55 +00:00
Simon Tatham
8574822b9b Revamp interface to verify_ssh_host_key() and askalg(). Each of them
now returns an integer: 0 means cancel the SSH connection and 1
means continue with it. Additionally, they can return -1, which
means `front end has set an asynchronous alert box in motion, please
wait to be called back with the result', and each one is passed a
callback function pointer and context for this purpose.

I have not yet done the same to askappend() yet, because it will
take a certain amount of reorganisation of logging.c.

Importantly, this checkin means the host key dialog box now works on
OS X.

[originally from svn r5330]
2005-02-17 18:34:24 +00:00
Owen Dunn
abb7b4ea57 On the Mac, support for setting the line codepage and for combining
characters.  I've just used libcharset in macucs.c since there seemed
little reason not to, and implemented combining characters by naive
overprinting.  It's not yet a lot of use without the ability to select
a font, of course.

[originally from svn r5322]
2005-02-16 23:30:10 +00:00
Owen Dunn
1638035d43 Grouping boxes for the configuration dialogue. The System 7 version is
completely untested so far, but the Appearance Manager version works and
looks plausible.  There are still some HI Guideline spacing issues to
address.

[originally from svn r5310]
2005-02-15 22:41:00 +00:00
Jacob Nevins
c9116974ac The terminal window can now indicate that PuTTY is busy in various ways, by
changing its mouse pointer. Currently this is only used in the (slightly-
arbitrarily-defined) "heavy" bits of SSH-2 key exchange. We override pointer
hiding while PuTTY is busy, but preserve pointer-hiding state.

Not yet implemented on the Mac.

Also switch to frobbing window-class cursor in Windows rather than relying on
SetCursor().

[originally from svn r5303]
2005-02-15 17:05:58 +00:00
Owen Dunn
518738efe9 Display panel titles and grouping box titles.
[originally from svn r5291]
2005-02-13 00:00:59 +00:00
Owen Dunn
3e8951c8c6 Tidy up the host key alerts a little, and swap the Just Once and Cancel
buttons so that they appear in the standard action and cancel positions.

[originally from svn r5288]
2005-02-11 18:01:59 +00:00
Owen Dunn
3311f89129 Add some host key dialogue boxes. These still look a little rough around
the edges and need to have all their controls properly aligned and spaced
according to the HI guidelines.  Also, fix store_host_key() so that it
replaces a host key correctly when the host key has changed and the user
opts to update the cached one.

[originally from svn r5280]
2005-02-09 21:18:44 +00:00
Simon Tatham
ba793c905f Revert my LF->CR change following Owen's comment that it actually
breaks netatalk-based setups (which _swap_ LF and CR). Instead,
setfile.sh (which I have to run _anyway_ on OS X) copies mkputty.mpw
to mk.mpw and then makes that CR-based.

[originally from svn r5271]
2005-02-07 20:24:13 +00:00
Owen Dunn
3fa46caeb8 Add a comment about the deficiencies of the host key cache implementation.
[originally from svn r5263]
2005-02-07 10:47:48 +00:00
Owen Dunn
d13ac1bc34 First stab at a host key cache on the Mac.
[originally from svn r5260]
2005-02-06 15:00:36 +00:00
Owen Dunn
0eb1e5df8d Implement refreshing the whole dialogue box with dlg_refresh, so that
if you load a session all the panels in the configuration dialogue
reflect the new settings.  However, there's a glitch which paints a white
rectangle between the Saved Sessions listbox and the Close-on-exit radios.

[originally from svn r5256]
2005-02-05 14:50:42 +00:00
Simon Tatham
c3dce77780 Added a small shell script to run enough SetFile commands to make
MPW builds work after checking out on Mac OS X.

[originally from svn r5255]
2005-02-05 14:46:39 +00:00
Simon Tatham
17f484ae66 This file needs to have CR line endings for MPW to be happy with it.
[originally from svn r5254]
2005-02-05 14:39:22 +00:00
Owen Dunn
45700b21e8 Times and dates in the event log, fixing ltime() in the process.
[originally from svn r5250]
2005-02-05 00:29:20 +00:00
Owen Dunn
061cfb7ef3 mac_pollterm() is no longer useful and can be retired.
[originally from svn r5249]
2005-02-05 00:14:24 +00:00
Owen Dunn
76231a5c98 Flashing things now work as a natural consequence of the timing interface.
[originally from svn r5235]
2005-02-02 21:33:13 +00:00
Owen Dunn
19e5743976 Make ot_recv less voracious.
[originally from svn r5234]
2005-02-02 21:18:39 +00:00
Owen Dunn
00c57c6bc5 Update the configuration when the window is resized.
[originally from svn r5233]
2005-02-02 19:56:29 +00:00
Owen Dunn
ea225b5889 Hide/show the scrollbar
[originally from svn r5230]
2005-01-30 14:59:47 +00:00
Owen Dunn
bb787c53fb The HI guidelines seem adamant that the File menu should never be called
anything but File, and two Mac users expressed profound distress at the
thought of it being called Session.  File it is.

[originally from svn r5229]
2005-01-30 14:10:05 +00:00
Owen Dunn
72cce92fa7 Make Change Settings do something.
[originally from svn r5227]
2005-01-29 22:46:43 +00:00
Owen Dunn
13de3f2357 Enable the Open Transport networking implementation unless NO_OT is defined.
[originally from svn r5224]
2005-01-28 23:39:38 +00:00
Owen Dunn
871fb84047 sfree the memory dupprintf allocated
[originally from svn r5221]
2005-01-28 11:50:56 +00:00
Ben Harris
865fbaa8ce Overhaul of client-side XDM-AUTHORIZATION-1:
* Make sk_getxdmdata() return an arbitrary string rather than two integers.
  This better matches the spec, even if the current version always returns
  six bytes
* On Unix, for PF_UNIX sockets, return a counter rather than a constant along
  with the PID.  This should allow multiple clients to connect within one
  second, and is what Xlib does.
* On Unix, interpret AF_INET6 addresses like Xlib does, returning the
  embedded IPv4 address for v4-mapped addresses, and six bytes of zeroes
  otherwise.  The latter is silly, but if I'm going to do anything more sane
  I need to check that X servers won't reject it.

[originally from svn r5219]
2005-01-28 11:39:45 +00:00
Owen Dunn
2374544eb3 Add a Change Settings dialogue box. Doesn't do anything yet.
[originally from svn r5216]
2005-01-26 23:30:34 +00:00
Owen Dunn
fc0d87aa1d Move sk_poll() inside (!gotevent), which is more logical but doesn't have
any actual beneficial effect on event handling, sadly.

[originally from svn r5214]
2005-01-26 19:05:50 +00:00
Owen Dunn
09dae8d5dc Add ssh.h for prototypes for the X display stubs
[originally from svn r5213]
2005-01-26 19:04:42 +00:00
Owen Dunn
f8dfe9717c Give the config window a title.
[originally from svn r5181]
2005-01-23 15:01:21 +00:00
Owen Dunn
c29e61381a Colours now work properly, including 256-colour stuff.
Timing stuff now there, but almost certainly bogus.

[originally from svn r5160]
2005-01-21 00:02:59 +00:00
Owen Dunn
75008d9da0 Bits and pieces, mostly stubs, for the Mac port.
[originally from svn r5136]
2005-01-18 22:01:25 +00:00
Owen Dunn
97c851e77f Fix prototypes for mactcp_new and ot_new.
[originally from svn r5112]
2005-01-15 17:28:44 +00:00
Simon Tatham
b93e12d477 It's a new year!
[originally from svn r5061]
[this svn revision also touched putty-website]
2005-01-02 09:19:14 +00:00
Simon Tatham
6daf6faede Integrate unfix.org's IPv6 patches up to level 10, with rather a lot
of polishing to bring them to what I think should in principle be
release quality. Unlike the unfix.org patches themselves, this
checkin enables IPv6 by default; if you want to leave it out, you
have to build with COMPAT=-DNO_IPV6.

I have tested that this compiles on Visual C 7 (so the nightlies
_should_ acquire IPv6 support without missing a beat), but since I
don't have IPv6 set up myself I haven't actually tested that it
_works_. It still seems to make correct IPv4 connections, but that's
all I've been able to verify for myself. Further testing is needed.

[originally from svn r5047]
[this svn revision also touched putty-wishlist]
2004-12-30 16:45:11 +00:00
Simon Tatham
b0bf176dfb Loose end from r5031: the Kex panel should only be displayed in
mid-session if we are not using SSHv1. I've done this by introducing
a generic `cfg_info' function which every back end can use to
communicate an int's worth of data to setup_config_box; in SSH
that's the protocol version in use, and in everything else it's
currently zero.

[originally from svn r5040]
[r5031 == d77102a8d5]
2004-12-29 12:32:25 +00:00
Jacob Nevins
3c98d6e60d Add a preference list for SSH-2 key exchange algorithms, on a new "Kex" panel
(which will gain more content anon).

Retire BUG_SSH2_DH_GEX and add a backwards-compatibility wart, since we never
did find a way of automatically detecting this alleged server bug, and in any
case there was only ever one report (<3D91F3B5.7030309@inwind.it>, FWIW).

Also generalise askcipher() to a new askalg() (thus touching all the
front-ends).

I've made some attempt to document what SSH key exchange is and why you care,
but it could use some review for clarity (and outright lies).

[originally from svn r5022]
2004-12-23 02:24:07 +00:00
Simon Tatham
92f3b101f5 Slight improvement to cursor blink timing: since the cursor doesn't
blink when the window doesn't have focus, we don't schedule blink
timers at that point either.

Infrastructure change: term->has_focus should now not be written
directly from outside terminal.c. Instead, use the function
term_set_focus, which will sort out the blink timers as well.

[originally from svn r4911]
2004-11-27 19:34:45 +00:00
Simon Tatham
7ecf13564a New timing infrastructure. There's a new function schedule_timer()
which pretty much any module can call to request a call-back in the
future. So terminal.c can do its own handling of blinking, visual
bells and deferred screen updates, without having to rely on
term_update() being called 50 times a second (fixes: pterm-timer);
and ssh.c and telnet.c both invoke a new module pinger.c which takes
care of sending keepalives, so they get sent uniformly in all front
ends (fixes: plink-keepalives, unix-keepalives).

[originally from svn r4906]
[this svn revision also touched putty-wishlist]
2004-11-27 13:20:21 +00:00
Simon Tatham
8a99993c88 Remove .cvsignore files on all active branches.
[originally from svn r4788]
[this svn revision also touched bmbm,caltrap,charset,enigma,filter,fonts,golem,grunge,halibut,html,lj,local,misc,polyhedra,putty-website,putty-wishlist,puzzles,pycee,sdlgames,svn-tools,timber,tweak]
2004-11-16 15:29:14 +00:00
Jacob Nevins
fd070c31bf Merge version number bump (0.56) from release branch.
[originally from svn r4699]
2004-10-26 18:59:39 +00:00