chiark / gitweb /
9ebeab96adb1977e640617f886f2309d0821a214
[elogind.git] / src / basic / exec-util.h
1 /* SPDX-License-Identifier: LGPL-2.1+ */
2 /***
3   This file is part of systemd.
4
5   Copyright 2017 Zbigniew JÄ™drzejewski-Szmek
6 ***/
7
8 #include <stdbool.h>
9
10 #include "time-util.h"
11
12 typedef int (*gather_stdout_callback_t) (int fd, void *arg);
13
14 enum {
15         STDOUT_GENERATE,   /* from generators to helper process */
16         STDOUT_COLLECT,    /* from helper process to main process */
17         STDOUT_CONSUME,    /* process data in main process */
18         _STDOUT_CONSUME_MAX,
19 };
20
21 int execute_directories(
22                 const char* const* directories,
23                 usec_t timeout,
24                 gather_stdout_callback_t const callbacks[_STDOUT_CONSUME_MAX],
25                 void* const callback_args[_STDOUT_CONSUME_MAX],
26                 char *argv[]);
27
28 #if 0 /// UNNEEDED by elogind
29 extern const gather_stdout_callback_t gather_environment[_STDOUT_CONSUME_MAX];
30 #endif // 0