From 49aeafa2c530e35a43358977766899d45a0c8b28 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Fri, 19 Jun 2020 23:26:28 +0200 Subject: Revert "socket_wrapper.c: implement getsockopt(TCP_INFO) if the platform supports it" This reverts commit 300de6e099ea82ee5361918de8c3abb389e0782d. This got merged automatically by gitlab without review. Signed-off-by: Stefan Metzmacher --- ConfigureChecks.cmake | 1 - config.h.cmake | 1 - src/socket_wrapper.c | 57 --------------------------------------------------- 3 files changed, 59 deletions(-) diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake index 4a2f55e..4d5adc4 100644 --- a/ConfigureChecks.cmake +++ b/ConfigureChecks.cmake @@ -43,7 +43,6 @@ int main(void){ return 0; } endif(CMAKE_COMPILER_IS_GNUCC AND NOT MINGW AND NOT OS2) # HEADERS -check_include_file(netinet/tcp_fsm.h HAVE_NETINET_TCP_FSM_H) check_include_file(sys/filio.h HAVE_SYS_FILIO_H) check_include_file(sys/signalfd.h HAVE_SYS_SIGNALFD_H) check_include_file(sys/eventfd.h HAVE_SYS_EVENTFD_H) diff --git a/config.h.cmake b/config.h.cmake index d3ceb23..36050b5 100644 --- a/config.h.cmake +++ b/config.h.cmake @@ -9,7 +9,6 @@ /************************** HEADER FILES *************************/ -#cmakedefine HAVE_NETINET_TCP_FSM_H 1 #cmakedefine HAVE_SYS_FILIO_H 1 #cmakedefine HAVE_SYS_SIGNALFD_H 1 #cmakedefine HAVE_SYS_EVENTFD_H 1 diff --git a/src/socket_wrapper.c b/src/socket_wrapper.c index 4fb7b23..5b7c9ea 100644 --- a/src/socket_wrapper.c +++ b/src/socket_wrapper.c @@ -66,9 +66,6 @@ #include #include #include -#ifdef HAVE_NETINET_TCP_FSM_H -#include -#endif #include #include #include @@ -267,7 +264,6 @@ struct socket_info int defer_connect; int pktinfo; int tcp_nodelay; - int listening; /* The unix path so we can unlink it on close() */ struct sockaddr_un un_addr; @@ -4101,9 +4097,6 @@ static int swrap_listen(int s, int backlog) } ret = libc_listen(s, backlog); - if (ret == 0) { - si->listening = 1; - } out: SWRAP_UNLOCK_SI(si); @@ -4453,56 +4446,6 @@ static int swrap_getsockopt(int s, int level, int optname, ret = 0; goto done; #endif /* TCP_NODELAY */ -#ifdef TCP_INFO - case TCP_INFO: { - struct tcp_info info; - socklen_t ilen = sizeof(info); - -#ifdef HAVE_NETINET_TCP_FSM_H -/* This is FreeBSD */ -# define __TCP_LISTEN TCPS_LISTEN -# define __TCP_ESTABLISHED TCPS_ESTABLISHED -# define __TCP_CLOSE TCPS_CLOSED -#else -/* This is Linux */ -# define __TCP_LISTEN TCP_LISTEN -# define __TCP_ESTABLISHED TCP_ESTABLISHED -# define __TCP_CLOSE TCP_CLOSE -#endif - - ZERO_STRUCT(info); - if (si->listening) { - info.tcpi_state = __TCP_LISTEN; - } else if (si->connected) { - /* - * For now we just fake a few values - * supported both by FreeBSD and Linux - */ - info.tcpi_state = __TCP_ESTABLISHED; - info.tcpi_rto = 200000; /* 200 msec */ - info.tcpi_rtt = 5000; /* 5 msec */ - info.tcpi_rttvar = 5000; /* 5 msec */ - } else { - info.tcpi_state = __TCP_CLOSE; - info.tcpi_rto = 1000000; /* 1 sec */ - info.tcpi_rtt = 0; - info.tcpi_rttvar = 250000; /* 250 msec */ - } - - if (optval == NULL || optlen == NULL || - *optlen < (socklen_t)ilen) { - errno = EINVAL; - ret = -1; - goto done; - } - - *optlen = ilen; - memcpy(optval, &info, ilen); - - ret = 0; - goto done; - } -#endif /* TCP_INFO */ default: break; } -- cgit