1*433d6423SLionel Sambuc #include <sys/cdefs.h> 2*433d6423SLionel Sambuc #include "namespace.h" 3*433d6423SLionel Sambuc #include <lib.h> 4*433d6423SLionel Sambuc 5*433d6423SLionel Sambuc #include <string.h> 6*433d6423SLionel Sambuc #include <unistd.h> 7*433d6423SLionel Sambuc 8*433d6423SLionel Sambuc #ifdef __weak_alias 9*433d6423SLionel Sambuc __weak_alias(pipe, _pipe) 10*433d6423SLionel Sambuc #endif 11*433d6423SLionel Sambuc 12*433d6423SLionel Sambuc int 13*433d6423SLionel Sambuc pipe2(int fild[2], int flags) 14*433d6423SLionel Sambuc { 15*433d6423SLionel Sambuc message m; 16*433d6423SLionel Sambuc 17*433d6423SLionel Sambuc memset(&m, 0, sizeof(m)); 18*433d6423SLionel Sambuc m.m_lc_vfs_pipe2.flags = flags; 19*433d6423SLionel Sambuc 20*433d6423SLionel Sambuc if (_syscall(VFS_PROC_NR, VFS_PIPE2, &m) < 0) return(-1); 21*433d6423SLionel Sambuc fild[0] = m.m_lc_vfs_pipe2.fd0; 22*433d6423SLionel Sambuc fild[1] = m.m_lc_vfs_pipe2.fd1; 23*433d6423SLionel Sambuc return(0); 24*433d6423SLionel Sambuc } 25*433d6423SLionel Sambuc 26*433d6423SLionel Sambuc int 27*433d6423SLionel Sambuc pipe(int fild[2]) 28*433d6423SLionel Sambuc { 29*433d6423SLionel Sambuc return pipe2(fild, 0); 30*433d6423SLionel Sambuc } 31