summaryrefslogtreecommitdiff
path: root/src/libstddjb/child_spawn1_pipe.c
blob: a436f6e2ad73ab4bcab2a6b026d3bac5ef4d760b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/* ISC license. */

#include <unistd.h>
#include <skalibs/djbunix.h>
#include "djbunix-internal.h"

pid_t child_spawn1_pipe (char const *prog, char const *const *argv, char const *const *envp, int *fd, int to)
{
  pid_t pid ;
  int p[2] ;
  if (pipe(p) < 0) return 0 ;
  pid = child_spawn1_internal(prog, argv, envp, p, !!to) ;
  if (!pid) return 0 ;
  *fd = p[!to] ;
  return pid ;
}