> Won't O_NONBLOCK cover this?
No. POSIX says:
O_NONBLOCK
        When opening a FIFO with O_RDONLY or O_WRONLY set:
                If O_NONBLOCK is set, an open() for reading-only shall return 
without delay. An open() for writing-only shall return an error if no process 
currently has the file open for reading.

> I don't think you can distinguish "buffer is full right now" from "no
> reader" though.
I wouldn't need to distinguish that.

> Depending on what you're doing you might want a stream socket instead
> of a pipe.
I'm not in control of the reading side.

Reply via email to