search cancel

Seeing "Error setting TCP_NODELAY" error in the sdm.log file on the SpectroSERVER system,


Article ID: 257049


Updated On:


DX NetOps CA Spectrum


We are trying to setup SDM/SDC for monitoring remote devices.  While starting up the SDM, we get the following messages in the log.

Tue Dec 13 19:03:03 2022: INFO: SDM LOGGING STARTED
Tue Dec 13 19:03:03 2022: WARNING: SdmSDManager::intialize() completed
Tue Dec 13 19:03:03 2022: ERROR: SdmEtpkiEndpoint::Error setting TCP_NODELAY
Tue Dec 13 19:03:03 2022: ERROR: SdmEtpkiEndpoint::Error setting TCP_NODELAY

However, I do not see any issues with modeling any devices using SDM.


Release : Any release on Linux.

Component: Secure Domain Manager (SDM)


The error is specific to the Linux system call setsockopt(), which is failing due to some limitation or permission denial from the OS. 

As part of SDM-SDC communication, we set the below parameters for the socket in the code:

setsockopt( socket, SOL_SOCKET, SO_RCVBUF, (char*)&recv_bufferSize, sizeof( recv_bufferSize ) )
setsockopt( socket, SOL_SOCKET, SO_REUSEADDR, (char*)&on, sizeof(on) )
setsockopt( socket, SOL_SOCKET, TCP_NODELAY, (char*)&on, sizeof(on)

The TCP_DELAY is to send the packets with no delay, to avoid any packet loss due to time delay. The last syscall is failing, but that doesn't really impacting anything, as there won't be too much data flowing between SDM-SDC, i.e. it's manageable without really setting TCP_NODELAY, hence we don't see any functional impact.


This has no impact on the functionality and can be ignored.