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