What does errno 96 (EDESTADDRREQ) mean?

 
Could be also:
ConstantTypeOS
EPFNOSUPPORTerrnoLinux
ENODATAerrnoMac
PROCESS_INITIALIZATION_FAILEDBugCheck CodeWindows
Previous Next
ENODATA EAFNOSUPPORT

EDESTADDRREQ

The transport has no destination for this operation

EDESTADDRREQ is an argument/state error for a transport endpoint: the operation requires an address and none was supplied. The condition is especially useful when debugging connectionless sends, where an unconnected socket normally needs a destination for each message.

This should be separated from ENOTCONN. Both can involve an endpoint without a peer, but Solaris explicitly defines EDESTADDRREQ around an omitted required address, while ENOTCONN describes an operation disallowed because connection state is absent.

Check how the destination is selected

  • Determine whether the socket was intentionally connected and whether the failing API expects a destination argument.
  • For sendto()-style wrappers, trace the address pointer and length after language/runtime conversion.
  • Do not troubleshoot DNS or routing until the local call is known to contain a valid destination address.

References


Looking for a different code? Search another status or error code.