Что означает код errno 96 (EDESTADDRREQ)?

 
Также может означать:
КонстантаТипОС
EPFNOSUPPORTerrnoLinux
ENODATAerrnomacOS
PROCESS_INITIALIZATION_FAILEDКод BSODWindows
Предыдущий Следующий
ENODATA EAFNOSUPPORT

EDESTADDRREQ

У транспорта нет адреса назначения для этой операции

EDESTADDRREQ — ошибка аргумента или состояния транспортной конечной точки: операции требуется адрес, но он не передан. Это особенно полезно при диагностике отправки без соединения, где неподключённому сокету обычно нужен адрес назначения для каждого сообщения.

Следует отличать это от ENOTCONN. Оба статуса могут относиться к конечной точке без peer, однако Solaris явно определяет EDESTADDRREQ как отсутствие обязательного адреса, тогда как ENOTCONN описывает операцию, запрещённую из-за отсутствующего состояния соединения.

Проверьте способ выбора назначения

  • Определите, был ли сокет намеренно подключён и ожидает ли проблемный API аргумент назначения.
  • Для sendto()Для обёрток в стиле sendto проследите указатель адреса и длину после преобразования языком или средой выполнения.
  • Не диагностируйте DNS или маршрутизацию, пока не подтверждено наличие корректного адреса назначения в локальном вызове.

Ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.