diff options
author | Michał Górny <mgorny@gentoo.org> | 2017-10-03 21:06:04 +0200 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2017-10-03 21:09:28 +0200 |
commit | 207991fdff291c3ccecf2899ad88a91d351136c6 (patch) | |
tree | 6e6c8a8c1e51d07ac01f077d23e17e089d26d40c /sys-apps/sandbox/files | |
parent | sys-apps/sandbox: Drop old revisions of 2.10 (diff) | |
download | gentoo-207991fdff291c3ccecf2899ad88a91d351136c6.tar.gz gentoo-207991fdff291c3ccecf2899ad88a91d351136c6.tar.bz2 gentoo-207991fdff291c3ccecf2899ad88a91d351136c6.zip |
sys-apps/sandbox: Drop old
Diffstat (limited to 'sys-apps/sandbox/files')
-rw-r--r-- | sys-apps/sandbox/files/sandbox-2.6-check-empty-paths-at.patch | 201 | ||||
-rw-r--r-- | sys-apps/sandbox/files/sandbox-2.6-desktop.patch | 30 | ||||
-rw-r--r-- | sys-apps/sandbox/files/sandbox-2.6-gcc-5.patch | 13 | ||||
-rw-r--r-- | sys-apps/sandbox/files/sandbox-2.6-log-var.patch | 51 | ||||
-rw-r--r-- | sys-apps/sandbox/files/sandbox-2.6-no-pch.patch | 29 | ||||
-rw-r--r-- | sys-apps/sandbox/files/sandbox-2.6-open-nofollow.patch | 54 | ||||
-rw-r--r-- | sys-apps/sandbox/files/sandbox-2.6-static-close-fd.patch | 93 | ||||
-rw-r--r-- | sys-apps/sandbox/files/sandbox-2.6-trace-hppa.patch | 27 | ||||
-rw-r--r-- | sys-apps/sandbox/files/sandbox-2.8-write-ptmx.patch | 34 |
9 files changed, 0 insertions, 532 deletions
diff --git a/sys-apps/sandbox/files/sandbox-2.6-check-empty-paths-at.patch b/sys-apps/sandbox/files/sandbox-2.6-check-empty-paths-at.patch deleted file mode 100644 index e4dc5290ed50..000000000000 --- a/sys-apps/sandbox/files/sandbox-2.6-check-empty-paths-at.patch +++ /dev/null @@ -1,201 +0,0 @@ -From dd726dcc6a95355d0e0cc949018d9c8aefc89a02 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <vapier@gentoo.org> -Date: Mon, 24 Dec 2012 19:41:49 -0500 -Subject: [PATCH 1/2] libsandbox: reject "" paths with *at funcs before - checking the dirfd - -When it comes to processing errors, an empty path is checked before -an invalid dirfd. Make sure sandbox matches that behavior for the -random testsuites out there that look for this. - -URL: https://bugs.gentoo.org/346929 -Reported-by: Marien Zwart <marienz@gentoo.org> -Signed-off-by: Mike Frysinger <vapier@gentoo.org> ---- - libsandbox/wrapper-funcs/__pre_check.c | 2 ++ - libsandbox/wrapper-funcs/mkdirat_pre_check.c | 17 +++++------------ - libsandbox/wrapper-funcs/openat_pre_check.c | 15 ++++----------- - libsandbox/wrapper-funcs/unlinkat_pre_check.c | 17 +++++------------ - libsandbox/wrappers.h | 2 ++ - tests/mkdirat-3.sh | 7 +++++++ - tests/mkdirat.at | 1 + - tests/openat-2.sh | 9 +++++++++ - tests/openat.at | 1 + - tests/unlinkat-4.sh | 7 +++++++ - tests/unlinkat.at | 1 + - 11 files changed, 44 insertions(+), 35 deletions(-) - create mode 100755 tests/mkdirat-3.sh - create mode 100755 tests/openat-2.sh - create mode 100755 tests/unlinkat-4.sh - -diff --git a/libsandbox/wrapper-funcs/__pre_check.c b/libsandbox/wrapper-funcs/__pre_check.c -index 2d5711f..28ad91f 100644 ---- a/libsandbox/wrapper-funcs/__pre_check.c -+++ b/libsandbox/wrapper-funcs/__pre_check.c -@@ -20,3 +20,5 @@ - #if SB_NR_UNLINK != SB_NR_UNDEF && SB_NR_UNLINKAT == SB_NR_UNDEF - # include "unlinkat_pre_check.c" - #endif -+ -+#include "__pre_at_check.c" -diff --git a/libsandbox/wrapper-funcs/mkdirat_pre_check.c b/libsandbox/wrapper-funcs/mkdirat_pre_check.c -index 77a65df..0b48d1f 100644 ---- a/libsandbox/wrapper-funcs/mkdirat_pre_check.c -+++ b/libsandbox/wrapper-funcs/mkdirat_pre_check.c -@@ -1,20 +1,13 @@ - bool sb_mkdirat_pre_check(const char *func, const char *pathname, int dirfd) - { - char canonic[SB_PATH_MAX]; -- char dirfd_path[SB_PATH_MAX]; - - save_errno(); - -- /* Expand the dirfd path first */ -- switch (resolve_dirfd_path(dirfd, pathname, dirfd_path, sizeof(dirfd_path))) { -- case -1: -- sb_debug_dyn("EARLY FAIL: %s(%s) @ resolve_dirfd_path: %s\n", -- func, pathname, strerror(errno)); -- return false; -- case 0: -- pathname = dirfd_path; -- break; -- } -+ /* Check incoming args against common *at issues */ -+ char dirfd_path[SB_PATH_MAX]; -+ if (!sb_common_at_pre_check(func, &pathname, dirfd, dirfd_path, sizeof(dirfd_path))) -+ return false; - - /* Then break down any relative/symlink paths */ - if (-1 == canonicalize(pathname, canonic)) -diff --git a/libsandbox/wrapper-funcs/openat_pre_check.c b/libsandbox/wrapper-funcs/openat_pre_check.c -index 0127708..5fd5eaa 100644 ---- a/libsandbox/wrapper-funcs/openat_pre_check.c -+++ b/libsandbox/wrapper-funcs/openat_pre_check.c -@@ -15,17 +15,10 @@ bool sb_openat_pre_check(const char *func, const char *pathname, int dirfd, int - - save_errno(); - -- /* Expand the dirfd path first */ -+ /* Check incoming args against common *at issues */ - char dirfd_path[SB_PATH_MAX]; -- switch (resolve_dirfd_path(dirfd, pathname, dirfd_path, sizeof(dirfd_path))) { -- case -1: -- sb_debug_dyn("EARLY FAIL: %s(%s) @ resolve_dirfd_path: %s\n", -- func, pathname, strerror(errno)); -- return false; -- case 0: -- pathname = dirfd_path; -- break; -- } -+ if (!sb_common_at_pre_check(func, &pathname, dirfd, dirfd_path, sizeof(dirfd_path))) -+ return false; - - /* Doesn't exist -> skip permission checks */ - struct stat st; -diff --git a/libsandbox/wrapper-funcs/unlinkat_pre_check.c b/libsandbox/wrapper-funcs/unlinkat_pre_check.c -index 9f5e7d7..c004d15 100644 ---- a/libsandbox/wrapper-funcs/unlinkat_pre_check.c -+++ b/libsandbox/wrapper-funcs/unlinkat_pre_check.c -@@ -1,20 +1,13 @@ - bool sb_unlinkat_pre_check(const char *func, const char *pathname, int dirfd) - { - char canonic[SB_PATH_MAX]; -- char dirfd_path[SB_PATH_MAX]; - - save_errno(); - -- /* Expand the dirfd path first */ -- switch (resolve_dirfd_path(dirfd, pathname, dirfd_path, sizeof(dirfd_path))) { -- case -1: -- sb_debug_dyn("EARLY FAIL: %s(%s) @ resolve_dirfd_path: %s\n", -- func, pathname, strerror(errno)); -- return false; -- case 0: -- pathname = dirfd_path; -- break; -- } -+ /* Check incoming args against common *at issues */ -+ char dirfd_path[SB_PATH_MAX]; -+ if (!sb_common_at_pre_check(func, &pathname, dirfd, dirfd_path, sizeof(dirfd_path))) -+ return false; - - /* Then break down any relative/symlink paths */ - if (-1 == canonicalize(pathname, canonic)) -diff --git a/libsandbox/wrappers.h b/libsandbox/wrappers.h -index 5b97787..0aa58bb 100644 ---- a/libsandbox/wrappers.h -+++ b/libsandbox/wrappers.h -@@ -28,5 +28,7 @@ attribute_hidden bool sb_mkdirat_pre_check (const char *func, const char *pathn - attribute_hidden bool sb_openat_pre_check (const char *func, const char *pathname, int dirfd, int flags); - attribute_hidden bool sb_openat64_pre_check (const char *func, const char *pathname, int dirfd, int flags); - attribute_hidden bool sb_unlinkat_pre_check (const char *func, const char *pathname, int dirfd); -+attribute_hidden bool sb_common_at_pre_check(const char *func, const char **pathname, int dirfd, -+ char *dirfd_path, size_t dirfd_path_len); - - #endif --- -1.8.1.2 - -From 0b8a6d9773cc0e6d86bf1187f46817d5716698fe Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <vapier@gentoo.org> -Date: Mon, 24 Dec 2012 19:41:49 -0500 -Subject: [PATCH 2/2] libsandbox: reject "" paths with *at funcs before - checking the dirfd [missing file] - -When it comes to processing errors, an empty path is checked before -an invalid dirfd. Make sure sandbox matches that behavior for the -random testsuites out there that look for this. - -Forgot to `git add` in the previous commit :/. - -URL: https://bugs.gentoo.org/346929 -Reported-by: Marien Zwart <marienz@gentoo.org> -Signed-off-by: Mike Frysinger <vapier@gentoo.org> ---- - libsandbox/wrapper-funcs/__pre_at_check.c | 34 +++++++++++++++++++++++++++++++ - 1 file changed, 34 insertions(+) - create mode 100644 libsandbox/wrapper-funcs/__pre_at_check.c - -diff --git a/libsandbox/wrapper-funcs/__pre_at_check.c b/libsandbox/wrapper-funcs/__pre_at_check.c -new file mode 100644 -index 0000000..f72c40c ---- /dev/null -+++ b/libsandbox/wrapper-funcs/__pre_at_check.c -@@ -0,0 +1,34 @@ -+/* -+ * common *at() pre-checks. -+ * -+ * Copyright 1999-2012 Gentoo Foundation -+ * Licensed under the GPL-2 -+ */ -+ -+/* We assume the parent has nested use with save/restore errno */ -+bool sb_common_at_pre_check(const char *func, const char **pathname, int dirfd, -+ char *dirfd_path, size_t dirfd_path_len) -+{ -+ /* the empty path name should fail with ENOENT before any dirfd -+ * checks get a chance to run #346929 -+ */ -+ if (*pathname && *pathname[0] == '\0') { -+ errno = ENOENT; -+ sb_debug_dyn("EARLY FAIL: %s(%s): %s\n", -+ func, *pathname, strerror(errno)); -+ return false; -+ } -+ -+ /* Expand the dirfd path first */ -+ switch (resolve_dirfd_path(dirfd, *pathname, dirfd_path, dirfd_path_len)) { -+ case -1: -+ sb_debug_dyn("EARLY FAIL: %s(%s) @ resolve_dirfd_path: %s\n", -+ func, *pathname, strerror(errno)); -+ return false; -+ case 0: -+ *pathname = dirfd_path; -+ break; -+ } -+ -+ return true; -+} --- -1.8.1.2 - diff --git a/sys-apps/sandbox/files/sandbox-2.6-desktop.patch b/sys-apps/sandbox/files/sandbox-2.6-desktop.patch deleted file mode 100644 index fbecb0727f97..000000000000 --- a/sys-apps/sandbox/files/sandbox-2.6-desktop.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 00044ab0c8aaaabf048b5ff0ec2da5b3d7d25752 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <vapier@gentoo.org> -Date: Sat, 17 Nov 2012 14:14:26 -0500 -Subject: [PATCH] sandbox.desktop: drop .svg from Icon field -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -URL: http://bugs.gentoo.org/443672 -Reported-by: Petteri Räty <betelgeuse@gentoo.org> -Signed-off-by: Mike Frysinger <vapier@gentoo.org> ---- - data/sandbox.desktop | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/data/sandbox.desktop b/data/sandbox.desktop -index 5b5b576..27a887e 100644 ---- a/data/sandbox.desktop -+++ b/data/sandbox.desktop -@@ -5,6 +5,6 @@ Type=Application - Comment=launch a sandboxed shell ... useful for debugging ebuilds - Exec=sandbox - TryExec=sandbox --Icon=sandbox.svg -+Icon=sandbox - Categories=Development; - Terminal=true --- -1.8.1.2 - diff --git a/sys-apps/sandbox/files/sandbox-2.6-gcc-5.patch b/sys-apps/sandbox/files/sandbox-2.6-gcc-5.patch deleted file mode 100644 index fd87d6a272a5..000000000000 --- a/sys-apps/sandbox/files/sandbox-2.6-gcc-5.patch +++ /dev/null @@ -1,13 +0,0 @@ -fix building w/gcc-5 - ---- a/libsandbox/Makefile.in -+++ b/libsandbox/Makefile.in -@@ -68,7 +68,7 @@ sb_nr.h: symbols.h $(SB_NR_FILE) - - TRACE_MAKE_HEADER = \ - $(SB_AWK) $(GEN_TRACE_SCRIPT) -v MODE=gen | \ -- $(COMPILE) -E -include $(top_srcdir)/headers.h - $$f | \ -+ $(COMPILE) -E -P -include $(top_srcdir)/headers.h - $$f | \ - $(SB_AWK) $(GEN_TRACE_SCRIPT) -v syscall_prefix=$$t > $$header - trace_syscalls.h: $(GEN_TRACE_SCRIPT) Makefile - if SB_SCHIZO diff --git a/sys-apps/sandbox/files/sandbox-2.6-log-var.patch b/sys-apps/sandbox/files/sandbox-2.6-log-var.patch deleted file mode 100644 index bfea9e55e288..000000000000 --- a/sys-apps/sandbox/files/sandbox-2.6-log-var.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 853b42c86432eefc6d4cfba86197fb37d446366d Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <vapier@gentoo.org> -Date: Sun, 3 Mar 2013 05:34:09 -0500 -Subject: [PATCH] sandbox: accept SANDBOX_LOG vars whatever their values - -Commit 40abb498ca4a24495fe34e133379382ce8c3eaca subtly broke the sandbox -with portage. It changed how the sandbox log env var was accessed by -moving from getenv() to get_sandbox_log(). The latter has path checking -and will kick out values that contain a slash. That means every time a -new process starts, a new sandbox log path will be generated, and when a -program triggers a violation, it'll write to the new file. Meanwhile, -portage itself watches the original one which never gets updated. - -This code has been around forever w/out documentation, and I can't think -of a reason we need it. So punt it. - -Signed-off-by: Mike Frysinger <vapier@gentoo.org> ---- - libsbutil/get_sandbox_log.c | 14 +++++--------- - 1 file changed, 5 insertions(+), 9 deletions(-) - -diff --git a/libsbutil/get_sandbox_log.c b/libsbutil/get_sandbox_log.c -index a79b399..bdb4278 100644 ---- a/libsbutil/get_sandbox_log.c -+++ b/libsbutil/get_sandbox_log.c -@@ -21,17 +21,13 @@ static void _get_sb_log(char *path, const char *tmpdir, const char *env, const c - - sandbox_log_env = getenv(env); - -- if (sandbox_log_env && is_env_on(ENV_SANDBOX_TESTING)) { -- /* When testing, just use what the env says to */ -+ if (sandbox_log_env) { -+ /* If the env is viable, roll with it. We aren't really -+ * about people breaking the security of the sandbox by -+ * exporting SANDBOX_LOG=/dev/null. -+ */ - strncpy(path, sandbox_log_env, SB_PATH_MAX); - } else { -- /* THIS CHUNK BREAK THINGS BY DOING THIS: -- * SANDBOX_LOG=/tmp/sandbox-app-admin/superadduser-1.0.7-11063.log -- */ -- if ((NULL != sandbox_log_env) && -- (NULL != strchr(sandbox_log_env, '/'))) -- sandbox_log_env = NULL; -- - snprintf(path, SB_PATH_MAX, "%s%s%s%s%d%s", - SANDBOX_LOG_LOCATION, prefix, - (sandbox_log_env == NULL ? "" : sandbox_log_env), --- -1.8.1.2 - diff --git a/sys-apps/sandbox/files/sandbox-2.6-no-pch.patch b/sys-apps/sandbox/files/sandbox-2.6-no-pch.patch deleted file mode 100644 index fe2274927f43..000000000000 --- a/sys-apps/sandbox/files/sandbox-2.6-no-pch.patch +++ /dev/null @@ -1,29 +0,0 @@ -gcc crashes when trying to use pch under hardened kernels - -http://bugs.gentoo.org/425524 - ---- Makefile.in -+++ Makefile.in -@@ -300,7 +300,7 @@ - src \ - tests - --SANDBOX_PCH = headers.h.gch libsandbox/headers.h.gch libsbutil/headers.h.gch -+SANDBOX_PCH = - BUILT_SOURCES = $(SANDBOX_PCH) - noinst_LTLIBRARIES = libpch.la - nodist_libpch_la_SOURCES = $(SANDBOX_PCH) -@@ -862,10 +862,9 @@ - $(builddir)/headers.h.gch: headers.h - $(AM_V_GEN)$(COMPILE) -c -o $@.o $< && $(GCH_CP) - --libsbutil: libsbutil/headers.h.gch --libsandbox: libsbutil libsandbox/headers.h.gch --src: libsbutil headers.h.gch --tests: src headers.h.gch -+libsandbox: libsbutil -+src: libsbutil -+tests: src - - ChangeLog: - touch ChangeLog diff --git a/sys-apps/sandbox/files/sandbox-2.6-open-nofollow.patch b/sys-apps/sandbox/files/sandbox-2.6-open-nofollow.patch deleted file mode 100644 index 0101ece2c2bc..000000000000 --- a/sys-apps/sandbox/files/sandbox-2.6-open-nofollow.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 45fa8714a1d35e6555083d88a71851ada2aacac4 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <vapier@gentoo.org> -Date: Mon, 24 Dec 2012 18:46:29 -0500 -Subject: [PATCH] libsandbox: handle open(O_NOFOLLOW) - -We don't check for O_NOFOLLOW in the open wrappers, so we end up -returning the wrong error when operating on broken symlinks. - -URL: https://bugs.gentoo.org/413441 -Reported-by: Marien Zwart <marienz@gentoo.org> -Signed-off-by: Mike Frysinger <vapier@gentoo.org> ---- - libsandbox/wrapper-funcs/__64_post.h | 1 + - libsandbox/wrapper-funcs/__64_pre.h | 1 + - libsandbox/wrapper-funcs/openat_pre_check.c | 2 +- - tests/open-2.sh | 10 ++++++++++ - tests/open.at | 1 + - 5 files changed, 14 insertions(+), 1 deletion(-) - create mode 100755 tests/open-2.sh - -diff --git a/libsandbox/wrapper-funcs/__64_post.h b/libsandbox/wrapper-funcs/__64_post.h -index 2fd2182..82d2a16 100644 ---- a/libsandbox/wrapper-funcs/__64_post.h -+++ b/libsandbox/wrapper-funcs/__64_post.h -@@ -1,3 +1,4 @@ - #undef SB64 - #undef stat -+#undef lstat - #undef off_t -diff --git a/libsandbox/wrapper-funcs/__64_pre.h b/libsandbox/wrapper-funcs/__64_pre.h -index 2132110..0b34b25 100644 ---- a/libsandbox/wrapper-funcs/__64_pre.h -+++ b/libsandbox/wrapper-funcs/__64_pre.h -@@ -1,3 +1,4 @@ - #define SB64 - #define stat stat64 -+#define lstat lstat64 - #define off_t off64_t -diff --git a/libsandbox/wrapper-funcs/openat_pre_check.c b/libsandbox/wrapper-funcs/openat_pre_check.c -index c827ee6..0127708 100644 ---- a/libsandbox/wrapper-funcs/openat_pre_check.c -+++ b/libsandbox/wrapper-funcs/openat_pre_check.c -@@ -29,7 +29,7 @@ bool sb_openat_pre_check(const char *func, const char *pathname, int dirfd, int - - /* Doesn't exist -> skip permission checks */ - struct stat st; -- if (-1 == stat(pathname, &st)) { -+ if (((flags & O_NOFOLLOW) ? lstat(pathname, &st) : stat(pathname, &st)) == -1) { - sb_debug_dyn("EARLY FAIL: %s(%s): %s\n", - func, pathname, strerror(errno)); - return false; --- -1.8.1.2 - diff --git a/sys-apps/sandbox/files/sandbox-2.6-static-close-fd.patch b/sys-apps/sandbox/files/sandbox-2.6-static-close-fd.patch deleted file mode 100644 index 7fc0972507b4..000000000000 --- a/sys-apps/sandbox/files/sandbox-2.6-static-close-fd.patch +++ /dev/null @@ -1,93 +0,0 @@ -From a3ff1534945c3898332b2481c9fd355dfbd56e1f Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <vapier@gentoo.org> -Date: Sat, 23 Jun 2012 11:52:51 -0700 -Subject: [PATCH] libsandbox: clean up open file handles in parent tracing - process - -Currently, if a non-static app sets up a pipe (with cloexec enabled) and -executes a static app, the handle to that pipe is left open in the parent -process. This causes trouble when the parent is waiting for that to be -closed immediately. - -Since none of the fds in the forked parent process matter to us, we can -just go ahead and clean up all fds before we start tracing the child. - -URL: http://bugs.gentoo.org/364877 -Reported-by: Victor Stinner <victor.stinner@haypocalc.com> -Signed-off-by: Mike Frysinger <vapier@gentoo.org> ---- - libsandbox/trace.c | 3 +- - libsbutil/sb_close.c | 26 +++++++++++- - libsbutil/sbutil.h | 1 + - tests/Makefile.am | 2 + - tests/pipe-fork_static_tst.c | 18 +++++++++ - tests/pipe-fork_tst.c | 95 ++++++++++++++++++++++++++++++++++++++++++++ - tests/script-9.sh | 5 +++ - tests/script.at | 1 + - 8 files changed, 149 insertions(+), 2 deletions(-) - create mode 100644 tests/pipe-fork_static_tst.c - create mode 100644 tests/pipe-fork_tst.c - create mode 100755 tests/script-9.sh - -diff --git a/libsandbox/trace.c b/libsandbox/trace.c -index 32ad2d6..dfbab18 100644 ---- a/libsandbox/trace.c -+++ b/libsandbox/trace.c -@@ -504,8 +504,9 @@ void trace_main(const char *filename, char *const argv[]) - /* Not all kernel versions support this, so ignore return */ - ptrace(PTRACE_SETOPTIONS, trace_pid, NULL, (void *)PTRACE_O_TRACESYSGOOD); - #endif -+ sb_close_all_fds(); - trace_loop(); -- return; -+ sb_ebort("ISE: child should have quit, as should we\n"); - } - - sb_debug("child setting up ..."); -diff --git a/libsbutil/sb_close.c b/libsbutil/sb_close.c -index 17a4560..5379197 100644 ---- a/libsbutil/sb_close.c -+++ b/libsbutil/sb_close.c -@@ -29,3 +29,27 @@ int sb_close(int fd) - - return res; - } -+ -+/* Quickly close all the open fds (good for daemonization) */ -+void sb_close_all_fds(void) -+{ -+ DIR *dirp; -+ struct dirent *de; -+ int dfd, fd; -+ const char *fd_dir = sb_get_fd_dir(); -+ -+ dirp = opendir(fd_dir); -+ if (!dirp) -+ sb_ebort("could not process %s\n", fd_dir); -+ dfd = dirfd(dirp); -+ -+ while ((de = readdir(dirp)) != NULL) { -+ if (de->d_name[0] == '.') -+ continue; -+ fd = atoi(de->d_name); -+ if (fd != dfd) -+ close(fd); -+ } -+ -+ closedir(dirp); -+} -diff --git a/libsbutil/sbutil.h b/libsbutil/sbutil.h -index 02b88cb..479734b 100644 ---- a/libsbutil/sbutil.h -+++ b/libsbutil/sbutil.h -@@ -97,6 +97,7 @@ int sb_open(const char *path, int flags, mode_t mode); - size_t sb_read(int fd, void *buf, size_t count); - size_t sb_write(int fd, const void *buf, size_t count); - int sb_close(int fd); -+void sb_close_all_fds(void); - int sb_copy_file_to_fd(const char *file, int ofd); - - /* Reliable output */ --- -1.8.1.2 - diff --git a/sys-apps/sandbox/files/sandbox-2.6-trace-hppa.patch b/sys-apps/sandbox/files/sandbox-2.6-trace-hppa.patch deleted file mode 100644 index 7e7382286577..000000000000 --- a/sys-apps/sandbox/files/sandbox-2.6-trace-hppa.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 7b01f6103a9baddaf0252e7f850a4cef91a48b67 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <vapier@gentoo.org> -Date: Fri, 6 Jul 2012 14:58:16 -0400 -Subject: [PATCH] libsandbox: fix hppa trace code - -URL: https://bugs.gentoo.org/425062 -Reported-by: Jeroen Roovers <jer@gentoo.org> -Signed-off-by: Mike Frysinger <vapier@gentoo.org> ---- - libsandbox/trace/linux/hppa.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/libsandbox/trace/linux/hppa.c b/libsandbox/trace/linux/hppa.c -index d23b0d1..5414354 100644 ---- a/libsandbox/trace/linux/hppa.c -+++ b/libsandbox/trace/linux/hppa.c -@@ -1,5 +1,5 @@ --#define trace_reg_sysnum (20 * 4) /* PT_GR20 */ --#define trace_reg_ret (28 * 4) /* PT_GR28 */ -+#define trace_reg_sysnum gr[20] -+#define trace_reg_ret gr[28] - - static unsigned long trace_arg(void *vregs, int num) - { --- -1.7.9.7 - diff --git a/sys-apps/sandbox/files/sandbox-2.8-write-ptmx.patch b/sys-apps/sandbox/files/sandbox-2.8-write-ptmx.patch deleted file mode 100644 index d22f53b0f114..000000000000 --- a/sys-apps/sandbox/files/sandbox-2.8-write-ptmx.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 6b9b505f4a7716a50ff9e63c85f2c4882987a732 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <vapier@gentoo.org> -Date: Sun, 20 Sep 2015 04:40:39 -0400 -Subject: [PATCH] sandbox.conf: allow writing to /dev/ptmx - -We implicitly permit write access to this node by not catching functions -like openpty and posix_openpt, but when projects try to access the node -directly (due to legacy/fallback logic), the sandbox would reject them. -Make access to the node explicit since it's generally harmless. - -URL: https://bugs.gentoo.org/413327 -URL: https://bugs.gentoo.org/550650 -URL: https://bugs.gentoo.org/550670 -Signed-off-by: Mike Frysinger <vapier@gentoo.org> ---- - etc/sandbox.conf | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/etc/sandbox.conf b/etc/sandbox.conf -index dc460f0..1d7655c 100644 ---- a/etc/sandbox.conf -+++ b/etc/sandbox.conf -@@ -64,7 +64,7 @@ SANDBOX_WRITE="/dev/zero:/dev/null:/dev/full" - # Console device nodes - SANDBOX_WRITE="/dev/console:/dev/tty:/dev/vc/:/dev/pty:/dev/tts" - # Device filesystems --SANDBOX_WRITE="/dev/pts/:/dev/shm" -+SANDBOX_WRITE="/dev/ptmx:/dev/pts/:/dev/shm" - # Tempory storage - SANDBOX_WRITE="/tmp/:/var/tmp/" - # Needed for shells --- -2.5.2 - |