IOCTL_NFCSE_ENUM_ENDPOINTS IOCTL (nfcsedev.h)
返回有关附加到 NFC 控制器的所有安全元素的列表的信息。 请注意,调用方必须分配足够大的输出缓冲区,以便保存驱动程序枚举的所有安全元素(即 SE 终结点信息的 SEs 枚举 x 大小总数)的信息,否则驱动程序应向客户端返回包含枚举安全元素数的 NumberOfEndpoints 字段的STATUS_BUFFER_OVERFLOW错误代码。 标识可能用于引用特定安全元素的安全元素的 GUID。
主要代码
输入缓冲区
没有
输入缓冲区长度
没有
输出缓冲区
枚举的每个设备的 SECURE_ELEMENT_ENDPOINT_LIST。
状态块
Irp->IoStatus.Status 设置为 STATUS_SUCCESS(如果请求成功)。 可能的错误代码包括:
返回代码 | 描述 |
---|---|
STATUS_INVALID_PARAMETER | 当输出缓冲区为非零时,将返回此代码。 |
STATUS_BUFFER_OVERFLOW | 提供的缓冲区太小,无法接收路由表配置。 |
言论
以下是驱动程序必须遵循的要求。
- 对于集成的安全元素,GUID 应是派生自安全元素的序列号和/或其他唯一标识的唯一标识符。
- 对于外部安全元素,GUID 可能是固定常量,并且仅标识安全元素连接到的“套接字”。
- 对于设备主机安全元素,仅当驱动程序支持主机卡仿真时,驱动程序才会将其枚举为 SE 终结点。 用于 DH 的 GUID 可能是驱动程序定义的固定常量。
- 调用方需要分配足够大的输出缓冲区,以便保存驱动程序枚举的所有安全元素的相关信息。 缓冲区必须与驱动程序枚举的 SE 总数相等,并乘以 SE 终结点信息的大小。 如果未分配适当的缓冲区,驱动程序会将STATUS_BUFFER_OVERFLOW错误代码返回到客户端,其中包含枚举的安全元素数的 NumberOfEndpoints 字段。
要求
要求 | 价值 |
---|---|
标头 | nfcsedev.h |