raschk_eaddr_kkey 内核服务

用途

检查是否可以使用内核密钥来引用有效地址。

语法

#include <sys/raschk.h>
#include <sys/kerrno.h>
kerrno_t raschk_eaddr_kkey (eaddr, kkey, flags)
void * eaddr;
kkey_t kkey;
unsigned long flags;

参数

描述
埃德尔 要验证的有效地址。 仅检查一个字节。
凯基 要检查的内核密钥。
标志 定义了以下标记:
rchk_ek_nofault
执行此检查时,不允许任何类型的缺页故障。
rchk_ek_nopagein
在此检查期间将不会执行任何页面进入。

描述

raschk_eaddr_kkey内核服务会执行建议性运行时检查,以确定有效地址是否可以被内核密钥引用。 请注意,读/写属性不会以页详细程度进行维护。 该服务只检查分配给有效地址的内核密钥是否与kkey值匹配。

执行环境

可从进程中断环境调用raschk_eaddr_kkey内核服务。

返回值

描述
重大安全事件数量 成功。
EFAULT_RASCHK_EADDR_KKEY 由于不允许页面进入或缺页故障,因此无法执行操作。
EINVAL_RACHK_EADDR_KKEY 要验证的地址已确定为无效。
EINVAL_RACHK_EADDR_KKEY_PROT 该地址未通过保护检查。