From 4e02db75e3a1da9012176f2cfe1638c8c0129f6f Mon Sep 17 00:00:00 2001 From: NIIBE Yutaka Date: Fri, 11 Jun 2021 13:42:01 +0900 Subject: scd: Support clearing of Reset Code by ''. * scd/app-openpgp.c (do_change_pin): Allow null-string. -- Signed-off-by: NIIBE Yutaka --- scd/app-openpgp.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'scd/app-openpgp.c') diff --git a/scd/app-openpgp.c b/scd/app-openpgp.c index 39f1517f0..feea1905b 100644 --- a/scd/app-openpgp.c +++ b/scd/app-openpgp.c @@ -3477,7 +3477,9 @@ do_change_pin (app_t app, ctrl_t ctrl, const char *chvnostr, } else if (set_resetcode) { - if (strlen (pinvalue) < 8) + size_t bufferlen = strlen (pinvalue); + + if (bufferlen != 0 && bufferlen < 8) { log_error (_("Reset Code is too short; minimum length is %d\n"), 8); rc = gpg_error (GPG_ERR_BAD_PIN); @@ -3485,7 +3487,6 @@ do_change_pin (app_t app, ctrl_t ctrl, const char *chvnostr, else { char *buffer = NULL; - size_t bufferlen; rc = pin2hash_if_kdf (app, 0, pinvalue, &buffer, &bufferlen); if (!rc) -- cgit v1.2.3