Что означает код 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

STATUS_BTH_ATT_ATTRIBUTE_NOT_LONG соответствует ATT error «Attribute Not Long»: client использовал процедуру продолжения чтения для значения, которое сервер считает обычным коротким attribute. Это не общий запрет больших данных на устройстве.

Что проверить

  • Сохраните handle, offset Read Blob request, negotiated ATT MTU и результат предыдущего обычного Read.
  • Проверьте тип attribute по GATT profile и ожидаемый размер значения.
  • Не путайте этот status с Invalid Offset: сервер отклоняет сам выбор long-read procedure.

Как исправить

Прекратите цикл Read Blob для этого attribute и используйте обычный Read response, если он содержит полное значение. Для длинной записи применяйте Prepare Write/Execute Write — это отдельный ATT flow.

Технические ссылки


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