Date: Fri, 22 Sep 1995 09:17:50 -0700 (MST) From: Terry Lambert <terry@lambert.org> To: vince@apollo.COSC.GOV (-Vince-) Cc: chuckr@eng.umd.edu, FreeBSD-hackers@freefall.freebsd.org Subject: Re: Masterplan 1.00 (fwd) Message-ID: <199509221617.JAA28698@phaeton.artisoft.com> In-Reply-To: <Pine.BSF.3.91.950921235054.19640Q-100000@apollo.COSC.GOV> from "-Vince-" at Sep 21, 95 11:52:17 pm
next in thread | previous in thread | raw e-mail | index | archive | help
> I tried replacing mknod with mkfifo as what Jordan and everyone else
> told me but when it tried to write, it said broken pipe =( Anyone out
> there used masterplan under FreeBSD?
Patch /sys/kern/uipc_socket.c:
===========================================================================
*** FIFO_SAVE/uipc_socket.c Fri Sep 22 09:06:21 1995
--- uipc_socket.c Fri Sep 22 09:11:54 1995
***************
*** 359,366 ****
goto out;
do {
s = splnet();
! if (so->so_state & SS_CANTSENDMORE)
snderr(EPIPE);
if (so->so_error)
snderr(so->so_error);
if ((so->so_state & SS_ISCONNECTED) == 0) {
--- 359,369 ----
goto out;
do {
s = splnet();
! if (so->so_state & SS_CANTSENDMORE) {
! if (so->so_state & SS_NBIO)
! snderr(EWOULDBLOCK);
snderr(EPIPE);
+ }
if (so->so_error)
snderr(so->so_error);
if ((so->so_state & SS_ISCONNECTED) == 0) {
===========================================================================
And rebuild your kernel.
Probably this is not the only fix needed. The problem is that (apparently)
you are using non-blocking I/O on the FIFO, and it doesn't work.
Terry Lambert
terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199509221617.JAA28698>
