From b8d2740923307172c7340e6401ecb61787dacafc Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Sat, 24 Jul 2010 09:18:42 +0000 Subject: [PATCH] support more hash algorithms to support the v2 card --- g10/ChangeLog | 6 ++++++ g10/cardglue.c | 8 +++++++- g10/cardglue.h | 1 + 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/g10/ChangeLog b/g10/ChangeLog index 6b421df41..0ba1060be 100644 --- a/g10/ChangeLog +++ b/g10/ChangeLog @@ -1,3 +1,9 @@ +2010-07-24 Werner Koch + + * cardglue.c (agent_scd_pksign): Allow more hash algorithms when + using with scdaemon. + * cardglue.h (GCRY_MD_MD5): New. + 2010-06-18 Werner Koch * parse-packet.c (skip_packet, parse_gpg_control): Take care of diff --git a/g10/cardglue.c b/g10/cardglue.c index f0041889e..809b315e5 100644 --- a/g10/cardglue.c +++ b/g10/cardglue.c @@ -1323,7 +1323,13 @@ agent_scd_pksign (const char *serialno, int hashalgo, { init_membuf (&data, 1024); snprintf (line, DIM(line)-1, "SCD PKSIGN %s%s", - hashalgo == GCRY_MD_RMD160? "--hash=rmd160 ": "", + hashalgo == GCRY_MD_SHA1? "--hash=sha1 ": + hashalgo == GCRY_MD_SHA224? "--hash=sha224 ": + hashalgo == GCRY_MD_SHA256? "--hash=sha256 ": + hashalgo == GCRY_MD_SHA384? "--hash=sha384 ": + hashalgo == GCRY_MD_SHA512? "--hash=sha512 ": + hashalgo == GCRY_MD_RMD160? "--hash=rmd160 ": + hashalgo == GCRY_MD_MD5? "--hash=md5 " : "", serialno); line[DIM(line)-1] = 0; rc = test_transact (assuan_transact (app->assuan_ctx, line, diff --git a/g10/cardglue.h b/g10/cardglue.h index b653f36dd..50b292227 100644 --- a/g10/cardglue.h +++ b/g10/cardglue.h @@ -181,6 +181,7 @@ void log_printhex (const char *text, const void *buffer, size_t length); #define GCRY_MD_SHA384 DIGEST_ALGO_SHA384 #define GCRY_MD_SHA512 DIGEST_ALGO_SHA512 #define GCRY_MD_SHA224 DIGEST_ALGO_SHA224 +#define GCRY_MD_MD5 DIGEST_ALGO_MD5 void gcry_mpi_release (MPI a); MPI gcry_mpi_set_opaque (MPI a, void *p, unsigned int len);