Subject: Re: Possible bug relating to malloc()/realloc(), popen(), and read()
To: <>
From: David Laight <david@l8s.co.uk>
List: port-i386
Date: 12/03/2004 19:42:41
> I dug a bit further and, so far as I can tell according to the
> manuals, read(), along with several other I/O system calls, terminates
> with errno set to EINTR if interrupted before it is committed ...

Both read() and write() should only return EINTR if they have transferred
no data.  If they have transferred some data then they must return the
number of bytes that have been transferred.

There is also no requirement that read or write transfer a full buffer
worth - although it is usual for that to happen on writes - especially
to regular files.

	David

-- 
David Laight: david@l8s.co.uk