Hi!
Jeremy wrote:
> On 22/06/17 05:22, Kurt Jaeger wrote:
> > What stops us to read/write in chunks smaller than 512 bytes from/to
> > that pipe ?
>
> Posix specifies that writes of under some specific size (defined by the
> implementation and available as a C #define for compilation time) are
> atomic - meaning that a write of up to that size won't get get split
> by an intervening write into the same pipe.
So we have two cases: The read and the write case ?
I have a write case problem right now 8-} I'm really surprised
I don't have the read case problem described in bug 2130, but
that's what I have 8-}
> The Exim coding assumes that the pipe reader can and will get the
> entire result record from the transport process in one read (ie
> both write and read behaviour is assumed).
I have not digged into all details, so I'll assume this:
If I modify src/deliver.c:rmt_dlv_checked_write() to write
in 512 byte chunks, that would lead to me having a read case problem.
And then I'd have to try to find a fix for par_read_pipe(). Tough.
--
pi@??? +49 171 3101372 3 years to go !