mirror of
https://gitlab.uni-freiburg.de/opensourcevdi/spice
synced 2026-01-11 08:07:16 +00:00
build-sys: Add configure check for TCP_KEEPIDLE
This is only available in newer FreeBSD releases (9.1 and later), and will cause build errors or older versions This fixes https://bugs.freedesktop.org/show_bug.cgi?id=99213 Signed-off-by: Christophe Fergeau <cfergeau@redhat.com> Acked-by: Frediano Ziglio <fziglio@redhat.com>
This commit is contained in:
parent
eb9f69ed9a
commit
27a9450d07
@ -50,6 +50,11 @@ AC_C_BIGENDIAN
|
||||
PKG_PROG_PKG_CONFIG
|
||||
|
||||
AC_CHECK_HEADERS([sys/time.h execinfo.h linux/sockios.h])
|
||||
AC_CHECK_DECL([TCP_KEEPIDLE], [have_tcp_keepidle="yes"],,
|
||||
[#include <netinet/tcp.h>])
|
||||
AS_IF([test "x$have_tcp_keepidle" = "xyes"],
|
||||
[AC_DEFINE([HAVE_TCP_KEEPIDLE],1,[Define to 1 if <netinet/tcp.h> has a TCP_KEEPIDLE definition])],
|
||||
)
|
||||
AC_FUNC_ALLOCA
|
||||
|
||||
SPICE_LT_VERSION=m4_format("%d:%d:%d", SPICE_CURRENT, SPICE_REVISION, SPICE_AGE)
|
||||
|
||||
@ -53,12 +53,14 @@ bool red_socket_set_keepalive(int fd, bool enable, int timeout)
|
||||
return true;
|
||||
}
|
||||
|
||||
#ifdef HAVE_TCP_KEEPIDLE
|
||||
if (setsockopt(fd, SOL_TCP, TCP_KEEPIDLE, &timeout, sizeof(timeout)) == -1) {
|
||||
if (errno != ENOTSUP) {
|
||||
spice_printerr("setsockopt for keepalive timeout failed, %s", strerror(errno));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user