IOCTL_NFCSE_SET_ROUTING_TABLE IOCTL (nfcsedev.h)
Настраивает таблицу маршрутизации режима прослушивания nfc-контроллера. Обратите внимание, что вызывающий должен отправлять сведения о маршрутизации в режиме прослушивания в одном вызове. Вызывающий объект должен убедиться, что таблица маршрутизации меньше значения cbMaxRoutingTableSize, определенного в 4.2.5.1. Общий размер вычисляется в соответствии со стандартом NFC NCI с 6.3.2 и равен Числу маршрутов на основе AID x 4 + сумма cbAid + Количество маршрутов на основе технологии x 5 + Количество маршрутов на основе протокола x 5. Вызывающий должен убедиться, что значения для маршрутов на основе технологий и протоколов соответствуют спецификации NCI NFC сек 6.3.2.
Основной код
Входной буфер
SECURE_ELEMENT_ROUTING_TABLE , содержащий все настроенные в настоящее время записи маршрутизации.
Выходной буфер
None
Блок состояния
Irp->IoStatus.Status имеет значение STATUS_SUCCESS , если запрос выполнен успешно. Возможные коды ошибок:
Код возврата | Описание |
---|---|
STATUS_INVALID_BUFFER_SIZE | Предоставленный буфер был больше, чем nfc-контроллер MAX_ROUTING_TABLE_SIZE. |
STATUS_FEATURE_NOT_SUPPORTED | NFCC не поддерживает конфигурацию маршрутизации в режиме прослушивания. |
STATUS_INVALID_PARAMETER | Это состояние возвращается, если выходной буфер не равен нулю или значения, используемые для технологии или протокола, соответствуют спецификации NFC NCI 6.3.2, если используются повторяющиеся идентификаторы AID или при использовании режима маршрутизации, который не поддерживается текущими возможностями контроллера NFC. |
STATUS_INVALID_DEVICE_STATE | Этот код возвращается, если IOCTL отправляется на дескриптор, отличный от относительного имени SEManage. |
Комментарии
Ниже приведены требования, которым должен соответствовать драйвер.
- Этот IOCTL отправляется на дескриптор с относительным именем файла "SEManage", в противном случае драйвер должен завершить его с помощью STATUS_INVALID_DEVICE_STATE.
- Драйвер должен иметь начальные записи таблицы маршрутизации режима прослушивания по умолчанию, которые направляют rf технологии A, B и F и /или ISO-DEP, перенаправленные в UICC SE, если они имеются. Позже эти записи маршрутизации могут быть переопределены новой конфигурацией таблицы маршрутизации режима прослушивания, инициированной узлом устройства.
- Драйвер должен убедиться, что протокол NFC-DEP всегда сопоставляется с узлом устройства. Даже если вызывающий объект не указывает это, драйвер должен добавить это правило неявно.
- Если этот IOCTL выдается, когда NFCC находится в состоянии радиочастотного обнаружения, драйвер должен переключить NFCC в состояние бездействия, настроить таблицу маршрутизации и перезапустить обнаружение RF.
Требования
Требование | Значение |
---|---|
Заголовок | nfcsedev.h |