diff options
author | Sam Hartman <hartmans@debian.org> | 2023-09-11 13:59:49 -0600 |
---|---|---|
committer | Sam Hartman <hartmans@debian.org> | 2023-09-11 13:59:49 -0600 |
commit | b99a4f53dcf4725e4b3b861fd8a28c0156a8a147 (patch) | |
tree | bee6fb35bc2f39151baa07c0900d84edc0586252 /debian/patches/022_pam_unix_group_time_miscfixes | |
parent | 69c75a3fc72c1ec309b5bcca8dd82f59831968cc (diff) | |
download | pam-b99a4f53dcf4725e4b3b861fd8a28c0156a8a147.tar.gz pam-b99a4f53dcf4725e4b3b861fd8a28c0156a8a147.tar.bz2 pam-b99a4f53dcf4725e4b3b861fd8a28c0156a8a147.zip |
Use gbp pq for patches, Closes: #995239
Diffstat (limited to 'debian/patches/022_pam_unix_group_time_miscfixes')
-rw-r--r-- | debian/patches/022_pam_unix_group_time_miscfixes | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/debian/patches/022_pam_unix_group_time_miscfixes b/debian/patches/022_pam_unix_group_time_miscfixes new file mode 100644 index 00000000..8239fd98 --- /dev/null +++ b/debian/patches/022_pam_unix_group_time_miscfixes @@ -0,0 +1,22 @@ +Description: handle the case of flags being empty or only PAM_SILENT, which is + documented in other PAM implementations as meaning PAM_ESTABLISH_CRED: + http://publib.boulder.ibm.com/infocenter/aix/v6r1/index.jsp?topic=%2Fcom.ibm.aix.basetechref%2Fdoc%2Fbasetrf1%2Fpam_setcred.htm + +Index: pam/modules/pam_group/pam_group.c +=================================================================== +--- pam.orig/modules/pam_group/pam_group.c ++++ pam/modules/pam_group/pam_group.c +@@ -754,9 +754,12 @@ + unsigned setting; + + /* only interested in establishing credentials */ ++ /* PAM docs say that an empty flag is to be treated as PAM_ESTABLISH_CRED. ++ Some people just pass PAM_SILENT, so cope with it, too. */ + + setting = flags; +- if (!(setting & (PAM_ESTABLISH_CRED | PAM_REINITIALIZE_CRED))) { ++ if (!(setting & (PAM_ESTABLISH_CRED | PAM_REINITIALIZE_CRED)) ++ && (setting != 0) && (setting != PAM_SILENT)) { + D(("ignoring call - not for establishing credentials")); + return PAM_SUCCESS; /* don't fail because of this */ + } |