make pw_encrypt() return malloc'ed string.
text data bss dec hex filename 759802 604 6684 767090 bb472 busybox_old 759804 604 6676 767084 bb46c busybox_unstripped
This commit is contained in:
@@ -72,6 +72,9 @@ int sulogin_main(int argc ATTRIBUTE_UNUSED, char **argv)
|
||||
#endif
|
||||
|
||||
while (1) {
|
||||
char *encrypted;
|
||||
int r;
|
||||
|
||||
/* cp points to a static buffer that is zeroed every time */
|
||||
cp = bb_askpass(timeout,
|
||||
"Give root password for system maintenance\n"
|
||||
@@ -81,7 +84,10 @@ int sulogin_main(int argc ATTRIBUTE_UNUSED, char **argv)
|
||||
bb_info_msg("Normal startup");
|
||||
return 0;
|
||||
}
|
||||
if (strcmp(pw_encrypt(cp, pwd->pw_passwd, 1), pwd->pw_passwd) == 0) {
|
||||
encrypted = pw_encrypt(cp, pwd->pw_passwd, 1);
|
||||
r = strcmp(encrypted, pwd->pw_passwd);
|
||||
free(encrypted);
|
||||
if (r == 0) {
|
||||
break;
|
||||
}
|
||||
bb_do_delay(FAIL_DELAY);
|
||||
|
Reference in New Issue
Block a user