diff options
Diffstat (limited to 'src/core/execute.h')
-rw-r--r-- | src/core/execute.h | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/src/core/execute.h b/src/core/execute.h index 93713e48cc..f7fa3176b1 100644 --- a/src/core/execute.h +++ b/src/core/execute.h @@ -108,6 +108,21 @@ struct ExecRuntime { int netns_storage_socket[2]; }; +typedef enum ExecDirectoryType { + EXEC_DIRECTORY_RUNTIME = 0, + EXEC_DIRECTORY_STATE, + EXEC_DIRECTORY_CACHE, + EXEC_DIRECTORY_LOGS, + EXEC_DIRECTORY_CONFIGURATION, + _EXEC_DIRECTORY_MAX, + _EXEC_DIRECTORY_INVALID = -1, +} ExecDirectoryType; + +typedef struct ExecDirectory { + char **paths; + mode_t mode; +} ExecDirectory; + struct ExecContext { char **environment; char **environment_files; @@ -217,9 +232,8 @@ struct ExecContext { Set *address_families; bool address_families_whitelist:1; - char **runtime_directory; - mode_t runtime_directory_mode; ExecPreserveMode runtime_directory_preserve_mode; + ExecDirectory directories[_EXEC_DIRECTORY_MAX]; bool memory_deny_write_execute; bool restrict_realtime; @@ -265,7 +279,7 @@ struct ExecParameters { CGroupMask cgroup_supported; const char *cgroup_path; - const char *runtime_prefix; + char **prefix; const char *confirm_spawn; @@ -342,3 +356,6 @@ ExecUtmpMode exec_utmp_mode_from_string(const char *s) _pure_; const char* exec_preserve_mode_to_string(ExecPreserveMode i) _const_; ExecPreserveMode exec_preserve_mode_from_string(const char *s) _pure_; + +const char* exec_directory_type_to_string(ExecDirectoryType i) _const_; +ExecDirectoryType exec_directory_type_from_string(const char *s) _pure_; |