From: juyin Date: Fri, 1 Apr 2022 01:26:29 +0000 (+0800) Subject: refactor get_salt function X-Git-Tag: 4.12~48 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3c1e5fcf161e28bb4e592e732ce36e10696fc9e9;p=thirdparty%2Fshadow.git refactor get_salt function refactor get_salt function to make it easier to read. --- diff --git a/src/chpasswd.c b/src/chpasswd.c index d0da14c69..ce8c10fd3 100644 --- a/src/chpasswd.c +++ b/src/chpasswd.c @@ -394,38 +394,36 @@ static void close_files (void) static const char *get_salt(void) { - if ( !eflg - && ( (NULL == crypt_method) - || (0 != strcmp (crypt_method, "NONE")))) { - void *arg = NULL; + void *arg = NULL; - if (md5flg) { - crypt_method = "MD5"; - } + if (eflg || ((NULL != crypt_method) && (0 == strcmp (crypt_method, "NONE")))) { + return NULL; + } + + if (md5flg) { + crypt_method = "MD5"; + } #if defined(USE_SHA_CRYPT) || defined(USE_BCRYPT) || defined(USE_YESCRYPT) - if (sflg) { + if (sflg) { #if defined(USE_SHA_CRYPT) - if ( (0 == strcmp (crypt_method, "SHA256")) - || (0 == strcmp (crypt_method, "SHA512"))) { - arg = &sha_rounds; - } + if ((0 == strcmp (crypt_method, "SHA256")) + || (0 == strcmp (crypt_method, "SHA512"))) { + arg = &sha_rounds; + } #endif /* USE_SHA_CRYPT */ #if defined(USE_BCRYPT) - if (0 == strcmp (crypt_method, "BCRYPT")) { - arg = &bcrypt_rounds; - } + if (0 == strcmp (crypt_method, "BCRYPT")) { + arg = &bcrypt_rounds; + } #endif /* USE_BCRYPT */ #if defined(USE_YESCRYPT) - if (0 == strcmp (crypt_method, "YESCRYPT")) { - arg = &yescrypt_cost; - } -#endif /* USE_YESCRYPT */ + if (0 == strcmp (crypt_method, "YESCRYPT")) { + arg = &yescrypt_cost; } -#endif - return crypt_make_salt (crypt_method, arg); +#endif /* USE_YESCRYPT */ } - - return NULL; +#endif + return crypt_make_salt (crypt_method, arg); } int main (int argc, char **argv)