IOCTL_NFCSE_SET_ROUTING_TABLE IOCTL (nfcsedev.h)

Configura la tabla de enrutamiento del modo de escucha del controlador NFC. Tenga en cuenta que el llamador tiene que enviar información completa de enrutamiento del modo de escucha en una sola llamada. El autor de la llamada garantizará que la tabla de enrutamiento sea menor que el valor cbMaxRoutingTableSize definido en 4.2.5.1. El tamaño total se calcula según el estándar NCI de NFC sec 6.3.2 y es igual al número de rutas basadas en AID x 4 + suma de cbAid + Número de rutas basadas en tecnología x 5 + Número de rutas basadas en protocolo x 5. El autor de la llamada garantizará que los valores de las rutas basadas en tecnología y protocolo sean conformes a la especificación NFC de NCI sec 6.3.2.

Código principal

IRP_MJ_DEVICE_CONTROL

Búfer de entrada

SECURE_ELEMENT_ROUTING_TABLE que contiene todas las entradas de enrutamiento configuradas actualmente.

Búfer de salida

None

Bloque de estado

Irp->IoStatus.Status se establece en STATUS_SUCCESS si la solicitud se realiza correctamente. Los posibles códigos de error son:

Código de retorno Descripción
STATUS_INVALID_BUFFER_SIZE El búfer proporcionado era mayor que el MAX_ROUTING_TABLE_SIZE del controlador NFC.
STATUS_FEATURE_NOT_SUPPORTED NFCC no admite la configuración de enrutamiento del modo de escucha.
STATUS_INVALID_PARAMETER Este estado se devuelve si el búfer de salida no es cero o los valores usados para la tecnología o el protocolo son conformes a la especificación NCI de NFC s 6.3.2, o si se usan AID duplicados, o cuando se usa el modo de enrutamiento que no es compatible con las funcionalidades actuales del controlador NFC.
STATUS_INVALID_DEVICE_STATE Este código se devuelve si el IOCTL se envía en un identificador distinto de con el nombre relativo "SEManage".

Comentarios

A continuación se muestran los requisitos a los que debe cumplir el controlador.

  • Este IOCTL se envía en un identificador con un nombre de archivo relativo "SEManage", de lo contrario, el controlador DEBE completarlo con STATUS_INVALID_DEVICE_STATE.
  • El controlador tendrá entradas iniciales de tabla de enrutamiento del modo de escucha predeterminadas que enrutan las tecnologías de RF A, B y F o el protocolo ISO-DEP enrutados a UICC SE si están presentes. Estas entradas de enrutamiento se pueden invalidar posteriormente mediante la nueva configuración de tabla de enrutamiento del modo de escucha iniciada por el host del dispositivo.
  • El controlador se asegurará de que el protocolo NFC-DEP esté asignado al host del dispositivo en todo momento. Aunque el autor de la llamada no lo especifique, el controlador debe agregar esta regla implícitamente.
  • Si este IOCTL se emite cuando el NFCC está en estado de detección de RF, el controlador debe poner el NFCC en estado inactivo de RF, configurar la tabla de enrutamiento y reiniciar la detección de RF.

Requisitos

Requisito Valor
Header nfcsedev.h