Что означает код errno 36 (ENAMETOOLONG)?

 
Также может означать:
КонстантаТипОС
ERROR_SHARING_BUFFER_EXCEEDEDОшибка WindowsWindows
KERN_NOT_DEPRESSEDКод возврата ядра macOSmacOS
ippStsNotSupportedCpuСтатус Intel IPPЛюбая
EINPROGRESSerrnomacOS
EIDRMerrnoSolaris
EDEADLKerrnoWindows
NTFS_FILE_SYSTEMКод BSODWindows
Предыдущий Следующий
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


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