diff options
author | NIIBE Yutaka <[email protected]> | 2024-04-25 01:48:24 +0000 |
---|---|---|
committer | NIIBE Yutaka <[email protected]> | 2024-04-25 04:13:04 +0000 |
commit | 2593dcbcebbe55d7ab43f7ac67af08cedd0ab40c (patch) | |
tree | bc2e7c24814201011354c0a371d384410936be5f /agent/divert-tpm2.c | |
parent | gpg: New option --require-pqc-encryption (diff) | |
download | gnupg-2593dcbcebbe55d7ab43f7ac67af08cedd0ab40c.tar.gz gnupg-2593dcbcebbe55d7ab43f7ac67af08cedd0ab40c.zip |
agent: Allow NULL for R_PADDING, when calling scd and tpm2d.
* agent/call-scd.c (padding_info_cb): Allow NULL.
(agent_card_pkdecrypt): Likewise.
* agent/divert-scd.c (divert_pkdecrypt): Likewise.
* agent/divert-tpm2.c (divert_tpm2_pkdecrypt): Likewise.
--
It's for RSA PKCD#1 encoding if the decrypt operation removes padding
or not. When caller knows it's not RSA, this information is no use
and it is better to allow NULL with the variable R_PADDING.
Signed-off-by: NIIBE Yutaka <[email protected]>
Diffstat (limited to 'agent/divert-tpm2.c')
-rw-r--r-- | agent/divert-tpm2.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/agent/divert-tpm2.c b/agent/divert-tpm2.c index 2496d091a..6ebb9ef78 100644 --- a/agent/divert-tpm2.c +++ b/agent/divert-tpm2.c @@ -106,7 +106,8 @@ divert_tpm2_pkdecrypt (ctrl_t ctrl, const unsigned char *s; size_t n; - *r_padding = -1; + if (r_padding) + *r_padding = -1; s = cipher; if (*s != '(') @@ -125,7 +126,8 @@ divert_tpm2_pkdecrypt (ctrl_t ctrl, return gpg_error (GPG_ERR_INV_SEXP); if (smatch (&s, n, "rsa")) { - *r_padding = 0; + if (r_padding) + *r_padding = 0; if (*s != '(') return gpg_error (GPG_ERR_UNKNOWN_SEXP); s++; |