Commit 76afc412 authored by Wojciech Panfil's avatar Wojciech Panfil Committed by Tomasz Zawadzki
Browse files

sock: Add check for getsockopt() retval



Add checks for operation's success.

Change-Id: I719184f6b5592bac2fefb146a8fdd38afc012319
Signed-off-by: default avatarWojciech Panfil <wojciech.panfil@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/18928


Reviewed-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: default avatarJacek Kalwas <jacek.kalwas@intel.com>
Reviewed-by: default avatarAleksey Marchuk <alexeymar@nvidia.com>
Reviewed-by: default avatarKrzysztof Karas <krzysztof.karas@intel.com>
Community-CI: Mellanox Build Bot
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
parent ad2dc6c5
Loading
Loading
Loading
Loading
+11 −2
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@
#include "spdk/sock.h"
#include "spdk/queue.h"
#include "spdk/likely.h"
#include "spdk/log.h"

#ifdef __cplusplus
extern "C" {
@@ -334,7 +335,11 @@ spdk_sock_get_placement_id(int fd, enum spdk_placement_mode mode, int *placement
#if defined(SO_INCOMING_NAPI_ID)
		socklen_t len = sizeof(int);

		getsockopt(fd, SOL_SOCKET, SO_INCOMING_NAPI_ID, placement_id, &len);
		int rc = getsockopt(fd, SOL_SOCKET, SO_INCOMING_NAPI_ID, placement_id, &len);
		if (rc == -1) {
			SPDK_ERRLOG("getsockopt() failed: %s\n", strerror(errno));
			assert(false);
		}
#endif
		break;
	}
@@ -342,7 +347,11 @@ spdk_sock_get_placement_id(int fd, enum spdk_placement_mode mode, int *placement
#if defined(SO_INCOMING_CPU)
		socklen_t len = sizeof(int);

		getsockopt(fd, SOL_SOCKET, SO_INCOMING_CPU, placement_id, &len);
		int rc = getsockopt(fd, SOL_SOCKET, SO_INCOMING_CPU, placement_id, &len);
		if (rc == -1) {
			SPDK_ERRLOG("getsockopt() failed: %s\n", strerror(errno));
			assert(false);
		}
#endif
		break;
	}