diff options
author | Steve Langasek <vorlon@debian.org> | 2008-08-21 02:10:43 -0700 |
---|---|---|
committer | Steve Langasek <steve.langasek@ubuntu.com> | 2019-01-03 17:28:20 -0800 |
commit | ca500df9eeee7dde5c795c5e614a3b37dbe6df25 (patch) | |
tree | c1bf77936be02a07727f260f5d6b90eeb020d895 | |
parent | ce6419bfa157fde0ec1295008615bff05ec0f4f3 (diff) | |
parent | 9abf95885df0df19ebe7c46464aa383b86cdd717 (diff) | |
download | pam-ca500df9eeee7dde5c795c5e614a3b37dbe6df25.tar.gz pam-ca500df9eeee7dde5c795c5e614a3b37dbe6df25.tar.bz2 pam-ca500df9eeee7dde5c795c5e614a3b37dbe6df25.zip |
pam_unix-chkpwd-wait: don't assume that the unix_chkpwd process exits
normally; if it was killed by a signal, we don't want to accept the
password.
-rw-r--r-- | debian/changelog | 8 | ||||
-rw-r--r-- | debian/patches-applied/pam_unix-chkpwd-wait | 22 | ||||
-rw-r--r-- | debian/patches-applied/series | 1 |
3 files changed, 31 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog index 06123ec5..49258d6b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +pam (1.0.1-4) UNRELEASED; urgency=low + + * pam_unix-chkpwd-wait: don't assume that the unix_chkpwd process exits + normally; if it was killed by a signal, we don't want to accept the + password. + + -- Julien Cristau <jcristau@debian.org> Thu, 21 Aug 2008 00:03:56 +0200 + pam (1.0.1-3) unstable; urgency=high * 055_pam_unix_nullok_secure: don't call _pammodutil_tty_secure with a NULL diff --git a/debian/patches-applied/pam_unix-chkpwd-wait b/debian/patches-applied/pam_unix-chkpwd-wait new file mode 100644 index 00000000..306b2e29 --- /dev/null +++ b/debian/patches-applied/pam_unix-chkpwd-wait @@ -0,0 +1,22 @@ +Index: pam.deb/modules/pam_unix/support.c +=================================================================== +--- pam.deb.orig/modules/pam_unix/support.c ++++ pam.deb/modules/pam_unix/support.c +@@ -504,7 +504,16 @@ + pam_syslog(pamh, LOG_ERR, "unix_chkpwd waitpid returned %d: %m", rc); + retval = PAM_AUTH_ERR; + } else { +- retval = WEXITSTATUS(retval); ++ if (WIFEXITED(retval)) ++ retval = WEXITSTATUS(retval); ++ else { ++ if (WIFSIGNALED(retval)) ++ pam_syslog(pamh, LOG_ERR, "unix_chkpwd got signal %d", ++ WTERMSIG(retval)); ++ else ++ pam_syslog(pamh, LOG_ERR, "unix_chkpwd died unexpectedly"); ++ retval = PAM_AUTH_ERR; ++ } + } + } else { + D(("fork failed")); diff --git a/debian/patches-applied/series b/debian/patches-applied/series index 9c85dc01..8035591b 100644 --- a/debian/patches-applied/series +++ b/debian/patches-applied/series @@ -19,4 +19,5 @@ hurd_no_setfsuid PAM-manpage-section pam_env_ignore_garbage.patch -p2 pam.d-manpage-section +pam_unix-chkpwd-wait autoconf.patch |