1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-06-13 00:09:51 +02:00
gnupg/common
Werner Koch 649b31c663 ssh: Support ECDSA keys.
* agent/command-ssh.c (SPEC_FLAG_IS_ECDSA): New.
(struct ssh_key_type_spec): Add fields CURVE_NAME and HASH_ALGO.
(ssh_key_types): Add types ecdsa-sha2-nistp{256,384,521}.
(ssh_signature_encoder_t): Add arg spec and adjust all callers.
(ssh_signature_encoder_ecdsa): New.
(sexp_key_construct, sexp_key_extract, ssh_receive_key)
(ssh_convert_key_to_blob): Support ecdsa.
(ssh_identifier_from_curve_name): New.
(ssh_send_key_public): Retrieve and pass the curve_name.
(key_secret_to_public): Ditto.
(data_sign): Add arg SPEC and change callers to pass it.
(ssh_handler_sign_request): Get the hash algo from SPEC.
* common/ssh-utils.c (get_fingerprint): Support ecdsa.

* agent/protect.c (protect_info): Add flag ECC_HACK.
(agent_protect): Allow the use of the "curve" parameter.
* agent/t-protect.c (test_agent_protect): Add a test case for ecdsa.

* agent/command-ssh.c (ssh_key_grip): Print a better error code.
--

The 3 standard curves are now supported in gpg-agent's ssh-agent
protocol implementation.  I tested this with all 3 curves and keys
generated by OpenSSH 5.9p1.

Using existing non-ssh generated keys will likely fail for now. To fix
this, the code should first undergo some more cleanup; then the fixes
are pretty straightforward.  And yes, the data structures are way too
complicated.
2012-12-12 18:47:21 +01:00
..
argparse.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
argparse.h Print warning for arguments not considered an option. 2012-03-27 12:38:49 +02:00
asshelp.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
asshelp.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
asshelp2.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
audit.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
audit.h Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
b64dec.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
b64enc.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
ChangeLog-2011 Generate the ChangeLog from commit logs. 2011-12-01 11:09:02 +01:00
ChangeLog.jnlib Generate the ChangeLog from commit logs. 2011-12-01 11:09:02 +01:00
common-defs.h Changed to GPLv3. 2007-07-04 19:49:40 +00:00
convert.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
dns-cert.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
dns-cert.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
dotlock.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
dotlock.h Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
dynload.h Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
estream-printf.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
estream-printf.h Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
estream.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
estream.h Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
exaudit.awk Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
exechelp-posix.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
exechelp-w32.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
exechelp-w32ce.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
exechelp.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
exstatus.awk Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
gc-opt-flags.h Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
get-passphrase.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
get-passphrase.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
gettime.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
gettime.h remove doubled words in a comment 2012-04-26 09:52:25 +02:00
gpgrlhelp.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
helpfile.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
homedir.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
http.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
http.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
i18n.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
i18n.h Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
init.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
init.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
iobuf.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
iobuf.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
isascii.c Changed to GPLv3. 2007-07-04 19:49:40 +00:00
keyserver.h Initial code checking for backup - not yet working. 2011-01-10 14:30:17 +01:00
libjnlib-config.h Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
localename.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
logging.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
logging.h Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
Makefile.am common: Remove generated files only during maintainer-clean. 2012-05-08 15:14:58 +02:00
membuf.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
membuf.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
miscellaneous.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
mischelp.c Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
mischelp.h Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
mkerrors Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
mkerrtok Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
mkstrtable.awk Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
openpgp-oid.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
openpgpdefs.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
percent.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
pka.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
pka.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
README This commit was manufactured by cvs2svn to create branch 2003-08-05 17:11:04 +00:00
README.jnlib Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
session-env.c Do not use a broken ttyname. 2012-11-20 19:03:49 +01:00
session-env.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
sexp-parse.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
sexputil.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
signal.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
simple-pwquery.c Do not use a broken ttyname. 2012-11-20 19:03:49 +01:00
simple-pwquery.h Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
srv.c Fix left over use of jnlib on some platforms 2012-08-24 09:29:56 +02:00
srv.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
ssh-utils.c ssh: Support ECDSA keys. 2012-12-12 18:47:21 +01:00
ssh-utils.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
status.c Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
status.h Add tweaks for the not anymore patented IDEA algorithm. 2012-05-08 18:18:32 +02:00
stringhelp.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
stringhelp.h Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
strlist.c Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
strlist.h Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
sysutils.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
sysutils.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
t-b64.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
t-convert.c Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
t-dns-cert.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
t-dotlock.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
t-exechelp.c Fixed set but unused variable bugs 2011-08-10 14:11:30 +02:00
t-gettime.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
t-helpfile.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
t-openpgp-oid.c Move OpenPGP OID helpers to common/. 2011-01-31 18:19:14 +01:00
t-percent.c Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
t-session-env.c Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
t-sexputil.c Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
t-ssh-utils.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
t-stringhelp.c Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
t-support.c Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
t-support.h Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
t-sysutils.c Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00
t-timestuff.c Fix timegm regression test. 2012-03-27 19:46:20 +02:00
t-w32-reg.c Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
tlv.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
tlv.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
ttyio.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
ttyio.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
types.h Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
userids.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
userids.h Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
utf8conv.c Change all quotes in strings and comments to the new GNU standard. 2012-06-05 19:29:22 +02:00
utf8conv.h Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
util.h Do not use a broken ttyname. 2012-11-20 19:03:49 +01:00
w32-afunix.c Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
w32-afunix.h Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
w32-reg.c Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
w32help.h Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
xasprintf.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
xmalloc.c Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
xmalloc.h Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
xreadline.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
yesno.c Nuked almost all trailing white space. 2011-02-04 12:57:53 +01:00

Stuff used by several modules of GnuPG.

These directories use it:

gpg
sm
agent

These directories don't use it:

kbx