diff --git a/kded/devicelinks/landevicelink.cpp b/kded/devicelinks/landevicelink.cpp index 38fa110dc..c10d599fe 100644 --- a/kded/devicelinks/landevicelink.cpp +++ b/kded/devicelinks/landevicelink.cpp @@ -23,6 +23,7 @@ #include #include #include +#include #include "linkproviders/linkprovider.h" #include "networkpackage.h" @@ -40,10 +41,10 @@ LanDeviceLink::LanDeviceLink(const QString& d, LinkProvider* a, QTcpSocket* sock setsockopt(fd, IPPROTO_TCP, TCP_KEEPIDLE, &maxIdle, sizeof(maxIdle)); int count = 3; // send up to 3 keepalive packets out, then disconnect if no response - setsockopt(fd, SOL_TCP, TCP_KEEPCNT, &count, sizeof(count)); + setsockopt(fd, getprotobyname("TCP")->p_proto, TCP_KEEPCNT, &count, sizeof(count)); int interval = 5; // send a keepalive packet out every 2 seconds (after the 5 second idle period) - setsockopt(fd, SOL_TCP, TCP_KEEPINTVL, &interval, sizeof(interval)); + setsockopt(fd, getprotobyname("TCP")->p_proto, TCP_KEEPINTVL, &interval, sizeof(interval)); connect(mSocket, SIGNAL(disconnected()), this, SLOT(deleteLater()));