summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJerry Jelinek <jerry.jelinek@joyent.com>2015-06-19 14:44:20 +0000
committerJerry Jelinek <jerry.jelinek@joyent.com>2015-06-19 14:44:20 +0000
commitefd56569e91a85cef85598de30efb0403398b5f8 (patch)
treef2444c3d5f4d4ac49886cbab495b502e5b43a683
parentcc83205849ec369cb9b1302db15caa6273d85b7f (diff)
downloadillumos-joyent-efd56569e91a85cef85598de30efb0403398b5f8.tar.gz
OS-4439 need prctl [G|S]ET_SECUREBITS support
-rw-r--r--usr/src/lib/brand/lx/lx_brand/common/misc.c10
-rw-r--r--usr/src/lib/brand/lx/lx_brand/sys/lx_misc.h2
2 files changed, 12 insertions, 0 deletions
diff --git a/usr/src/lib/brand/lx/lx_brand/common/misc.c b/usr/src/lib/brand/lx/lx_brand/common/misc.c
index 95234b819c..9e4bd0052c 100644
--- a/usr/src/lib/brand/lx/lx_brand/common/misc.c
+++ b/usr/src/lib/brand/lx/lx_brand/common/misc.c
@@ -620,6 +620,16 @@ lx_prctl(int option, uintptr_t arg2, uintptr_t arg3,
return (1);
}
+ if (option == LX_PR_GET_SECUREBITS) {
+ /* Our bits are always 0 */
+ return (0);
+ }
+
+ if (option == LX_PR_SET_SECUREBITS) {
+ /* Ignore setting any bits from arg2 */
+ return (0);
+ }
+
if (option == LX_PR_SET_DUMPABLE) {
if (arg2 != 1 && arg2 != 0)
return (-EINVAL);
diff --git a/usr/src/lib/brand/lx/lx_brand/sys/lx_misc.h b/usr/src/lib/brand/lx/lx_brand/sys/lx_misc.h
index 4114d13477..c92b50c72d 100644
--- a/usr/src/lib/brand/lx/lx_brand/sys/lx_misc.h
+++ b/usr/src/lib/brand/lx/lx_brand/sys/lx_misc.h
@@ -110,6 +110,8 @@ extern pid_t zoneinit_pid;
#define LX_PR_SET_DUMPABLE 4
#define LX_PR_SET_KEEPCAPS 8
#define LX_PR_SET_NAME 15
+#define LX_PR_GET_SECUREBITS 27
+#define LX_PR_SET_SECUREBITS 28
#define LX_PR_SET_NAME_NAMELEN 16