Index: fusl/src/process/posix_spawn_file_actions_addclose.c |
diff --git a/fusl/src/process/posix_spawn_file_actions_addclose.c b/fusl/src/process/posix_spawn_file_actions_addclose.c |
new file mode 100644 |
index 0000000000000000000000000000000000000000..cdda5979916dd1437cc1e0249617847291fcd3e9 |
--- /dev/null |
+++ b/fusl/src/process/posix_spawn_file_actions_addclose.c |
@@ -0,0 +1,16 @@ |
+#include <spawn.h> |
+#include <stdlib.h> |
+#include <errno.h> |
+#include "fdop.h" |
+ |
+int posix_spawn_file_actions_addclose(posix_spawn_file_actions_t *fa, int fd) |
+{ |
+ struct fdop *op = malloc(sizeof *op); |
+ if (!op) return ENOMEM; |
+ op->cmd = FDOP_CLOSE; |
+ op->fd = fd; |
+ if ((op->next = fa->__actions)) op->next->prev = op; |
+ op->prev = 0; |
+ fa->__actions = op; |
+ return 0; |
+} |