aboutsummaryrefslogtreecommitdiffstats
path: root/g10/elg.c
diff options
context:
space:
mode:
Diffstat (limited to 'g10/elg.c')
-rw-r--r--g10/elg.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/g10/elg.c b/g10/elg.c
index bf6bf4361..2ced92723 100644
--- a/g10/elg.c
+++ b/g10/elg.c
@@ -39,7 +39,7 @@ g10_elg_encrypt( PKT_public_cert *pkc, PKT_pubkey_enc *enc, DEK *dek )
{
MPI frame;
- assert( enc->pubkey_algo == PUBKEY_ALGO_ELGAMAL );
+ assert( is_ELGAMAL(enc->pubkey_algo) );
enc->d.elg.a = mpi_alloc( mpi_get_nlimbs(pkc->d.elg.p) );
enc->d.elg.b = mpi_alloc( mpi_get_nlimbs(pkc->d.elg.p) );
@@ -68,7 +68,7 @@ g10_elg_sign( PKT_secret_cert *skc, PKT_signature *sig,
MPI frame;
byte *dp;
- assert( sig->pubkey_algo == PUBKEY_ALGO_ELGAMAL );
+ assert( is_ELGAMAL(sig->pubkey_algo) );
if( !digest_algo )
digest_algo = md_get_algo(md);
@@ -79,7 +79,9 @@ g10_elg_sign( PKT_secret_cert *skc, PKT_signature *sig,
sig->digest_start[1] = dp[1];
sig->d.elg.a = mpi_alloc( mpi_get_nlimbs(skc->d.elg.p) );
sig->d.elg.b = mpi_alloc( mpi_get_nlimbs(skc->d.elg.p) );
- frame = encode_md_value( md, mpi_get_nbits(skc->d.elg.p));
+ frame = encode_md_value( md, digest_algo, mpi_get_nbits(skc->d.elg.p));
+ if( DBG_CIPHER )
+ log_mpidump("calc sig frame (elg): ", frame);
elg_sign( sig->d.elg.a, sig->d.elg.b, frame, &skc->d.elg );
mpi_free(frame);
if( opt.verbose ) {