diff options
author | Florent Le Coz <louiz@louiz.org> | 2014-02-08 08:14:24 +0100 |
---|---|---|
committer | Florent Le Coz <louiz@louiz.org> | 2014-02-08 08:14:24 +0100 |
commit | d46e7ee8c90a800e6f3c2f1db949e88635983b6b (patch) | |
tree | b473cd3300bc8c56bfbf0314f86b72697c17f149 | |
parent | eb2a2e75c257735c3aa0548ad5a374931ea7da65 (diff) | |
download | biboumi-d46e7ee8c90a800e6f3c2f1db949e88635983b6b.tar.gz biboumi-d46e7ee8c90a800e6f3c2f1db949e88635983b6b.tar.bz2 biboumi-d46e7ee8c90a800e6f3c2f1db949e88635983b6b.tar.xz biboumi-d46e7ee8c90a800e6f3c2f1db949e88635983b6b.zip |
Enable TCP keepalive on sockets
-rw-r--r-- | src/network/socket_handler.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/network/socket_handler.cpp b/src/network/socket_handler.cpp index 3fe423e..ae9489d 100644 --- a/src/network/socket_handler.cpp +++ b/src/network/socket_handler.cpp @@ -21,6 +21,9 @@ SocketHandler::SocketHandler(): { if ((this->socket = ::socket(AF_INET, SOCK_STREAM, 0)) == -1) throw std::runtime_error("Could not create socket"); + int optval = 1; + if (::setsockopt(this->socket, SOL_SOCKET, SO_KEEPALIVE, &optval, sizeof(optval)) == -1) + log_warning("Failed to enable TCP keepalive on socket: " << strerror(errno)); } std::pair<bool, std::string> SocketHandler::connect(const std::string& address, const std::string& port) |