diff options
author | Lennart Poettering <lennart@poettering.net> | 2017-02-21 11:11:44 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-02-21 11:11:44 +0100 |
commit | a4dde27d73c1d8219c0cc6390ef8b6e15b347edb (patch) | |
tree | 08bcdb6b3af043fa714d7ef413583b0c66181ec3 /src/basic/exec-util.h | |
parent | 012f2b7de7137afbe7d1529ad670f51e4448b363 (diff) | |
parent | f50ce8fc4b2619d73b3118ea202b112035e713c1 (diff) |
Merge pull request #5131 from keszybz/environment-generators
Environment generators
Diffstat (limited to 'src/basic/exec-util.h')
-rw-r--r-- | src/basic/exec-util.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/basic/exec-util.h b/src/basic/exec-util.h new file mode 100644 index 0000000000..72009799b2 --- /dev/null +++ b/src/basic/exec-util.h @@ -0,0 +1,40 @@ +/*** + This file is part of systemd. + + Copyright 2017 Zbigniew Jędrzejewski-Szmek + + 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 + the Free Software Foundation; either version 2.1 of the License, or + (at your option) any later version. + + systemd is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with systemd; If not, see <http://www.gnu.org/licenses/>. +***/ + +#include <stdbool.h> + +#include "time-util.h" + +typedef int (*gather_stdout_callback_t) (int fd, void *arg); + +enum { + STDOUT_GENERATE, /* from generators to helper process */ + STDOUT_COLLECT, /* from helper process to main process */ + STDOUT_CONSUME, /* process data in main process */ + _STDOUT_CONSUME_MAX, +}; + +int execute_directories( + const char* const* directories, + usec_t timeout, + gather_stdout_callback_t const callbacks[_STDOUT_CONSUME_MAX], + void* const callback_args[_STDOUT_CONSUME_MAX], + char *argv[]); + +extern const gather_stdout_callback_t gather_environment[_STDOUT_CONSUME_MAX]; |