Что означает код errno 120 (EPROTONOSUPPORT)?

 
Также может означать:
КонстантаТипОС
ERROR_CALL_NOT_IMPLEMENTEDОшибка WindowsWindows
EISNAMerrnoLinux
ENODATAerrnoWindows
PHASE0_EXCEPTIONКод BSODWindows
Предыдущий Следующий
EISNAM ENODATA

EPROTONOSUPPORT

Отсутствует реализация протокола

EPROTONOSUPPORT указывает на проблему поддержки протокола. Solaris сообщает, что протокол не настроен в системе или его реализация отсутствует. POSIX дополнительно связывает ошибку из socket() с ненулевым значением протокола, которое не поддерживается семейством адресов или реализацией.

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

Проверки выбора протокола

  • Сохраните все три аргумента socket(domain, type, protocol) ; диагностика только по номеру протокола теряет контекст совместимости.
  • Если явно указан ненулевой протокол, убедитесь, что выбранное семейство адресов определяет его и реализация его предоставляет.
  • Предпочитайте константы протоколов из заголовков платформы скопированным числовым значениям, особенно в кроссплатформенном коде.

Ссылки


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