From 6bdbc920ec709d112e8ab84ba6dbdd5bb39d2b70 Mon Sep 17 00:00:00 2001 From: Christian Brauner Date: Wed, 29 Nov 2017 03:46:12 +0100 Subject: [PATCH] utils: backport set_stdfds() Signed-off-by: Christian Brauner --- src/lxc/utils.c | 22 ++++++++++++++++++++++ src/lxc/utils.h | 1 + 2 files changed, 23 insertions(+) diff --git a/src/lxc/utils.c b/src/lxc/utils.c index f8239874d..dbe2e810b 100644 --- a/src/lxc/utils.c +++ b/src/lxc/utils.c @@ -1365,3 +1365,25 @@ int safe_mount(const char *src, const char *dest, const char *fstype, return 0; } + +int set_stdfds(int fd) +{ + int ret; + + if (fd < 0) + return -1; + + ret = dup2(fd, STDIN_FILENO); + if (ret < 0) + return -1; + + ret = dup2(fd, STDOUT_FILENO); + if (ret < 0) + return -1; + + ret = dup2(fd, STDERR_FILENO); + if (ret < 0) + return -1; + + return 0; +} diff --git a/src/lxc/utils.h b/src/lxc/utils.h index bf62bd060..89225da1e 100644 --- a/src/lxc/utils.h +++ b/src/lxc/utils.h @@ -294,4 +294,5 @@ int null_stdfds(void); int safe_mount(const char *src, const char *dest, const char *fstype, unsigned long flags, const void *data, const char *rootfs); +int set_stdfds(int fd); #endif /* __LXC_UTILS_H */ -- 2.47.3