diff options
Diffstat (limited to 'include/Process.hpp')
-rw-r--r-- | include/Process.hpp | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/include/Process.hpp b/include/Process.hpp index 125a880..1789fb1 100644 --- a/include/Process.hpp +++ b/include/Process.hpp @@ -1,6 +1,7 @@ #pragma once #include <sys/types.h> +#include <string> namespace gsr { enum class GsrMode { @@ -11,9 +12,14 @@ namespace gsr { }; // Arguments ending with NULL - bool exec_program_daemonized(const char **args); - // Arguments ending with NULL - pid_t exec_program(const char **args); - // |output_buffer| should be at least PATH_MAX in size - bool read_cmdline_arg0(const char *filepath, char *output_buffer); + bool exec_program_daemonized(const char **args, bool debug = true); + // Arguments ending with NULL. |read_fd| can be NULL + pid_t exec_program(const char **args, int *read_fd, bool debug = true); + // Arguments ending with NULL. Returns the exit status of the program or -1 on error + int exec_program_get_stdout(const char **args, std::string &result, bool debug = true); + // Arguments ending with NULL. Returns the exit status of the program or -1 on error. + // This works the same as |exec_program_get_stdout|, except on flatpak where this runs the program on the + // host machine with flatpak-spawn --host + int exec_program_on_host_get_stdout(const char **args, std::string &result, bool debug = true); + pid_t pidof(const char *process_name, pid_t ignore_pid); }
\ No newline at end of file |