C 从linux内核中的bprm_检查_安全性获取argv。文档是否有误?

C 从linux内核中的bprm_检查_安全性获取argv。文档是否有误?,c,linux-kernel,kernel,linux-security-module,C,Linux Kernel,Kernel,Linux Security Module,根据: bprm\u check\u security: 这个钩子在搜索二进制处理程序时起到中介作用 开始。它允许对bprm->cred->security值进行检查 这是在前面的creds\u for\u exec调用中设置的。argv列表和 envp列表在bprm中可靠可用。这个钩子可以叫做 在一次执行过程中多次执行execve。 bprm包含linux\u binprm结构 但是,此时,argv和envp(例如bprm->mm->arg\u start)的值实际上是NULL。这是因为这些值

根据:

bprm\u check\u security
: 这个钩子在搜索二进制处理程序时起到中介作用 开始。它允许对
bprm->cred->security
值进行检查 这是在前面的
creds\u for\u exec
调用中设置的。
argv
列表和
envp
列表在
bprm
中可靠可用。这个钩子可以叫做 在一次执行过程中多次执行
execve
bprm
包含
linux\u binprm
结构

但是,此时,
argv
envp
(例如
bprm->mm->arg\u start
)的值实际上是
NULL
。这是因为这些值是在
setup\u arg\u页面中设置的
在挂钩之后被称为。而且,
current
struct仍然指向旧进程,因此无法使用它来获取这些数据

所以我的问题是:文档是否不正确,或者是否有其他方法可以可靠地获取这一点上的参数


旁注:我知道这已经问了一个非常类似的问题,但我不认为这是重复的,因为这篇文章要求从
bprm\u check\u security
获取argv,而我认为这可能是不可能的,因此我要求确认问题来自文档。此外,这篇文章没有给出正确答案