IOCTL_NFCSE_SET_CARD_EMULATION_MODE IOCTL (nfcsedev.h)
IOCTL_NFCSE_SET_CARD_EMULATION_MODE控制代码设置指定的安全元素是否在卡仿真模式下公开。 当安全元素作为卡仿真“公开”时,这意味着当设备被引入外部读取器时,读取器可以访问安全元素。 IOCTL 是在使用相对文件名“SEManage”打开的文件句柄上发出的。 驱动程序必须授予对客户端的独占访问权限以管理卡仿真模式,也就是说,使用相对文件名“SEManage”打开文件句柄的后续调用将失败并STATUS_ACCESS_DENIED,直到具有独占访问权限的客户端关闭其文件句柄。
主要代码
输入缓冲区
SECURE_ELEMENT_SET_CARD_EMULATION_MODE_INFO 结构。
输出缓冲区
无
状态块
Irp->如果请求成功,IoStatus.Status 设置为 STATUS_SUCCESS 。 可能的错误代码包括:
返回代码 | 说明 |
---|---|
STATUS_INVALID_PARAMETER | 如果安全元素 GUID 无效或输出缓冲区为非零。 |
STATUS_INVALID_DEVICE_STATE | 如果 IOCTL 在相对名称为“SEManage”的句柄上发送。 |
注解
以下是驱动程序必须遵守的要求。
- 必须在具有 SEEvents 相对文件名的句柄上调用此 IOCTL;否则,驱动程序将返回STATUS_INVALID_DEVICE_STATE。
- 如果对于附加到 NFC 控制器的所有安全元素,卡仿真模式设置为 EmulationOff,则必须禁用轮询循环的仿真模式。 如果还禁用了邻近感应功能,驱动程序应转换为低功耗模式。
- 如果卡仿真模式设置为除 EmulationOff 以外的值,则驱动程序必须继续处于 D0 状态,并且应启用轮询循环的仿真模式, (可检测到外部读取器) 。
- 关闭 SEManage 打开的文件句柄时,驱动程序必须将所有安全元素的卡仿真模式设置设置为 EmulationOff,除非最后一个设置卡仿真模式状态为 EmulationOnPowerIndependent。 如果最后一个卡仿真模式状态集是 EmulationOnPowerIndependent,则驱动程序必须保留“卡仿真模式”设置为“开”,并具有特定安全元素的 PbF 选项。
- 驱动程序必须授予对客户端的独占访问权限才能管理卡仿真模式。 使用相对文件名 SEManage 打开文件句柄的后续调用将失败并STATUS_ACCESS_DENIED,直到具有独占访问权限的客户端关闭其文件句柄。
要求
要求 | 值 |
---|---|
Header | nfcsedev.h |