1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-06-18 00:49:50 +02:00
gnupg/common
Werner Koch b7f8dec632 gpg: Use only OpenPGP public key algo ids and add the EdDSA algo id.
* common/sexputil.c (get_pk_algo_from_canon_sexp): Change to return a
string.
* g10/keygen.c (check_keygrip): Adjust for change.
* sm/certreqgen-ui.c (check_keygrip): Likewise.

* agent/pksign.c (do_encode_dsa): Remove bogus map_pk_openpgp_to_gcry.

* g10/misc.c (map_pk_openpgp_to_gcry): Remove.
(openpgp_pk_test_algo): Change to a wrapper for openpgp_pk_test_algo2.
(openpgp_pk_test_algo2): Rewrite.
(openpgp_pk_algo_usage, pubkey_nbits): Add support for EdDSA.
(openpgp_pk_algo_name): Rewrite to remove need for gcry calls.
(pubkey_get_npkey, pubkey_get_nskey): Ditto.
(pubkey_get_nsig, pubkey_get_nenc): Ditto.
* g10/keygen.c(do_create_from_keygrip):  Support EdDSA.
(common_gen, gen_ecc, ask_keysize, generate_keypair): Ditto.
* g10/build-packet.c (do_key): Ditto.
* g10/export.c (transfer_format_to_openpgp): Ditto.
* g10/getkey.c (cache_public_key): Ditto.
* g10/import.c (transfer_secret_keys): Ditto.
* g10/keylist.c (list_keyblock_print, list_keyblock_colon): Ditto.
* g10/mainproc.c (proc_pubkey_enc): Ditto.
* g10/parse-packet.c (parse_key): Ditto,
* g10/sign.c (hash_for, sign_file, make_keysig_packet): Ditto.
* g10/keyserver.c (print_keyrec): Use openpgp_pk_algo_name.
* g10/pkglue.c (pk_verify, pk_encrypt, pk_check_secret_key): Use only
OpenPGP algo ids and support EdDSA.
* g10/pubkey-enc.c (get_it): Use only OpenPGP algo ids.
* g10/seskey.c (encode_md_value): Ditto.
--

This patch separates Libgcrypt and OpenPGP public key algorithms ids
and in most cases completely removes the Libgcrypt ones.  This is
useful because for Libgcrypt we specify the algorithm in the
S-expressions and the public key ids are not anymore needed.

This patch also adds some support for PUBKEY_ALGO_EDDSA which will
eventually be used instead of merging EdDSA with ECDSA.  As of now an
experimental algorithm id is used but the plan is to write an I-D so
that we can get a new id from the IETF.  Note that EdDSA (Ed25519)
does not yet work and that more changes are required.

The ECC support is still broken right now.  Needs to be fixed.

Signed-off-by: Werner Koch <wk@gnupg.org>
2014-01-30 18:48:37 +01:00
..
agent-opt.c agent: Move a typedef to common and provide parse_pinentry_mode. 2013-02-06 12:56:19 +01:00
argparse.c Add strusage macro replacement feature. 2013-11-18 13:46:52 +01:00
argparse.h common: Add meta option ignore-invalid-option. 2012-12-18 18:06:41 +01:00
asshelp.c Make use of the *_NAME etc macros. 2013-11-18 14:09:47 +01: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 Make use of the *_NAME etc macros. 2013-11-18 14:09:47 +01: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-2011.include include: Remove this directory. 2014-01-29 17:45:05 +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 common: Fix a build error when using adns. 2013-08-01 10:30:27 +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 Make sure to call fflush if estream_t is backed with stdio 2013-04-19 12:16:56 +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
gnupg.ico w32: Add icons and version information. 2013-05-07 21:35:48 +02:00
gpgrlhelp.c Make use of the *_NAME etc macros. 2013-11-18 14:09:47 +01: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 w32: Add macro for the registry key. 2014-01-08 11:47:07 +01:00
host2net.h include: Remove this directory. 2014-01-29 17:45:05 +01: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 Add code to allow for late memory cleanup. 2013-03-20 09:50:17 +01:00
init.h Add code to allow for late memory cleanup. 2013-03-20 09:50:17 +01:00
iobuf.c gpg: Limit the nesting level of I/O filters. 2013-10-04 14:05:59 +02:00
iobuf.h include: Remove this directory. 2014-01-29 17:45:05 +01: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 w32: Add macro for the registry key. 2014-01-08 11:47:07 +01:00
logging.h w32: Add code to support a portable use of GnuPG. 2013-08-01 11:20:48 +02:00
Makefile.am include: Remove this directory. 2014-01-29 17:45:05 +01:00
membuf.c common: Add put_membuf_printf. 2013-11-29 15:37:23 +01:00
membuf.h common: Add put_membuf_printf. 2013-11-29 15:37:23 +01: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 Add secp256k1. 2014-01-15 15:00:24 +09:00
openpgpdefs.h gpg: Remove cipher.h and put algo ids into a common file. 2014-01-29 20:35:05 +01: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 gpg: Use only OpenPGP public key algo ids and add the EdDSA algo id. 2014-01-30 18:48:37 +01:00
shareddefs.h agent: Move a typedef to common and provide parse_pinentry_mode. 2013-02-06 12:56:19 +01:00
signal.c Change license for some files in common to LGPLv3+/GPLv2+. 2012-04-20 15:48:48 +02:00
simple-pwquery.c Make use of the *_NAME etc macros. 2013-11-18 14:09:47 +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 Remove unused status codes 2013-01-30 18:51:56 +01:00
stringhelp.c common: Add func has_leading_keyword. 2013-02-22 09:29:41 +01:00
stringhelp.h common: Add func has_leading_keyword. 2013-02-22 09:29:41 +01: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 gpg: Rework ECC support and add experimental support for Ed25519. 2013-11-15 09:01:11 +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 include: Remove this directory. 2014-01-29 17:45:05 +01: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 utf8conv.c: Add hacks for Android. 2012-12-13 16:11:21 +01:00
utf8conv.h Change JNLIB license to LGPLv3+ or GPLv2+. 2011-09-30 12:53:34 +02:00
util.h gpg: Use only OpenPGP public key algo ids and add the EdDSA algo id. 2014-01-30 18:48:37 +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 common: Comment out unused code. 2013-07-31 16:25:41 +02:00
w32help.h common: Comment out unused code. 2013-07-31 16:25:41 +02:00
w32info-rc.h.in w32: Add icons and version information. 2013-05-07 21:35:48 +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