aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--contrib/openpam/HISTORY25
-rw-r--r--contrib/openpam/INSTALL2
-rw-r--r--contrib/openpam/LICENSE2
-rw-r--r--contrib/openpam/MANIFEST4
-rw-r--r--contrib/openpam/Makefile2
-rw-r--r--contrib/openpam/README2
-rw-r--r--contrib/openpam/RELNOTES9
-rw-r--r--contrib/openpam/bin/Makefile2
-rw-r--r--contrib/openpam/bin/su/Makefile2
-rw-r--r--contrib/openpam/bin/su/su.c2
-rw-r--r--contrib/openpam/doc/Makefile2
-rw-r--r--contrib/openpam/doc/man/Makefile2
-rw-r--r--contrib/openpam/doc/man/openpam_get_option.34
-rw-r--r--contrib/openpam/doc/man/openpam_log.34
-rw-r--r--contrib/openpam/doc/man/openpam_set_option.34
-rw-r--r--contrib/openpam/doc/man/openpam_ttyconv.34
-rw-r--r--contrib/openpam/doc/man/pam.34
-rw-r--r--contrib/openpam/doc/man/pam_acct_mgmt.34
-rw-r--r--contrib/openpam/doc/man/pam_authenticate.34
-rw-r--r--contrib/openpam/doc/man/pam_chauthtok.38
-rw-r--r--contrib/openpam/doc/man/pam_close_session.34
-rw-r--r--contrib/openpam/doc/man/pam_end.34
-rw-r--r--contrib/openpam/doc/man/pam_error.34
-rw-r--r--contrib/openpam/doc/man/pam_get_authtok.34
-rw-r--r--contrib/openpam/doc/man/pam_get_data.34
-rw-r--r--contrib/openpam/doc/man/pam_get_item.34
-rw-r--r--contrib/openpam/doc/man/pam_get_user.34
-rw-r--r--contrib/openpam/doc/man/pam_getenv.34
-rw-r--r--contrib/openpam/doc/man/pam_getenvlist.34
-rw-r--r--contrib/openpam/doc/man/pam_info.34
-rw-r--r--contrib/openpam/doc/man/pam_open_session.34
-rw-r--r--contrib/openpam/doc/man/pam_prompt.34
-rw-r--r--contrib/openpam/doc/man/pam_putenv.34
-rw-r--r--contrib/openpam/doc/man/pam_set_data.34
-rw-r--r--contrib/openpam/doc/man/pam_set_item.34
-rw-r--r--contrib/openpam/doc/man/pam_setcred.34
-rw-r--r--contrib/openpam/doc/man/pam_setenv.34
-rw-r--r--contrib/openpam/doc/man/pam_sm_acct_mgmt.34
-rw-r--r--contrib/openpam/doc/man/pam_sm_authenticate.34
-rw-r--r--contrib/openpam/doc/man/pam_sm_chauthtok.36
-rw-r--r--contrib/openpam/doc/man/pam_sm_close_session.34
-rw-r--r--contrib/openpam/doc/man/pam_sm_open_session.34
-rw-r--r--contrib/openpam/doc/man/pam_sm_setcred.34
-rw-r--r--contrib/openpam/doc/man/pam_start.34
-rw-r--r--contrib/openpam/doc/man/pam_strerror.34
-rw-r--r--contrib/openpam/doc/man/pam_verror.38
-rw-r--r--contrib/openpam/doc/man/pam_vinfo.38
-rw-r--r--contrib/openpam/doc/man/pam_vprompt.34
-rw-r--r--contrib/openpam/include/security/openpam.h7
-rw-r--r--contrib/openpam/include/security/pam_appl.h2
-rw-r--r--contrib/openpam/include/security/pam_constants.h2
-rw-r--r--contrib/openpam/include/security/pam_modules.h2
-rw-r--r--contrib/openpam/include/security/pam_types.h2
-rw-r--r--contrib/openpam/lib/Makefile4
-rw-r--r--contrib/openpam/lib/openpam_dispatch.c12
-rw-r--r--contrib/openpam/lib/openpam_dynamic.c89
-rw-r--r--contrib/openpam/lib/openpam_findenv.c2
-rw-r--r--contrib/openpam/lib/openpam_get_option.c2
-rw-r--r--contrib/openpam/lib/openpam_impl.h3
-rw-r--r--contrib/openpam/lib/openpam_load.c26
-rw-r--r--contrib/openpam/lib/openpam_log.c2
-rw-r--r--contrib/openpam/lib/openpam_set_option.c16
-rw-r--r--contrib/openpam/lib/openpam_static.c2
-rw-r--r--contrib/openpam/lib/openpam_ttyconv.c2
-rw-r--r--contrib/openpam/lib/pam_acct_mgmt.c2
-rw-r--r--contrib/openpam/lib/pam_authenticate.c7
-rw-r--r--contrib/openpam/lib/pam_authenticate_secondary.c2
-rw-r--r--contrib/openpam/lib/pam_chauthtok.c15
-rw-r--r--contrib/openpam/lib/pam_close_session.c2
-rw-r--r--contrib/openpam/lib/pam_end.c2
-rw-r--r--contrib/openpam/lib/pam_error.c2
-rw-r--r--contrib/openpam/lib/pam_get_authtok.c2
-rw-r--r--contrib/openpam/lib/pam_get_data.c2
-rw-r--r--contrib/openpam/lib/pam_get_item.c2
-rw-r--r--contrib/openpam/lib/pam_get_mapped_authtok.c2
-rw-r--r--contrib/openpam/lib/pam_get_mapped_username.c2
-rw-r--r--contrib/openpam/lib/pam_get_user.c2
-rw-r--r--contrib/openpam/lib/pam_getenv.c2
-rw-r--r--contrib/openpam/lib/pam_getenvlist.c2
-rw-r--r--contrib/openpam/lib/pam_info.c2
-rw-r--r--contrib/openpam/lib/pam_open_session.c2
-rw-r--r--contrib/openpam/lib/pam_prompt.c2
-rw-r--r--contrib/openpam/lib/pam_putenv.c2
-rw-r--r--contrib/openpam/lib/pam_set_data.c2
-rw-r--r--contrib/openpam/lib/pam_set_item.c2
-rw-r--r--contrib/openpam/lib/pam_set_mapped_authtok.c2
-rw-r--r--contrib/openpam/lib/pam_set_mapped_username.c2
-rw-r--r--contrib/openpam/lib/pam_setcred.c2
-rw-r--r--contrib/openpam/lib/pam_setenv.c2
-rw-r--r--contrib/openpam/lib/pam_sm_acct_mgmt.c2
-rw-r--r--contrib/openpam/lib/pam_sm_authenticate.c2
-rw-r--r--contrib/openpam/lib/pam_sm_authenticate_secondary.c2
-rw-r--r--contrib/openpam/lib/pam_sm_chauthtok.c3
-rw-r--r--contrib/openpam/lib/pam_sm_close_session.c2
-rw-r--r--contrib/openpam/lib/pam_sm_get_mapped_authtok.c2
-rw-r--r--contrib/openpam/lib/pam_sm_get_mapped_username.c2
-rw-r--r--contrib/openpam/lib/pam_sm_open_session.c2
-rw-r--r--contrib/openpam/lib/pam_sm_set_mapped_authtok.c2
-rw-r--r--contrib/openpam/lib/pam_sm_set_mapped_username.c2
-rw-r--r--contrib/openpam/lib/pam_sm_setcred.c2
-rw-r--r--contrib/openpam/lib/pam_start.c2
-rw-r--r--contrib/openpam/lib/pam_strerror.c2
-rw-r--r--contrib/openpam/lib/pam_verror.c4
-rw-r--r--contrib/openpam/lib/pam_vinfo.c4
-rw-r--r--contrib/openpam/lib/pam_vprompt.c2
-rw-r--r--contrib/openpam/misc/gendoc.pl4
-rw-r--r--contrib/openpam/modules/Makefile2
-rw-r--r--contrib/openpam/modules/pam_deny/Makefile2
-rw-r--r--contrib/openpam/modules/pam_deny/pam_deny.c2
-rw-r--r--contrib/openpam/modules/pam_dummy/Makefile2
-rw-r--r--contrib/openpam/modules/pam_dummy/pam_dummy.c2
-rw-r--r--contrib/openpam/modules/pam_permit/Makefile2
-rw-r--r--contrib/openpam/modules/pam_permit/pam_permit.c2
113 files changed, 324 insertions, 188 deletions
diff --git a/contrib/openpam/HISTORY b/contrib/openpam/HISTORY
index ed96088d26da..0cee583c61c4 100644
--- a/contrib/openpam/HISTORY
+++ b/contrib/openpam/HISTORY
@@ -1,4 +1,27 @@
============================================================================
+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
- BUGFIX: The proper use of PAM_SYMBOL_ERR is to indicate an invalid
@@ -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 <sys/param.h>
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 <sys/param.h>
@@ -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 <dlfcn.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <security/pam_appl.h>
+
+#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 <string.h>
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 <sys/param.h>
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 <dlfcn.h>
@@ -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 <ctype.h>
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 <sys/param.h>
@@ -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 <string.h>
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 <sys/types.h>
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 <sys/param.h>
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 <sys/param.h>
@@ -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 <security/pam_appl.h>
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 <sys/param.h>
@@ -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 <sys/param.h>
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 <stdlib.h>
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 <stdarg.h>
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 <sys/param.h>
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 <string.h>
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 <sys/param.h>
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 <security/pam_appl.h>
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 <security/pam_appl.h>
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 <sys/param.h>
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 <stdlib.h>
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 <stdlib.h>
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 <stdarg.h>
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 <sys/param.h>
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 <stdarg.h>
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 <stdlib.h>
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 <stdlib.h>
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 <sys/param.h>
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 <security/pam_appl.h>
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 <security/pam_appl.h>
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 <sys/param.h>
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 <stdlib.h>
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 <sys/param.h>
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 <sys/param.h>
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 <sys/param.h>
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 <sys/param.h>
@@ -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 <sys/param.h>
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 <sys/param.h>
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 <sys/param.h>
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 <sys/param.h>
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 <sys/param.h>
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 <sys/param.h>
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 <sys/param.h>
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 <ctype.h>
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 <stdio.h>
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 <stdarg.h>
@@ -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 <stdarg.h>
@@ -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 <stdarg.h>
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 <sys/param.h>
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 <sys/param.h>
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 <sys/param.h>