CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2024/11/26 06:57:31
Modified files:
lib/libutil : ibuf_add.3 imsg-buffer.c imsg.c imsg.h
imsg_init.3 shlib_version
Log message:
Adjust the reader callback API to return an ibuf and to also claim the
fd which is passed as argument.
This is needed because on Linux the control messages used to pass fds
are not acting as a barrier and ensuring that the fd is passed with the
first byte of the read call. Instead we need to mark the message that
holds to fd and the scan for that message in the stream.
While there also adjust imsgbuf_set_maxsize() to return an int to
indicate an error if the requested size is out of range.
Problem reported and fix tested by nicm@ on a linux system.
OK tb@