about summary refs log tree commit diff
path: root/support/support.h
diff options
context:
space:
mode:
authorDJ Delorie <dj@redhat.com>2022-03-28 23:53:33 -0400
committerDJ Delorie <dj@redhat.com>2022-04-04 14:17:08 -0400
commit2fe64148a81f0d78050c302f34a6853d21f7cae4 (patch)
tree66230b77ee1517673a41b1b0ff6b87ee8ca048aa /support/support.h
parent6ff3c7714900529b8f5ca64b58d5da9cd5d5b345 (diff)
downloadglibc-2fe64148a81f0d78050c302f34a6853d21f7cae4.tar.gz
glibc-2fe64148a81f0d78050c302f34a6853d21f7cae4.tar.xz
glibc-2fe64148a81f0d78050c302f34a6853d21f7cae4.zip
Allow for unpriviledged nested containers
If the build itself is run in a container, we may not be able to
fully set up a nested container for test-container testing.
Notably is the mounting of /proc, since it's critical that it
be mounted from within the same PID namespace as its users, and
thus cannot be bind mounted from outside the container like other
mounts.

This patch defaults to using the parent's PID namespace instead of
creating a new one, as this is more likely to be allowed.

If the test needs an isolated PID namespace, it should add the "pidns"
command to its init script.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Diffstat (limited to 'support/support.h')
-rw-r--r--support/support.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/support/support.h b/support/support.h
index 73b9fc48f0..d20051da4d 100644
--- a/support/support.h
+++ b/support/support.h
@@ -91,6 +91,11 @@ char *support_quote_string (const char *);
    regular file open for writing, and initially empty.  */
 int support_descriptor_supports_holes (int fd);
 
+/* Predicates that a test requires a working /proc filesystem.  This
+   call will exit with UNSUPPORTED if /proc is not available, printing
+   WHY_MSG as part of the diagnostic.  */
+void support_need_proc (const char *why_msg);
+
 /* Error-checking wrapper functions which terminate the process on
    error.  */