daemon: ignore ENOTSOCK from setsockopt
PATCH 1/1 daemon: ignore ENOTSOCK from setsockopt
In inetd mode, we are not guaranteed stdin or stdout is a socket; callers could filter the data through a pipe or be testing with regular files.
This prevents t5802 from polluting syslog.
Signed-off-by Eric Wong <[email protected]>
--- daemon.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)
daemon.c +5 -3
@@ -673,9 +673,11 @@ static void set_keep_alive(int sockfd) {int ka =1 ; -if (setsockopt (sockfd,SOL_SOCKET ,SO_KEEPALIVE , &ka,sizeof (ka)) <0 ) -logerror ("unable to set SO_KEEPALIVE on socket: %s" , -strerror (errno)); +if (setsockopt (sockfd,SOL_SOCKET ,SO_KEEPALIVE , &ka,sizeof (ka)) <0 ) { +if (errno !=ENOTSOCK ) +logerror ("unable to set SO_KEEPALIVE on socket: %s" , +strerror (errno)); + } }static int execute (void )
Signature · 1 line
EW