public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/sandbox:master commit in: libsandbox/, libsandbox/wrapper-funcs/
@ 2015-12-23  1:57 Mike Frysinger
  0 siblings, 0 replies; 2+ messages in thread
From: Mike Frysinger @ 2015-12-23  1:57 UTC (permalink / raw
  To: gentoo-commits

commit:     0c51ddd4f3f9c96149750445cc68c00ed8829404
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 23 01:57:07 2015 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Wed Dec 23 01:57:07 2015 +0000
URL:        https://gitweb.gentoo.org/proj/sandbox.git/commit/?id=0c51ddd4

libsandbox: add wrappers for execveat & execvpe

Signed-off-by: Mike Frysinger <vapier <AT> gentoo.org>

 libsandbox/symbols.h.in             |  2 ++
 libsandbox/wrapper-funcs/execveat.c | 13 +++++++++++++
 libsandbox/wrapper-funcs/execvpe.c  | 12 ++++++++++++
 3 files changed, 27 insertions(+)

diff --git a/libsandbox/symbols.h.in b/libsandbox/symbols.h.in
index e34b977..bdbce08 100644
--- a/libsandbox/symbols.h.in
+++ b/libsandbox/symbols.h.in
@@ -62,7 +62,9 @@ mkstemps64
 #execlp
 execv
 execve
+execveat
 execvp
+execvpe
 fexecve
 system
 popen

diff --git a/libsandbox/wrapper-funcs/execveat.c b/libsandbox/wrapper-funcs/execveat.c
new file mode 100644
index 0000000..70ac0bd
--- /dev/null
+++ b/libsandbox/wrapper-funcs/execveat.c
@@ -0,0 +1,13 @@
+/*
+ * execve() wrapper.
+ *
+ * Copyright 1999-2015 Gentoo Foundation
+ * Licensed under the GPL-2
+ */
+
+#define WRAPPER_ARGS_PROTO int dirfd, const char *path, char *const argv[], char *const envp[], int flags
+#define WRAPPER_ARGS dirfd, path, argv, envp, flags
+#define EXEC_ARGS dirfd, path, argv, my_env, flags
+#define EXEC_MY_ENV
+#define EXEC_NO_PATH
+#include "__wrapper_exec.c"

diff --git a/libsandbox/wrapper-funcs/execvpe.c b/libsandbox/wrapper-funcs/execvpe.c
new file mode 100644
index 0000000..3402043
--- /dev/null
+++ b/libsandbox/wrapper-funcs/execvpe.c
@@ -0,0 +1,12 @@
+/*
+ * execvpe() wrapper.
+ *
+ * Copyright 1999-2015 Gentoo Foundation
+ * Licensed under the GPL-2
+ */
+
+#define WRAPPER_ARGS_PROTO const char *path, char *const argv[], char *const envp[]
+#define WRAPPER_ARGS path, argv, envp
+#define EXEC_ARGS path, argv, my_env
+#define EXEC_MY_ENV
+#include "__wrapper_exec.c"


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] proj/sandbox:master commit in: libsandbox/, libsandbox/wrapper-funcs/
@ 2021-10-29  5:37 Mike Frysinger
  0 siblings, 0 replies; 2+ messages in thread
From: Mike Frysinger @ 2021-10-29  5:37 UTC (permalink / raw
  To: gentoo-commits

commit:     b9a9f6239d46f54ff1fc747b73ddf58082aa6559
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 29 04:02:22 2021 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Fri Oct 29 04:02:22 2021 +0000
URL:        https://gitweb.gentoo.org/proj/sandbox.git/commit/?id=b9a9f623

libsandbox: drop args to trace_main

The filename was only used for a single debug print, and the args
ignored completely.  Don't bother passing them down at all.

Signed-off-by: Mike Frysinger <vapier <AT> gentoo.org>

 libsandbox/libsandbox.h                   | 2 +-
 libsandbox/trace.c                        | 6 ++----
 libsandbox/wrapper-funcs/__wrapper_exec.c | 6 ++++--
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/libsandbox/libsandbox.h b/libsandbox/libsandbox.h
index fbea6ba..206c506 100644
--- a/libsandbox/libsandbox.h
+++ b/libsandbox/libsandbox.h
@@ -82,7 +82,7 @@ extern void sb_lock(void);
 extern void sb_unlock(void);
 
 bool trace_possible(const char *filename, char *const argv[], const void *data);
-void trace_main(const char *filename, char *const argv[]);
+void trace_main(void);
 
 /* glibc modified realpath() function */
 char *erealpath(const char *, char *);

diff --git a/libsandbox/trace.c b/libsandbox/trace.c
index d53051d..4e01f6e 100644
--- a/libsandbox/trace.c
+++ b/libsandbox/trace.c
@@ -510,12 +510,10 @@ static void trace_loop(void)
 	} while (1);
 }
 
-void trace_main(const char *filename, char *const argv[])
+void trace_main(void)
 {
 	struct sigaction old_sa, sa = { .sa_handler = SIG_DFL, };
 
-	sb_debug_dyn("trace_main: tracing: %s\n", filename);
-
 	if (trace_pid)
 		sb_ebort("ISE: trace code assumes multiple threads are not forking\n");
 
@@ -550,7 +548,7 @@ void trace_main(const char *filename, char *const argv[])
 #undef _trace_possible
 #define _trace_possible(data) false
 
-void trace_main(const char *filename, char *const argv[])
+void trace_main(void)
 {
 	/* trace_possible() triggers a warning for us */
 }

diff --git a/libsandbox/wrapper-funcs/__wrapper_exec.c b/libsandbox/wrapper-funcs/__wrapper_exec.c
index 8ea5255..d66e3a0 100644
--- a/libsandbox/wrapper-funcs/__wrapper_exec.c
+++ b/libsandbox/wrapper-funcs/__wrapper_exec.c
@@ -242,8 +242,10 @@ static bool sb_check_exec(const char *filename, char *const argv[])
  out_fd:
 	close(fd);
 
-	if (do_trace)
-		trace_main(filename, argv);
+	if (do_trace) {
+		sb_debug_dyn("tracing: %s\n", filename);
+		trace_main();
+	}
 
 	return run_in_process;
 }


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-10-29  5:37 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-12-23  1:57 [gentoo-commits] proj/sandbox:master commit in: libsandbox/, libsandbox/wrapper-funcs/ Mike Frysinger
  -- strict thread matches above, loose matches on Subject: below --
2021-10-29  5:37 Mike Frysinger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox