From a570a80ed1606bed43118cb148fc83c3ac22b5c1 Mon Sep 17 00:00:00 2001 From: "Roberto E. Vargas Caballero" Date: Thu, 7 Mar 2024 22:35:31 +0100 Subject: [PATCH] su: Fix running it without arguments The commit 8f5a0c3 introduced a regression and the logic to control the number of arguments was broken after it, giving an error when su was executed without parameters. --- su.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/su.c b/su.c index eb8bea7..161d2ec 100644 --- a/su.c +++ b/su.c @@ -26,7 +26,7 @@ usage(void) int main(int argc, char *argv[]) { - char *usr = "root", *pass; + char *usr, *pass; char *shell, *envshell, *term; struct passwd *pw; char *newargv[3]; @@ -43,9 +43,9 @@ main(int argc, char *argv[]) usage(); } ARGEND; - if (argc != 1) + if (argc > 1) usage(); - usr = argv[0]; + usr = argc > 0 ? argv[0] : "root"; errno = 0; pw = getpwnam(usr);