aboutsummaryrefslogtreecommitdiffstats
path: root/src/decrypt.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2014-05-08 12:03:14 +0000
committerWerner Koch <[email protected]>2014-05-08 12:11:58 +0000
commitd5fb92cdaed21eea2f1a921e4f11df72635a8462 (patch)
tree9c219a9cfa334c021853091a0717f8135733a06a /src/decrypt.c
parentAdd GPGME_ENCRYPT_NO_COMPRESS flag. (diff)
downloadgpgme-d5fb92cdaed21eea2f1a921e4f11df72635a8462.tar.gz
gpgme-d5fb92cdaed21eea2f1a921e4f11df72635a8462.zip
Map public key algos returned by gpg to gpgme values.
* src/conversion.c (_gpgme_map_pk_algo): New. * src/decrypt.c (parse_enc_to): Add arg PROTOCOL and map pubkey algo. (_gpgme_decrypt_status_handler): Map pubkey algo. * src/keylist.c (keylist_colon_handler): Map pubkey algo. * src/sign.c (parse_sig_created): Add arg PROTOCOL and map pubkey algo. * src/verify.c (parse_new_sig): Ditto. (parse_valid_sig): Ditto. * src/gpgme.h.in (GPGME_PK_ECC): New. (GPGME_MD_SHA224): New. * src/gpgme.c (gpgme_pubkey_algo_name): Add GPGME_PK_ECC case. (gpgme_hash_algo_name): Add GPGME_MD_SHA224. -- This affects only the not yet released ECC code of GnuPG 2.1.
Diffstat (limited to 'src/decrypt.c')
-rw-r--r--src/decrypt.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/decrypt.c b/src/decrypt.c
index 63787c70..47420601 100644
--- a/src/decrypt.c
+++ b/src/decrypt.c
@@ -119,7 +119,7 @@ gpgme_op_decrypt_result (gpgme_ctx_t ctx)
static gpgme_error_t
-parse_enc_to (char *args, gpgme_recipient_t *recp)
+parse_enc_to (char *args, gpgme_recipient_t *recp, gpgme_protocol_t protocol)
{
gpgme_recipient_t rec;
char *tail;
@@ -155,7 +155,7 @@ parse_enc_to (char *args, gpgme_recipient_t *recp)
if (*args)
{
gpg_err_set_errno (0);
- rec->pubkey_algo = strtol (args, &tail, 0);
+ rec->pubkey_algo = _gpgme_map_pk_algo (strtol (args, &tail, 0), protocol);
if (errno || args == tail || *tail != ' ')
{
/* The crypto backend does not behave. */
@@ -261,7 +261,7 @@ _gpgme_decrypt_status_handler (void *priv, gpgme_status_code_t code,
break;
case GPGME_STATUS_ENC_TO:
- err = parse_enc_to (args, opd->last_recipient_p);
+ err = parse_enc_to (args, opd->last_recipient_p, ctx->protocol);
if (err)
return err;