From 25a58ba1caf8c7adf16e2eaaf4f9072f6a1963a1 Mon Sep 17 00:00:00 2001 From: "Todd C. Miller" Date: Tue, 16 Oct 2018 12:50:43 -0600 Subject: [PATCH] Avoid potentially undefined behavior. Found by PVS Studio. --- plugins/sudoers/sudoers.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/sudoers/sudoers.c b/plugins/sudoers/sudoers.c index e57ee31c6..7d7b3f5ac 100644 --- a/plugins/sudoers/sudoers.c +++ b/plugins/sudoers/sudoers.c @@ -274,7 +274,8 @@ sudoers_policy_main(int argc, char * const argv[], int pwflag, char *env_add[], sudo_warnx(U_("%s: %s"), __func__, U_("unable to allocate memory")); goto done; } - memcpy(++NewArgv, argv, argc * sizeof(char *)); + NewArgv++; /* reserve an extra slot for --login */ + memcpy(NewArgv, argv, argc * sizeof(char *)); NewArgv[NewArgc] = NULL; if (ISSET(sudo_mode, MODE_LOGIN_SHELL) && runas_pw != NULL) { NewArgv[0] = strdup(runas_pw->pw_shell); -- 2.49.0