diff options
author | vda <vda@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2006-12-21 13:23:14 +0000 |
---|---|---|
committer | vda <vda@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2006-12-21 13:23:14 +0000 |
commit | e99be6e4a58561eb7521c57148ec65ba0d87dd7b (patch) | |
tree | 3ab3dd4df901851ff7f4345708592118766ba4aa /libbb | |
parent | ec7c757361d94d39f4c947ba1ec3cf6f928fca64 (diff) | |
download | busybox-w32-e99be6e4a58561eb7521c57148ec65ba0d87dd7b.tar.gz busybox-w32-e99be6e4a58561eb7521c57148ec65ba0d87dd7b.tar.bz2 busybox-w32-e99be6e4a58561eb7521c57148ec65ba0d87dd7b.zip |
introduce LONE_CHAR (optimized strcmp with one-char string)
git-svn-id: svn://busybox.net/trunk/busybox@17027 69ca8d6d-28ef-0310-b511-8ec308f3f277
Diffstat (limited to 'libbb')
-rw-r--r-- | libbb/correct_password.c | 5 |
1 files changed, 2 insertions, 3 deletions
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) | |||
40 | char *unencrypted, *encrypted, *correct; | 40 | char *unencrypted, *encrypted, *correct; |
41 | 41 | ||
42 | #ifdef CONFIG_FEATURE_SHADOWPASSWDS | 42 | #ifdef CONFIG_FEATURE_SHADOWPASSWDS |
43 | if (!strcmp(pw->pw_passwd, "x") || !strcmp(pw->pw_passwd, "*")) { | 43 | if (LONE_CHAR(pw->pw_passwd, 'x') || LONE_CHAR(pw->pw_passwd, '*')) { |
44 | struct spwd *sp = getspnam(pw->pw_name); | 44 | struct spwd *sp = getspnam(pw->pw_name); |
45 | 45 | ||
46 | if (!sp) | 46 | if (!sp) |
47 | bb_error_msg_and_die("no valid shadow password"); | 47 | bb_error_msg_and_die("no valid shadow password"); |
48 | 48 | ||
49 | correct = sp->sp_pwdp; | 49 | correct = sp->sp_pwdp; |
50 | } | 50 | } else |
51 | else | ||
52 | #endif | 51 | #endif |
53 | correct = pw->pw_passwd; | 52 | correct = pw->pw_passwd; |
54 | 53 | ||