simon-git: putty (master): Simon Tatham

Commits to Tartarus CVS repository. tartarus-commits at lists.tartarus.org
Tue May 12 14:58:43 BST 2015


TL;DR:
  4d88fe3 Unix Pageant: support -d, to delete a key from the agent.
  f274b56 Const-correctness in the base64 functions.
  eef0235 Centralise public-key output code into sshpubk.c.
  8682246 Centralise SSH-2 key fingerprinting into sshpubk.c.
  e533097 Unix Pageant: provide public-key extraction options.
  c6c23ed Unix Pageant: support -D, to delete all keys.

Repository:     git://git.tartarus.org/simon/putty.git
On the web:     http://tartarus.org/~simon-git/gitweb/?p=putty.git
Branch updated: master
Committer:      Simon Tatham <anakin at pobox.com>
Date:           2015-05-12 14:58:43

commit 4d88fe3dde3448f3e940c424cf1de3221c3fde10
web diff http://tartarus.org/~simon-git/gitweb/?p=putty.git;a=commitdiff;h=4d88fe3dde3448f3e940c424cf1de3221c3fde10;hp=4204a53f6d8215fde1984748d835ebabc8392619
Author: Simon Tatham <anakin at pobox.com>
Date:   Tue May 12 13:27:33 2015 +0100

    Unix Pageant: support -d, to delete a key from the agent.
    
    Unlike ssh-add, we can identify the key by its comment or by a prefix
    of its fingerprint as well as using a public key file on disk. The
    string given as an argument to -d is interpreted as whichever of those
    things matches; disambiguating prefixes are available if needed.

 pageant.c     |   63 +++++++++++++++++++-
 pageant.h     |   16 ++++-
 unix/uxpgnt.c |  181 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 3 files changed, 256 insertions(+), 4 deletions(-)

commit f274b56a5751437e8de13c33f73c33bdd33dbc31
web diff http://tartarus.org/~simon-git/gitweb/?p=putty.git;a=commitdiff;h=f274b56a5751437e8de13c33f73c33bdd33dbc31;hp=4d88fe3dde3448f3e940c424cf1de3221c3fde10
Author: Simon Tatham <anakin at pobox.com>
Date:   Tue May 12 14:00:04 2015 +0100

    Const-correctness in the base64 functions.

 misc.c    |    4 ++--
 misc.h    |    4 ++--
 ssh.h     |    7 ++++---
 sshpubk.c |    2 +-
 4 files changed, 9 insertions(+), 8 deletions(-)

commit eef0235a0f79e92f25f34782fc486c101fa703ee
web diff http://tartarus.org/~simon-git/gitweb/?p=putty.git;a=commitdiff;h=eef0235a0f79e92f25f34782fc486c101fa703ee;hp=f274b56a5751437e8de13c33f73c33bdd33dbc31
Author: Simon Tatham <anakin at pobox.com>
Date:   Tue May 12 13:42:26 2015 +0100

    Centralise public-key output code into sshpubk.c.
    
    There was a fair amount of duplication between Windows and Unix
    PuTTYgen, and some confusion over writing things to FILE * and
    formatting them internally into strings. I think all the public-key
    output code now lives in sshpubk.c, and there's only one copy of the
    code to generate each format.

 cmdgen.c          |  139 ++++++++---------------------------------------------
 ssh.h             |    6 +++
 sshpubk.c         |  135 +++++++++++++++++++++++++++++++++++++++++++++++++++
 windows/winpgen.c |   80 +++++++++---------------------
 4 files changed, 185 insertions(+), 175 deletions(-)

commit 8682246d33f21e369a3e5b38fa2fdec58b1e4425
web diff http://tartarus.org/~simon-git/gitweb/?p=putty.git;a=commitdiff;h=8682246d33f21e369a3e5b38fa2fdec58b1e4425;hp=eef0235a0f79e92f25f34782fc486c101fa703ee
Author: Simon Tatham <anakin at pobox.com>
Date:   Tue May 12 14:35:44 2015 +0100

    Centralise SSH-2 key fingerprinting into sshpubk.c.
    
    There were ad-hoc functions for fingerprinting a bare key blob in both
    cmdgen.c and pageant.c, not quite doing the same thing. Also, every
    SSH-2 public key algorithm in the code base included a dedicated
    fingerprint() method, which is completely pointless since SSH-2 key
    fingerprints are computed in an algorithm-independent way (just hash
    the standard-format public key blob), so each of those methods was
    just duplicating the work of the public_blob() method with a less
    general output mechanism.
    
    Now sshpubk.c centrally provides an ssh2_fingerprint_blob() function
    that does all the real work, plus an ssh2_fingerprint() function that
    wraps it and deals with calling public_blob() to get something to
    fingerprint. And the fingerprint() method has been completely removed
    from ssh_signkey and all its implementations, and good riddance.

 cmdgen.c          |   26 ++--------------
 pageant.c         |   30 ++++---------------
 ssh.c             |    2 +-
 ssh.h             |    3 +-
 sshdss.c          |   38 ------------------------
 sshecc.c          |   85 -----------------------------------------------------
 sshpubk.c         |   56 +++++++++++++++++++++++++++++++++++
 sshrsa.c          |   36 -----------------------
 windows/winpgen.c |    6 ++--
 windows/winpgnt.c |    2 +-
 10 files changed, 71 insertions(+), 213 deletions(-)

commit e533097e1566fb1029e14c3b9808e8aaee1b8a85
web diff http://tartarus.org/~simon-git/gitweb/?p=putty.git;a=commitdiff;h=e533097e1566fb1029e14c3b9808e8aaee1b8a85;hp=8682246d33f21e369a3e5b38fa2fdec58b1e4425
Author: Simon Tatham <anakin at pobox.com>
Date:   Tue May 12 14:48:32 2015 +0100

    Unix Pageant: provide public-key extraction options.
    
    I've decided against implementing an option exactly analogous to
    'ssh-add -L' (printing the full public key of everything in the
    agent). Instead, you can identify a specific key to display in full,
    by any of the same means -d lets you use, and then print it in either
    of the public key formats we support.

 pageant.c     |    4 ++++
 pageant.h     |    1 +
 unix/uxpgnt.c |   37 +++++++++++++++++++++++++++++++++----
 3 files changed, 38 insertions(+), 4 deletions(-)

commit c6c23ed84b544661694a74956499506ff53ebc71
web diff http://tartarus.org/~simon-git/gitweb/?p=putty.git;a=commitdiff;h=c6c23ed84b544661694a74956499506ff53ebc71;hp=e533097e1566fb1029e14c3b9808e8aaee1b8a85
Author: Simon Tatham <anakin at pobox.com>
Date:   Tue May 12 14:55:44 2015 +0100

    Unix Pageant: support -D, to delete all keys.

 pageant.c     |   36 ++++++++++++++++++++++++++++++++++++
 pageant.h     |    1 +
 unix/uxpgnt.c |    7 +++++--
 3 files changed, 42 insertions(+), 2 deletions(-)



More information about the tartarus-commits mailing list