Что означает код возврата ядра macOS 0x10000011 (MACH_SEND_INVALID_TRAILER)?

 
Предыдущий Следующий
MACH_SEND_INVALID_HEADER MACH_SEND_INVALID_CONTEXT

MACH_SEND_INVALID_TRAILER

Почему обычные клиенты редко должны видеть этот результат

MACH_SEND_INVALID_TRAILER связан с MACH_SEND_TRAILER — параметром, позволяющим привилегированному отправителю предоставлять форматированные атрибуты сообщения вместо создания ядром обычного трейлера приёма. Справочный интерфейс требует, чтобы переданный трейлер соответствовал последнему поддерживаемому ядром формату, и указывает на специализированное назначение этой возможности; обычным пользовательским процессам, как правило, не следует самостоятельно формировать такой трейлер.

К этому результату могут привести устаревшая закрытая структура ядра, трейлер, добавленный по неверному адресу, неправильный размер или отсутствие привилегий. Это не общая ошибка проверки полезной нагрузки, и повтор неизменённых данных не поможет. Обычно правильное действие — удалить путь с ручным трейлером или обновить компонент, задача которого состоит в воспроизведении атрибутов сообщений ядра.

Как диагностировать

  • Убедитесь, что MACH_SEND_TRAILER действительно необходим; большинству IPC в пользовательском режиме этот параметр не нужен.
  • Проверьте версию и размер трейлера, его размещение после сообщения и различие между размером сообщения и размером трейлера.
  • Проверьте модель привилегий вызывающей стороны вместо попыток заменить создаваемый ядром трейлер.
  • Привязывайте закрытый IPC-код ядра к точным поддерживаемым интерфейсам XNU целевой системы.

Ссылки


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