X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-relayd%2Ftcp_keep_alive.c;h=dc8cf2fb398258903b4abaae0127988360010fba;hp=4a2cd9f1bd84d8427db624c5d66a22c598489594;hb=ab5be9fa2eb5ba9600a82cd18fd3cfcbac69169a;hpb=f056029cc220cf6f218a29d48d9720f6603302bf diff --git a/src/bin/lttng-relayd/tcp_keep_alive.c b/src/bin/lttng-relayd/tcp_keep_alive.c index 4a2cd9f1b..dc8cf2fb3 100644 --- a/src/bin/lttng-relayd/tcp_keep_alive.c +++ b/src/bin/lttng-relayd/tcp_keep_alive.c @@ -1,18 +1,8 @@ /* - * Copyright (C) 2017 - Jonathan Rajotte + * Copyright (C) 2017 Jonathan Rajotte * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License, version 2 only, - * as published by the Free Software Foundation. + * SPDX-License-Identifier: GPL-2.0-only * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #include @@ -36,7 +26,6 @@ /* Per-platform definitions of TCP socket options. */ #if defined (__linux__) -#define COMPAT_SOCKET_LEVEL SOL_TCP #define COMPAT_TCP_LEVEL SOL_TCP #define COMPAT_TCP_ABORT_THRESHOLD 0 /* Does not exist on linux. */ #define COMPAT_TCP_KEEPIDLE TCP_KEEPIDLE @@ -45,7 +34,6 @@ #elif defined (__sun__) /* ! defined (__linux__) */ -#define COMPAT_SOCKET_LEVEL SOL_SOCKET #define COMPAT_TCP_LEVEL IPPROTO_TCP #ifdef TCP_KEEPALIVE_THRESHOLD @@ -65,7 +53,6 @@ #else /* ! defined (__linux__) && ! defined (__sun__) */ -#define COMPAT_SOCKET_LEVEL 0 #define COMPAT_TCP_LEVEL 0 #define COMPAT_TCP_ABORT_THRESHOLD 0 #define COMPAT_TCP_KEEPIDLE 0 @@ -547,7 +534,8 @@ int socket_apply_keep_alive_config(int socket_fd) goto end; } - ret = setsockopt(socket_fd, COMPAT_SOCKET_LEVEL, SO_KEEPALIVE, &val, + DBG("TCP keep-alive enabled for socket %d", socket_fd); + ret = setsockopt(socket_fd, SOL_SOCKET, SO_KEEPALIVE, &val, sizeof(val)); if (ret < 0) { PERROR("setsockopt so_keepalive"); @@ -556,6 +544,7 @@ int socket_apply_keep_alive_config(int socket_fd) /* TCP keep-alive idle time */ if (support.idle_time_supported && config.idle_time > 0) { + DBG("TCP keep-alive keep idle: %d enabled for socket %d", config.idle_time, socket_fd); ret = setsockopt(socket_fd, COMPAT_TCP_LEVEL, COMPAT_TCP_KEEPIDLE, &config.idle_time, sizeof(config.idle_time)); if (ret < 0) { @@ -565,6 +554,7 @@ int socket_apply_keep_alive_config(int socket_fd) } /* TCP keep-alive probe interval */ if (support.probe_interval_supported && config.probe_interval > 0) { + DBG("TCP keep-alive probe_interval: %d enabled for socket %d", config.probe_interval, socket_fd); ret = setsockopt(socket_fd, COMPAT_TCP_LEVEL, COMPAT_TCP_KEEPINTVL, &config.probe_interval, sizeof(config.probe_interval)); if (ret < 0) { @@ -575,6 +565,7 @@ int socket_apply_keep_alive_config(int socket_fd) /* TCP keep-alive max probe count */ if (support.max_probe_count_supported && config.max_probe_count > 0) { + DBG("TCP keep-alive max_probe: %d enabled for socket %d", config.max_probe_count, socket_fd); ret = setsockopt(socket_fd, COMPAT_TCP_LEVEL, COMPAT_TCP_KEEPCNT, &config.max_probe_count, sizeof(config.max_probe_count)); if (ret < 0) { @@ -585,6 +576,7 @@ int socket_apply_keep_alive_config(int socket_fd) /* TCP keep-alive abort threshold */ if (support.abort_threshold_supported && config.abort_threshold > 0) { + DBG("TCP keep-alive abort threshold: %d enabled for socket %d", config.abort_threshold, socket_fd); ret = setsockopt(socket_fd, COMPAT_TCP_LEVEL, COMPAT_TCP_ABORT_THRESHOLD, &config.abort_threshold, sizeof(config.max_probe_count)); if (ret < 0) {