1 This patch addes pam_chauthtok(3PAM) and PAM_NO_AUTHTOK_CHECK features.
2 Also refer to pam_authtok_check(5).
4 --- Authen-PAM-0.16/PAM.xs.orig
5 +++ Authen-PAM-0.16/PAM.xs
10 + else if (strcmp(name, "NO_AUTHTOK_CHECK") == 0)
11 + #if defined(HAVE_PAM_NO_AUTHTOK_CHECK)
12 + return PAM_NO_AUTHTOK_CHECK;
16 else if (strcmp(name, "MODULE_UNKNOWN") == 0)
17 #if defined(HAVE_PAM_MODULE_UNKNOWN) /* Linux-PAM only */
18 return PAM_MODULE_UNKNOWN;
19 --- Authen-PAM-0.16/PAM.pm.in.orig
20 +++ Authen-PAM-0.16/PAM.pm.in
23 PAM_ESTABLISH_CRED PAM_DELETE_CRED PAM_REINITIALIZE_CRED
24 PAM_REFRESH_CRED PAM_CHANGE_EXPIRED_AUTHTOK
25 + PAM_NO_AUTHTOK_CHECK
27 PAM_PROMPT_ECHO_OFF PAM_PROMPT_ECHO_ON PAM_ERROR_MSG
28 PAM_TEXT_INFO PAM_RADIO_TYPE PAM_BINARY_PROMPT
30 croak("Wrong number of arguments in pam_start function");
34 + return _pam_chauthtok(@_) if @_ == 2;
35 + return _pam_chauthtok($_[0], 0) if @_ == 1;
36 + croak("Wrong number of arguments in pam_chauthtok function");
39 # Autoload methods go after =cut, and are processed by the autosplit program.
42 --- Authen-PAM-0.16/PAM_config.h.in.orig
43 +++ Authen-PAM-0.16/PAM_config.h.in
45 /* Is the symbol PAM_REINITIALIZE_CRED defined? */
46 #undef HAVE_PAM_REINITIALIZE_CRED
48 +/* Is the symbol PAM_NO_AUTHTOK_CHECK defined? */
49 +#undef HAVE_PAM_NO_AUTHTOK_CHECK
51 /* pam_appl.h in /usr/include/security */
52 #undef HAVE_SECURITY_PAM_APPL_H
54 --- Authen-PAM-0.16/configure.ac.orig
55 +++ Authen-PAM-0.16/configure.ac
57 AC_CHECK_PAM_CONST(PAM_MODULE_UNKNOWN)
58 AC_CHECK_PAM_CONST(PAM_RADIO_TYPE)
59 AC_CHECK_PAM_CONST(PAM_BINARY_PROMPT)
60 +AC_CHECK_PAM_CONST(PAM_NO_AUTHTOK_CHECK)
62 # Checks if the dl library supports the RTLD_GLOBAL flag
63 # but only if perl was compiled with the dl_open library