diff options
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>  | 
