Что означает код errno 44 (ESOCKTNOSUPPORT)?

 
Также может означать:
КонстантаТипОС
KERN_RPC_TERMINATE_ORPHANКод возврата ядра macOSmacOS
ippStsPrevLibraryUsedСтатус Intel IPPЛюбая
ECHRNGerrnoLinux
EL2HLTerrnoSolaris
PORT_DRIVER_INTERNALКод BSODWindows
Предыдущий Следующий
ECHRNG EL2HLT

ESOCKTNOSUPPORT

При создании сокета не поддерживается именно тип

ESOCKTNOSUPPORT указывает на тип сокета, отсутствующий в целевом семействе. Тип задаёт семантику сообщений, например потоковую или дейтаграммную доставку; это не просто настройка производительности, которую можно незаметно заменить.

POSIX отмечает исторические различия между ESOCKTNOSUPPORT, EPROTONOSUPPORT и EPROTOTYPE для неподдерживаемых сочетаний типа и протокола. Для диагностики сохраняйте всю тройку аргументов, а не считайте, что имя ошибки всегда точно указывает поле.

Важные проверки

  • Запишите domain, type с флагами и номер protocol.
  • Проверьте, не запросила ли переносимая обёртка тип, существующий в другой ОС, но не в этом семействе macOS.
  • Отделяйте выбор типа от выбора конечной точки: изменение имени узла или порта не добавит локально неподдерживаемый тип.

Замена требует изменения проекта протокола

Замена потокового сокета дейтаграммным или наоборот меняет порядок, границы сообщений, повторы и обработку ошибок. Резервный вариант допустим только если протокол приложения спроектирован для этой семантики.

Ссылки


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