Что означает код NTSTATUS 0xC042000B (STATUS_BTH_ATT_ATTRIBUTE_NOT_LONG)?

 
Предыдущий Следующий
STATUS_BTH_ATT_ATTRIBUTE_NOT_FOUND STATUS_BTH_ATT_INSUFFICIENT_ENCRYPTION_KEY_SIZE

STATUS_BTH_ATT_ATTRIBUTE_NOT_LONG

Процедура продолжения длинного значения использована там, где она неприменима

STATUS_BTH_ATT_ATTRIBUTE_NOT_LONG соответствует ошибке ATT 0x0B. Attribute Protocol позволяет серверу вернуть её для запроса Read Blob, когда значение имеет фиксированную длину и помещается в обычный ответ ATT, поэтому продолжение blob не является подходящим методом чтения.

Это не следует интерпретировать как общее утверждение о неспособности устройства обрабатывать большие данные. Статус описывает процедуру, выбранную для конкретного атрибута. Длинные записи используют Prepare Write и Execute Write, а не Read Blob.

Что следует проверить

  • Запишите целевой дескриптор, смещение Read Blob, ATT MTU, результат предшествующего обычного чтения и тип значения, ожидаемый профилем.
  • Прекратите цикл Read Blob для этого атрибута и используйте результат обычного чтения, если он уже содержит полное значение фиксированного размера.
  • Не преобразовывайте этот статус в Invalid Offset; сервер отклоняет саму процедуру длинного чтения, а не только позицию внутри допустимого blob.

Ссылки


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