| Предыдущий | Следующий |
| ENOSTR | ENETDOWN |
ENOPROTOOPT
Имя параметра и уровень параметра образуют пару
ENOPROTOOPT указывает на выбор параметра протокола. Solaris сообщает, что при получении или установке параметров протокола были заданы неверный параметр либо уровень. API параметров сокета POSIX также принимают level и option_name; одно и то же числовое имя параметра можно интерпретировать только в пределах соответствующего уровня.
Это не равнозначно неподдерживаемой операции с сокетом. EOPNOTSUPP относится к операции над конечной точкой, тогда как ENOPROTOOPT направляет внимание на аргументы getsockopt()/setsockopt() и протокол, которому принадлежит пространство имён параметров.
Диагностика уровня параметра
- До преобразования констант какой-либо обёрткой журналируйте уровень, имя параметра, семейство и тип сокета, а также протокол.
- Убедитесь, что параметр документирован для данного протокола и выпуска Solaris: параметры не обязательно переносимы между реализациями UNIX.
- Проверьте условную компиляцию для IPv4, IPv6, TCP и параметров уровня сокета, чтобы выявить константу, использованную с неправильным уровнем.
Ссылки
- Oracle Solaris: каталог errno intro(2)
- POSIX: семантика уровня параметра getsockopt()
- POSIX: семантика уровня параметра setsockopt()
Нужно найти другой код? Найти другой код состояния или ошибки.
