diff options
author | Werner Koch <wk@gnupg.org> | 2013-09-04 11:20:57 +0200 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2013-09-04 11:25:06 +0200 |
commit | c47d4001033f68212d2847b3074a0bdda990342e (patch) | |
tree | d0517bc1be1a9ca2d73320030983fcc3065e0720 /cipher/elgamal.c | |
parent | c26be7a337d0bf98193bc58e043209e46d0769bb (diff) | |
download | libgcrypt-c47d4001033f68212d2847b3074a0bdda990342e.tar.gz |
Prepare support for EdDSA.
* src/cipher.h (PUBKEY_FLAG_EDDSA): New.
* cipher/pubkey.c (pubkey_verify): Repalce args CMP and OPAQUEV by
CTX. Pass flags and hash algo to the verify function. Change all
verify functions to accept these args.
(sexp_data_to_mpi): Implement new flag "eddsa".
(gcry_pk_verify): Pass CTX instead of the compare function to
pubkey_verify.
* cipher/ecc.c (sign): Rename to sign_ecdsa. Change all callers.
(verify): Rename to verify_ecdsa. Change all callers.
(sign_eddsa, verify_eddsa): New stub functions.
(ecc_sign): Divert to sign_ecdsa or sign_eddsa.
(ecc_verify): Divert to verify_ecdsa or verify_eddsa.
Diffstat (limited to 'cipher/elgamal.c')
-rw-r--r-- | cipher/elgamal.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/cipher/elgamal.c b/cipher/elgamal.c index 7540e3ff..d105cb46 100644 --- a/cipher/elgamal.c +++ b/cipher/elgamal.c @@ -789,7 +789,8 @@ elg_sign (int algo, gcry_mpi_t *resarr, gcry_mpi_t data, gcry_mpi_t *skey, static gcry_err_code_t elg_verify (int algo, gcry_mpi_t hash, gcry_mpi_t *data, gcry_mpi_t *pkey, - int (*cmp) (void *, gcry_mpi_t), void *opaquev) + int (*cmp) (void *, gcry_mpi_t), void *opaquev, + int flags, int hashalgo) { gcry_err_code_t err = GPG_ERR_NO_ERROR; ELG_public_key pk; @@ -797,6 +798,8 @@ elg_verify (int algo, gcry_mpi_t hash, gcry_mpi_t *data, gcry_mpi_t *pkey, (void)algo; (void)cmp; (void)opaquev; + (void)flags; + (void)hashalgo; if (mpi_is_opaque (hash)) return GPG_ERR_INV_DATA; |