#include <unistd.h>
#include <errno.h>
#include <fcntl.h>
#include "syscall.h"

int pipe2(int fd[2], int flag) {
  if (!flag)
    return pipe(fd);
  int ret = __syscall(SYS_pipe2, fd, flag);
  if (ret != -ENOSYS)
    return __syscall_ret(ret);
  ret = pipe(fd);
  if (ret)
    return ret;
  if (flag & O_CLOEXEC) {
    __syscall(SYS_fcntl, fd[0], F_SETFD, FD_CLOEXEC);
    __syscall(SYS_fcntl, fd[1], F_SETFD, FD_CLOEXEC);
  }
  if (flag & O_NONBLOCK) {
    __syscall(SYS_fcntl, fd[0], F_SETFL, O_NONBLOCK);
    __syscall(SYS_fcntl, fd[1], F_SETFL, O_NONBLOCK);
  }
  return 0;
}
