#include <errno.h>
#include <spawn.h>
#include <stdlib.h>

#include "fdop.h"

int posix_spawn_file_actions_adddup2(posix_spawn_file_actions_t* fa, int srcfd, int fd) {
  struct fdop* op = malloc(sizeof *op);
  if (!op)
    return ENOMEM;
  op->cmd = FDOP_DUP2;
  op->srcfd = srcfd;
  op->fd = fd;
  if ((op->next = fa->__actions))
    op->next->prev = op;
  op->prev = 0;
  fa->__actions = op;
  return 0;
}
