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 控制器的所有安全元素的仿真Off,则必须禁用轮询循环的仿真模式。 如果邻近感应功能也处于禁用状态,驱动程序应转换为低功率模式。
- 如果卡仿真模式设置为除 EmulationOff 以外的值,则驱动程序必须继续处于 D0 状态,并且应启用轮询循环的仿真模式(可检测到外部读取器)。
- 关闭 SEManage 打开的文件句柄时,驱动程序必须将所有安全元素的卡片仿真模式设置设置为 EmulationOff,除非上次设置的卡仿真模式状态为 EmulationOnPowerIndependent。 如果最后一个设置的卡仿真模式状态为 EmulationOnPowerIndependent,则驱动程序必须与特定安全元素的 PbF 选项一起将卡仿真模式设置为 On。
- 驱动程序必须授予对客户端的独占访问权限才能管理卡仿真模式。 使用相对文件名 SEManage 打开文件句柄的后续调用将失败并STATUS_ACCESS_DENIED,直到具有独占访问权限的客户端关闭其文件句柄。
要求
要求 | 价值 |
---|---|
标头 | nfcsedev.h |