Alan Cox wrote:
>
> > I'm porting some software to Linux that requires use of a bidirectional,
> > named pipe. The architecture is as follows: A server creates a named pipe
>
> Pipes are not bidirectional in Linux. We follow traditional non stream
> behaviour
>
> > /dev/spx". I experiemented with socket-based pipes under Linux, but I
> > couldn't gain access to them by open()ing the name. Is there help? I
>
> AF_UNIX sockets are bidirectional but like all sockets use bind() and
> connect().
How hard would it be to add? The limitation on fifos that you get the same
one every time you open it makes some things tricky -- the server has to
move the fifo and mkfifo a new one to replace its data with something else,
for instance, which is not atomic.
I don't understand, in the original problem, how the server opens
the named bipipe differently from the servers, to be on one end rather than
the other.
A way to map a file name to a socket pair would be nice, the first to open
it could get one end of it and everyone else would get the other end, or there
would be a switch.
You could patch the file system code, I wonder how deep the changes would have
to be, if you did it in terms of lots of fifos.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/