posix_spawn_file_actions_adddup2
extern int posix_spawn_file_actions_adddup2(
posix_spawn_file_actions_adddup2(&fileActions, pipes[1], STDOUT_FILENO);
posix_spawn_file_actions_adddup2(&fileActions, pipes[1], STDERR_FILENO);
posix_spawn_file_actions_adddup2(&fileActions, socket, STDIN_FILENO);
posix_spawn_file_actions_adddup2(&fileActions, socket, STDOUT_FILENO);
posix_spawn_file_actions_adddup2(&fileActions, socket, STDERR_FILENO);
errno = posix_spawn_file_actions_adddup2(&fdops, out[writeIdx], 1);
errno = posix_spawn_file_actions_adddup2(&fdops, err[writeIdx], 2);
ret = posix_spawn_file_actions_adddup2(&child_fd_acts, 1, 2);