diff options
Diffstat (limited to 'otherlibs/win32unix/pipe.c')
-rw-r--r-- | otherlibs/win32unix/pipe.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/otherlibs/win32unix/pipe.c b/otherlibs/win32unix/pipe.c new file mode 100644 index 000000000..d5e17ca54 --- /dev/null +++ b/otherlibs/win32unix/pipe.c @@ -0,0 +1,31 @@ +/***********************************************************************/ +/* */ +/* Objective Caml */ +/* */ +/* Xavier Leroy and Pascal Cuoq, projet Cristal, INRIA Rocquencourt */ +/* */ +/* Copyright 1996 Institut National de Recherche en Informatique et */ +/* Automatique. Distributed only by permission. */ +/* */ +/***********************************************************************/ + +/* $Id$ */ + +#include <mlvalues.h> +#include <alloc.h> +#include "unixsupport.h" +#include <fcntl.h> + +#define SIZEBUF 1024 +#define MODE O_BINARY + +value unix_pipe() /* ML */ +{ + int fd[2]; + value res; + if (_pipe(fd, SIZEBUF, MODE) == -1) uerror("pipe", Nothing); + res = alloc_tuple(2); + Field(res, 0) = Val_int(fd[0]); + Field(res, 1) = Val_int(fd[1]); + return res; +} |