aboutsummaryrefslogtreecommitdiff
path: root/src/lib/process/process.h
diff options
context:
space:
mode:
authorAlexander Færøy <ahf@torproject.org>2018-11-22 04:43:27 +0100
committerNick Mathewson <nickm@torproject.org>2018-12-17 16:39:28 -0500
commit2e957027e28449d4c3254cc404d154f4bce41bfc (patch)
tree2f04b258f5fbbe081c0e0f84ac8f0c8da5078504 /src/lib/process/process.h
parent35509978dd4985901431abe895d1443e75afc00a (diff)
downloadtor-2e957027e28449d4c3254cc404d154f4bce41bfc.tar.gz
tor-2e957027e28449d4c3254cc404d154f4bce41bfc.zip
Add Unix backend for the Process subsystem.
This patch adds the Unix backend for the Process subsystem. The Unix backend attaches file descriptors from the child process's standard in, out and error to Tor's libevent based main loop using traditional Unix pipes. We use the already available `waitpid` module to get events whenever the child process terminates. See: https://bugs.torproject.org/28179
Diffstat (limited to 'src/lib/process/process.h')
-rw-r--r--src/lib/process/process.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/lib/process/process.h b/src/lib/process/process.h
index cf20a5d80b..b17b8dac7c 100644
--- a/src/lib/process/process.h
+++ b/src/lib/process/process.h
@@ -95,6 +95,11 @@ void *process_get_data(const process_t *process);
void process_set_status(process_t *process, process_status_t status);
process_status_t process_get_status(const process_t *process);
+#ifndef _WIN32
+struct process_unix_t;
+struct process_unix_t *process_get_unix_process(const process_t *process);
+#endif
+
void process_write(process_t *process,
const uint8_t *data, size_t size);
void process_vprintf(process_t *process,