Re: Really odd behavior of overlapping named pipes?

H. Peter Anvin (hpa@zytor.com)
Sat, 26 Jan 2002 17:14:25 -0800


Chris Wedgwood wrote:

> On Sat, Jan 26, 2002 at 01:07:06AM -0800, H. Peter Anvin wrote:
>
> It sounds like what you're expecting is what would happen if we
> allowed open() on a Unix domain socket to do the obvious thing (can
> we, pretty please?)
>
> Why? Do any other OS's support this? It seems pointless if it's
> nonportable, but, if for arguments sake, several other OSs provide
> this then I guess we could for compatability reasons... and I assume
> with this proposal open would be jost socket/connect --- accept
> behavior would still require accept?
>

Yes, that I would. Why is it so "pointless if it's nonportable?" Under
that argument Linux should never be able to do anything that any other
OS hasn't already done. What it does it it makes it very easy to
replace a file-based convention -- say, purely as an example,
~/.signature -- with a process-based one. A FIFO won't do, since it
only contains one data stream and therefore can become corrupt if opened
by more than one process.

There should be no reason to limit the utility of common operations.
open() is one of the fundamental operations -- you can open *anything*
in the namespace, except, for no good reason, Unix domain sockets.

-hpa

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/