kkey_assign_private 内核服务
用途
请求进行专用内核密钥分配。
语法
参数
| 项 | 描述 |
|---|---|
| 标识 | 指定以 null 结束的字符串。 kkey_assign_private 内核服务使用字符串值来分配专用密钥。 这通常包含与调用内核子系统关联的装入模块名称,但您可以指定任何唯一字符串。 |
| 实例 (instance) | 指定子系统所请求的每个专用密钥的唯一编号。 此值必须是从 0 开始的整数值,并且随请求的每个内核键而增大。 |
| 标志 | 必须将此参数指定为零。 |
| 凯基 | 包含返回的已分配内核键。 有效指针必须是 4 字节对齐的地址 (kkey_t的自然对齐)。 |
描述
kkey_assign_private 内核服务将专用内核密钥分配给调用者。 专用内核密钥用于限制外部内核代码的数据可访问性。 kkey_assign_private 内核服务在预定范围 (从 KKEY_PRIVATE1 到 KKEY_PRIVATE32) 内分发对专用内核密钥的请求。 其目的是代表多个内核子系统的请求执行统一的分发。 根据 id 和 instance 参数进行分配,并可能将同一专用密钥返回给多个调用者。 当实例号不同时,它也可能返回相同的专用密钥。
kkey_assign_private 内核服务不执行资源分配。 它仅提供建议的内核密钥以用于数据保护。
执行环境
只能从 进程 环境调用 kkey_assign_private 内核服务。
返回值
| 项 | 描述 |
|---|---|
| 重大安全事件数量 | 指示成功完成。 |
| einval_kkey_assign_private | 指示该参数或执行环境无效。 |