MFC: OpenPAM Hydrangea

This commit is contained in:
Dag-Erling Smørgrav 2008-01-18 13:29:05 +00:00
parent 8cfbe08463
commit 8acf0a5bc0
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/stable/7/; revision=175443
160 changed files with 9840 additions and 8980 deletions

View File

@ -14,6 +14,7 @@ or indirectly, with patches, criticism, suggestions, or ideas:
Andrew Morgan <morgan@transmeta.com>
Brian Fundakowski Feldman <green@freebsd.org>
Christos Zoulas <christos@netbsd.org>
Daniel Richard G. <skunk@iskunk.org>
Darren J. Moffat <Darren.Moffat@sun.com>
Dmitry V. Levin <ldv@altlinux.org>
Emmanuel Dreyfus <manu@netbsd.org>
@ -24,11 +25,13 @@ or indirectly, with patches, criticism, suggestions, or ideas:
Hubert Feyrer <hubert@feyrer.de>
Mark Murray <markm@freebsd.org>
Mike Petullo <mike@flyn.org>
Mikhail Teterin <mi@aldan.algebra.com>
Mikko Työläjärvi <mbsd@pacbell.net>
Robert Watson <rwatson@freebsd.org>
Ruslan Ermilov <ru@freebsd.org>
Solar Designer <solar@openwall.com>
Takanori Saneto <sanewo@ba2.so-net.ne.jp>
Wojciech A. Koszek <wkoszek@freebsd.org>
Yar Tikhiy <yar@freebsd.org>
$P4: //depot/projects/openpam/CREDITS#12 $
$Id: CREDITS 400 2007-10-24 15:04:23Z des $

View File

@ -1,4 +1,27 @@
OpenPAM Figwort 2005-06-16
OpenPAM Hydrangea 2007-12-21
- ENHANCE: when compiling with GCC, mark up API functions with GCC
attributes where appropriate.
- BUGFIX: fixed numerous warnings uncovered by GCC 4.
- ENHANCE: building the documentation is now optional.
- ENHANCE: corrected a number of mistakes and style issues in the
build system.
- ENHANCE: API function arguments are now const where appropriate, to
match corresponding changes in the Solaris PAM and Linux-PAM APIs.
- ENHANCE: corrected a number of C namespace violations.
- ENHANCE: the module cache has been removed, allowing long-lived
applications to pick up module changes. This also allows multiple
threads to use PAM simultaneously (as long as they use separate PAM
contexts), since the module cache was the only part of OpenPAM that
was not thread-safe.
============================================================================
OpenPAM Figwort 2005-06-16
- BUGFIX: Correct several small signedness and initialization bugs
discovered during review by the NetBSD team.
@ -304,4 +327,4 @@ OpenPAM Calamite 2002-02-09
First (beta) release.
============================================================================
$P4: //depot/projects/openpam/HISTORY#24 $
$Id: HISTORY 409 2007-12-21 11:38:50Z des $

View File

@ -16,23 +16,29 @@
Use the "configure" shell script to configure OpenPAM for your
system. Options include:
--enable-debug
Turn debugging on by default.
--with-modules-dir=DIR
Indicates the directory where PAM modules will be installed.
This option should not be used if you intend to install PAM
modules in the system library directory.
--with-pam-su
Builds the sample PAM application.
--without-doc
Skips the documentation.
--with-pam-unix
Builds the sample PAM module.
--with-su
Builds the sample su(1) implementation.
For more information about configuration options, use the --help
option.
A typical invocation might look like this:
# ./configure --with-pam-su --with-pam-unix
# ./configure --with-pam-unix --with-su
3. COMPILATION
@ -49,4 +55,4 @@
# make install
$P4: //depot/projects/openpam/INSTALL#4 $
$Id: INSTALL 388 2006-04-12 10:31:52Z des $

View File

@ -1,5 +1,6 @@
Copyright (c) 2002-2003 Networks Associates Technology, Inc.
Copyright (c) 2004-2007 Dag-Erling Smørgrav
All rights reserved.
This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,4 +32,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.
$P4: //depot/projects/openpam/LICENSE#6 $
$Id: LICENSE 408 2007-12-21 11:36:24Z des $

View File

@ -1,5 +1,17 @@
# $P4: //depot/projects/openpam/Makefile.am#3 $
# $Id: Makefile.am 395 2007-06-03 20:26:18Z des $
SUBDIRS = lib bin modules doc include
SUBDIRS = lib bin modules include
EXTRA_DIST = CREDITS HISTORY INSTALL LICENSE MANIFEST README RELNOTES
if WITH_DOC
SUBDIRS += doc
endif
EXTRA_DIST = \
CREDITS \
HISTORY \
INSTALL \
LICENSE \
README \
RELNOTES \
autogen.sh \
misc/gendoc.pl

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am.
# Makefile.in generated by automake 1.9.6 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004 Free Software Foundation, Inc.
# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@ -14,7 +14,7 @@
@SET_MAKE@
# $P4: //depot/projects/openpam/Makefile.am#3 $
# $Id: Makefile.am 395 2007-06-03 20:26:18Z des $
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
@ -38,6 +38,7 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
@WITH_DOC_TRUE@am__append_1 = doc
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(srcdir)/config.h.in \
$(top_srcdir)/configure INSTALL compile config.guess \
@ -49,7 +50,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno configure.status.lineno
mkinstalldirs = $(mkdir_p)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES =
SOURCES =
@ -62,7 +63,7 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
uninstall-recursive
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
DIST_SUBDIRS = lib bin modules include doc
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
@ -105,6 +106,7 @@ EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
GREP = @GREP@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -127,20 +129,20 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
WITH_PAM_SU_FALSE = @WITH_PAM_SU_FALSE@
WITH_PAM_SU_TRUE = @WITH_PAM_SU_TRUE@
WITH_DOC_FALSE = @WITH_DOC_FALSE@
WITH_DOC_TRUE = @WITH_DOC_TRUE@
WITH_PAM_UNIX_FALSE = @WITH_PAM_UNIX_FALSE@
WITH_PAM_UNIX_TRUE = @WITH_PAM_UNIX_TRUE@
ac_ct_AR = @ac_ct_AR@
WITH_SU_FALSE = @WITH_SU_FALSE@
WITH_SU_TRUE = @WITH_SU_TRUE@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
@ -148,6 +150,8 @@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@ -155,23 +159,30 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
@ -180,8 +191,17 @@ target_alias = @target_alias@
target_cpu = @target_cpu@
target_os = @target_os@
target_vendor = @target_vendor@
SUBDIRS = lib bin modules doc include
EXTRA_DIST = CREDITS HISTORY INSTALL LICENSE MANIFEST README RELNOTES
SUBDIRS = lib bin modules include $(am__append_1)
EXTRA_DIST = \
CREDITS \
HISTORY \
INSTALL \
LICENSE \
README \
RELNOTES \
autogen.sh \
misc/gendoc.pl
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
@ -254,7 +274,13 @@ uninstall-info-am:
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@set fnord $$MAKEFLAGS; amf=$$2; \
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
@ -266,7 +292,7 @@ $(RECURSIVE_TARGETS):
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
@ -274,7 +300,13 @@ $(RECURSIVE_TARGETS):
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
@set fnord $$MAKEFLAGS; amf=$$2; \
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
@ -295,7 +327,7 @@ maintainer-clean-recursive:
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
@ -370,6 +402,7 @@ distclean-tags:
distdir: $(DISTFILES)
$(am__remove_distdir)
mkdir $(distdir)
$(mkdir_p) $(distdir)/misc
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
list='$(DISTFILES)'; for file in $$list; do \
@ -396,15 +429,17 @@ distdir: $(DISTFILES)
|| exit 1; \
fi; \
done
list='$(SUBDIRS)'; for subdir in $$list; do \
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| mkdir "$(distdir)/$$subdir" \
|| $(mkdir_p) "$(distdir)/$$subdir" \
|| exit 1; \
distdir=`$(am__cd) $(distdir) && pwd`; \
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
(cd $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="../$(top_distdir)" \
distdir="../$(distdir)/$$subdir" \
top_distdir="$$top_distdir" \
distdir="$$distdir/$$subdir" \
distdir) \
|| exit 1; \
fi; \
@ -415,15 +450,15 @@ distdir: $(DISTFILES)
! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r $(distdir)
dist-gzip: distdir
$(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__remove_distdir)
dist-bzip2: distdir
$(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
$(am__remove_distdir)
dist-tarZ: distdir
$(AMTAR) chof - $(distdir) | compress -c >$(distdir).tar.Z
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__remove_distdir)
dist-shar: distdir
@ -436,7 +471,7 @@ dist-zip: distdir
$(am__remove_distdir)
dist dist-all: distdir
$(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__remove_distdir)
# This target untars the dist file and tries a VPATH configuration. Then
@ -445,11 +480,11 @@ dist dist-all: distdir
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf - ;;\
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bunzip2 -c $(distdir).tar.bz2 | $(AMTAR) xf - ;;\
bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(AMTAR) xf - ;;\
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
*.zip*) \
@ -530,7 +565,7 @@ mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES)
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"

View File

@ -24,4 +24,4 @@ These are some of OpenPAM's features:
Please direct bug reports and inquiries to des@freebsd.org.
$P4: //depot/projects/openpam/README#5 $
$Id: README 320 2006-02-16 20:33:19Z des $

View File

@ -1,6 +1,6 @@
Release notes for OpenPAM Figwort
=================================
Release notes for OpenPAM Hydrangea
===================================
This release corresponds to the code used in FreeBSD-CURRENT as of the
release date. It has also been tested on several other platforms, and
@ -26,4 +26,4 @@ proper credit for your contribution.
Please direct bug reports and inquiries to <des@freebsd.org>.
$P4: //depot/projects/openpam/RELNOTES#22 $
$Id: RELNOTES 404 2007-11-28 12:31:04Z des $

File diff suppressed because it is too large Load Diff

View File

@ -1,10 +1,10 @@
#!/bin/sh -ex
#!/bin/sh
#
# $P4: //depot/projects/openpam/autogen.sh#2 $
# $Id: autogen.sh 396 2007-10-24 09:58:18Z des $
#
libtoolize --copy --force
aclocal
libtoolize --copy --force
autoheader
automake -a -c --foreign
autoconf

View File

@ -1,3 +1,7 @@
# $P4: //depot/projects/openpam/bin/Makefile.am#2 $
# $Id: Makefile.am 386 2006-04-12 10:26:27Z des $
SUBDIRS = su
SUBDIRS =
if WITH_SU
SUBDIRS += su
endif

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am.
# Makefile.in generated by automake 1.9.6 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004 Free Software Foundation, Inc.
# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@ -14,7 +14,7 @@
@SET_MAKE@
# $P4: //depot/projects/openpam/bin/Makefile.am#2 $
# $Id: Makefile.am 386 2006-04-12 10:26:27Z des $
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
@ -38,13 +38,14 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
@WITH_SU_TRUE@am__append_1 = su
subdir = bin
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(mkdir_p)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
SOURCES =
@ -57,7 +58,7 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
uninstall-recursive
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
DIST_SUBDIRS = su
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
@ -90,6 +91,7 @@ EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
GREP = @GREP@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -112,20 +114,20 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
WITH_PAM_SU_FALSE = @WITH_PAM_SU_FALSE@
WITH_PAM_SU_TRUE = @WITH_PAM_SU_TRUE@
WITH_DOC_FALSE = @WITH_DOC_FALSE@
WITH_DOC_TRUE = @WITH_DOC_TRUE@
WITH_PAM_UNIX_FALSE = @WITH_PAM_UNIX_FALSE@
WITH_PAM_UNIX_TRUE = @WITH_PAM_UNIX_TRUE@
ac_ct_AR = @ac_ct_AR@
WITH_SU_FALSE = @WITH_SU_FALSE@
WITH_SU_TRUE = @WITH_SU_TRUE@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
@ -133,6 +135,8 @@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@ -140,23 +144,30 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
@ -165,7 +176,7 @@ target_alias = @target_alias@
target_cpu = @target_cpu@
target_os = @target_os@
target_vendor = @target_vendor@
SUBDIRS = su
SUBDIRS = $(am__append_1)
all: all-recursive
.SUFFIXES:
@ -216,7 +227,13 @@ uninstall-info-am:
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@set fnord $$MAKEFLAGS; amf=$$2; \
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
@ -228,7 +245,7 @@ $(RECURSIVE_TARGETS):
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
@ -236,7 +253,13 @@ $(RECURSIVE_TARGETS):
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
@set fnord $$MAKEFLAGS; amf=$$2; \
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
@ -257,7 +280,7 @@ maintainer-clean-recursive:
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
@ -356,15 +379,17 @@ distdir: $(DISTFILES)
|| exit 1; \
fi; \
done
list='$(SUBDIRS)'; for subdir in $$list; do \
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| mkdir "$(distdir)/$$subdir" \
|| $(mkdir_p) "$(distdir)/$$subdir" \
|| exit 1; \
distdir=`$(am__cd) $(distdir) && pwd`; \
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
(cd $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="../$(top_distdir)" \
distdir="../$(distdir)/$$subdir" \
top_distdir="$$top_distdir" \
distdir="$$distdir/$$subdir" \
distdir) \
|| exit 1; \
fi; \
@ -393,7 +418,7 @@ mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES)
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"

View File

@ -1,9 +1,7 @@
# $P4: //depot/projects/openpam/bin/su/Makefile.am#2 $
# $Id: Makefile.am 386 2006-04-12 10:26:27Z des $
INCLUDES = -I$(top_srcdir)/include
if WITH_PAM_SU
bin_PROGRAMS = su
su_SOURCES = su.c
su_LDADD = $(top_builddir)/lib/libpam.la
endif

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am.
# Makefile.in generated by automake 1.9.6 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004 Free Software Foundation, Inc.
# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@ -14,9 +14,7 @@
@SET_MAKE@
# $P4: //depot/projects/openpam/bin/su/Makefile.am#2 $
SOURCES = $(su_SOURCES)
# $Id: Makefile.am 386 2006-04-12 10:26:27Z des $
srcdir = @srcdir@
top_srcdir = @top_srcdir@
@ -41,37 +39,35 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
@WITH_PAM_SU_TRUE@bin_PROGRAMS = su$(EXEEXT)
bin_PROGRAMS = su$(EXEEXT)
subdir = bin/su
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(mkdir_p)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
am__installdirs = "$(DESTDIR)$(bindir)"
binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
PROGRAMS = $(bin_PROGRAMS)
am__su_SOURCES_DIST = su.c
@WITH_PAM_SU_TRUE@am_su_OBJECTS = su.$(OBJEXT)
am_su_OBJECTS = su.$(OBJEXT)
su_OBJECTS = $(am_su_OBJECTS)
@WITH_PAM_SU_TRUE@su_DEPENDENCIES = $(top_builddir)/lib/libpam.la
su_DEPENDENCIES = $(top_builddir)/lib/libpam.la
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/su.Po
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) \
LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
$(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(su_SOURCES)
DIST_SOURCES = $(am__su_SOURCES_DIST)
DIST_SOURCES = $(su_SOURCES)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@ -106,6 +102,7 @@ EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
GREP = @GREP@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -128,20 +125,20 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
WITH_PAM_SU_FALSE = @WITH_PAM_SU_FALSE@
WITH_PAM_SU_TRUE = @WITH_PAM_SU_TRUE@
WITH_DOC_FALSE = @WITH_DOC_FALSE@
WITH_DOC_TRUE = @WITH_DOC_TRUE@
WITH_PAM_UNIX_FALSE = @WITH_PAM_UNIX_FALSE@
WITH_PAM_UNIX_TRUE = @WITH_PAM_UNIX_TRUE@
ac_ct_AR = @ac_ct_AR@
WITH_SU_FALSE = @WITH_SU_FALSE@
WITH_SU_TRUE = @WITH_SU_TRUE@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
@ -149,6 +146,8 @@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@ -156,23 +155,30 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
@ -182,8 +188,8 @@ target_cpu = @target_cpu@
target_os = @target_os@
target_vendor = @target_vendor@
INCLUDES = -I$(top_srcdir)/include
@WITH_PAM_SU_TRUE@su_SOURCES = su.c
@WITH_PAM_SU_TRUE@su_LDADD = $(top_builddir)/lib/libpam.la
su_SOURCES = su.c
su_LDADD = $(top_builddir)/lib/libpam.la
all: all-am
.SUFFIXES:
@ -261,24 +267,21 @@ distclean-compile:
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
.c.obj:
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
.c.lo:
@am__fastdepCC_TRUE@ if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
mostlyclean-libtool:
@ -392,7 +395,7 @@ mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES)
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/bin/su/su.c#12 $
* $Id: su.c 408 2007-12-21 11:36:24Z des $
*/
#include <sys/param.h>
@ -67,6 +68,7 @@ main(int argc, char *argv[])
{
char hostname[MAXHOSTNAMELEN];
const char *user, *tty;
const void *item;
char **args, **pam_envlist, **pam_env;
struct passwd *pwd;
int o, pam_err, status;
@ -122,8 +124,8 @@ main(int argc, char *argv[])
goto pamerr;
/* get mapped user name; PAM may have changed it */
pam_err = pam_get_item(pamh, PAM_USER, (const void **)&user);
if (pam_err != PAM_SUCCESS || (pwd = getpwnam(user)) == NULL)
pam_err = pam_get_item(pamh, PAM_USER, &item);
if (pam_err != PAM_SUCCESS || (pwd = getpwnam(user = item)) == NULL)
goto pamerr;
/* export PAM environment */

View File

@ -42,6 +42,9 @@
/* OpenPAM library major number */
#undef LIB_MAJ
/* Turn debugging on by default */
#undef OPENPAM_DEBUG
/* OpenPAM modules directory */
#undef OPENPAM_MODULES_DIR

12426
contrib/openpam/configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,20 +1,27 @@
dnl $P4: //depot/projects/openpam/configure.ac#2 $
dnl $Id: configure.ac 411 2007-12-21 11:44:14Z des $
AC_PREREQ(2.53)
AC_INIT([OpenPAM],[20050201],[des@freebsd.org],[openpam])
AC_CONFIG_SRCDIR([lib/pam_start.c])
AM_CONFIG_HEADER([config.h])
AC_PREREQ(2.59)
AC_REVISION([$Id: configure.ac 411 2007-12-21 11:44:14Z des $])
AC_INIT([OpenPAM],[20071221],[des@des.no])
AC_CONFIG_SRCDIR(lib/pam_start.c)
AM_CONFIG_HEADER(config.h)
AC_CANONICAL_SYSTEM
AC_LANG(C)
AC_C_VOLATILE
AC_DISABLE_STATIC
AC_PROG_LIBTOOL
AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
AM_INIT_AUTOMAKE
LIB_MAJ=2
AC_SUBST(LIB_MAJ)
AC_DEFINE_UNQUOTED(LIB_MAJ, $LIB_MAJ, [OpenPAM library major number])
AC_ARG_ENABLE(debug,
AC_HELP_STRING([--enable-debug],
[turn debugging on by default]),
AC_DEFINE(OPENPAM_DEBUG, 1, [Turn debugging on by default]))
AC_MSG_CHECKING([whether loading unversioned modules support is enabled])
AC_ARG_ENABLE(unversioned-modules,
AC_HELP_STRING([--disable-unversioned-modules],
@ -45,13 +52,13 @@ AC_ARG_WITH(modules-dir,
AC_MSG_RESULT(no)])
AC_SUBST(OPENPAM_MODULES_DIR)
AC_MSG_CHECKING([whether to build example version of /bin/su])
AC_ARG_WITH(pam-su,
AC_HELP_STRING([--with-pam-su],
[compile example version of /bin/su]),
AC_MSG_CHECKING([whether to build the documentation])
AC_ARG_WITH(doc,
AC_HELP_STRING([--with-doc],
[build documentation]),
,
[with_pam_su=no])
AC_MSG_RESULT($with_pam_su)
[with_doc=yes])
AC_MSG_RESULT($with_doc)
AC_MSG_CHECKING([whether to build example version of pam_unix.so])
AC_ARG_WITH(pam-unix,
@ -61,8 +68,17 @@ AC_ARG_WITH(pam-unix,
[with_pam_unix=no])
AC_MSG_RESULT($with_pam_unix)
AM_CONDITIONAL(WITH_PAM_SU, test "x$with_pam_su" = "xyes")
AC_MSG_CHECKING([whether to build example version of su(1)])
AC_ARG_WITH(su,
AC_HELP_STRING([--with-su],
[compile example version of su(1)]),
,
[with_su=no])
AC_MSG_RESULT($with_su)
AM_CONDITIONAL(WITH_DOC, test "x$with_doc" = "xyes")
AM_CONDITIONAL(WITH_PAM_UNIX, test "x$with_pam_unix" = "xyes")
AM_CONDITIONAL(WITH_SU, test "x$with_su" = "xyes")
AC_PROG_INSTALL
@ -79,21 +95,32 @@ AC_CHECK_LIB(crypt, crypt, CRYPT_LIBS=-lcrypt)
AC_SUBST(CRYPT_LIBS)
CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
AC_SUBST(CPPFLAGS)
CFLAGS="$CFLAGS -Werror"
AC_SUBST(CFLAGS)
# This corresponds to FreeBSD's WARNS level 6
DEVELOPER_CFLAGS="-Wall -Wextra -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wformat"
AC_CONFIG_FILES([bin/Makefile
bin/su/Makefile
include/Makefile
include/security/Makefile
lib/Makefile
modules/Makefile
modules/pam_unix/Makefile
modules/pam_deny/Makefile
modules/pam_permit/Makefile
doc/Makefile
doc/man/Makefile
Makefile])
AC_ARG_ENABLE(developer-warnings,
AS_HELP_STRING([--enable-developer-warnings],[enable strict warnings (default is NO)]),
CFLAGS="${CFLAGS} ${DEVELOPER_CFLAGS}")
AC_ARG_ENABLE(debugging-symbols,
AS_HELP_STRING([--enable-debugging-symbols],[enable debugging symbols (default is NO)]),
CFLAGS="${CFLAGS} -O0 -g -fno-inline")
AC_ARG_ENABLE(werror,
AS_HELP_STRING([--enable-werror],[use -Werror (default is NO)]),
CFLAGS="${CFLAGS} -Werror")
AC_CONFIG_FILES([
bin/Makefile
bin/su/Makefile
include/Makefile
include/security/Makefile
lib/Makefile
modules/Makefile
modules/pam_unix/Makefile
modules/pam_deny/Makefile
modules/pam_permit/Makefile
doc/Makefile
doc/man/Makefile
Makefile
])
AC_OUTPUT

View File

@ -1,9 +1,9 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
scriptversion=2004-04-25.13
scriptversion=2005-07-09.11
# Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc.
# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@ -17,8 +17,8 @@ scriptversion=2004-04-25.13
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# 02111-1307, USA.
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@ -43,17 +43,18 @@ Environment variables:
depmode Dependency tracking mode.
source Source file read by `PROGRAMS ARGS'.
object Object file output by `PROGRAMS ARGS'.
DEPDIR directory where to store dependencies.
depfile Dependency file to output.
tmpdepfile Temporary file to use when outputing dependencies.
libtool Whether libtool is used (yes/no).
Report bugs to <bug-automake@gnu.org>.
EOF
exit 0
exit $?
;;
-v | --v*)
echo "depcomp $scriptversion"
exit 0
exit $?
;;
esac
@ -61,18 +62,10 @@ if test -z "$depmode" || test -z "$source" || test -z "$object"; then
echo "depcomp: Variables source, object and depmode must be set" 1>&2
exit 1
fi
# `libtool' can also be set to `yes' or `no'.
if test -z "$depfile"; then
base=`echo "$object" | sed -e 's,^.*/,,' -e 's,\.\([^.]*\)$,.P\1,'`
dir=`echo "$object" | sed 's,/.*$,/,'`
if test "$dir" = "$object"; then
dir=
fi
# FIXME: should be _deps on DOS.
depfile="$dir.deps/$base"
fi
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
depfile=${depfile-`echo "$object" |
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
rm -f "$tmpdepfile"
@ -294,33 +287,43 @@ tru64)
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
if test "$libtool" = yes; then
# Dependencies are output in .lo.d with libtool 1.4.
# They are output in .o.d with libtool 1.5.
tmpdepfile1="$dir.libs/$base.lo.d"
tmpdepfile2="$dir.libs/$base.o.d"
tmpdepfile3="$dir.libs/$base.d"
# With Tru64 cc, shared objects can also be used to make a
# static library. This mecanism is used in libtool 1.4 series to
# handle both shared and static libraries in a single compilation.
# With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
#
# With libtool 1.5 this exception was removed, and libtool now
# generates 2 separate objects for the 2 libraries. These two
# compilations output dependencies in in $dir.libs/$base.o.d and
# in $dir$base.o.d. We have to check for both files, because
# one of the two compilations can be disabled. We should prefer
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
# automatically cleaned when .libs/ is deleted, while ignoring
# the former would cause a distcleancheck panic.
tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
tmpdepfile2=$dir$base.o.d # libtool 1.5
tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
"$@" -Wc,-MD
else
tmpdepfile1="$dir$base.o.d"
tmpdepfile2="$dir$base.d"
tmpdepfile3="$dir$base.d"
tmpdepfile1=$dir$base.o.d
tmpdepfile2=$dir$base.d
tmpdepfile3=$dir$base.d
tmpdepfile4=$dir$base.d
"$@" -MD
fi
stat=$?
if test $stat -eq 0; then :
else
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
exit $stat
fi
if test -f "$tmpdepfile1"; then
tmpdepfile="$tmpdepfile1"
elif test -f "$tmpdepfile2"; then
tmpdepfile="$tmpdepfile2"
else
tmpdepfile="$tmpdepfile3"
fi
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
do
test -f "$tmpdepfile" && break
done
if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
# That's a tab and a space in the [].
@ -464,7 +467,8 @@ cpp)
done
"$@" -E |
sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
-e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
sed '$ s: \\$::' > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"

View File

@ -1,3 +1,3 @@
# $P4: //depot/projects/openpam/doc/Makefile.am#2 $
# $Id: Makefile.am 320 2006-02-16 20:33:19Z des $
SUBDIRS = man

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am.
# Makefile.in generated by automake 1.9.6 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004 Free Software Foundation, Inc.
# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@ -14,7 +14,7 @@
@SET_MAKE@
# $P4: //depot/projects/openpam/doc/Makefile.am#2 $
# $Id: Makefile.am 320 2006-02-16 20:33:19Z des $
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
@ -44,7 +44,7 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(mkdir_p)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
SOURCES =
@ -90,6 +90,7 @@ EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
GREP = @GREP@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -112,20 +113,20 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
WITH_PAM_SU_FALSE = @WITH_PAM_SU_FALSE@
WITH_PAM_SU_TRUE = @WITH_PAM_SU_TRUE@
WITH_DOC_FALSE = @WITH_DOC_FALSE@
WITH_DOC_TRUE = @WITH_DOC_TRUE@
WITH_PAM_UNIX_FALSE = @WITH_PAM_UNIX_FALSE@
WITH_PAM_UNIX_TRUE = @WITH_PAM_UNIX_TRUE@
ac_ct_AR = @ac_ct_AR@
WITH_SU_FALSE = @WITH_SU_FALSE@
WITH_SU_TRUE = @WITH_SU_TRUE@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
@ -133,6 +134,8 @@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@ -140,23 +143,30 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
@ -216,7 +226,13 @@ uninstall-info-am:
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@set fnord $$MAKEFLAGS; amf=$$2; \
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
@ -228,7 +244,7 @@ $(RECURSIVE_TARGETS):
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
@ -236,7 +252,13 @@ $(RECURSIVE_TARGETS):
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
@set fnord $$MAKEFLAGS; amf=$$2; \
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
@ -257,7 +279,7 @@ maintainer-clean-recursive:
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
@ -356,15 +378,17 @@ distdir: $(DISTFILES)
|| exit 1; \
fi; \
done
list='$(SUBDIRS)'; for subdir in $$list; do \
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| mkdir "$(distdir)/$$subdir" \
|| $(mkdir_p) "$(distdir)/$$subdir" \
|| exit 1; \
distdir=`$(am__cd) $(distdir) && pwd`; \
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
(cd $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="../$(top_distdir)" \
distdir="../$(distdir)/$$subdir" \
top_distdir="$$top_distdir" \
distdir="$$distdir/$$subdir" \
distdir) \
|| exit 1; \
fi; \
@ -393,7 +417,7 @@ mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES)
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"

View File

@ -1,4 +1,4 @@
# $P4: //depot/projects/openpam/doc/man/Makefile.am#3 $
# $Id: Makefile.am 397 2007-10-24 10:01:13Z des $
NULL =
@ -55,12 +55,15 @@ OMAN = \
pam_vprompt.3 \
$(NULL)
EXTRA_DIST = openpam.man pam.man
ALLCMAN = $(PMAN) $(MMAN) $(OMAN)
LINKS= $(ALLCMAN:.3=.c)
man3_MANS = $(ALLCMAN) openpam.3 pam.3 pam_conv.3
LINKS = $(ALLCMAN:.3=.c) openpam_configure.c openpam_dispatch.c
man5_MANS = pam.conf.5
dist_man3_MANS = $(ALLCMAN) openpam.3 pam.3 pam_conv.3
dist_man5_MANS = pam.conf.5
CLEANFILES = $(ALLCMAN) $(LINKS) openpam.3 pam.3 symlink-stamp
@ -72,12 +75,12 @@ $(LINKS): symlink-stamp
symlink-stamp: Makefile
for lnk in $(LINKS); do \
ln -sf $(top_srcdir)/lib/$$lnk ./; \
done && \
ln -sf $(top_srcdir)/lib/$$lnk . || exit; \
done
touch symlink-stamp
.c.3: symlink-stamp
perl -w $(GENDOC) $(top_srcdir)/lib/$*.c
perl -w $(GENDOC) $<
openpam.3: $(OMAN) $(GENDOC) openpam.man
perl -w $(GENDOC) -o $(OMAN) <$(srcdir)/openpam.man

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am.
# Makefile.in generated by automake 1.9.6 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004 Free Software Foundation, Inc.
# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@ -14,7 +14,7 @@
@SET_MAKE@
# $P4: //depot/projects/openpam/doc/man/Makefile.am#3 $
# $Id: Makefile.am 397 2007-10-24 10:01:13Z des $
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
@ -39,12 +39,13 @@ build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
subdir = doc/man
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
DIST_COMMON = $(dist_man3_MANS) $(dist_man5_MANS) \
$(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(mkdir_p)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
SOURCES =
@ -53,7 +54,7 @@ man3dir = $(mandir)/man3
am__installdirs = "$(DESTDIR)$(man3dir)" "$(DESTDIR)$(man5dir)"
man5dir = $(mandir)/man5
NROFF = nroff
MANS = $(man3_MANS) $(man5_MANS)
MANS = $(dist_man3_MANS) $(dist_man5_MANS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
@ -86,6 +87,7 @@ EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
GREP = @GREP@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -108,20 +110,20 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
WITH_PAM_SU_FALSE = @WITH_PAM_SU_FALSE@
WITH_PAM_SU_TRUE = @WITH_PAM_SU_TRUE@
WITH_DOC_FALSE = @WITH_DOC_FALSE@
WITH_DOC_TRUE = @WITH_DOC_TRUE@
WITH_PAM_UNIX_FALSE = @WITH_PAM_UNIX_FALSE@
WITH_PAM_UNIX_TRUE = @WITH_PAM_UNIX_TRUE@
ac_ct_AR = @ac_ct_AR@
WITH_SU_FALSE = @WITH_SU_FALSE@
WITH_SU_TRUE = @WITH_SU_TRUE@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
@ -129,6 +131,8 @@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@ -136,23 +140,30 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
@ -218,10 +229,11 @@ OMAN = \
pam_vprompt.3 \
$(NULL)
EXTRA_DIST = openpam.man pam.man
ALLCMAN = $(PMAN) $(MMAN) $(OMAN)
LINKS = $(ALLCMAN:.3=.c)
man3_MANS = $(ALLCMAN) openpam.3 pam.3 pam_conv.3
man5_MANS = pam.conf.5
LINKS = $(ALLCMAN:.3=.c) openpam_configure.c openpam_dispatch.c
dist_man3_MANS = $(ALLCMAN) openpam.3 pam.3 pam_conv.3
dist_man5_MANS = pam.conf.5
CLEANFILES = $(ALLCMAN) $(LINKS) openpam.3 pam.3 symlink-stamp
GENDOC = $(top_srcdir)/misc/gendoc.pl
SUFFIXES = .3
@ -419,7 +431,7 @@ clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES)
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@ -488,12 +500,12 @@ $(LINKS): symlink-stamp
symlink-stamp: Makefile
for lnk in $(LINKS); do \
ln -sf $(top_srcdir)/lib/$$lnk ./; \
done && \
ln -sf $(top_srcdir)/lib/$$lnk . || exit; \
done
touch symlink-stamp
.c.3: symlink-stamp
perl -w $(GENDOC) $(top_srcdir)/lib/$*.c
perl -w $(GENDOC) $<
openpam.3: $(OMAN) $(GENDOC) openpam.man
perl -w $(GENDOC) -o $(OMAN) <$(srcdir)/openpam.man

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt OPENPAM 3
.Os
.Sh NAME
@ -81,23 +82,23 @@
.Ft "int"
.Fn openpam_ttyconv "int n" "const struct pam_message **msg" "struct pam_response **resp" "void *data"
.Ft "int"
.Fn pam_error "pam_handle_t *pamh" "const char *fmt" "..."
.Fn pam_error "const pam_handle_t *pamh" "const char *fmt" "..."
.Ft "int"
.Fn pam_get_authtok "pam_handle_t *pamh" "int item" "const char **authtok" "const char *prompt"
.Ft "int"
.Fn pam_info "pam_handle_t *pamh" "const char *fmt" "..."
.Fn pam_info "const pam_handle_t *pamh" "const char *fmt" "..."
.Ft "int"
.Fn pam_prompt "pam_handle_t *pamh" "int style" "char **resp" "const char *fmt" "..."
.Fn pam_prompt "const pam_handle_t *pamh" "int style" "char **resp" "const char *fmt" "..."
.Ft "int"
.Fn pam_setenv "pam_handle_t *pamh" "const char *name" "const char *value" "int overwrite"
.Ft "int"
.Fn pam_verror "pam_handle_t *pamh" "const char *fmt" "va_list ap"
.Fn pam_verror "const pam_handle_t *pamh" "const char *fmt" "va_list ap"
.Ft "int"
.Fn pam_vinfo "pam_handle_t *pamh" "const char *fmt" "va_list ap"
.Fn pam_vinfo "const pam_handle_t *pamh" "const char *fmt" "va_list ap"
.Ft "int"
.Fn pam_vprompt "pam_handle_t *pamh" "int style" "char **resp" "const char *fmt" "va_list ap"
.Fn pam_vprompt "const pam_handle_t *pamh" "int style" "char **resp" "const char *fmt" "va_list ap"
.\"
.\" $P4: //depot/projects/openpam/doc/man/openpam.man#2 $
.\" $Id: openpam.man 320 2006-02-16 20:33:19Z des $
.\"
.Sh DESCRIPTION
These functions are OpenPAM extensions to the PAM API.

View File

@ -1,5 +1,5 @@
.\"
.\" $P4: //depot/projects/openpam/doc/man/openpam.man#2 $
.\" $Id: openpam.man 320 2006-02-16 20:33:19Z des $
.\"
.Sh DESCRIPTION
These functions are OpenPAM extensions to the PAM API.

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt OPENPAM_BORROW_CRED 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt OPENPAM_FREE_DATA 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt OPENPAM_FREE_ENVLIST 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt OPENPAM_GET_OPTION 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt OPENPAM_LOG 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt OPENPAM_NULLCONV 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt OPENPAM_READLINE 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt OPENPAM_RESTORE_CRED 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt OPENPAM_SET_OPTION 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt OPENPAM_TTYCONV 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM 3
.Os
.Sh NAME
@ -70,9 +71,9 @@
.Ft "int"
.Fn pam_end "pam_handle_t *pamh" "int status"
.Ft "int"
.Fn pam_get_data "pam_handle_t *pamh" "const char *module_data_name" "void **data"
.Fn pam_get_data "const pam_handle_t *pamh" "const char *module_data_name" "const void **data"
.Ft "int"
.Fn pam_get_item "pam_handle_t *pamh" "int item_type" "const void **item"
.Fn pam_get_item "const pam_handle_t *pamh" "int item_type" "const void **item"
.Ft "int"
.Fn pam_get_user "pam_handle_t *pamh" "const char **user" "const char *prompt"
.Ft "const char *"
@ -92,9 +93,9 @@
.Ft "int"
.Fn pam_start "const char *service" "const char *user" "const struct pam_conv *pam_conv" "pam_handle_t **pamh"
.Ft "const char *"
.Fn pam_strerror "pam_handle_t *pamh" "int error_number"
.Fn pam_strerror "const pam_handle_t *pamh" "int error_number"
.\"
.\" $P4: //depot/projects/openpam/doc/man/pam.man#4 $
.\" $Id: pam.man 320 2006-02-16 20:33:19Z des $
.\"
.Sh DESCRIPTION
The Pluggable Authentication Modules (PAM) library abstracts a number

View File

@ -26,7 +26,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $P4: //depot/projects/openpam/doc/man/pam.conf.5#2 $
.\" $Id: pam.conf.5 320 2006-02-16 20:33:19Z des $
.\"
.Dd June 16, 2005
.Dt PAM.CONF 5

View File

@ -1,5 +1,5 @@
.\"
.\" $P4: //depot/projects/openpam/doc/man/pam.man#4 $
.\" $Id: pam.man 320 2006-02-16 20:33:19Z des $
.\"
.Sh DESCRIPTION
The Pluggable Authentication Modules (PAM) library abstracts a number

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_ACCT_MGMT 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_AUTHENTICATE 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_CHAUTHTOK 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_CLOSE_SESSION 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2002-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $P4: //depot/projects/openpam/doc/man/pam_conv.3#4 $
.\" $Id: pam_conv.3 408 2007-12-21 11:36:24Z des $
.\"
.Dd June 16, 2005
.Dt PAM_CONV 3

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_END 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_ERROR 3
.Os
.Sh NAME
@ -45,7 +46,7 @@
.In sys/types.h
.In security/pam_appl.h
.Ft "int"
.Fn pam_error "pam_handle_t *pamh" "const char *fmt" "..."
.Fn pam_error "const pam_handle_t *pamh" "const char *fmt" "..."
.Sh DESCRIPTION
The
.Nm

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_GET_AUTHTOK 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_GET_DATA 3
.Os
.Sh NAME
@ -45,7 +46,7 @@
.In sys/types.h
.In security/pam_appl.h
.Ft "int"
.Fn pam_get_data "pam_handle_t *pamh" "const char *module_data_name" "void **data"
.Fn pam_get_data "const pam_handle_t *pamh" "const char *module_data_name" "const void **data"
.Sh DESCRIPTION
The
.Nm

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_GET_ITEM 3
.Os
.Sh NAME
@ -45,7 +46,7 @@
.In sys/types.h
.In security/pam_appl.h
.Ft "int"
.Fn pam_get_item "pam_handle_t *pamh" "int item_type" "const void **item"
.Fn pam_get_item "const pam_handle_t *pamh" "int item_type" "const void **item"
.Sh DESCRIPTION
The
.Nm

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_GET_USER 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_GETENV 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_GETENVLIST 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_INFO 3
.Os
.Sh NAME
@ -45,7 +46,7 @@
.In sys/types.h
.In security/pam_appl.h
.Ft "int"
.Fn pam_info "pam_handle_t *pamh" "const char *fmt" "..."
.Fn pam_info "const pam_handle_t *pamh" "const char *fmt" "..."
.Sh DESCRIPTION
The
.Nm

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_OPEN_SESSION 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_PROMPT 3
.Os
.Sh NAME
@ -45,7 +46,7 @@
.In sys/types.h
.In security/pam_appl.h
.Ft "int"
.Fn pam_prompt "pam_handle_t *pamh" "int style" "char **resp" "const char *fmt" "..."
.Fn pam_prompt "const pam_handle_t *pamh" "int style" "char **resp" "const char *fmt" "..."
.Sh DESCRIPTION
The
.Nm

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_PUTENV 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_SET_DATA 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_SET_ITEM 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_SETCRED 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_SETENV 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_SM_ACCT_MGMT 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_SM_AUTHENTICATE 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_SM_CHAUTHTOK 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_SM_CLOSE_SESSION 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_SM_OPEN_SESSION 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_SM_SETCRED 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_START 3
.Os
.Sh NAME

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_STRERROR 3
.Os
.Sh NAME
@ -45,7 +46,7 @@
.In sys/types.h
.In security/pam_appl.h
.Ft "const char *"
.Fn pam_strerror "pam_handle_t *pamh" "int error_number"
.Fn pam_strerror "const pam_handle_t *pamh" "int error_number"
.Sh DESCRIPTION
The
.Nm

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_VERROR 3
.Os
.Sh NAME
@ -45,7 +46,7 @@
.In sys/types.h
.In security/pam_appl.h
.Ft "int"
.Fn pam_verror "pam_handle_t *pamh" "const char *fmt" "va_list ap"
.Fn pam_verror "const pam_handle_t *pamh" "const char *fmt" "va_list ap"
.Sh DESCRIPTION
The
.Nm

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_VINFO 3
.Os
.Sh NAME
@ -45,7 +46,7 @@
.In sys/types.h
.In security/pam_appl.h
.Ft "int"
.Fn pam_vinfo "pam_handle_t *pamh" "const char *fmt" "va_list ap"
.Fn pam_vinfo "const pam_handle_t *pamh" "const char *fmt" "va_list ap"
.Sh DESCRIPTION
The
.Nm

View File

@ -1,5 +1,6 @@
.\"-
.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
.\" Copyright (c) 2004-2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" This software was developed for the FreeBSD Project by ThinkSec AS and
@ -33,7 +34,7 @@
.\"
.\" $P4$
.\"
.Dd June 16, 2005
.Dd December 21, 2007
.Dt PAM_VPROMPT 3
.Os
.Sh NAME
@ -45,7 +46,7 @@
.In sys/types.h
.In security/pam_appl.h
.Ft "int"
.Fn pam_vprompt "pam_handle_t *pamh" "int style" "char **resp" "const char *fmt" "va_list ap"
.Fn pam_vprompt "const pam_handle_t *pamh" "int style" "char **resp" "const char *fmt" "va_list ap"
.Sh DESCRIPTION
The
.Nm

View File

@ -1,3 +1,3 @@
# $P4: //depot/projects/openpam/include/Makefile.am#2 $
# $Id: Makefile.am 320 2006-02-16 20:33:19Z des $
SUBDIRS = security

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am.
# Makefile.in generated by automake 1.9.6 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004 Free Software Foundation, Inc.
# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@ -14,7 +14,7 @@
@SET_MAKE@
# $P4: //depot/projects/openpam/include/Makefile.am#2 $
# $Id: Makefile.am 320 2006-02-16 20:33:19Z des $
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
@ -44,7 +44,7 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(mkdir_p)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
SOURCES =
@ -90,6 +90,7 @@ EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
GREP = @GREP@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -112,20 +113,20 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
WITH_PAM_SU_FALSE = @WITH_PAM_SU_FALSE@
WITH_PAM_SU_TRUE = @WITH_PAM_SU_TRUE@
WITH_DOC_FALSE = @WITH_DOC_FALSE@
WITH_DOC_TRUE = @WITH_DOC_TRUE@
WITH_PAM_UNIX_FALSE = @WITH_PAM_UNIX_FALSE@
WITH_PAM_UNIX_TRUE = @WITH_PAM_UNIX_TRUE@
ac_ct_AR = @ac_ct_AR@
WITH_SU_FALSE = @WITH_SU_FALSE@
WITH_SU_TRUE = @WITH_SU_TRUE@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
@ -133,6 +134,8 @@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@ -140,23 +143,30 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
@ -216,7 +226,13 @@ uninstall-info-am:
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@set fnord $$MAKEFLAGS; amf=$$2; \
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
@ -228,7 +244,7 @@ $(RECURSIVE_TARGETS):
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
@ -236,7 +252,13 @@ $(RECURSIVE_TARGETS):
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
@set fnord $$MAKEFLAGS; amf=$$2; \
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
@ -257,7 +279,7 @@ maintainer-clean-recursive:
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
@ -356,15 +378,17 @@ distdir: $(DISTFILES)
|| exit 1; \
fi; \
done
list='$(SUBDIRS)'; for subdir in $$list; do \
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| mkdir "$(distdir)/$$subdir" \
|| $(mkdir_p) "$(distdir)/$$subdir" \
|| exit 1; \
distdir=`$(am__cd) $(distdir) && pwd`; \
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
(cd $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="../$(top_distdir)" \
distdir="../$(distdir)/$$subdir" \
top_distdir="$$top_distdir" \
distdir="$$distdir/$$subdir" \
distdir) \
|| exit 1; \
fi; \
@ -393,7 +417,7 @@ mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES)
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"

View File

@ -1,9 +1,10 @@
# $P4: //depot/projects/openpam/include/security/Makefile.am#3 $
# $Id: Makefile.am 405 2007-12-19 11:38:27Z des $
openpamdir = $(includedir)/security
openpam_HEADERS = \
openpam.h \
openpam_attr.h \
openpam_version.h \
pam_appl.h \
pam_constants.h \

View File

@ -1,8 +1,8 @@
# Makefile.in generated by automake 1.8.5 from Makefile.am.
# Makefile.in generated by automake 1.9.6 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004 Free Software Foundation, Inc.
# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@ -14,7 +14,7 @@
@SET_MAKE@
# $P4: //depot/projects/openpam/include/security/Makefile.am#3 $
# $Id: Makefile.am 405 2007-12-19 11:38:27Z des $
srcdir = @srcdir@
top_srcdir = @top_srcdir@
@ -46,11 +46,17 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(mkdir_p)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
am__installdirs = "$(DESTDIR)$(openpamdir)"
openpamHEADERS_INSTALL = $(INSTALL_HEADER)
HEADERS = $(openpam_HEADERS)
@ -88,6 +94,7 @@ EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
GREP = @GREP@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
@ -110,20 +117,20 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
WITH_PAM_SU_FALSE = @WITH_PAM_SU_FALSE@
WITH_PAM_SU_TRUE = @WITH_PAM_SU_TRUE@
WITH_DOC_FALSE = @WITH_DOC_FALSE@
WITH_DOC_TRUE = @WITH_DOC_TRUE@
WITH_PAM_UNIX_FALSE = @WITH_PAM_UNIX_FALSE@
WITH_PAM_UNIX_TRUE = @WITH_PAM_UNIX_TRUE@
ac_ct_AR = @ac_ct_AR@
WITH_SU_FALSE = @WITH_SU_FALSE@
WITH_SU_TRUE = @WITH_SU_TRUE@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
@ -131,6 +138,8 @@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
@ -138,23 +147,30 @@ build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
@ -166,6 +182,7 @@ target_vendor = @target_vendor@
openpamdir = $(includedir)/security
openpam_HEADERS = \
openpam.h \
openpam_attr.h \
openpam_version.h \
pam_appl.h \
pam_constants.h \
@ -219,7 +236,7 @@ install-openpamHEADERS: $(openpam_HEADERS)
test -z "$(openpamdir)" || $(mkdir_p) "$(DESTDIR)$(openpamdir)"
@list='$(openpam_HEADERS)'; for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
f="`echo $$p | sed -e 's|^.*/||'`"; \
f=$(am__strip_dir) \
echo " $(openpamHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(openpamdir)/$$f'"; \
$(openpamHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(openpamdir)/$$f"; \
done
@ -227,7 +244,7 @@ install-openpamHEADERS: $(openpam_HEADERS)
uninstall-openpamHEADERS:
@$(NORMAL_UNINSTALL)
@list='$(openpam_HEADERS)'; for p in $$list; do \
f="`echo $$p | sed -e 's|^.*/||'`"; \
f=$(am__strip_dir) \
echo " rm -f '$(DESTDIR)$(openpamdir)/$$f'"; \
rm -f "$(DESTDIR)$(openpamdir)/$$f"; \
done
@ -333,7 +350,7 @@ mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f $(CONFIG_CLEAN_FILES)
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,17 +32,19 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/include/security/openpam.h#28 $
* $Id: openpam.h 408 2007-12-21 11:36:24Z des $
*/
#ifndef _SECURITY_OPENPAM_H_INCLUDED
#define _SECURITY_OPENPAM_H_INCLUDED
#ifndef SECURITY_OPENPAM_H_INCLUDED
#define SECURITY_OPENPAM_H_INCLUDED
/*
* Annoying but necessary header pollution
*/
#include <stdarg.h>
#include <security/openpam_attr.h>
#ifdef __cplusplus
extern "C" {
#endif
@ -53,7 +56,8 @@ struct passwd;
*/
int
openpam_borrow_cred(pam_handle_t *_pamh,
const struct passwd *_pwd);
const struct passwd *_pwd)
OPENPAM_NONNULL((1,2));
void
openpam_free_data(pam_handle_t *_pamh,
@ -68,7 +72,8 @@ openpam_get_option(pam_handle_t *_pamh,
const char *_option);
int
openpam_restore_cred(pam_handle_t *_pamh);
openpam_restore_cred(pam_handle_t *_pamh)
OPENPAM_NONNULL((1));
int
openpam_set_option(pam_handle_t *_pamh,
@ -76,50 +81,64 @@ openpam_set_option(pam_handle_t *_pamh,
const char *_value);
int
pam_error(pam_handle_t *_pamh,
pam_error(const pam_handle_t *_pamh,
const char *_fmt,
...);
...)
OPENPAM_FORMAT ((__printf__, 2, 3))
OPENPAM_NONNULL((1,2));
int
pam_get_authtok(pam_handle_t *_pamh,
int _item,
const char **_authtok,
const char *_prompt);
const char *_prompt)
OPENPAM_NONNULL((1,3));
int
pam_info(pam_handle_t *_pamh,
pam_info(const pam_handle_t *_pamh,
const char *_fmt,
...);
...)
OPENPAM_FORMAT ((__printf__, 2, 3))
OPENPAM_NONNULL((1,2));
int
pam_prompt(pam_handle_t *_pamh,
pam_prompt(const pam_handle_t *_pamh,
int _style,
char **_resp,
const char *_fmt,
...);
...)
OPENPAM_FORMAT ((__printf__, 4, 5))
OPENPAM_NONNULL((1,4));
int
pam_setenv(pam_handle_t *_pamh,
const char *_name,
const char *_value,
int _overwrite);
int _overwrite)
OPENPAM_NONNULL((1,2,3));
int
pam_vinfo(pam_handle_t *_pamh,
pam_vinfo(const pam_handle_t *_pamh,
const char *_fmt,
va_list _ap);
va_list _ap)
OPENPAM_FORMAT ((__printf__, 2, 0))
OPENPAM_NONNULL((1,2));
int
pam_verror(pam_handle_t *_pamh,
pam_verror(const pam_handle_t *_pamh,
const char *_fmt,
va_list _ap);
va_list _ap)
OPENPAM_FORMAT ((__printf__, 2, 0))
OPENPAM_NONNULL((1,2));
int
pam_vprompt(pam_handle_t *_pamh,
pam_vprompt(const pam_handle_t *_pamh,
int _style,
char **_resp,
const char *_fmt,
va_list _ap);
va_list _ap)
OPENPAM_FORMAT ((__printf__, 4, 0))
OPENPAM_NONNULL((1,4));
/*
* Read cooked lines.
@ -130,7 +149,8 @@ pam_vprompt(pam_handle_t *_pamh,
char *
openpam_readline(FILE *_f,
int *_lineno,
size_t *_lenp);
size_t *_lenp)
OPENPAM_NONNULL((1));
#endif
/*
@ -151,10 +171,8 @@ _openpam_log(int _level,
const char *_func,
const char *_fmt,
...)
#if defined(__GNUC__)
__attribute__((__format__(__printf__, 3, 4)))
#endif
;
OPENPAM_FORMAT ((__printf__, 3, 4))
OPENPAM_NONNULL((3));
#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
#define openpam_log(lvl, ...) \
@ -172,7 +190,9 @@ _openpam_log(int _level,
void
openpam_log(int _level,
const char *_format,
...);
...)
OPENPAM_FORMAT ((__printf__, 2, 3))
OPENPAM_NONNULL((2));
#endif
/*
@ -217,6 +237,11 @@ PAM_EXTERN int \
pam_sm_##type(pam_handle_t *pamh, int flags, \
int argc, const char *argv[]) \
{ \
\
(void)pamh; \
(void)flags; \
(void)argc; \
(void)argv; \
return (PAM_IGNORE); \
}
@ -234,9 +259,6 @@ struct pam_module {
char *path;
pam_func_t func[PAM_NUM_PRIMITIVES];
void *dlh;
int refcount;
pam_module_t *prev;
pam_module_t *next;
};
/*
@ -244,39 +266,43 @@ struct pam_module {
*/
#if defined(PAM_SM_AUTH) || defined(PAM_SM_ACCOUNT) || \
defined(PAM_SM_SESSION) || defined(PAM_SM_PASSWORD)
#define LINUX_PAM_MODULE
# define LINUX_PAM_MODULE
#endif
#if defined(LINUX_PAM_MODULE) && !defined(PAM_SM_AUTH)
#define _PAM_SM_AUTHENTICATE 0
#define _PAM_SM_SETCRED 0
# define _PAM_SM_AUTHENTICATE 0
# define _PAM_SM_SETCRED 0
#else
#undef PAM_SM_AUTH
#define PAM_SM_AUTH
#define _PAM_SM_AUTHENTICATE pam_sm_authenticate
#define _PAM_SM_SETCRED pam_sm_setcred
# undef PAM_SM_AUTH
# define PAM_SM_AUTH
# define _PAM_SM_AUTHENTICATE pam_sm_authenticate
# define _PAM_SM_SETCRED pam_sm_setcred
#endif
#if defined(LINUX_PAM_MODULE) && !defined(PAM_SM_ACCOUNT)
#define _PAM_SM_ACCT_MGMT 0
# define _PAM_SM_ACCT_MGMT 0
#else
#undef PAM_SM_ACCOUNT
#define PAM_SM_ACCOUNT
#define _PAM_SM_ACCT_MGMT pam_sm_acct_mgmt
# undef PAM_SM_ACCOUNT
# define PAM_SM_ACCOUNT
# define _PAM_SM_ACCT_MGMT pam_sm_acct_mgmt
#endif
#if defined(LINUX_PAM_MODULE) && !defined(PAM_SM_SESSION)
#define _PAM_SM_OPEN_SESSION 0
#define _PAM_SM_CLOSE_SESSION 0
# define _PAM_SM_OPEN_SESSION 0
# define _PAM_SM_CLOSE_SESSION 0
#else
#undef PAM_SM_SESSION
#define PAM_SM_SESSION
#define _PAM_SM_OPEN_SESSION pam_sm_open_session
#define _PAM_SM_CLOSE_SESSION pam_sm_close_session
# undef PAM_SM_SESSION
# define PAM_SM_SESSION
# define _PAM_SM_OPEN_SESSION pam_sm_open_session
# define _PAM_SM_CLOSE_SESSION pam_sm_close_session
#endif
#if defined(LINUX_PAM_MODULE) && !defined(PAM_SM_PASSWORD)
#define _PAM_SM_CHAUTHTOK 0
# define _PAM_SM_CHAUTHTOK 0
#else
#undef PAM_SM_PASSWORD
#define PAM_SM_PASSWORD
#define _PAM_SM_CHAUTHTOK pam_sm_chauthtok
# undef PAM_SM_PASSWORD
# define PAM_SM_PASSWORD
# define _PAM_SM_CHAUTHTOK pam_sm_chauthtok
#endif
/*
@ -284,33 +310,40 @@ struct pam_module {
* You are not expected to understand this.
*/
#if defined(__FreeBSD__)
#define PAM_SOEXT ".so"
# define PAM_SOEXT ".so"
#else
#ifndef NO_STATIC_MODULES
#define NO_STATIC_MODULES
#endif
# undef NO_STATIC_MODULES
# define NO_STATIC_MODULES
#endif
#if defined(__GNUC__) && !defined(__PIC__) && !defined(NO_STATIC_MODULES)
/* gcc, static linking */
#include <sys/cdefs.h>
#include <linker_set.h>
#define OPENPAM_STATIC_MODULES
#define PAM_EXTERN static
#define PAM_MODULE_ENTRY(name) \
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 }; \
DATA_SET(_openpam_static_modules, _pam_module)
# include <sys/cdefs.h>
# include <linker_set.h>
# define OPENPAM_STATIC_MODULES
# define PAM_EXTERN static
# define PAM_MODULE_ENTRY(name) \
static char _pam_name[] = name PAM_SOEXT; \
static struct pam_module _pam_module = { \
.path = _pam_name, \
.func = { \
[PAM_SM_AUTHENTICATE] = _PAM_SM_AUTHENTICATE, \
[PAM_SM_SETCRED] = _PAM_SM_SETCRED, \
[PAM_SM_ACCT_MGMT] = _PAM_SM_ACCT_MGMT, \
[PAM_SM_OPEN_SESSION] = _PAM_SM_OPEN_SESSION, \
[PAM_SM_CLOSE_SESSION] = _PAM_SM_CLOSE_SESSION, \
[PAM_SM_CHAUTHTOK] = _PAM_SM_CHAUTHTOK \
}, \
}; \
DATA_SET(_openpam_static_modules, _pam_module)
#else
/* normal case */
#define PAM_EXTERN
#define PAM_MODULE_ENTRY(name)
# define PAM_EXTERN
# define PAM_MODULE_ENTRY(name)
#endif
#ifdef __cplusplus
}
#endif
#endif
#endif /* !SECURITY_OPENPAM_H_INCLUDED */

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,14 +32,14 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/include/security/openpam_version.h#14 $
* $Id: openpam_version.h 409 2007-12-21 11:38:50Z des $
*/
#ifndef _OPENPAM_VERSION_H_INCLUDED
#define _OPENPAM_VERSION_H_INCLUDED
#ifndef SECURITY_OPENPAM_VERSION_H_INCLUDED
#define SECURITY_OPENPAM_VERSION_H_INCLUDED
#define _OPENPAM
#define _OPENPAM_VERSION 20050616
#define _OPENPAM_RELEASE "Figwort"
#define OPENPAM
#define OPENPAM_VERSION 20071221
#define OPENPAM_RELEASE "Hydrangea"
#endif
#endif /* !SECURITY_OPENPAM_VERSION_H_INCLUDED */

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,14 +32,15 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/include/security/pam_appl.h#14 $
* $Id: pam_appl.h 408 2007-12-21 11:36:24Z des $
*/
#ifndef _PAM_APPL_H_INCLUDED
#define _PAM_APPL_H_INCLUDED
#ifndef SECURITY_PAM_APPL_H_INCLUDED
#define SECURITY_PAM_APPL_H_INCLUDED
#include <security/pam_types.h>
#include <security/pam_constants.h>
#include <security/openpam_attr.h>
#ifdef __cplusplus
extern "C" {
@ -50,53 +52,65 @@ extern "C" {
int
pam_acct_mgmt(pam_handle_t *_pamh,
int _flags);
int _flags)
OPENPAM_NONNULL((1));
int
pam_authenticate(pam_handle_t *_pamh,
int _flags);
int _flags)
OPENPAM_NONNULL((1));
int
pam_chauthtok(pam_handle_t *_pamh,
int _flags);
int _flags)
OPENPAM_NONNULL((1));
int
pam_close_session(pam_handle_t *_pamh,
int _flags);
int _flags)
OPENPAM_NONNULL((1));
int
pam_end(pam_handle_t *_pamh,
int _status);
int _status)
OPENPAM_NONNULL((1));
int
pam_get_data(pam_handle_t *_pamh,
pam_get_data(const pam_handle_t *_pamh,
const char *_module_data_name,
void **_data);
const void **_data)
OPENPAM_NONNULL((1,2,3));
int
pam_get_item(pam_handle_t *_pamh,
pam_get_item(const pam_handle_t *_pamh,
int _item_type,
const void **_item);
const void **_item)
OPENPAM_NONNULL((1,3));
int
pam_get_user(pam_handle_t *_pamh,
const char **_user,
const char *_prompt);
const char *_prompt)
OPENPAM_NONNULL((1,2));
const char *
pam_getenv(pam_handle_t *_pamh,
const char *_name);
const char *_name)
OPENPAM_NONNULL((1,2));
char **
pam_getenvlist(pam_handle_t *_pamh);
pam_getenvlist(pam_handle_t *_pamh)
OPENPAM_NONNULL((1));
int
pam_open_session(pam_handle_t *_pamh,
int _flags);
int _flags)
OPENPAM_NONNULL((1));
int
pam_putenv(pam_handle_t *_pamh,
const char *_namevalue);
const char *_namevalue)
OPENPAM_NONNULL((1,2));
int
pam_set_data(pam_handle_t *_pamh,
@ -104,25 +118,29 @@ pam_set_data(pam_handle_t *_pamh,
void *_data,
void (*_cleanup)(pam_handle_t *_pamh,
void *_data,
int _pam_end_status));
int _pam_end_status))
OPENPAM_NONNULL((1,2));
int
pam_set_item(pam_handle_t *_pamh,
int _item_type,
const void *_item);
const void *_item)
OPENPAM_NONNULL((1));
int
pam_setcred(pam_handle_t *_pamh,
int _flags);
int _flags)
OPENPAM_NONNULL((1));
int
pam_start(const char *_service,
const char *_user,
const struct pam_conv *_pam_conv,
pam_handle_t **_pamh);
pam_handle_t **_pamh)
OPENPAM_NONNULL((4));
const char *
pam_strerror(pam_handle_t *_pamh,
pam_strerror(const pam_handle_t *_pamh,
int _error_number);
/*
@ -177,4 +195,4 @@ pam_set_mapped_username(pam_handle_t *_pamh,
}
#endif
#endif
#endif /* !SECURITY_PAM_APPL_H_INCLUDED */

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,11 +32,11 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/include/security/pam_constants.h#22 $
* $Id: pam_constants.h 408 2007-12-21 11:36:24Z des $
*/
#ifndef _PAM_CONSTANTS_H_INCLUDED
#define _PAM_CONSTANTS_H_INCLUDED
#ifndef SECURITY_PAM_CONSTANTS_H_INCLUDED
#define SECURITY_PAM_CONSTANTS_H_INCLUDED
#include <security/openpam_version.h>
@ -132,4 +133,4 @@ enum {
}
#endif
#endif
#endif /* !SECURITY_PAM_CONSTANTS_H_INCLUDED */

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,11 +32,11 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/include/security/pam_modules.h#9 $
* $Id: pam_modules.h 408 2007-12-21 11:36:24Z des $
*/
#ifndef _PAM_MODULES_H_INCLUDED
#define _PAM_MODULES_H_INCLUDED
#ifndef SECURITY_PAM_MODULES_H_INCLUDED
#define SECURITY_PAM_MODULES_H_INCLUDED
#include <security/pam_types.h>
#include <security/pam_constants.h>
@ -157,4 +158,4 @@ pam_sm_set_mapped_username(pam_handle_t *_pamh,
}
#endif
#endif
#endif /* !SECURITY_PAM_MODULES_H_INCLUDED */

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,11 +32,11 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/include/security/pam_types.h#13 $
* $Id: pam_types.h 408 2007-12-21 11:36:24Z des $
*/
#ifndef _PAM_TYPES_H_INCLUDED
#define _PAM_TYPES_H_INCLUDED
#ifndef SECURITY_PAM_TYPES_H_INCLUDED
#define SECURITY_PAM_TYPES_H_INCLUDED
#include <stddef.h>
@ -77,11 +78,11 @@ typedef struct pam_handle pam_handle_t;
typedef struct pam_repository {
char *type;
void *scope;
size_t scope_len;
size_t scope_len;
} pam_repository_t;
#ifdef __cplusplus
}
#endif
#endif
#endif /* !SECURITY_PAM_TYPES_H_INCLUDED */

View File

@ -1,7 +1,7 @@
#!/bin/sh
# install - install a program, script, or datafile
scriptversion=2004-04-01.17
scriptversion=2005-05-14.22
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
@ -58,9 +58,6 @@ stripprog="${STRIPPROG-strip}"
rmprog="${RMPROG-rm}"
mkdirprog="${MKDIRPROG-mkdir}"
transformbasename=
transform_arg=
instcmd="$mvprog"
chmodcmd="$chmodprog 0755"
chowncmd=
chgrpcmd=
@ -70,23 +67,27 @@ mvcmd="$mvprog"
src=
dst=
dir_arg=
dstarg=
no_target_directory=
usage="Usage: $0 [OPTION]... SRCFILE DSTFILE
usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
or: $0 [OPTION]... SRCFILES... DIRECTORY
or: $0 -d DIRECTORIES...
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
or: $0 [OPTION]... -d DIRECTORIES...
In the first form, install SRCFILE to DSTFILE, removing SRCFILE by default.
In the second, create the directory path DIR.
In the 1st form, copy SRCFILE to DSTFILE.
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
In the 4th, create DIRECTORIES.
Options:
-b=TRANSFORMBASENAME
-c copy source (using $cpprog) instead of moving (using $mvprog).
-c (ignored)
-d create directories instead of installing files.
-g GROUP $chgrp installed files to GROUP.
-m MODE $chmod installed files to MODE.
-o USER $chown installed files to USER.
-s strip installed files (using $stripprog).
-t=TRANSFORM
-g GROUP $chgrpprog installed files to GROUP.
-m MODE $chmodprog installed files to MODE.
-o USER $chownprog installed files to USER.
-s $stripprog installed files.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
--help display this help and exit.
--version display version info and exit.
@ -96,12 +97,7 @@ Environment variables override the default commands:
while test -n "$1"; do
case $1 in
-b=*) transformbasename=`echo $1 | sed 's/-b=//'`
shift
continue;;
-c) instcmd=$cpprog
shift
-c) shift
continue;;
-d) dir_arg=true
@ -113,7 +109,7 @@ while test -n "$1"; do
shift
continue;;
--help) echo "$usage"; exit 0;;
--help) echo "$usage"; exit $?;;
-m) chmodcmd="$chmodprog $2"
shift
@ -129,14 +125,20 @@ while test -n "$1"; do
shift
continue;;
-t=*) transformarg=`echo $1 | sed 's/-t=//'`
shift
continue;;
-t) dstarg=$2
shift
shift
continue;;
--version) echo "$0 $scriptversion"; exit 0;;
-T) no_target_directory=true
shift
continue;;
--version) echo "$0 $scriptversion"; exit $?;;
*) # When -d is used, all remaining arguments are directories to create.
test -n "$dir_arg" && break
# When -t is used, the destination is already specified.
test -n "$dir_arg$dstarg" && break
# Otherwise, the last argument is the destination. Remove it from $@.
for arg
do
@ -174,13 +176,13 @@ do
src=
if test -d "$dst"; then
instcmd=:
mkdircmd=:
chmodcmd=
else
instcmd=$mkdirprog
mkdircmd=$mkdirprog
fi
else
# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if test ! -f "$src" && test ! -d "$src"; then
@ -202,12 +204,16 @@ do
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
if test -n "$no_target_directory"; then
echo "$0: $dstarg: Is a directory" >&2
exit 1
fi
dst=$dst/`basename "$src"`
fi
fi
# This sed command emulates the dirname command.
dstdir=`echo "$dst" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'`
# Make sure that the destination directory exists.
@ -220,7 +226,8 @@ do
oIFS=$IFS
# Some sh's can't handle IFS=/ for some reason.
IFS='%'
set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
shift
IFS=$oIFS
pathcomp=
@ -229,51 +236,42 @@ do
pathcomp=$pathcomp$1
shift
if test ! -d "$pathcomp"; then
$mkdirprog "$pathcomp" || lasterr=$?
$mkdirprog "$pathcomp"
# mkdir can fail with a `File exist' error in case several
# install-sh are creating the directory concurrently. This
# is OK.
test ! -d "$pathcomp" && { (exit ${lasterr-1}); exit; }
test -d "$pathcomp" || exit
fi
pathcomp=$pathcomp/
done
fi
if test -n "$dir_arg"; then
$doit $instcmd "$dst" \
$doit $mkdircmd "$dst" \
&& { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
&& { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
&& { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
&& { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
else
# If we're going to rename the final executable, determine the name now.
if test -z "$transformarg"; then
dstfile=`basename "$dst"`
else
dstfile=`basename "$dst" $transformbasename \
| sed $transformarg`$transformbasename
fi
# don't allow the sed command to completely eliminate the filename.
test -z "$dstfile" && dstfile=`basename "$dst"`
dstfile=`basename "$dst"`
# Make a couple of temp file names in the proper directory.
dsttmp=$dstdir/_inst.$$_
rmtmp=$dstdir/_rm.$$_
# Trap to clean up those temp files at exit.
trap 'status=$?; rm -f "$dsttmp" "$rmtmp" && exit $status' 0
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
trap '(exit $?); exit' 1 2 13 15
# Move or copy the file name to the temp name
$doit $instcmd "$src" "$dsttmp" &&
# Copy the file name to the temp name.
$doit $cpprog "$src" "$dsttmp" &&
# and set any options; do chmod last to preserve setuid bits.
#
# If any of these fail, we abort the whole thing. If we want to
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $instcmd $src $dsttmp" command.
# errors from the above "$doit $cpprog $src $dsttmp" command.
#
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
&& { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
@ -298,7 +296,7 @@ do
|| $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
|| {
echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
(exit 1); exit
(exit 1); exit 1
}
else
:
@ -309,12 +307,12 @@ do
$doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
}
}
fi || { (exit 1); exit; }
fi || { (exit 1); exit 1; }
done
# The final little trick to "correctly" pass the exit status to the exit trap.
{
(exit 0); exit
(exit 0); exit 0
}
# Local variables:

View File

@ -1,4 +1,4 @@
# $P4: //depot/projects/openpam/lib/Makefile.am#5 $
# $Id: Makefile.am 395 2007-06-03 20:26:18Z des $
NULL =
@ -6,6 +6,8 @@ INCLUDES = -I$(top_srcdir)/include
lib_LTLIBRARIES = libpam.la
noinst_HEADERS = openpam_impl.h
libpam_la_SOURCES = \
openpam_borrow_cred.c \
openpam_configure.c \
@ -54,9 +56,21 @@ libpam_la_CFLAGS = -DOPENPAM_MODULES_DIR='"@OPENPAM_MODULES_DIR@/"'
libpam_la_LDFLAGS = -no-undefined -version-info @LIB_MAJ@ @DL_LIBS@
# Not implemented yet:
# pam_authenticate_secondary.c
# pam_get_mapped_authtok.c
# pam_get_mapped_username.c
# pam_set_mapped_authtok.c
# pam_set_mapped_username.c
EXTRA_DIST = \
pam_authenticate_secondary.c \
pam_get_mapped_authtok.c \
pam_get_mapped_username.c \
pam_set_mapped_authtok.c \
pam_set_mapped_username.c \
\
pam_sm_acct_mgmt.c \
pam_sm_authenticate.c \
pam_sm_authenticate_secondary.c \
pam_sm_chauthtok.c \
pam_sm_close_session.c \
pam_sm_get_mapped_authtok.c \
pam_sm_get_mapped_username.c \
pam_sm_open_session.c \
pam_sm_set_mapped_authtok.c \
pam_sm_set_mapped_username.c \
pam_sm_setcred.c

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_borrow_cred.c#13 $
* $Id: openpam_borrow_cred.c 408 2007-12-21 11:36:24Z des $
*/
#include <sys/param.h>
@ -57,7 +58,7 @@ openpam_borrow_cred(pam_handle_t *pamh,
const struct passwd *pwd)
{
struct pam_saved_cred *scred;
void *scredp;
const void *scredp;
int r;
ENTERI(pwd->pw_uid);

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2001-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_configure.c#11 $
* $Id: openpam_configure.c 408 2007-12-21 11:36:24Z des $
*/
#include <ctype.h>

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_dispatch.c#21 $
* $Id: openpam_dispatch.c 408 2007-12-21 11:36:24Z des $
*/
#include <sys/param.h>

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_dynamic.c#14 $
* $Id: openpam_dynamic.c 408 2007-12-21 11:36:24Z des $
*/
#include <dlfcn.h>
@ -80,6 +81,7 @@ openpam_dynamic(const char *path)
*strrchr(vpath, '.') = '\0';
if ((dlh = dlopen(vpath, RTLD_NOW)) == NULL) {
openpam_log(PAM_LOG_DEBUG, "%s: %s", vpath, dlerror());
FREE(vpath);
FREE(module);
return (NULL);
}

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_findenv.c#12 $
* $Id: openpam_findenv.c 408 2007-12-21 11:36:24Z des $
*/
#include <string.h>

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_free_data.c#7 $
* $Id: openpam_free_data.c 408 2007-12-21 11:36:24Z des $
*/
#include <stdlib.h>

View File

@ -25,7 +25,7 @@
* (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_free_envlist.c#2 $
* $Id: openpam_free_envlist.c 320 2006-02-16 20:33:19Z des $
*/
#include <stdlib.h>

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_get_option.c#10 $
* $Id: openpam_get_option.c 408 2007-12-21 11:36:24Z des $
*/
#include <sys/param.h>

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2001-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_impl.h#29 $
* $Id: openpam_impl.h 408 2007-12-21 11:36:24Z des $
*/
#ifndef _OPENPAM_IMPL_H_INCLUDED

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_load.c#21 $
* $Id: openpam_load.c 408 2007-12-21 11:36:24Z des $
*/
#include <dlfcn.h>
@ -60,11 +61,8 @@ const char *_pam_sm_func_name[PAM_NUM_PRIMITIVES] = {
"pam_sm_chauthtok"
};
static pam_module_t *modules;
/*
* Locate a matching dynamic or static module. Keep a list of previously
* found modules to speed up the process.
* Locate a matching dynamic or static module.
*/
pam_module_t *
@ -72,12 +70,6 @@ openpam_load_module(const char *path)
{
pam_module_t *module;
/* check cache first */
for (module = modules; module != NULL; module = module->next)
if (strcmp(module->path, path) == 0)
goto found;
/* nope; try to load */
module = openpam_dynamic(path);
openpam_log(PAM_LOG_DEBUG, "%s dynamic %s",
(module == NULL) ? "no" : "using", path);
@ -94,14 +86,6 @@ openpam_load_module(const char *path)
openpam_log(PAM_LOG_ERROR, "no %s found", path);
return (NULL);
}
openpam_log(PAM_LOG_DEBUG, "adding %s to cache", module->path);
module->next = modules;
if (module->next != NULL)
module->next->prev = module;
module->prev = NULL;
modules = module;
found:
++module->refcount;
return (module);
}
@ -116,25 +100,10 @@ openpam_release_module(pam_module_t *module)
{
if (module == NULL)
return;
--module->refcount;
if (module->refcount > 0)
/* still in use */
return;
if (module->refcount < 0) {
openpam_log(PAM_LOG_ERROR, "module %s has negative refcount",
module->path);
module->refcount = 0;
}
if (module->dlh == NULL)
/* static module */
return;
dlclose(module->dlh);
if (module->prev != NULL)
module->prev->next = module->next;
if (module->next != NULL)
module->next->prev = module->prev;
if (module == modules)
modules = module->next;
openpam_log(PAM_LOG_DEBUG, "releasing %s", module->path);
FREE(module->path);
FREE(module);

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_log.c#24 $
* $Id: openpam_log.c 408 2007-12-21 11:36:24Z des $
*/
#include <ctype.h>
@ -45,7 +46,11 @@
#include "openpam_impl.h"
#ifdef OPENPAM_DEBUG
int _openpam_debug = 1;
#else
int _openpam_debug = 0;
#endif
#if !defined(openpam_log)

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_nullconv.c#7 $
* $Id: openpam_nullconv.c 408 2007-12-21 11:36:24Z des $
*/
#include <sys/types.h>

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $Id: openpam_readline.c 380 2006-03-14 14:42:09Z des $
* $Id: openpam_readline.c 408 2007-12-21 11:36:24Z des $
*/
#include <ctype.h>

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_restore_cred.c#11 $
* $Id: openpam_restore_cred.c 408 2007-12-21 11:36:24Z des $
*/
#include <sys/param.h>
@ -55,8 +56,8 @@
int
openpam_restore_cred(pam_handle_t *pamh)
{
struct pam_saved_cred *scred;
void *scredp;
const struct pam_saved_cred *scred;
const void *scredp;
int r;
ENTER();

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_set_option.c#13 $
* $Id: openpam_set_option.c 408 2007-12-21 11:36:24Z des $
*/
#include <sys/param.h>

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_static.c#6 $
* $Id: openpam_static.c 408 2007-12-21 11:36:24Z des $
*/
#include <string.h>

View File

@ -1,5 +1,6 @@
/*-
* Copyright (c) 2002-2003 Networks Associates Technology, Inc.
* Copyright (c) 2004-2007 Dag-Erling Smørgrav
* All rights reserved.
*
* This software was developed for the FreeBSD Project by ThinkSec AS and
@ -31,7 +32,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $P4: //depot/projects/openpam/lib/openpam_ttyconv.c#26 $
* $Id: openpam_ttyconv.c 408 2007-12-21 11:36:24Z des $
*/
#include <sys/types.h>
@ -87,6 +88,7 @@ prompt(const char *msg)
fd = fileno(stdin);
buf[0] = '\0';
eof = error = 0;
saved_alarm = 0;
if (openpam_ttyconv_timeout >= 0)
saved_alarm = alarm(openpam_ttyconv_timeout);
ch = '\0';
@ -110,7 +112,7 @@ prompt(const char *msg)
alarm(0);
sigaction(SIGALRM, &saved_action, NULL);
sigprocmask(SIG_SETMASK, &saved_sigset, NULL);
if (openpam_ttyconv_timeout >= 0)
if (saved_alarm > 0)
alarm(saved_alarm);
if (error == EINTR)
fputs(" timeout!", stderr);

Some files were not shown because too many files have changed in this diff Show More