summaryrefslogtreecommitdiff
path: root/src/grp-system/libcore/include/core/namespace.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/grp-system/libcore/include/core/namespace.h')
-rw-r--r--src/grp-system/libcore/include/core/namespace.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/grp-system/libcore/include/core/namespace.h b/src/grp-system/libcore/include/core/namespace.h
index 89c6225c39..8e80e2f38e 100644
--- a/src/grp-system/libcore/include/core/namespace.h
+++ b/src/grp-system/libcore/include/core/namespace.h
@@ -4,6 +4,7 @@
This file is part of systemd.
Copyright 2010 Lennart Poettering
+ Copyright 2016 Djalal Harouni
systemd is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by
@@ -23,6 +24,8 @@
#include "systemd-basic/macro.h"
+typedef struct NameSpaceInfo NameSpaceInfo;
+
typedef enum ProtectHome {
PROTECT_HOME_NO,
PROTECT_HOME_YES,
@@ -35,17 +38,25 @@ typedef enum ProtectSystem {
PROTECT_SYSTEM_NO,
PROTECT_SYSTEM_YES,
PROTECT_SYSTEM_FULL,
+ PROTECT_SYSTEM_STRICT,
_PROTECT_SYSTEM_MAX,
_PROTECT_SYSTEM_INVALID = -1
} ProtectSystem;
+struct NameSpaceInfo {
+ bool private_dev:1;
+ bool protect_control_groups:1;
+ bool protect_kernel_tunables:1;
+ bool protect_kernel_modules:1;
+};
+
int setup_namespace(const char *chroot,
+ const NameSpaceInfo *ns_info,
char **read_write_paths,
char **read_only_paths,
char **inaccessible_paths,
const char *tmp_dir,
const char *var_tmp_dir,
- bool private_dev,
ProtectHome protect_home,
ProtectSystem protect_system,
unsigned long mount_flags);