aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Rename multiple personalities featureSam James2023-08-051-4/+4
| | | | | | | | "schizo" isn't a particularly sensitive term, and it's not very clear what it means to non-native English speakers anyway. Name it after what the feature really does: multiple (Linux) personality support using ptrace. Signed-off-by: Sam James <sam@gentoo.org>
* libsandbox: hoist the *at pre-check functions up a levelMike Frysinger2021-10-281-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | The reason we put these in wrapper-funcs/ is because we normally dynamically include them when the corresponding symbol is available. For example, if the C library supports symbol foo, and there is a wrapper-funcs/foo_pre_check.c, we'll automatically include it based on the assumption that wrapper-funcs/foo.c needs it. But if the C library doesn't have a symbol foo, we won't include foo.c or the foo_pre_check.c file at all. Sounds fine. The *at family of functions is a bit different because we end up using them both in the wrapper-funcs/ files, and in the trace code, the latter of which we use unconditionally. This lead to a build issue early on (see commit b27df46f349e850067ae388fe067b043abf3aecb ("libsandbox: fix missing *at pre_checks")) whereby we hacked in these *at pre-check symbols all the time. At which point, having them be in wrapper-funcs/ was more out of convention with how we manage all our other APIs. We want to support running ptrace from the sandbox binary directly which requires linking (most of) libsandbox into it, and to that end, hoist these pre-check functions out of wrapper-funcs. This makes it a bit clearer that we always want to compile these. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* build: create libsandbox for trace_syscalls.h tooMike Frysinger2021-10-281-0/+1
| | | | | | | | | Commit ef35a16d1b5dcc1a99d17470799e680879278600 ("build: create libsandbox dir before writing files") added a mkdir call to most targets, but trace_syscalls.h was missed. Bug: https://issuetracker.google.com/issues/204404822 Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* libsandbox: move symbols.h.in parsing to scriptsMike Frysinger2021-10-231-2/+1
| | | | | | | | | | | In preparation for extending the symbol format, move parsing out of the makefile (which is a basic sed expression) to the awk scripts. This also has a nice side benefit of removing one automake warning. It is slightly more code, but the scripts will be diverging shortly, so it's unavoidable. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* build: hoist -Itop_srcdir to common AM_CPPFLAGSMike Frysinger2021-10-231-1/+0
| | | | | | | Every subdir sets this var this way, so might as well unify it. We keep very few files in here, so shouldn't be a future problem. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* libsandbox: regen trace headers when symbols header changesMike Frysinger2021-10-231-2/+2
| | | | | | | Since it uses the symbols header as input, make sure we regen on changes to it so we don't get stuck in weird stale states. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* libsandbox: use wide readelf outputMike Frysinger2021-10-221-2/+2
| | | | | | | | | | | Newer versions of binutils will truncate symbol output weirdly unless the --wide option is used. This manifests itself as libsandbox not including symbols when their name and symbol version is too long. The new removexattr symbol tests were failing because of this, but it seems the others were either not too long, or we didn't have any test coverage for them (oops). Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* build: create libsandbox dir before writing filesMike Frysinger2021-10-211-0/+4
| | | | | | | | Merging subdir Makefile.am files up meant that creation of those dirs for outputs is no longer handled immediately by autoconf, so make sure our custom rules have mkdir calls. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* delete redundant headers.h stubMike Frysinger2021-10-211-1/+0
| | | | | | | These dirs have -I paths to the top-level, so these redirects aren't that useful anymore. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* build: flatten build a bit to avoid (most) recursive makeMike Frysinger2021-10-211-0/+98
Provides a bit of a speed up. Signed-off-by: Mike Frysinger <vapier@gentoo.org>