From owner-freebsd-bugs Thu Jul 18 10:00:03 1996 Return-Path: owner-bugs Received: (from root@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id KAA02516 for bugs-outgoing; Thu, 18 Jul 1996 10:00:03 -0700 (PDT) Received: (from gnats@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id KAA02495; Thu, 18 Jul 1996 10:00:01 -0700 (PDT) Date: Thu, 18 Jul 1996 10:00:01 -0700 (PDT) Message-Id: <199607181700.KAA02495@freefall.freebsd.org> To: freebsd-bugs Cc: From: J Wunsch Subject: Re: kern/1397: can't send to a pipe Reply-To: J Wunsch Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR kern/1397; it has been noted by GNATS. From: J Wunsch To: markd@Grizzly.COM Cc: FreeBSD-gnats-submit@freebsd.org Subject: Re: kern/1397: can't send to a pipe Date: Thu, 18 Jul 1996 18:48:35 +0200 (MET DST) As Mark Diekhans wrote: > Pipes are implemented as sockets and this is what fstat > reports. However send returns a "Socket operation on non-socket" > error. Either socket operations should work or fstat should report > the file as a FIFO, not a socket. Pipes are no longer implemented as sockets. Using socket operations on them was illegal all the time, even if the kernel has not been reporting the error. Pipes are no longer reported by fstat (i think this is an error, or at least an omission): j less 6320 wd /tmp 2 drwxrwxrwt 512 r j less 6320 1 / 741 crw--w---- ttyp5 rw j less 6320 2 / 741 crw--w---- ttyp5 rw j less 6320 3 / 348 crw-rw-rw- tty r j uulog 6319 wd /tmp 2 drwxrwxrwt 512 r j uulog 6319 0 / 741 crw--w---- ttyp5 rw j uulog 6319 2 / 741 crw--w---- ttyp5 rw j uulog 6319 3 /var 4758 -rw-r--r-- 335307 r That's a "uulog | less", you can see that uulog's fd 1 and less' fd 0 are not displayed at all. FIFO's are being flagged correctly: j uulog 6339 1 /tmp 21 prwxr-xr-x 0 w ... j cat 6338 3 /tmp 21 prwxr-xr-x 0 r -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-)