| Предыдущий | Следующий |
| ENOMSG | EINPROGRESS |
ENAMETOOLONG
Что означает ENAMETOOLONG в Linux
ENAMETOOLONG означает «Имя файла слишком длинное». Для условия «Имя файла слишком длинное» код ENAMETOOLONG нужно связывать с первым возвратившим его вызовом и контекстом: путь, дескриптор, тип объекта, права и состояние файловой системы.
После отказа, соответствующего «Имя файла слишком длинное», сохраните errno немедленно: любой последующий системный или библиотечный вызов может заменить значение. Для ENAMETOOLONG исходная английская страница также выделяет PATH_MAX, *at и path_resolution; эти данные полезно записать вместе с return value, потоком и временем события.
Диагностика
- При ошибке «Имя файла слишком длинное» (Linux,
ENAMETOOLONG) проверьте каждый компонент пути, фактический root/namespace, владельца, mode, ACL и параметры монтирования. - При ошибке «Имя файла слишком длинное» (Linux,
ENAMETOOLONG) установите, относится ли отказ к конечному объекту, родительскому каталогу, дескриптору или промежуточной ссылке. - При ошибке «Имя файла слишком длинное» (Linux,
ENAMETOOLONG) запишите flags и mode исходного вызова: open, create, rename и unlink проверяют разные условия. - При ошибке «Имя файла слишком длинное» (Linux,
ENAMETOOLONG) не выдавайте широкие права до определения конкретной недостающей возможности.
На платформе Linux исправление ENAMETOOLONG считается подтверждённым, когда исходная операция даёт ожидаемый результат, а отдельный отрицательный тест по-прежнему воспроизводит именно условие «Имя файла слишком длинное» без утечки ресурсов и потери первичной диагностики.
Ссылки для ENAMETOOLONG
Нужно найти другой код? Найти другой код состояния или ошибки.