diff --git a/modules/pam_unix/support.c b/modules/pam_unix/support.c index 27ca7127..57e05311 100644 --- a/modules/pam_unix/support.c +++ b/modules/pam_unix/support.c @@ -99,8 +99,12 @@ unsigned long long _set_ctrl(pam_handle_t *pamh, int flags, int *remember, free (val); /* read number of rounds for crypt algo */ - if (rounds && (on(UNIX_SHA256_PASS, ctrl) || on(UNIX_SHA512_PASS, ctrl))) { - val = pam_modutil_search_key(pamh, LOGIN_DEFS, "SHA_CRYPT_MAX_ROUNDS"); + if (rounds && (on(UNIX_SHA256_PASS, ctrl) || + on(UNIX_SHA512_PASS, ctrl) || + on(UNIX_BLOWFISH_PASS, ctrl) || + on(UNIX_GOST_YESCRYPT_PASS, ctrl) || + on(UNIX_YESCRYPT_PASS, ctrl))) { + val = pam_modutil_search_key(pamh, LOGIN_DEFS, "ROUNDS"); if (val) { *rounds = strtol(val, NULL, 10);