From 90a71d2ccf8e279066a8d9d5aa2f2752f2761aa7 Mon Sep 17 00:00:00 2001 From: Federico Montesino Pouzols <federico.montesino-pouzols@stfc.ac.uk> Date: Wed, 14 Oct 2015 08:28:02 +0100 Subject: [PATCH] check retval from setsockopt, 1076053, re #13951 --- Framework/LiveData/src/LoadDAE/isisds_command.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Framework/LiveData/src/LoadDAE/isisds_command.cpp b/Framework/LiveData/src/LoadDAE/isisds_command.cpp index 790c2391b29..201cc1f771a 100644 --- a/Framework/LiveData/src/LoadDAE/isisds_command.cpp +++ b/Framework/LiveData/src/LoadDAE/isisds_command.cpp @@ -145,8 +145,14 @@ SOCKET isisds_send_open(const char *host, ISISDSAccessMode access_type, if (s == INVALID_SOCKET) { return INVALID_SOCKET; } - setsockopt(s, SOL_SOCKET, SO_KEEPALIVE, (char *)&setkeepalive, - sizeof(setkeepalive)); + + int zero = setsockopt(s, SOL_SOCKET, SO_KEEPALIVE, (char *)&setkeepalive, + sizeof(setkeepalive)); + if (0 != zero) { + closesocket(s); + return INVALID_SOCKET; + } + if (connect(s, (struct sockaddr *)&address, sizeof(address)) == -1) { closesocket(s); return INVALID_SOCKET; -- GitLab