diff options
Diffstat (limited to 'agent/divert-scd.c')
-rw-r--r-- | agent/divert-scd.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/agent/divert-scd.c b/agent/divert-scd.c index d8076d158..7587d4478 100644 --- a/agent/divert-scd.c +++ b/agent/divert-scd.c @@ -437,7 +437,14 @@ divert_pksign (ctrl_t ctrl, const char *desc_text, const unsigned char *grip, /* Note that the KID may be an keyref or a keygrip. The signing * functions handle both. */ - if (algo == MD_USER_TLS_MD5SHA1) + if (!algo) + { + /* This is the PureEdDSA case. (DIGEST,DIGESTLEN) this the + * entire data which will be signed. */ + rc = agent_card_pksign (ctrl, kid, getpin_cb, ctrl, NULL, + 0, digest, digestlen, &sigval, &siglen); + } + else if (algo == MD_USER_TLS_MD5SHA1) { int save = ctrl->use_auth_call; ctrl->use_auth_call = 1; |