login: fix getopt_ulflags fallout (wasn't taking username supplied by getty)
This commit is contained in:
parent
8b8c75e6ab
commit
22f6dcb47c
@ -235,13 +235,13 @@ int login_main(int argc, char **argv)
|
|||||||
alarm(TIMEOUT);
|
alarm(TIMEOUT);
|
||||||
|
|
||||||
opt = bb_getopt_ulflags(argc, argv, "f:h:p", &opt_user, &opt_host);
|
opt = bb_getopt_ulflags(argc, argv, "f:h:p", &opt_user, &opt_host);
|
||||||
|
|
||||||
if (opt & LOGIN_OPT_f) {
|
if (opt & LOGIN_OPT_f) {
|
||||||
if (!amroot)
|
if (!amroot)
|
||||||
bb_error_msg_and_die("-f is for root only");
|
bb_error_msg_and_die("-f is for root only");
|
||||||
safe_strncpy(username, opt_user, strlen(opt_user));
|
safe_strncpy(username, opt_user, sizeof(username));
|
||||||
}
|
}
|
||||||
username[USERNAME_SIZE] = 0;
|
if (optind < argc) /* user from command line (getty) */
|
||||||
|
safe_strncpy(username, argv[optind], sizeof(username));
|
||||||
|
|
||||||
/* Let's find out and memorize our tty */
|
/* Let's find out and memorize our tty */
|
||||||
if (!isatty(0) || !isatty(1) || !isatty(2))
|
if (!isatty(0) || !isatty(1) || !isatty(2))
|
||||||
|
Loading…
Reference in New Issue
Block a user