| Предыдущий | Следующий |
| EL2NSYNC | EDEADLK |
ENOTSUP
Неподдерживаемая операция и неподдерживаемая конечная точка
ENOTSUP означает, что операция неприменима к указанному типу объекта. Это точнее общей ошибки недопустимого аргумента: вызов может быть синтаксически корректным, но выбранный файл, устройство, файловая система или объект службы не предоставляет такую возможность.
В Darwin отличайте это состояние от EOPNOTSUPP. Последнее является статусом, специфичным для сокетов, и означает операцию, которую указанный тип сокета выполнить не может. Поэтому следует проверять контракт объекта и его возможностей, а не повторять ту же операцию или подставлять несвязанные флаги.
Полезные проверки
- Запишите API, тип объекта, флаги открытия, тип файловой системы или класс устройства и возможность, которую ожидал вызывающий код.
- Проверьте согласование возможностей и версии до включения необязательной операции.
- Сравните с
ENOSYS, который указывает, что функция не реализована, а не что операция не поддерживается данным объектом.
Ссылки
- Apple XNU: определения errno Darwin
- Справочник системных вызовов Apple: ENOTSUP и EOPNOTSUPP
- POSIX: интерфейс fcntl() и необязательные операции
Нужно найти другой код? Найти другой код состояния или ошибки.