diff options
author | Lennart Poettering <lennart@poettering.net> | 2010-02-14 22:43:08 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2010-02-14 22:43:08 +0100 |
commit | 81a2b7ceda7100fbc0dd8ce423b9599e03656851 (patch) | |
tree | 4478e9ee682e0aa945aae68d40fd81b3918de99f /execute.h | |
parent | e14140036227901bd64833559bab70c111c651a5 (diff) |
execute: implement privilige dropping properly
Diffstat (limited to 'execute.h')
-rw-r--r-- | execute.h | 15 |
1 files changed, 11 insertions, 4 deletions
@@ -97,7 +97,6 @@ struct ExecContext { int syslog_priority; char *syslog_identifier; - /* FIXME: all privs related settings need to be enforced */ cap_t capabilities; int secure_bits; uint64_t capability_bounding_set_drop; @@ -137,16 +136,24 @@ typedef enum ExitStatus { EXIT_SIGNAL_MASK, EXIT_INPUT, EXIT_OUTPUT, - EXIT_CHROOT, + EXIT_CHROOT, /* 210 */ EXIT_PGID, EXIT_IOPRIO, EXIT_TIMERSLACK, EXIT_SECUREBITS, EXIT_SETSCHEDULER, - EXIT_CPUAFFINITY + EXIT_CPUAFFINITY, + EXIT_GROUP, + EXIT_USER, + EXIT_CAPABILITIES } ExitStatus; -int exec_spawn(const ExecCommand *command, const ExecContext *context, int *fds, unsigned n_fds, pid_t *ret); +int exec_spawn(const ExecCommand *command, + const ExecContext *context, + int *fds, unsigned n_fds, + bool apply_permissions, + bool apply_chroot, + pid_t *ret); void exec_command_free_list(ExecCommand *c); void exec_command_free_array(ExecCommand **c, unsigned n); |