mirror of
https://github.com/sudo-project/sudo.git
synced 2025-08-22 01:49:11 +00:00
Use reallocarray() instead of sudo_emallocarray() and return an
error on allocation failure.
This commit is contained in:
parent
212ff5d964
commit
69e62f316e
@ -114,7 +114,11 @@ sudo_sia_setup(struct passwd *pw, char **promptp, sudo_auth *auth)
|
|||||||
|
|
||||||
/* Rebuild argv for sia_ses_init() */
|
/* Rebuild argv for sia_ses_init() */
|
||||||
sudo_argc = NewArgc + 1;
|
sudo_argc = NewArgc + 1;
|
||||||
sudo_argv = sudo_emallocarray(sudo_argc + 1, sizeof(char *));
|
sudo_argv = reallocarray(NULL, sudo_argc + 1, sizeof(char *));
|
||||||
|
if (sudo_argv == NULL) {
|
||||||
|
log_warning(0, N_("unable to allocate memory"));
|
||||||
|
debug_return_int(AUTH_FATAL);
|
||||||
|
}
|
||||||
sudo_argv[0] = "sudo";
|
sudo_argv[0] = "sudo";
|
||||||
for (i = 0; i < NewArgc; i++)
|
for (i = 0; i < NewArgc; i++)
|
||||||
sudo_argv[i + 1] = NewArgv[i];
|
sudo_argv[i + 1] = NewArgv[i];
|
||||||
@ -152,7 +156,7 @@ sudo_sia_cleanup(struct passwd *pw, sudo_auth *auth)
|
|||||||
debug_decl(sudo_sia_cleanup, SUDOERS_DEBUG_AUTH)
|
debug_decl(sudo_sia_cleanup, SUDOERS_DEBUG_AUTH)
|
||||||
|
|
||||||
(void) sia_ses_release(&siah);
|
(void) sia_ses_release(&siah);
|
||||||
sudo_efree(sudo_argv);
|
free(sudo_argv);
|
||||||
debug_return_int(AUTH_SUCCESS);
|
debug_return_int(AUTH_SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user