mirror of
https://github.com/sudo-project/sudo.git
synced 2025-09-04 00:05:11 +00:00
Don't assume argv[0] is set without first checking argc.
This commit is contained in:
@@ -379,8 +379,10 @@ parse_args(int argc, char **argv, int *nargc, char ***nargv,
|
||||
}
|
||||
env_add[nenv] = NULL;
|
||||
|
||||
if (argc > 0) {
|
||||
argc -= optind;
|
||||
argv += optind;
|
||||
}
|
||||
|
||||
if (!mode) {
|
||||
/* Defer -k mode setting until we know whether it is a flag or not */
|
||||
|
@@ -183,7 +183,7 @@ main(int argc, char *argv[], char *envp[])
|
||||
NULL, NULL, sudo_conf_debug_files(getprogname()));
|
||||
|
||||
/* Make sure we are setuid root. */
|
||||
sudo_check_suid(argv[0]);
|
||||
sudo_check_suid(argc > 0 ? argv[0] : "sudo");
|
||||
|
||||
/* Reset signal mask, save signal state and make sure fds 0-2 are open. */
|
||||
(void) sigemptyset(&mask);
|
||||
|
Reference in New Issue
Block a user