Make noexec parameter to sudo_execve() bool.
This commit is contained in:
@@ -138,7 +138,7 @@ disable_execute(char *const envp[])
|
|||||||
* ala execvp(3) if we get ENOEXEC.
|
* ala execvp(3) if we get ENOEXEC.
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
sudo_execve(const char *path, char *const argv[], char *const envp[], int noexec)
|
sudo_execve(const char *path, char *const argv[], char *const envp[], bool noexec)
|
||||||
{
|
{
|
||||||
/* Modify the environment as needed to disable further execve(). */
|
/* Modify the environment as needed to disable further execve(). */
|
||||||
if (noexec)
|
if (noexec)
|
||||||
|
@@ -407,7 +407,7 @@ selinux_execve(const char *path, char *const argv[], char *const envp[],
|
|||||||
memcpy(&nargv[2], &argv[1], argc * sizeof(char *)); /* copies NULL */
|
memcpy(&nargv[2], &argv[1], argc * sizeof(char *)); /* copies NULL */
|
||||||
|
|
||||||
/* sesh will handle noexec for us. */
|
/* sesh will handle noexec for us. */
|
||||||
sudo_execve(sesh, nargv, envp, 0);
|
sudo_execve(sesh, nargv, envp, false);
|
||||||
serrno = errno;
|
serrno = errno;
|
||||||
free(nargv);
|
free(nargv);
|
||||||
errno = serrno;
|
errno = serrno;
|
||||||
|
@@ -46,7 +46,7 @@ int
|
|||||||
main(int argc, char *argv[], char *envp[])
|
main(int argc, char *argv[], char *envp[])
|
||||||
{
|
{
|
||||||
char *cp, *cmnd;
|
char *cp, *cmnd;
|
||||||
int noexec = 0;
|
bool noexec = false;
|
||||||
debug_decl(main, SUDO_DEBUG_MAIN)
|
debug_decl(main, SUDO_DEBUG_MAIN)
|
||||||
|
|
||||||
setlocale(LC_ALL, "");
|
setlocale(LC_ALL, "");
|
||||||
|
@@ -53,7 +53,7 @@
|
|||||||
|
|
||||||
/* exec.c */
|
/* exec.c */
|
||||||
struct sudo_event_base;
|
struct sudo_event_base;
|
||||||
int sudo_execve(const char *path, char *const argv[], char *const envp[], int noexec);
|
int sudo_execve(const char *path, char *const argv[], char *const envp[], bool noexec);
|
||||||
extern volatile pid_t cmnd_pid;
|
extern volatile pid_t cmnd_pid;
|
||||||
|
|
||||||
/* exec_pty.c */
|
/* exec_pty.c */
|
||||||
|
Reference in New Issue
Block a user