X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fexecute.h;h=ed90c6e3edaf51a6c547997cd7546450c0a00a3a;hb=ce3fd7e72a1b101002617bd410031e65d290f56f;hp=4ed79f0d8b1d18f3fec7ff48db0e6383c6a5a787;hpb=6ea832a20700f5282c08c70f38422c6ab290a0b5;p=elogind.git diff --git a/src/execute.h b/src/execute.h index 4ed79f0d8..ed90c6e3e 100644 --- a/src/execute.h +++ b/src/execute.h @@ -35,12 +35,11 @@ typedef struct ExecContext ExecContext; #include struct CGroupBonding; +struct CGroupAttribute; #include "list.h" #include "util.h" -#define LOGGER_SOCKET "/run/systemd/logger" - typedef enum KillMode { KILL_CONTROL_GROUP = 0, KILL_PROCESS, @@ -75,6 +74,8 @@ typedef enum ExecOutput { EXEC_OUTPUT_SYSLOG_AND_CONSOLE, EXEC_OUTPUT_KMSG, EXEC_OUTPUT_KMSG_AND_CONSOLE, + EXEC_OUTPUT_JOURNAL, + EXEC_OUTPUT_JOURNAL_AND_CONSOLE, EXEC_OUTPUT_SOCKET, _EXEC_OUTPUT_MAX, _EXEC_OUTPUT_INVALID = -1 @@ -159,6 +160,10 @@ struct ExecContext { bool cpu_sched_reset_on_fork; bool non_blocking; bool private_tmp; + bool private_network; + + bool control_group_modify; + int control_group_persistent; /* This is not exposed to the user but available * internally. We need it to make sure that whenever we spawn @@ -184,6 +189,7 @@ int exec_spawn(ExecCommand *command, bool apply_tty_stdin, bool confirm_spawn, struct CGroupBonding *cgroup_bondings, + struct CGroupAttribute *cgroup_attributes, pid_t *ret); void exec_command_done(ExecCommand *c); @@ -211,10 +217,10 @@ void exec_status_exit(ExecStatus *s, ExecContext *context, pid_t pid, int code, void exec_status_dump(ExecStatus *s, FILE *f, const char *prefix); const char* exec_output_to_string(ExecOutput i); -int exec_output_from_string(const char *s); +ExecOutput exec_output_from_string(const char *s); const char* exec_input_to_string(ExecInput i); -int exec_input_from_string(const char *s); +ExecInput exec_input_from_string(const char *s); const char *kill_mode_to_string(KillMode k); KillMode kill_mode_from_string(const char *s);