Что означает код errno 37 (ECHRNG)?

 
Также может означать:
КонстантаТипОС
KERN_TERMINATEDКод возврата ядра macOSmacOS
ippStsUnknownCacheSizeСтатус Intel IPPЛюбая
ENOLCKerrnoLinux
EALREADYerrnomacOS
NPFS_FILE_SYSTEMКод BSODWindows
Предыдущий Следующий
EALREADY ENOSYS

ECHRNG

Пространство имён каналов зависит от интерфейса

ECHRNG — это errno 37 в Solaris и illumos с названием Номер канала вне допустимого диапазона. В текущем каталоге Oracle этот код не привязан к какому-либо общему современному системному вызову, а POSIX не определяет такое имя. Поэтому допустимый диапазон задаётся моделью каналов устаревшего производителя.

Это более конкретное условие, чем общее EINVAL: выбранный номер канала нарушил ограничение диапазона. Оно также отличается от ELNRNG, которое относится к номеру линии связи. Если считать обе страницы одинаковыми ошибками «старого драйвера», теряется именно то поле, которое необходимо зафиксировать.

Зафиксируйте отклонённое значение канала

  • Запишите в журнал номер канала, настроенный максимум и версию интерфейса в месте вызова, возвращающего errno 37.
  • Проверьте усечение целых чисел и устаревшие константы, когда портированный код передаёт идентификаторы каналов через структуры или ABI.
  • Если с другой платформы доступен только числовой errno, сверьтесь с её заголовочными файлами, прежде чем присваивать ему Solaris-имя ECHRNG .

Ссылки


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