Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Gregory <andrew.gregory.8@gmail.com>2015-03-25 05:54:26 -0400
committerAllan McRae <allan@archlinux.org>2015-03-26 14:44:14 +1000
commite374e6829cea3512f0b4a4069c5a6168f0f8d8a0 (patch)
treecd639ca7f5428b46f118eaeacbe06b7863c18582
parent721b785e73333bdbd1b4ba3b0505cc14918064ad (diff)
close stdin before running install scripts
libalpm does not guarantee that script output will be presented to the user or that stdin will be connected to a terminal. Close stdin so that scripts do not attempt to use it for user interaction. Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r--lib/libalpm/util.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/libalpm/util.c b/lib/libalpm/util.c
index 4d851327..26d091b6 100644
--- a/lib/libalpm/util.c
+++ b/lib/libalpm/util.c
@@ -536,6 +536,7 @@ int _alpm_run_chroot(alpm_handle_t *handle, const char *cmd, char *const argv[])
if(pid == 0) {
/* this code runs for the child only (the actual chroot/exec) */
+ close(0);
close(1);
close(2);
while(dup2(pipefd[1], 1) == -1 && errno == EINTR);