diff --git a/lib/libpam/modules/pam_exec/pam_exec.8 b/lib/libpam/modules/pam_exec/pam_exec.8 index 311d64c..c5d2404 100644 --- a/lib/libpam/modules/pam_exec/pam_exec.8 +++ b/lib/libpam/modules/pam_exec/pam_exec.8 @@ -32,7 +32,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 1, 2005 +.Dd January 24, 2012 .Dt PAM_EXEC 8 .Os .Sh NAME @@ -59,6 +59,12 @@ variables: .Ev PAM_TTY , and .Ev PAM_USER . +.Pp +The program exit code should be one of the codes defined in +.Pa /usr/include/security/pam_constants.h +under section "XSSO 5.2". Authentication is successful if the return code is +.Er PAM_SUCCESS +(0), failed otherwise. .Sh SEE ALSO .Xr pam_get_item 3 , .Xr pam.conf 5 , diff --git a/lib/libpam/modules/pam_exec/pam_exec.c b/lib/libpam/modules/pam_exec/pam_exec.c index b7a870f..d497479 100644 --- a/lib/libpam/modules/pam_exec/pam_exec.c +++ b/lib/libpam/modules/pam_exec/pam_exec.c @@ -141,12 +141,7 @@ _pam_exec(pam_handle_t *pamh __unused, int flags __unused, openpam_log(PAM_LOG_ERROR, "unknown status 0x%x", status); return (PAM_SYSTEM_ERR); } - if (WEXITSTATUS(status) != 0) { - openpam_log(PAM_LOG_ERROR, "%s returned code %d", - argv[0], WEXITSTATUS(status)); - return (PAM_SYSTEM_ERR); - } - return (PAM_SUCCESS); + return (WEXITSTATUS(status)); } PAM_EXTERN int