为什么 pam_unix 模块文档将 PAM_IGNORE 列为其唯一返回值?

为什么 pam_unix 模块文档将 PAM_IGNORE 列为其唯一返回值?

http://www.linux-pam.org/Linux-PAM-html/sag-pam_unix.html:

6.37.4。返回值

PAM_IGNORE
忽略此模块。

显然,模块必须返回成功或失败才能使密码验证起作用。我是否误解了文档的含义?

答案1

看起来文档很糟糕;源代码显示pam_unix返回许多不同的东西,但没有一个是PAM_IGNORE

$ pwd
.../Linux-PAM-1.3.0/modules/pam_unix
$ perl -nle 'print $1 if m/return (PAM_[^;]+)/' *.c | sort -u
PAM_ABORT
PAM_ACCT_EXPIRED
PAM_AUTHINFO_UNAVAIL
PAM_AUTHTOK_ERR
PAM_AUTHTOK_EXPIRED
PAM_AUTHTOK_LOCK_BUSY
PAM_AUTH_ERR
PAM_BUF_ERR
PAM_CRED_INSUFFICIENT
PAM_NEW_AUTHTOK_REQD
PAM_SESSION_ERR
PAM_SUCCESS
PAM_SYSTEM_ERR
PAM_UNIX_RUN_HELPER
PAM_USER_UNKNOWN
$ 

相关内容