Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Alexander_Naumov:SLE-12:Update
sudo.1638
sudo-1.8.10p3-CVE-2016-7032.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File sudo-1.8.10p3-CVE-2016-7032.patch of Package sudo.1638
# HG changeset patch # User Todd C. Miller <Todd.Miller@courtesan.com> # Date 1443474600 21600 # Node ID 58a5c06b5257991a3dbbde25cb2e9852f42a7014 # Parent 22fb750d92a9bad071720e31d577e97bbce18ed8 Also interpose system(3). On glibc systems you cannot interpose the syscalls used internally by libc. Index: sudo-1.8.10p3/src/sudo_noexec.c =================================================================== --- sudo-1.8.10p3.orig/src/sudo_noexec.c +++ sudo-1.8.10p3/src/sudo_noexec.c @@ -20,6 +20,8 @@ #include <errno.h> #include <stdarg.h> +#include <stdio.h> +#include <stdlib.h> #ifdef HAVE_UNISTD_H # include <unistd.h> #endif /* HAVE_UNISTD_H */ @@ -63,6 +65,12 @@ typedef struct interpose_s { return -1; \ } +#define DUMMY1(fn, t1) \ +__dso_public int \ +FN_NAME(fn)(t1 a1) \ +DUMMY_BODY \ +INTERPOSE(fn) + #define DUMMY2(fn, t1, t2) \ __dso_public int \ FN_NAME(fn)(t1 a1, t2 a2) \ @@ -96,6 +104,7 @@ DUMMY_VA(execlp, const char *, const cha DUMMY2(execv, const char *, char * const *) DUMMY2(execvp, const char *, char * const *) DUMMY3(execve, const char *, char * const *, char * const *) +DUMMY1(system, const char *) /* * Private versions of the above. @@ -202,3 +211,12 @@ DUMMY6(_posix_spawnp, pid_t *, const cha #ifdef HAVE_POSIX___SPAWNP DUMMY6(__posix_spawnp, pid_t *, const char *, const posix_spawn_file_actions_t *, const posix_spawnattr_t *, char * const *, char * const *) #endif + +/* popen(3) returns FILE *, not int so we can't use a wrapper. */ +__dso_public FILE * +FN_NAME(popen)(const char *c, const char *t) +{ + errno = EACCES; + return NULL; +} +INTERPOSE(popen)
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor