From 4579d22cac62b140f99be77fe99c614e9d8d070f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dag-Erling=20Sm=C3=B8rgrav?= Date: Tue, 5 Mar 2002 13:49:56 +0000 Subject: [PATCH] Vendor import of OpenPAM Celandine. --- contrib/openpam/HISTORY | 25 +++++- contrib/openpam/INSTALL | 2 +- contrib/openpam/LICENSE | 2 +- contrib/openpam/MANIFEST | 4 + contrib/openpam/Makefile | 2 +- contrib/openpam/README | 2 +- contrib/openpam/RELNOTES | 9 +- contrib/openpam/bin/Makefile | 2 +- contrib/openpam/bin/su/Makefile | 2 +- contrib/openpam/bin/su/su.c | 2 +- contrib/openpam/doc/Makefile | 2 +- contrib/openpam/doc/man/Makefile | 2 +- contrib/openpam/doc/man/openpam_get_option.3 | 4 +- contrib/openpam/doc/man/openpam_log.3 | 4 +- contrib/openpam/doc/man/openpam_set_option.3 | 4 +- contrib/openpam/doc/man/openpam_ttyconv.3 | 4 +- contrib/openpam/doc/man/pam.3 | 4 +- contrib/openpam/doc/man/pam_acct_mgmt.3 | 4 +- contrib/openpam/doc/man/pam_authenticate.3 | 4 +- contrib/openpam/doc/man/pam_chauthtok.3 | 8 +- contrib/openpam/doc/man/pam_close_session.3 | 4 +- contrib/openpam/doc/man/pam_end.3 | 4 +- contrib/openpam/doc/man/pam_error.3 | 4 +- contrib/openpam/doc/man/pam_get_authtok.3 | 4 +- contrib/openpam/doc/man/pam_get_data.3 | 4 +- contrib/openpam/doc/man/pam_get_item.3 | 4 +- contrib/openpam/doc/man/pam_get_user.3 | 4 +- contrib/openpam/doc/man/pam_getenv.3 | 4 +- contrib/openpam/doc/man/pam_getenvlist.3 | 4 +- contrib/openpam/doc/man/pam_info.3 | 4 +- contrib/openpam/doc/man/pam_open_session.3 | 4 +- contrib/openpam/doc/man/pam_prompt.3 | 4 +- contrib/openpam/doc/man/pam_putenv.3 | 4 +- contrib/openpam/doc/man/pam_set_data.3 | 4 +- contrib/openpam/doc/man/pam_set_item.3 | 4 +- contrib/openpam/doc/man/pam_setcred.3 | 4 +- contrib/openpam/doc/man/pam_setenv.3 | 4 +- contrib/openpam/doc/man/pam_sm_acct_mgmt.3 | 4 +- contrib/openpam/doc/man/pam_sm_authenticate.3 | 4 +- contrib/openpam/doc/man/pam_sm_chauthtok.3 | 6 +- .../openpam/doc/man/pam_sm_close_session.3 | 4 +- contrib/openpam/doc/man/pam_sm_open_session.3 | 4 +- contrib/openpam/doc/man/pam_sm_setcred.3 | 4 +- contrib/openpam/doc/man/pam_start.3 | 4 +- contrib/openpam/doc/man/pam_strerror.3 | 4 +- contrib/openpam/doc/man/pam_verror.3 | 8 +- contrib/openpam/doc/man/pam_vinfo.3 | 8 +- contrib/openpam/doc/man/pam_vprompt.3 | 4 +- contrib/openpam/include/security/openpam.h | 7 +- contrib/openpam/include/security/pam_appl.h | 2 +- .../openpam/include/security/pam_constants.h | 2 +- .../openpam/include/security/pam_modules.h | 2 +- contrib/openpam/include/security/pam_types.h | 2 +- contrib/openpam/lib/Makefile | 4 +- contrib/openpam/lib/openpam_dispatch.c | 12 ++- contrib/openpam/lib/openpam_dynamic.c | 89 +++++++++++++++++++ contrib/openpam/lib/openpam_findenv.c | 2 +- contrib/openpam/lib/openpam_get_option.c | 2 +- contrib/openpam/lib/openpam_impl.h | 3 +- contrib/openpam/lib/openpam_load.c | 26 ++---- contrib/openpam/lib/openpam_log.c | 2 +- contrib/openpam/lib/openpam_set_option.c | 16 +++- contrib/openpam/lib/openpam_static.c | 2 +- contrib/openpam/lib/openpam_ttyconv.c | 2 +- contrib/openpam/lib/pam_acct_mgmt.c | 2 +- contrib/openpam/lib/pam_authenticate.c | 7 +- .../openpam/lib/pam_authenticate_secondary.c | 2 +- contrib/openpam/lib/pam_chauthtok.c | 15 +++- contrib/openpam/lib/pam_close_session.c | 2 +- contrib/openpam/lib/pam_end.c | 2 +- contrib/openpam/lib/pam_error.c | 2 +- contrib/openpam/lib/pam_get_authtok.c | 2 +- contrib/openpam/lib/pam_get_data.c | 2 +- contrib/openpam/lib/pam_get_item.c | 2 +- contrib/openpam/lib/pam_get_mapped_authtok.c | 2 +- contrib/openpam/lib/pam_get_mapped_username.c | 2 +- contrib/openpam/lib/pam_get_user.c | 2 +- contrib/openpam/lib/pam_getenv.c | 2 +- contrib/openpam/lib/pam_getenvlist.c | 2 +- contrib/openpam/lib/pam_info.c | 2 +- contrib/openpam/lib/pam_open_session.c | 2 +- contrib/openpam/lib/pam_prompt.c | 2 +- contrib/openpam/lib/pam_putenv.c | 2 +- contrib/openpam/lib/pam_set_data.c | 2 +- contrib/openpam/lib/pam_set_item.c | 2 +- contrib/openpam/lib/pam_set_mapped_authtok.c | 2 +- contrib/openpam/lib/pam_set_mapped_username.c | 2 +- contrib/openpam/lib/pam_setcred.c | 2 +- contrib/openpam/lib/pam_setenv.c | 2 +- contrib/openpam/lib/pam_sm_acct_mgmt.c | 2 +- contrib/openpam/lib/pam_sm_authenticate.c | 2 +- .../lib/pam_sm_authenticate_secondary.c | 2 +- contrib/openpam/lib/pam_sm_chauthtok.c | 3 +- contrib/openpam/lib/pam_sm_close_session.c | 2 +- .../openpam/lib/pam_sm_get_mapped_authtok.c | 2 +- .../openpam/lib/pam_sm_get_mapped_username.c | 2 +- contrib/openpam/lib/pam_sm_open_session.c | 2 +- .../openpam/lib/pam_sm_set_mapped_authtok.c | 2 +- .../openpam/lib/pam_sm_set_mapped_username.c | 2 +- contrib/openpam/lib/pam_sm_setcred.c | 2 +- contrib/openpam/lib/pam_start.c | 2 +- contrib/openpam/lib/pam_strerror.c | 2 +- contrib/openpam/lib/pam_verror.c | 4 +- contrib/openpam/lib/pam_vinfo.c | 4 +- contrib/openpam/lib/pam_vprompt.c | 2 +- contrib/openpam/misc/gendoc.pl | 4 +- contrib/openpam/modules/Makefile | 2 +- contrib/openpam/modules/pam_deny/Makefile | 2 +- contrib/openpam/modules/pam_deny/pam_deny.c | 2 +- contrib/openpam/modules/pam_dummy/Makefile | 2 +- contrib/openpam/modules/pam_dummy/pam_dummy.c | 2 +- contrib/openpam/modules/pam_permit/Makefile | 2 +- .../openpam/modules/pam_permit/pam_permit.c | 2 +- 113 files changed, 324 insertions(+), 188 deletions(-) create mode 100644 contrib/openpam/lib/openpam_dynamic.c diff --git a/contrib/openpam/HISTORY b/contrib/openpam/HISTORY index ed96088d26da..0cee583c61c4 100644 --- a/contrib/openpam/HISTORY +++ b/contrib/openpam/HISTORY @@ -1,3 +1,26 @@ +============================================================================ +OpenPAM Celandine 2002-03-05 + + - BUGFIX: PAM_TRY_AGAIN is a valid return value for pam_chauthtok(). + + - BUGFIX: Run passwd chain twice, first with the PAM_PRELIM_CHECK + flag set, then with the PAM_UPDATE_AUTHTOK flag set. + + - BUGFIX: Failure of a "sufficient" module should not terminate the + passwd chain if the PAM_PRELIM_CHECK flag is set. + + - BUGFIX: Clear PAM_AUTHTOK after running the service modules. + + - ENHANCE: Prevent applications from specifying the PAM_PRELIM_CHECK + or PAM_UPDATE_AUTHTOK flags themselves. + + - BUGFIX: openpam_set_option() did not support changing the value of + an existing option. + + - ENHANCE: Add support for module versioning. OpenPAM will prefer a + module with the same version number as the library itself to one + with no version number at all. + ============================================================================ OpenPAM Cantaloupe 2002-02-22 @@ -44,4 +67,4 @@ OpenPAM Calamite 2002-02-09 First (beta) release. ============================================================================ -$Id$ +$P4: //depot/projects/openpam/HISTORY#5 $ diff --git a/contrib/openpam/INSTALL b/contrib/openpam/INSTALL index 96d8067d0d49..f489767f0717 100644 --- a/contrib/openpam/INSTALL +++ b/contrib/openpam/INSTALL @@ -22,4 +22,4 @@ Change into the top-level OpenPAM directory and run 'make install'. -$Id$ +$P4: //depot/projects/openpam/INSTALL#2 $ diff --git a/contrib/openpam/LICENSE b/contrib/openpam/LICENSE index c8076d130b96..109372e015fe 100644 --- a/contrib/openpam/LICENSE +++ b/contrib/openpam/LICENSE @@ -31,4 +31,4 @@ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -$Id$ +$P4: //depot/projects/openpam/LICENSE#3 $ diff --git a/contrib/openpam/MANIFEST b/contrib/openpam/MANIFEST index 13bf8105412d..af31041a4169 100644 --- a/contrib/openpam/MANIFEST +++ b/contrib/openpam/MANIFEST @@ -1,3 +1,6 @@ +# +# $P4: //depot/projects/openpam/MANIFEST#5 $ +# HISTORY INSTALL LICENSE @@ -53,6 +56,7 @@ include/security/pam_modules.h include/security/pam_types.h lib/Makefile lib/openpam_dispatch.c +lib/openpam_dynamic.c lib/openpam_findenv.c lib/openpam_get_option.c lib/openpam_impl.h diff --git a/contrib/openpam/Makefile b/contrib/openpam/Makefile index 7fa0b8868894..8b97b3f7d491 100644 --- a/contrib/openpam/Makefile +++ b/contrib/openpam/Makefile @@ -31,7 +31,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $Id$ +# $P4: //depot/projects/openpam/Makefile#5 $ # SUBDIR = diff --git a/contrib/openpam/README b/contrib/openpam/README index f32c8dbfba0a..24923aaf1769 100644 --- a/contrib/openpam/README +++ b/contrib/openpam/README @@ -27,4 +27,4 @@ These are some of OpenPAM's features: future release.Please direct bug reports and inquiries to openpam@thinksec.com. -$Id$ +$P4: //depot/projects/openpam/README#2 $ diff --git a/contrib/openpam/RELNOTES b/contrib/openpam/RELNOTES index 2b5923285945..997951d1182d 100644 --- a/contrib/openpam/RELNOTES +++ b/contrib/openpam/RELNOTES @@ -1,6 +1,6 @@ - Release notes for OpenPAM Cantaloupe - ==================================== + Release notes for OpenPAM Celandine + =================================== This is a beta release. @@ -17,7 +17,4 @@ Known issues: - The documentation is still incomplete. -Oh, and the previous release's code name was misspelled - egg on my -face! It should have been "Calliopsis". - -$Id$ +$P4: //depot/projects/openpam/RELNOTES#5 $ diff --git a/contrib/openpam/bin/Makefile b/contrib/openpam/bin/Makefile index e12368de258d..25b352527a83 100644 --- a/contrib/openpam/bin/Makefile +++ b/contrib/openpam/bin/Makefile @@ -31,7 +31,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $Id$ +# $P4: //depot/projects/openpam/bin/Makefile#4 $ # SUBDIR = diff --git a/contrib/openpam/bin/su/Makefile b/contrib/openpam/bin/su/Makefile index 40533bb5c4d7..d97deb3639b6 100644 --- a/contrib/openpam/bin/su/Makefile +++ b/contrib/openpam/bin/su/Makefile @@ -31,7 +31,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $Id$ +# $P4: //depot/projects/openpam/bin/su/Makefile#3 $ # PROG = su diff --git a/contrib/openpam/bin/su/su.c b/contrib/openpam/bin/su/su.c index 27b6002b575c..4ee216a3aef0 100644 --- a/contrib/openpam/bin/su/su.c +++ b/contrib/openpam/bin/su/su.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/bin/su/su.c#4 $ */ #include diff --git a/contrib/openpam/doc/Makefile b/contrib/openpam/doc/Makefile index 2e2b09bd1fec..5fdacc4feaac 100644 --- a/contrib/openpam/doc/Makefile +++ b/contrib/openpam/doc/Makefile @@ -31,7 +31,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $Id$ +# $P4: //depot/projects/openpam/doc/Makefile#2 $ # SUBDIR = diff --git a/contrib/openpam/doc/man/Makefile b/contrib/openpam/doc/man/Makefile index 4003d2c845ca..345c4d7618cc 100644 --- a/contrib/openpam/doc/man/Makefile +++ b/contrib/openpam/doc/man/Makefile @@ -31,7 +31,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $Id$ +# $P4: //depot/projects/openpam/doc/man/Makefile#4 $ # MAN = diff --git a/contrib/openpam/doc/man/openpam_get_option.3 b/contrib/openpam/doc/man/openpam_get_option.3 index 2fd26b5d6688..62584f79659e 100644 --- a/contrib/openpam/doc/man/openpam_get_option.3 +++ b/contrib/openpam/doc/man/openpam_get_option.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/openpam_get_option.3#3 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt OPENPAM_GET_OPTION 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/openpam_log.3 b/contrib/openpam/doc/man/openpam_log.3 index c5f07e69a3da..e04b202fa241 100644 --- a/contrib/openpam/doc/man/openpam_log.3 +++ b/contrib/openpam/doc/man/openpam_log.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/openpam_log.3#4 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt OPENPAM_LOG 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/openpam_set_option.3 b/contrib/openpam/doc/man/openpam_set_option.3 index 5cb501bdeae9..dcc65f3ccbcf 100644 --- a/contrib/openpam/doc/man/openpam_set_option.3 +++ b/contrib/openpam/doc/man/openpam_set_option.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/openpam_set_option.3#3 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt OPENPAM_SET_OPTION 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/openpam_ttyconv.3 b/contrib/openpam/doc/man/openpam_ttyconv.3 index 275e0ad50a16..5a47ed74bcfc 100644 --- a/contrib/openpam/doc/man/openpam_ttyconv.3 +++ b/contrib/openpam/doc/man/openpam_ttyconv.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/openpam_ttyconv.3#4 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt OPENPAM_TTYCONV 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam.3 b/contrib/openpam/doc/man/pam.3 index 9d4580d56ce6..994c11a6a2c4 100644 --- a/contrib/openpam/doc/man/pam.3 +++ b/contrib/openpam/doc/man/pam.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam.3#10 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_acct_mgmt.3 b/contrib/openpam/doc/man/pam_acct_mgmt.3 index 3ec445a5217f..8776228f7024 100644 --- a/contrib/openpam/doc/man/pam_acct_mgmt.3 +++ b/contrib/openpam/doc/man/pam_acct_mgmt.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_acct_mgmt.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_ACCT_MGMT 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_authenticate.3 b/contrib/openpam/doc/man/pam_authenticate.3 index 137bf05acc4f..7a3cf82c2b93 100644 --- a/contrib/openpam/doc/man/pam_authenticate.3 +++ b/contrib/openpam/doc/man/pam_authenticate.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_authenticate.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_AUTHENTICATE 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_chauthtok.3 b/contrib/openpam/doc/man/pam_chauthtok.3 index 9566f01dc971..47d108031026 100644 --- a/contrib/openpam/doc/man/pam_chauthtok.3 +++ b/contrib/openpam/doc/man/pam_chauthtok.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_chauthtok.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_CHAUTHTOK 3 .Os .Sh NAME @@ -70,8 +70,12 @@ Conversation failure. Permission denied. .It Bq Er PAM_SERVICE_ERR Error in service module. +.It Bq Er PAM_SYMBOL_ERR +Invalid symbol. .It Bq Er PAM_SYSTEM_ERR System error. +.It Bq Er PAM_TRY_AGAIN +Try again. .El .Sh SEE ALSO .Xr pam 3 , diff --git a/contrib/openpam/doc/man/pam_close_session.3 b/contrib/openpam/doc/man/pam_close_session.3 index ea689b71d683..9b16588d4782 100644 --- a/contrib/openpam/doc/man/pam_close_session.3 +++ b/contrib/openpam/doc/man/pam_close_session.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_close_session.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_CLOSE_SESSION 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_end.3 b/contrib/openpam/doc/man/pam_end.3 index e500697b2878..687d0a1201fc 100644 --- a/contrib/openpam/doc/man/pam_end.3 +++ b/contrib/openpam/doc/man/pam_end.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_end.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_END 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_error.3 b/contrib/openpam/doc/man/pam_error.3 index 8b514aba6fc5..34eb2add3a73 100644 --- a/contrib/openpam/doc/man/pam_error.3 +++ b/contrib/openpam/doc/man/pam_error.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_error.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_ERROR 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_get_authtok.3 b/contrib/openpam/doc/man/pam_get_authtok.3 index e965173cadb1..c62a1a78f502 100644 --- a/contrib/openpam/doc/man/pam_get_authtok.3 +++ b/contrib/openpam/doc/man/pam_get_authtok.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_get_authtok.3#9 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_GET_AUTHTOK 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_get_data.3 b/contrib/openpam/doc/man/pam_get_data.3 index 779806584305..95d02c899451 100644 --- a/contrib/openpam/doc/man/pam_get_data.3 +++ b/contrib/openpam/doc/man/pam_get_data.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_get_data.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_GET_DATA 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_get_item.3 b/contrib/openpam/doc/man/pam_get_item.3 index 2ea942e0873d..ff37bb17563e 100644 --- a/contrib/openpam/doc/man/pam_get_item.3 +++ b/contrib/openpam/doc/man/pam_get_item.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_get_item.3#9 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_GET_ITEM 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_get_user.3 b/contrib/openpam/doc/man/pam_get_user.3 index fc2c54f83a47..21cfd69429b0 100644 --- a/contrib/openpam/doc/man/pam_get_user.3 +++ b/contrib/openpam/doc/man/pam_get_user.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_get_user.3#9 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_GET_USER 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_getenv.3 b/contrib/openpam/doc/man/pam_getenv.3 index 9d58af13460d..1e130b11a500 100644 --- a/contrib/openpam/doc/man/pam_getenv.3 +++ b/contrib/openpam/doc/man/pam_getenv.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_getenv.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_GETENV 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_getenvlist.3 b/contrib/openpam/doc/man/pam_getenvlist.3 index cafa10084769..f6e4470997b2 100644 --- a/contrib/openpam/doc/man/pam_getenvlist.3 +++ b/contrib/openpam/doc/man/pam_getenvlist.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_getenvlist.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_GETENVLIST 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_info.3 b/contrib/openpam/doc/man/pam_info.3 index 4ea37a7655e3..d38ebc8d4382 100644 --- a/contrib/openpam/doc/man/pam_info.3 +++ b/contrib/openpam/doc/man/pam_info.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_info.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_INFO 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_open_session.3 b/contrib/openpam/doc/man/pam_open_session.3 index 130ead24212d..6f9d27daa442 100644 --- a/contrib/openpam/doc/man/pam_open_session.3 +++ b/contrib/openpam/doc/man/pam_open_session.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_open_session.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_OPEN_SESSION 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_prompt.3 b/contrib/openpam/doc/man/pam_prompt.3 index 177af78f1e70..da819b65d5bd 100644 --- a/contrib/openpam/doc/man/pam_prompt.3 +++ b/contrib/openpam/doc/man/pam_prompt.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_prompt.3#9 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_PROMPT 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_putenv.3 b/contrib/openpam/doc/man/pam_putenv.3 index 33ba9924ce31..6940ae7af828 100644 --- a/contrib/openpam/doc/man/pam_putenv.3 +++ b/contrib/openpam/doc/man/pam_putenv.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_putenv.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_PUTENV 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_set_data.3 b/contrib/openpam/doc/man/pam_set_data.3 index 811b59a0e1c3..760e6acdcef6 100644 --- a/contrib/openpam/doc/man/pam_set_data.3 +++ b/contrib/openpam/doc/man/pam_set_data.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_set_data.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_SET_DATA 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_set_item.3 b/contrib/openpam/doc/man/pam_set_item.3 index b6b08e758f68..f73b19117fa4 100644 --- a/contrib/openpam/doc/man/pam_set_item.3 +++ b/contrib/openpam/doc/man/pam_set_item.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_set_item.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_SET_ITEM 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_setcred.3 b/contrib/openpam/doc/man/pam_setcred.3 index b41b62bb8322..d46ac6a28e51 100644 --- a/contrib/openpam/doc/man/pam_setcred.3 +++ b/contrib/openpam/doc/man/pam_setcred.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_setcred.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_SETCRED 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_setenv.3 b/contrib/openpam/doc/man/pam_setenv.3 index f2bbf2cf59c2..739f03eaef4d 100644 --- a/contrib/openpam/doc/man/pam_setenv.3 +++ b/contrib/openpam/doc/man/pam_setenv.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_setenv.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_SETENV 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_sm_acct_mgmt.3 b/contrib/openpam/doc/man/pam_sm_acct_mgmt.3 index 0dcaabab21a0..12b4fcfa5c40 100644 --- a/contrib/openpam/doc/man/pam_sm_acct_mgmt.3 +++ b/contrib/openpam/doc/man/pam_sm_acct_mgmt.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_sm_acct_mgmt.3#4 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_SM_ACCT_MGMT 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_sm_authenticate.3 b/contrib/openpam/doc/man/pam_sm_authenticate.3 index f97f49fe57de..d688c56027ed 100644 --- a/contrib/openpam/doc/man/pam_sm_authenticate.3 +++ b/contrib/openpam/doc/man/pam_sm_authenticate.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_sm_authenticate.3#4 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_SM_AUTHENTICATE 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_sm_chauthtok.3 b/contrib/openpam/doc/man/pam_sm_chauthtok.3 index fe580784ad49..3d9c8e3329b1 100644 --- a/contrib/openpam/doc/man/pam_sm_chauthtok.3 +++ b/contrib/openpam/doc/man/pam_sm_chauthtok.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_sm_chauthtok.3#4 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_SM_CHAUTHTOK 3 .Os .Sh NAME @@ -80,6 +80,8 @@ Permission denied. Error in service module. .It Bq Er PAM_SYSTEM_ERR System error. +.It Bq Er PAM_TRY_AGAIN +Try again. .El .Sh SEE ALSO .Xr pam 3 , diff --git a/contrib/openpam/doc/man/pam_sm_close_session.3 b/contrib/openpam/doc/man/pam_sm_close_session.3 index 4e12e390737d..38ef0ab886a2 100644 --- a/contrib/openpam/doc/man/pam_sm_close_session.3 +++ b/contrib/openpam/doc/man/pam_sm_close_session.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_sm_close_session.3#4 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_SM_CLOSE_SESSION 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_sm_open_session.3 b/contrib/openpam/doc/man/pam_sm_open_session.3 index 507ce5039ff7..809d287b2848 100644 --- a/contrib/openpam/doc/man/pam_sm_open_session.3 +++ b/contrib/openpam/doc/man/pam_sm_open_session.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_sm_open_session.3#4 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_SM_OPEN_SESSION 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_sm_setcred.3 b/contrib/openpam/doc/man/pam_sm_setcred.3 index 9cd4650aa8ab..8e537ebd38ef 100644 --- a/contrib/openpam/doc/man/pam_sm_setcred.3 +++ b/contrib/openpam/doc/man/pam_sm_setcred.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_sm_setcred.3#4 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_SM_SETCRED 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_start.3 b/contrib/openpam/doc/man/pam_start.3 index 74a230603708..de0938a2fdcc 100644 --- a/contrib/openpam/doc/man/pam_start.3 +++ b/contrib/openpam/doc/man/pam_start.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_start.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_START 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_strerror.3 b/contrib/openpam/doc/man/pam_strerror.3 index 74445fd5813b..5b872e4f6935 100644 --- a/contrib/openpam/doc/man/pam_strerror.3 +++ b/contrib/openpam/doc/man/pam_strerror.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_strerror.3#8 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_STRERROR 3 .Os .Sh NAME diff --git a/contrib/openpam/doc/man/pam_verror.3 b/contrib/openpam/doc/man/pam_verror.3 index 6b0b791f6c80..76e2dd387f3a 100644 --- a/contrib/openpam/doc/man/pam_verror.3 +++ b/contrib/openpam/doc/man/pam_verror.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_verror.3#6 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_VERROR 3 .Os .Sh NAME @@ -51,8 +51,7 @@ The function passes its arguments to .Xr pam_vprompt 3 with a -.Xr style 3 -argument of +style argument of .Dv PAM_ERROR_MSG , and discards the response. .Pp @@ -69,7 +68,6 @@ Conversation failure. System error. .El .Sh SEE ALSO -.Xr 3 , .Xr pam 3 , .Xr pam_error 3 , .Xr pam_strerror 3 , diff --git a/contrib/openpam/doc/man/pam_vinfo.3 b/contrib/openpam/doc/man/pam_vinfo.3 index 7a5a61db4123..1725bfcd2290 100644 --- a/contrib/openpam/doc/man/pam_vinfo.3 +++ b/contrib/openpam/doc/man/pam_vinfo.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_vinfo.3#6 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_VINFO 3 .Os .Sh NAME @@ -51,8 +51,7 @@ The function passes its arguments to .Xr pam_vprompt 3 with a -.Xr style 3 -argument of +style argument of .Dv PAM_TEXT_INFO , and discards the response. .Pp @@ -69,7 +68,6 @@ Conversation failure. System error. .El .Sh SEE ALSO -.Xr 3 , .Xr pam 3 , .Xr pam_info 3 , .Xr pam_strerror 3 , diff --git a/contrib/openpam/doc/man/pam_vprompt.3 b/contrib/openpam/doc/man/pam_vprompt.3 index 1f6e59a5e92e..8000c4651069 100644 --- a/contrib/openpam/doc/man/pam_vprompt.3 +++ b/contrib/openpam/doc/man/pam_vprompt.3 @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id$ +.\" $P4: //depot/projects/openpam/doc/man/pam_vprompt.3#6 $ .\" -.Dd February 22, 2002 +.Dd March 5, 2002 .Dt PAM_VPROMPT 3 .Os .Sh NAME diff --git a/contrib/openpam/include/security/openpam.h b/contrib/openpam/include/security/openpam.h index 8aaaa30a63bd..7391e74eb5e4 100644 --- a/contrib/openpam/include/security/openpam.h +++ b/contrib/openpam/include/security/openpam.h @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/include/security/openpam.h#11 $ */ #ifndef _SECURITY_OPENPAM_H_INCLUDED @@ -177,7 +177,7 @@ typedef int (*pam_func_t)(struct pam_handle *, int, int, const char **); */ typedef struct pam_module pam_module_t; struct pam_module { - const char *path; + char *path; pam_func_t func[PAM_NUM_PRIMITIVES]; void *dlh; int refcount; @@ -201,7 +201,8 @@ struct pam_module { #define OPENPAM_STATIC_MODULES #define PAM_EXTERN static #define PAM_MODULE_ENTRY(name) \ -static struct pam_module _pam_module = { name PAM_SOEXT, { \ +static char _pam_name[] = name PAM_SOEXT; \ +static struct pam_module _pam_module = { _pam_name, { \ pam_sm_authenticate, pam_sm_setcred, pam_sm_acct_mgmt, \ pam_sm_open_session, pam_sm_close_session, pam_sm_chauthtok }, \ NULL, 0, NULL, NULL }; \ diff --git a/contrib/openpam/include/security/pam_appl.h b/contrib/openpam/include/security/pam_appl.h index 7fcc068921dc..719ebfafba8f 100644 --- a/contrib/openpam/include/security/pam_appl.h +++ b/contrib/openpam/include/security/pam_appl.h @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/include/security/pam_appl.h#8 $ */ #ifndef _PAM_APPL_H_INCLUDED diff --git a/contrib/openpam/include/security/pam_constants.h b/contrib/openpam/include/security/pam_constants.h index 568d42c809f4..3b149548e95e 100644 --- a/contrib/openpam/include/security/pam_constants.h +++ b/contrib/openpam/include/security/pam_constants.h @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/include/security/pam_constants.h#10 $ */ #ifndef _PAM_CONSTANTS_H_INCLUDED diff --git a/contrib/openpam/include/security/pam_modules.h b/contrib/openpam/include/security/pam_modules.h index 35c8eb96766c..0a1cbde185d4 100644 --- a/contrib/openpam/include/security/pam_modules.h +++ b/contrib/openpam/include/security/pam_modules.h @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/include/security/pam_modules.h#5 $ */ #ifndef _PAM_MODULES_H_INCLUDED diff --git a/contrib/openpam/include/security/pam_types.h b/contrib/openpam/include/security/pam_types.h index d8ba80b04aed..961b361bf3c5 100644 --- a/contrib/openpam/include/security/pam_types.h +++ b/contrib/openpam/include/security/pam_types.h @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/include/security/pam_types.h#4 $ */ #ifndef _PAM_TYPES_H_INCLUDED diff --git a/contrib/openpam/lib/Makefile b/contrib/openpam/lib/Makefile index 01817c11fbb7..a4e152c5f162 100644 --- a/contrib/openpam/lib/Makefile +++ b/contrib/openpam/lib/Makefile @@ -31,7 +31,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $Id$ +# $P4: //depot/projects/openpam/lib/Makefile#11 $ # LIB = pam @@ -41,9 +41,11 @@ SHLIB_MINOR = 0 WARNS ?= 4 NO_WERROR = yes CFLAGS += -I${.CURDIR}/../include +CFLAGS += -DLIB_MAJ=${SHLIB_MAJOR} SRCS = SRCS += openpam_dispatch.c +SRCS += openpam_dynamic.c SRCS += openpam_findenv.c SRCS += openpam_get_option.c SRCS += openpam_load.c diff --git a/contrib/openpam/lib/openpam_dispatch.c b/contrib/openpam/lib/openpam_dispatch.c index b663d5ab9332..344ffd055c02 100644 --- a/contrib/openpam/lib/openpam_dispatch.c +++ b/contrib/openpam/lib/openpam_dispatch.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/openpam_dispatch.c#13 $ */ #include @@ -111,7 +111,8 @@ openpam_dispatch(pam_handle_t *pamh, continue; if (r == PAM_SUCCESS) { /* - * For pam_setcred(), treat "sufficient" as + * For pam_setcred() and pam_chauthtok() with the + * PAM_PRELIM_CHECK flag, treat "sufficient" as * "optional". * * Note that Solaris libpam does not terminate @@ -119,7 +120,9 @@ openpam_dispatch(pam_handle_t *pamh, * previously failed. I'm not sure why. */ if (chain->flag == PAM_SUFFICIENT && - primitive != PAM_SM_SETCRED) + primitive != PAM_SM_SETCRED && + (primitive != PAM_SM_CHAUTHTOK || + !(flags & PAM_PRELIM_CHECK))) break; continue; } @@ -203,7 +206,8 @@ _openpam_check_error_code(int primitive, int r) r == PAM_AUTHTOK_ERR || r == PAM_AUTHTOK_RECOVERY_ERR || r == PAM_AUTHTOK_LOCK_BUSY || - r == PAM_AUTHTOK_DISABLE_AGING) + r == PAM_AUTHTOK_DISABLE_AGING || + r == PAM_TRY_AGAIN) return; break; } diff --git a/contrib/openpam/lib/openpam_dynamic.c b/contrib/openpam/lib/openpam_dynamic.c new file mode 100644 index 000000000000..a4f28679e915 --- /dev/null +++ b/contrib/openpam/lib/openpam_dynamic.c @@ -0,0 +1,89 @@ +/*- + * Copyright (c) 2002 Networks Associates Technologies, Inc. + * All rights reserved. + * + * This software was developed for the FreeBSD Project by ThinkSec AS and + * NAI Labs, the Security Research Division of Network Associates, Inc. + * under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the + * DARPA CHATS research program. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. The name of the author may not be used to endorse or promote + * products derived from this software without specific prior written + * permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $P4: //depot/projects/openpam/lib/openpam_dynamic.c#1 $ + */ + +#include +#include +#include +#include + +#include + +#include "openpam_impl.h" + +/* + * OpenPAM internal + * + * Locate a dynamically linked module + */ + +pam_module_t * +openpam_dynamic(const char *path) +{ + pam_module_t *module; + char *vpath; + void *dlh; + int i; + + if ((module = calloc(1, sizeof *module)) == NULL) + goto buf_err; + + /* try versioned module first, then unversioned module */ + if (asprintf(&vpath, "%s.%d", path, LIB_MAJ) == -1) + goto buf_err; + if ((dlh = dlopen(vpath, RTLD_NOW)) == NULL) { + openpam_log(PAM_LOG_ERROR, "dlopen(): %s", dlerror()); + *strrchr(vpath, '.') = '\0'; + if ((dlh = dlopen(vpath, RTLD_NOW)) == NULL) { + openpam_log(PAM_LOG_ERROR, "dlopen(): %s", dlerror()); + free(module); + return (NULL); + } + } + module->path = vpath; + module->dlh = dlh; + for (i = 0; i < PAM_NUM_PRIMITIVES; ++i) + module->func[i] = dlsym(dlh, _pam_sm_func_name[i]); + return (module); + buf_err: + openpam_log(PAM_LOG_ERROR, "%m"); + dlclose(dlh); + free(module); + return (NULL); +} + +/* + * NOPARSE + */ diff --git a/contrib/openpam/lib/openpam_findenv.c b/contrib/openpam/lib/openpam_findenv.c index a9fb3337968d..bfa8e9187c0d 100644 --- a/contrib/openpam/lib/openpam_findenv.c +++ b/contrib/openpam/lib/openpam_findenv.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/openpam_findenv.c#6 $ */ #include diff --git a/contrib/openpam/lib/openpam_get_option.c b/contrib/openpam/lib/openpam_get_option.c index c4eeab20e22f..2b8817f97640 100644 --- a/contrib/openpam/lib/openpam_get_option.c +++ b/contrib/openpam/lib/openpam_get_option.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/openpam_get_option.c#2 $ */ #include diff --git a/contrib/openpam/lib/openpam_impl.h b/contrib/openpam/lib/openpam_impl.h index 6978f544f308..e6898a3ca830 100644 --- a/contrib/openpam/lib/openpam_impl.h +++ b/contrib/openpam/lib/openpam_impl.h @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/openpam_impl.h#10 $ */ #ifndef _OPENPAM_IMPL_H_INCLUDED @@ -104,5 +104,6 @@ void openpam_clear_chains(pam_handle_t *); #ifdef OPENPAM_STATIC_MODULES pam_module_t *openpam_static(const char *); #endif +pam_module_t *openpam_dynamic(const char *); #endif diff --git a/contrib/openpam/lib/openpam_load.c b/contrib/openpam/lib/openpam_load.c index 057e38fef70f..68b7788fa406 100644 --- a/contrib/openpam/lib/openpam_load.c +++ b/contrib/openpam/lib/openpam_load.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/openpam_load.c#10 $ */ #include @@ -54,16 +54,14 @@ const char *_pam_sm_func_name[PAM_NUM_PRIMITIVES] = { static pam_module_t *modules; /* - * Load a dynamic module, or locate a static one. Keep a list of - * previously found modules to speed up the process. + * Locate a matching dynamic or static module. Keep a list of previously + * found modules to speed up the process. */ static pam_module_t * openpam_load_module(const char *path) { pam_module_t *module; - void *dlh; - int i; /* check cache first */ for (module = modules; module != NULL; module = module->next) @@ -71,17 +69,7 @@ openpam_load_module(const char *path) goto found; /* nope; try to load */ - if ((dlh = dlopen(path, RTLD_NOW)) == NULL) { - openpam_log(PAM_LOG_ERROR, "dlopen(): %s", dlerror()); - } else { - if ((module = calloc(1, sizeof *module)) == NULL) - goto buf_err; - if ((module->path = strdup(path)) == NULL) - goto buf_err; - module->dlh = dlh; - for (i = 0; i < PAM_NUM_PRIMITIVES; ++i) - module->func[i] = dlsym(dlh, _pam_sm_func_name[i]); - } + module = openpam_dynamic(path); openpam_log(PAM_LOG_DEBUG, "%s dynamic %s", (module == NULL) ? "no" : "using", path); @@ -101,11 +89,6 @@ openpam_load_module(const char *path) found: ++module->refcount; return (module); - buf_err: - openpam_log(PAM_LOG_ERROR, "malloc(): %m"); - dlclose(dlh); - free(module); - return (NULL); } @@ -136,6 +119,7 @@ openpam_release_module(pam_module_t *module) module->prev->next = module->next; if (module->next != NULL) module->next->prev = module->prev; + free(module->path); free(module); } diff --git a/contrib/openpam/lib/openpam_log.c b/contrib/openpam/lib/openpam_log.c index 493ea330ce2c..65b2dc0481d1 100644 --- a/contrib/openpam/lib/openpam_log.c +++ b/contrib/openpam/lib/openpam_log.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/openpam_log.c#9 $ */ #include diff --git a/contrib/openpam/lib/openpam_set_option.c b/contrib/openpam/lib/openpam_set_option.c index 4e2033bf9f93..76ddd875e5d0 100644 --- a/contrib/openpam/lib/openpam_set_option.c +++ b/contrib/openpam/lib/openpam_set_option.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/openpam_set_option.c#3 $ */ #include @@ -72,10 +72,20 @@ openpam_set_option(pam_handle_t *pamh, (cur->optv[i][len] == '\0' || cur->optv[i][len] == '=')) break; } + if (value == NULL) { + /* remove */ + if (i == cur->optc) + return (PAM_SUCCESS); + for (free(cur->optv[i]); i < cur->optc; ++i) + cur->optv[i] = cur->optv[i + 1]; + cur->optv[i] = NULL; + return (PAM_SUCCESS); + } if ((opt = malloc(len + strlen(value) + 2)) == NULL) return (PAM_BUF_ERR); sprintf(opt, "%.*s=%s", (int)len, option, value); if (i == cur->optc) { + /* add */ optv = realloc(cur->optv, sizeof(char *) * (cur->optc + 2)); if (optv == NULL) { free(opt); @@ -85,6 +95,10 @@ openpam_set_option(pam_handle_t *pamh, optv[i + 1] = NULL; cur->optv = optv; ++cur->optc; + } else { + /* replace */ + free(cur->optv[i]); + cur->optv[i] = opt; } return (PAM_SUCCESS); } diff --git a/contrib/openpam/lib/openpam_static.c b/contrib/openpam/lib/openpam_static.c index 907de2ff6fdf..dea5621cebab 100644 --- a/contrib/openpam/lib/openpam_static.c +++ b/contrib/openpam/lib/openpam_static.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/openpam_static.c#3 $ */ #include diff --git a/contrib/openpam/lib/openpam_ttyconv.c b/contrib/openpam/lib/openpam_ttyconv.c index 261c2d24639f..b3b40415c567 100644 --- a/contrib/openpam/lib/openpam_ttyconv.c +++ b/contrib/openpam/lib/openpam_ttyconv.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/openpam_ttyconv.c#8 $ */ #include diff --git a/contrib/openpam/lib/pam_acct_mgmt.c b/contrib/openpam/lib/pam_acct_mgmt.c index 3187e8d4eb4f..39b58851fb11 100644 --- a/contrib/openpam/lib/pam_acct_mgmt.c +++ b/contrib/openpam/lib/pam_acct_mgmt.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_acct_mgmt.c#6 $ */ #include diff --git a/contrib/openpam/lib/pam_authenticate.c b/contrib/openpam/lib/pam_authenticate.c index 3524f4eac2ad..86ab0e3d7e28 100644 --- a/contrib/openpam/lib/pam_authenticate.c +++ b/contrib/openpam/lib/pam_authenticate.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_authenticate.c#7 $ */ #include @@ -51,8 +51,11 @@ int pam_authenticate(pam_handle_t *pamh, int flags) { + int pam_err; - return (openpam_dispatch(pamh, PAM_SM_AUTHENTICATE, flags)); + pam_err = openpam_dispatch(pamh, PAM_SM_AUTHENTICATE, flags); + pam_set_item(pamh, PAM_AUTHTOK, NULL); + return (pam_err); } /* diff --git a/contrib/openpam/lib/pam_authenticate_secondary.c b/contrib/openpam/lib/pam_authenticate_secondary.c index e1380d24ebc9..53aba677d222 100644 --- a/contrib/openpam/lib/pam_authenticate_secondary.c +++ b/contrib/openpam/lib/pam_authenticate_secondary.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_authenticate_secondary.c#4 $ */ #include diff --git a/contrib/openpam/lib/pam_chauthtok.c b/contrib/openpam/lib/pam_chauthtok.c index 3248febbf45b..0d4189b8c378 100644 --- a/contrib/openpam/lib/pam_chauthtok.c +++ b/contrib/openpam/lib/pam_chauthtok.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_chauthtok.c#8 $ */ #include @@ -51,8 +51,18 @@ int pam_chauthtok(pam_handle_t *pamh, int flags) { + int pam_err; - return (openpam_dispatch(pamh, PAM_SM_CHAUTHTOK, flags)); + if (flags & PAM_PRELIM_CHECK || flags & PAM_UPDATE_AUTHTOK) + return (PAM_SYMBOL_ERR); + pam_err = openpam_dispatch(pamh, PAM_SM_CHAUTHTOK, + flags | PAM_PRELIM_CHECK); + if (pam_err == PAM_SUCCESS) + pam_err = openpam_dispatch(pamh, PAM_SM_CHAUTHTOK, + flags | PAM_UPDATE_AUTHTOK); + pam_set_item(pamh, PAM_OLDAUTHTOK, NULL); + pam_set_item(pamh, PAM_AUTHTOK, NULL); + return (pam_err); } /* @@ -61,4 +71,5 @@ pam_chauthtok(pam_handle_t *pamh, * =openpam_dispatch * =pam_sm_chauthtok * !PAM_IGNORE + * PAM_SYMBOL_ERR */ diff --git a/contrib/openpam/lib/pam_close_session.c b/contrib/openpam/lib/pam_close_session.c index 5d292f2d7a1e..e0d330b6f779 100644 --- a/contrib/openpam/lib/pam_close_session.c +++ b/contrib/openpam/lib/pam_close_session.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_close_session.c#6 $ */ #include diff --git a/contrib/openpam/lib/pam_end.c b/contrib/openpam/lib/pam_end.c index b7c170f32a38..77f94c33de74 100644 --- a/contrib/openpam/lib/pam_end.c +++ b/contrib/openpam/lib/pam_end.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_end.c#7 $ */ #include diff --git a/contrib/openpam/lib/pam_error.c b/contrib/openpam/lib/pam_error.c index cbee427302ad..1b9aa1cbdff2 100644 --- a/contrib/openpam/lib/pam_error.c +++ b/contrib/openpam/lib/pam_error.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_error.c#5 $ */ #include diff --git a/contrib/openpam/lib/pam_get_authtok.c b/contrib/openpam/lib/pam_get_authtok.c index c2a933f9d47d..c26d0dec5d05 100644 --- a/contrib/openpam/lib/pam_get_authtok.c +++ b/contrib/openpam/lib/pam_get_authtok.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_get_authtok.c#11 $ */ #include diff --git a/contrib/openpam/lib/pam_get_data.c b/contrib/openpam/lib/pam_get_data.c index b1f8ab370c13..c5c428118391 100644 --- a/contrib/openpam/lib/pam_get_data.c +++ b/contrib/openpam/lib/pam_get_data.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_get_data.c#6 $ */ #include diff --git a/contrib/openpam/lib/pam_get_item.c b/contrib/openpam/lib/pam_get_item.c index 5767652adda3..a6d00665b540 100644 --- a/contrib/openpam/lib/pam_get_item.c +++ b/contrib/openpam/lib/pam_get_item.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_get_item.c#9 $ */ #include diff --git a/contrib/openpam/lib/pam_get_mapped_authtok.c b/contrib/openpam/lib/pam_get_mapped_authtok.c index 5d6b0b08ad6b..63cbdc682e6f 100644 --- a/contrib/openpam/lib/pam_get_mapped_authtok.c +++ b/contrib/openpam/lib/pam_get_mapped_authtok.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_get_mapped_authtok.c#4 $ */ #include diff --git a/contrib/openpam/lib/pam_get_mapped_username.c b/contrib/openpam/lib/pam_get_mapped_username.c index 038193feb1ee..8239ed7e6b6c 100644 --- a/contrib/openpam/lib/pam_get_mapped_username.c +++ b/contrib/openpam/lib/pam_get_mapped_username.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_get_mapped_username.c#4 $ */ #include diff --git a/contrib/openpam/lib/pam_get_user.c b/contrib/openpam/lib/pam_get_user.c index e8fe0bc9841d..2f3da5954783 100644 --- a/contrib/openpam/lib/pam_get_user.c +++ b/contrib/openpam/lib/pam_get_user.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_get_user.c#9 $ */ #include diff --git a/contrib/openpam/lib/pam_getenv.c b/contrib/openpam/lib/pam_getenv.c index 05deb541f418..0036e2bbf96d 100644 --- a/contrib/openpam/lib/pam_getenv.c +++ b/contrib/openpam/lib/pam_getenv.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_getenv.c#5 $ */ #include diff --git a/contrib/openpam/lib/pam_getenvlist.c b/contrib/openpam/lib/pam_getenvlist.c index fd21faa0ee9d..27e58ea1d8b2 100644 --- a/contrib/openpam/lib/pam_getenvlist.c +++ b/contrib/openpam/lib/pam_getenvlist.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_getenvlist.c#7 $ */ #include diff --git a/contrib/openpam/lib/pam_info.c b/contrib/openpam/lib/pam_info.c index 87523914a257..070d7220449e 100644 --- a/contrib/openpam/lib/pam_info.c +++ b/contrib/openpam/lib/pam_info.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_info.c#5 $ */ #include diff --git a/contrib/openpam/lib/pam_open_session.c b/contrib/openpam/lib/pam_open_session.c index 0f8f981800ab..f9c4f21cc9ad 100644 --- a/contrib/openpam/lib/pam_open_session.c +++ b/contrib/openpam/lib/pam_open_session.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_open_session.c#6 $ */ #include diff --git a/contrib/openpam/lib/pam_prompt.c b/contrib/openpam/lib/pam_prompt.c index 5dbde6c95c76..f114299efcda 100644 --- a/contrib/openpam/lib/pam_prompt.c +++ b/contrib/openpam/lib/pam_prompt.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_prompt.c#5 $ */ #include diff --git a/contrib/openpam/lib/pam_putenv.c b/contrib/openpam/lib/pam_putenv.c index e1b497efc3b6..438203ac4274 100644 --- a/contrib/openpam/lib/pam_putenv.c +++ b/contrib/openpam/lib/pam_putenv.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_putenv.c#5 $ */ #include diff --git a/contrib/openpam/lib/pam_set_data.c b/contrib/openpam/lib/pam_set_data.c index e04de73182bf..0b060ab73e56 100644 --- a/contrib/openpam/lib/pam_set_data.c +++ b/contrib/openpam/lib/pam_set_data.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_set_data.c#7 $ */ #include diff --git a/contrib/openpam/lib/pam_set_item.c b/contrib/openpam/lib/pam_set_item.c index 038971dec40e..7e8a986a343c 100644 --- a/contrib/openpam/lib/pam_set_item.c +++ b/contrib/openpam/lib/pam_set_item.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_set_item.c#11 $ */ #include diff --git a/contrib/openpam/lib/pam_set_mapped_authtok.c b/contrib/openpam/lib/pam_set_mapped_authtok.c index 36383e6e21ae..e69641fc396e 100644 --- a/contrib/openpam/lib/pam_set_mapped_authtok.c +++ b/contrib/openpam/lib/pam_set_mapped_authtok.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_set_mapped_authtok.c#4 $ */ #include diff --git a/contrib/openpam/lib/pam_set_mapped_username.c b/contrib/openpam/lib/pam_set_mapped_username.c index 6ca011f29acf..3d8dc111cbc4 100644 --- a/contrib/openpam/lib/pam_set_mapped_username.c +++ b/contrib/openpam/lib/pam_set_mapped_username.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_set_mapped_username.c#4 $ */ #include diff --git a/contrib/openpam/lib/pam_setcred.c b/contrib/openpam/lib/pam_setcred.c index 1a7849874ef0..dd53bf93e31b 100644 --- a/contrib/openpam/lib/pam_setcred.c +++ b/contrib/openpam/lib/pam_setcred.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_setcred.c#6 $ */ #include diff --git a/contrib/openpam/lib/pam_setenv.c b/contrib/openpam/lib/pam_setenv.c index 155835e0a1b5..aeb6daa005a3 100644 --- a/contrib/openpam/lib/pam_setenv.c +++ b/contrib/openpam/lib/pam_setenv.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_setenv.c#5 $ */ #include diff --git a/contrib/openpam/lib/pam_sm_acct_mgmt.c b/contrib/openpam/lib/pam_sm_acct_mgmt.c index 692d52e10a93..f7e862587a52 100644 --- a/contrib/openpam/lib/pam_sm_acct_mgmt.c +++ b/contrib/openpam/lib/pam_sm_acct_mgmt.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_sm_acct_mgmt.c#2 $ */ #include diff --git a/contrib/openpam/lib/pam_sm_authenticate.c b/contrib/openpam/lib/pam_sm_authenticate.c index 17c8a7638dc7..df3ab9341de5 100644 --- a/contrib/openpam/lib/pam_sm_authenticate.c +++ b/contrib/openpam/lib/pam_sm_authenticate.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_sm_authenticate.c#2 $ */ #include diff --git a/contrib/openpam/lib/pam_sm_authenticate_secondary.c b/contrib/openpam/lib/pam_sm_authenticate_secondary.c index ec56f47b2771..d66d07a94063 100644 --- a/contrib/openpam/lib/pam_sm_authenticate_secondary.c +++ b/contrib/openpam/lib/pam_sm_authenticate_secondary.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_sm_authenticate_secondary.c#2 $ */ #include diff --git a/contrib/openpam/lib/pam_sm_chauthtok.c b/contrib/openpam/lib/pam_sm_chauthtok.c index 2edf0d7e043b..7a19445ee430 100644 --- a/contrib/openpam/lib/pam_sm_chauthtok.c +++ b/contrib/openpam/lib/pam_sm_chauthtok.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_sm_chauthtok.c#3 $ */ #include @@ -74,6 +74,7 @@ pam_sm_chauthtok(pam_handle_t *pamh, * PAM_AUTHTOK_RECOVERY_ERR * PAM_AUTHTOK_LOCK_BUSY * PAM_AUTHTOK_DISABLE_AGING + * PAM_TRY_AGAIN */ /** diff --git a/contrib/openpam/lib/pam_sm_close_session.c b/contrib/openpam/lib/pam_sm_close_session.c index 7ff7a83a8efc..ff0ea5dfb944 100644 --- a/contrib/openpam/lib/pam_sm_close_session.c +++ b/contrib/openpam/lib/pam_sm_close_session.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_sm_close_session.c#2 $ */ #include diff --git a/contrib/openpam/lib/pam_sm_get_mapped_authtok.c b/contrib/openpam/lib/pam_sm_get_mapped_authtok.c index c6a911210758..f4535d6d3b33 100644 --- a/contrib/openpam/lib/pam_sm_get_mapped_authtok.c +++ b/contrib/openpam/lib/pam_sm_get_mapped_authtok.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_sm_get_mapped_authtok.c#2 $ */ #include diff --git a/contrib/openpam/lib/pam_sm_get_mapped_username.c b/contrib/openpam/lib/pam_sm_get_mapped_username.c index 0aed26c14c57..abbdafccd0bc 100644 --- a/contrib/openpam/lib/pam_sm_get_mapped_username.c +++ b/contrib/openpam/lib/pam_sm_get_mapped_username.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_sm_get_mapped_username.c#2 $ */ #include diff --git a/contrib/openpam/lib/pam_sm_open_session.c b/contrib/openpam/lib/pam_sm_open_session.c index 7ed7401ca955..f13cea02c045 100644 --- a/contrib/openpam/lib/pam_sm_open_session.c +++ b/contrib/openpam/lib/pam_sm_open_session.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_sm_open_session.c#2 $ */ #include diff --git a/contrib/openpam/lib/pam_sm_set_mapped_authtok.c b/contrib/openpam/lib/pam_sm_set_mapped_authtok.c index 35cecaabf950..e0b6d82c9db5 100644 --- a/contrib/openpam/lib/pam_sm_set_mapped_authtok.c +++ b/contrib/openpam/lib/pam_sm_set_mapped_authtok.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_sm_set_mapped_authtok.c#2 $ */ #include diff --git a/contrib/openpam/lib/pam_sm_set_mapped_username.c b/contrib/openpam/lib/pam_sm_set_mapped_username.c index 1911fd80161c..f2f6847e4b43 100644 --- a/contrib/openpam/lib/pam_sm_set_mapped_username.c +++ b/contrib/openpam/lib/pam_sm_set_mapped_username.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_sm_set_mapped_username.c#2 $ */ #include diff --git a/contrib/openpam/lib/pam_sm_setcred.c b/contrib/openpam/lib/pam_sm_setcred.c index 20777ad0f7e0..cab1164a050f 100644 --- a/contrib/openpam/lib/pam_sm_setcred.c +++ b/contrib/openpam/lib/pam_sm_setcred.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_sm_setcred.c#2 $ */ #include diff --git a/contrib/openpam/lib/pam_start.c b/contrib/openpam/lib/pam_start.c index 15782581424c..485c30e01c82 100644 --- a/contrib/openpam/lib/pam_start.c +++ b/contrib/openpam/lib/pam_start.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_start.c#11 $ */ #include diff --git a/contrib/openpam/lib/pam_strerror.c b/contrib/openpam/lib/pam_strerror.c index 2503e4f9814a..c938d426c37e 100644 --- a/contrib/openpam/lib/pam_strerror.c +++ b/contrib/openpam/lib/pam_strerror.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_strerror.c#8 $ */ #include diff --git a/contrib/openpam/lib/pam_verror.c b/contrib/openpam/lib/pam_verror.c index 2d8e2ca421da..e9ddec6577c3 100644 --- a/contrib/openpam/lib/pam_verror.c +++ b/contrib/openpam/lib/pam_verror.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_verror.c#4 $ */ #include @@ -70,7 +70,7 @@ pam_verror(pam_handle_t *pamh, /** * The =pam_verror function passes its arguments to =pam_vprompt with a - * =style argument of =PAM_ERROR_MSG, and discards the response. + * style argument of =PAM_ERROR_MSG, and discards the response. * * >pam_error * >pam_vinfo diff --git a/contrib/openpam/lib/pam_vinfo.c b/contrib/openpam/lib/pam_vinfo.c index 6cd418859c42..df837b097746 100644 --- a/contrib/openpam/lib/pam_vinfo.c +++ b/contrib/openpam/lib/pam_vinfo.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_vinfo.c#4 $ */ #include @@ -70,7 +70,7 @@ pam_vinfo(pam_handle_t *pamh, /** * The =pam_vinfo function passes its arguments to =pam_vprompt with a - * =style argument of =PAM_TEXT_INFO, and discards the response. + * style argument of =PAM_TEXT_INFO, and discards the response. * * >pam_info * >pam_verror diff --git a/contrib/openpam/lib/pam_vprompt.c b/contrib/openpam/lib/pam_vprompt.c index e5eba2eced8c..e673c3f5961d 100644 --- a/contrib/openpam/lib/pam_vprompt.c +++ b/contrib/openpam/lib/pam_vprompt.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/openpam/lib/pam_vprompt.c#4 $ */ #include diff --git a/contrib/openpam/misc/gendoc.pl b/contrib/openpam/misc/gendoc.pl index 99440c8b3df0..9b32cdfdcf69 100644 --- a/contrib/openpam/misc/gendoc.pl +++ b/contrib/openpam/misc/gendoc.pl @@ -32,7 +32,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $Id$ +# $P4: //depot/projects/openpam/misc/gendoc.pl#9 $ # use strict; @@ -104,7 +104,7 @@ sub parse_source($) { if (!defined($COPYRIGHT) && $source =~ m,^(/\*-\n.*?)\s*\*/,s) { $COPYRIGHT = $1; $COPYRIGHT =~ s,^.\*,.\\\",gm; - $COPYRIGHT =~ s,(\$Id).*?\$,$1\$,; + $COPYRIGHT =~ s,(\$(?:)P4).*?\$,$1\$,; $COPYRIGHT .= "\n.\\\""; } $func = $fn; diff --git a/contrib/openpam/modules/Makefile b/contrib/openpam/modules/Makefile index 006a229df4c3..540a15ef3a19 100644 --- a/contrib/openpam/modules/Makefile +++ b/contrib/openpam/modules/Makefile @@ -31,7 +31,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $Id$ +# $P4: //depot/projects/openpam/modules/Makefile#4 $ # SUBDIR = diff --git a/contrib/openpam/modules/pam_deny/Makefile b/contrib/openpam/modules/pam_deny/Makefile index acbd994659da..3a7c862ce1f6 100644 --- a/contrib/openpam/modules/pam_deny/Makefile +++ b/contrib/openpam/modules/pam_deny/Makefile @@ -31,7 +31,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $Id$ +# $P4: //depot/projects/openpam/modules/pam_deny/Makefile#3 $ # LIB = pam_deny diff --git a/contrib/openpam/modules/pam_deny/pam_deny.c b/contrib/openpam/modules/pam_deny/pam_deny.c index 2a219de14411..c05cbfc93dd2 100644 --- a/contrib/openpam/modules/pam_deny/pam_deny.c +++ b/contrib/openpam/modules/pam_deny/pam_deny.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ + * $P4: //depot/projects/openpam/modules/pam_deny/pam_deny.c#5 $ */ #include diff --git a/contrib/openpam/modules/pam_dummy/Makefile b/contrib/openpam/modules/pam_dummy/Makefile index 144828c4cba9..ade629bf4853 100644 --- a/contrib/openpam/modules/pam_dummy/Makefile +++ b/contrib/openpam/modules/pam_dummy/Makefile @@ -31,7 +31,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $Id$ +# $P4: //depot/projects/openpam/modules/pam_dummy/Makefile#2 $ # LIB = pam_dummy diff --git a/contrib/openpam/modules/pam_dummy/pam_dummy.c b/contrib/openpam/modules/pam_dummy/pam_dummy.c index 9d98f37558ac..3c49798c7bf8 100644 --- a/contrib/openpam/modules/pam_dummy/pam_dummy.c +++ b/contrib/openpam/modules/pam_dummy/pam_dummy.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ + * $P4: //depot/projects/openpam/modules/pam_dummy/pam_dummy.c#3 $ */ #include diff --git a/contrib/openpam/modules/pam_permit/Makefile b/contrib/openpam/modules/pam_permit/Makefile index 93ae3d9a497d..52695d08d2fc 100644 --- a/contrib/openpam/modules/pam_permit/Makefile +++ b/contrib/openpam/modules/pam_permit/Makefile @@ -31,7 +31,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $Id$ +# $P4: //depot/projects/openpam/modules/pam_permit/Makefile#3 $ # LIB = pam_permit diff --git a/contrib/openpam/modules/pam_permit/pam_permit.c b/contrib/openpam/modules/pam_permit/pam_permit.c index 856fb4508e00..c1672a2b4b4e 100644 --- a/contrib/openpam/modules/pam_permit/pam_permit.c +++ b/contrib/openpam/modules/pam_permit/pam_permit.c @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ + * $P4: //depot/projects/openpam/modules/pam_permit/pam_permit.c#5 $ */ #include