Hello!

On Mon, Jul 21, 2008 at 12:50:50PM -0700, Roland McGrath wrote:
> It's bogus, i.e. a violation of Hurd protocols, for an io server to send
> back more data than requested.  But it's possible with a buggy or malicious
> server.  So it is appropriate paranoia on the client side to check for this
> rather than turning it into a buffer overrun.
> 
> If this occurs, it's a protocol violation and should not be papered over.

Correct.  Also, because the internal state of the server (current reading
offset) anyway wouldn't be correct anymore.

> So rather than just ignore the extra data, I made it return EGRATUITOUS.
> (This error code means, "a Hurd server violated its protocol".)

Shouldn't we nevertheless `vm_deallocate' the memory region?


Regards,
 Thomas


PS: What's the needed make invocation magic to have glibc recreate the
`hurd/RPC*.c' files?  ``make hurd/subdir_lib'' doesn't work for me.

Attachment: signature.asc
Description: Digital signature

Reply via email to