diff options
Diffstat (limited to 'agent')
-rw-r--r-- | agent/ChangeLog | 4 | ||||
-rw-r--r-- | agent/pksign.c | 4 |
2 files changed, 7 insertions, 1 deletions
diff --git a/agent/ChangeLog b/agent/ChangeLog index c022852e8..0390275fc 100644 --- a/agent/ChangeLog +++ b/agent/ChangeLog @@ -1,3 +1,7 @@ +2011-02-07 Werner Koch <[email protected]> + + * pksign.c (do_encode_dsa): Enforce multipe of 8 bits only for DSA. + 2011-02-03 Werner Koch <[email protected]> * protect.c (protect_info): Support ECC algos. diff --git a/agent/pksign.c b/agent/pksign.c index 988e3d3f0..dc44b881d 100644 --- a/agent/pksign.c +++ b/agent/pksign.c @@ -132,8 +132,10 @@ do_encode_dsa (const byte *md, size_t mdlen, int dsaalgo, gcry_sexp_t pkey, else return gpg_error (GPG_ERR_WRONG_PUBKEY_ALGO); - if ((qbits%8)) + if (pkalgo == GCRY_PK_DSA && (qbits%8)) { + /* FIXME: We check the QBITS but print a message about the hash + length. */ log_error (_("DSA requires the hash length to be a" " multiple of 8 bits\n")); return gpg_error (GPG_ERR_INV_LENGTH); |