# HG changeset patch # User Edouard Tisserant # Date 1616421468 -3600 # Node ID 16ea5cbbda4e0bb6d14aedca2b00c736d393b5ef # Parent 7c955a1d39e8d8090ec8a89e6277cab945e74e21 Add KeepAlive support for all TCP sockets. diff -r 7c955a1d39e8 -r 16ea5cbbda4e mb_tcp.c --- a/mb_tcp.c Mon Jun 01 14:28:49 2020 +0100 +++ b/mb_tcp.c Mon Mar 22 14:57:48 2021 +0100 @@ -467,6 +467,18 @@ } /* configure the socket */ + { + int optval; + socklen_t optlen = sizeof(optval); + optval = 1; + if(setsockopt(socket_id, SOL_SOCKET, SO_KEEPALIVE, &optval, optlen) < 0) { +#ifdef ERRMSG + perror("setsockopt()"); + fprintf(stderr, ERRMSG_HEAD "Error configuring socket 'KeepAlive' option.\n"); +#endif + return -1; + } + } /* set the TCP no delay flag. */ {int bool_opt = 1; if (setsockopt(socket_id, SOL_TCP, TCP_NODELAY,