1*17102Sbloom /* uipc_pipe.c 6.2 84/08/29 */ 24904Swnj 3*17102Sbloom #include "param.h" 4*17102Sbloom #include "mbuf.h" 5*17102Sbloom #include "protosw.h" 6*17102Sbloom #include "socket.h" 7*17102Sbloom #include "socketvar.h" 8*17102Sbloom #include "unpcb.h" 94904Swnj 104904Swnj #define PIPSIZ 4096 114904Swnj 124904Swnj /* 138964Sroot * Sneakily connect a pipe from wso to rso. 148964Sroot * This will get cleaned up when socketpair is added. 154904Swnj */ 164927Swnj piconnect(wso, rso) 174904Swnj struct socket *wso, *rso; 184904Swnj { 194904Swnj 207180Swnj /* when we reserve memory this routine may fail */ 218964Sroot sotounpcb(wso)->unp_conn = sotounpcb(rso); 228964Sroot sotounpcb(rso)->unp_conn = sotounpcb(wso); 234981Swnj wso->so_snd.sb_hiwat = PIPSIZ; 244981Swnj wso->so_snd.sb_mbmax = 2*PIPSIZ; 254904Swnj wso->so_state |= SS_ISCONNECTED|SS_CANTRCVMORE; 264981Swnj rso->so_rcv.sb_hiwat = 0; 274981Swnj rso->so_rcv.sb_mbmax = 0; 284904Swnj rso->so_state |= SS_ISCONNECTED|SS_CANTSENDMORE; 294904Swnj return (1); 304904Swnj } 31