From bf66fbc8e2380717c1fab860cfc60c78582839dd Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Thu, 21 Dec 2006 13:23:14 +0000 Subject: introduce LONE_CHAR (optimized strcmp with one-char string) --- libbb/correct_password.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'libbb/correct_password.c') diff --git a/libbb/correct_password.c b/libbb/correct_password.c index fd7e0b56c..d031b2109 100644 --- a/libbb/correct_password.c +++ b/libbb/correct_password.c @@ -40,15 +40,14 @@ int correct_password(const struct passwd *pw) char *unencrypted, *encrypted, *correct; #ifdef CONFIG_FEATURE_SHADOWPASSWDS - if (!strcmp(pw->pw_passwd, "x") || !strcmp(pw->pw_passwd, "*")) { + if (LONE_CHAR(pw->pw_passwd, 'x') || LONE_CHAR(pw->pw_passwd, '*')) { struct spwd *sp = getspnam(pw->pw_name); if (!sp) bb_error_msg_and_die("no valid shadow password"); correct = sp->sp_pwdp; - } - else + } else #endif correct = pw->pw_passwd; -- cgit v1.2.3