diff options
author | Arnaud Fontaine <[email protected]> | 2018-02-08 18:03:08 +0000 |
---|---|---|
committer | NIIBE Yutaka <[email protected]> | 2018-02-13 00:28:13 +0000 |
commit | 25f3b69129015c54392636818c8846e236f5cb2c (patch) | |
tree | 6aa5691a97411fedfd347ed10d79312782dec4dd | |
parent | scd: Fix handling for Data Object with no data. (diff) | |
download | gnupg-25f3b69129015c54392636818c8846e236f5cb2c.tar.gz gnupg-25f3b69129015c54392636818c8846e236f5cb2c.zip |
scd: Improve KDF-DO support
* scd/app-openpgp.c (pin2hash_if_kdf): Check the content of KDF DO.
--
Length check added by gniibe.
Signed-off-by: Arnaud Fontaine <[email protected]>
-rw-r--r-- | scd/app-openpgp.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/scd/app-openpgp.c b/scd/app-openpgp.c index 5b1b0d339..f3065edf0 100644 --- a/scd/app-openpgp.c +++ b/scd/app-openpgp.c @@ -2072,7 +2072,8 @@ pin2hash_if_kdf (app_t app, int chvno, char *pinvalue, int *r_pinlen) size_t buflen; if (app->app_local->extcap.kdf_do - && (relptr = get_one_do (app, 0x00F9, &buffer, &buflen, NULL))) + && (relptr = get_one_do (app, 0x00F9, &buffer, &buflen, NULL)) + && buflen == 110 && (buffer[2] == 0x03)) { char *salt; unsigned long s2k_count; |