Import of pkgsrc-2013Q2

This commit is contained in:
2013-09-26 17:14:40 +02:00
commit 785076ae39
74991 changed files with 4380255 additions and 0 deletions

13
security/PAM/DESCR Normal file
View File

@@ -0,0 +1,13 @@
PAM provides Pluggable Authentication Modules. It is a flexible,
dynamically configurable mechanism for authenticating users.
PAM provides a way to develop programs that are independent of
authentication scheme. These programs need "authentication modules" to be
attached to them at run-time in order to work. Which authentication module
is to be attached is dependent upon the local system setup and is at the
discretion of the local system administrator.
This package includes the dynamic and static libpam libraries,
developer files, and related programmer's man pages documenting
the functions. Over 25 PAM modules are included. This is Linux-PAM;
it works with Solaris, NetBSD, AIX, and other operating systems.

9
security/PAM/MESSAGE Normal file
View File

@@ -0,0 +1,9 @@
===========================================================================
$NetBSD: MESSAGE,v 1.1 2004/01/08 19:18:00 jlam Exp $
${PKGNAME} will use the following directory as the default
location of its plugin modules:
${PAM_MODULEDIR}
===========================================================================

118
security/PAM/Makefile Normal file
View File

@@ -0,0 +1,118 @@
# $NetBSD: Makefile,v 1.49 2013/04/06 13:24:19 rodent Exp $
DISTNAME= Linux-PAM-0.77
PKGNAME= ${DISTNAME:S/Linux-//}
PKGREVISION= 6
CATEGORIES= security
MASTER_SITES= http://www.kernel.org/pub/linux/libs/pam/pre/library/ \
ftp://ftp.kernel.org/pub/linux/libs/pam/pre/library/ \
http://www.de.kernel.org/pub/linux/libs/pam/pre/library/ \
ftp://ftp.jp.kernel.org/pub/linux/libs/pam/pre/library/
MAINTAINER= rh@NetBSD.org
HOMEPAGE= http://www.kernel.org/pub/linux/libs/pam/
COMMENT= Pluggable Authentication Modules (PAM)
MAKE_JOBS_SAFE= no
CONFLICTS+= openpam-[0-9]*
PKG_INSTALLATION_TYPES= overwrite pkgviews
USE_TOOLS+= gmake
USE_LIBTOOL= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --enable-docdir=${PREFIX}/share/doc/PAM
CONFIGURE_ARGS+= --enable-includedir=${PREFIX}/include
CONFIGURE_ARGS+= --enable-mandir=${PREFIX}/${PKGMANDIR}
CONFIGURE_ARGS+= --enable-sconfigdir=${PKG_SYSCONFDIR:Q}
CONFIGURE_ARGS+= --enable-static-libpam
CONFIGURE_ENV+= ac_cv_prog_HAVE_SGML2TXT=no
CONFIGURE_ENV+= ac_cv_prog_HAVE_SGML2HTML=no
CONFIGURE_ENV+= ac_cv_prog_HAVE_SGML2LATEX=no
CONFIGURE_ENV+= ac_cv_prog_HAVE_SGML2PS=no
CONFIGURE_ENV+= ac_cv_prog_HAVE_PS2PDF=no
MAKE_FLAGS+= CC=cc
INSTALL_MAKE_FLAGS+= FAKEROOT=${DESTDIR}
PAM_MODULEDIR= ${VIEWBASE}/lib/security
MAKE_ENV+= PAM_MODULEDIR=${PAM_MODULEDIR:Q}
MESSAGE_SUBST+= PAM_MODULEDIR=${PAM_MODULEDIR}
.include "../../mk/bsd.prefs.mk"
PKG_OPTIONS_VAR= PKG_OPTIONS.PAM
PKG_SUPPORTED_OPTIONS= libcrack
.include "../../mk/bsd.options.mk"
###
### Support using libcrack to protect against weak passwords.
###
PLIST_VARS+= libcrack
.if !empty(PKG_OPTIONS:Mlibcrack)
. include "../../security/libcrack/buildlink3.mk"
PLIST.libcrack= yes
.else
CONFIGURE_ARGS+= --disable-crack
.endif
.if !empty(OPSYS:M*BSD)
CPPFLAGS+= -DUSE_GETLOGIN=1
.endif
# pam_userdb uses ndbm if it finds it, otherwise it will use Berkeley DB.
.if !exists(/usr/include/ndbm.h)
. include "../../mk/bdb.buildlink3.mk"
.endif
PKG_SYSCONFSUBDIR?= pam
EGDIR= ${PREFIX}/share/examples/${PKGBASE}
CFILES= access.conf pam_env.conf group.conf time.conf
PLIST_VARS+= limits
.if ${OPSYS} == "Linux"
CFILES+= limits.conf
PLIST.limits= yes
.endif
CONF_FILES= ${EGDIR}/pam.conf ${PKG_SYSCONFBASEDIR}/pam.conf
.for file in ${CFILES}
CONF_FILES+= ${EGDIR}/${file} ${PKG_SYSCONFDIR}/${file}
.endfor
SPECIAL_PERMS= ${PREFIX}/sbin/unix_chkpwd ${SETUID_ROOT_PERMS}
post-configure:
cd ${WRKSRC}; for file in Make.Rules; do \
${SED} -e "s|@LIBTOOL@|${LIBTOOL}|g" \
-e "s|@SHLIBTOOL@|${SHLIBTOOL}|g" \
$$file > $$file.new; \
${MV} -f $$file.new $$file; \
done
cd ${WRKSRC}; for file in libpam/pam_private.h; do \
${SED} -e "s|/etc/|${PKG_SYSCONFBASEDIR}/|g" \
$$file > $$file.new; \
${MV} -f $$file.new $$file; \
done
# this is so it won't try to interactively install any configs
pre-build:
${TOUCH} ${WRKSRC}/.quiet_install
post-install:
${INSTALL_DATA_DIR} ${DESTDIR}${EGDIR}
${INSTALL_DATA} ${WRKSRC}/conf/pam.conf ${DESTDIR}${EGDIR}
${INSTALL_DATA} ${WRKSRC}/modules/pam_access/access.conf ${DESTDIR}${EGDIR}
${INSTALL_DATA} ${WRKSRC}/modules/pam_env/pam_env.conf-example \
${DESTDIR}${EGDIR}/pam_env.conf
${INSTALL_DATA} ${WRKSRC}/modules/pam_group/group.conf ${DESTDIR}${EGDIR}
${INSTALL_DATA} ${WRKSRC}/modules/pam_time/time.conf ${DESTDIR}${EGDIR}
.if ${OPSYS} == "Linux"
${INSTALL_DATA} ${WRKSRC}/security/modules/pam_limits/limits.skel \
${DESTDIR}${EGDIR}/limits.conf
.endif
.include "../../mk/bsd.pkg.mk"

68
security/PAM/PLIST Normal file
View File

@@ -0,0 +1,68 @@
@comment $NetBSD: PLIST,v 1.8 2009/06/14 18:13:26 joerg Exp $
include/security/_pam_aconf.h
include/security/_pam_compat.h
include/security/_pam_macros.h
include/security/_pam_types.h
include/security/pam_appl.h
include/security/pam_client.h
include/security/pam_filter.h
include/security/pam_misc.h
include/security/pam_modules.h
lib/libpam.la
lib/libpam_misc.la
lib/libpamc.la
lib/security/pam_access.la
${PLIST.libcrack}lib/security/pam_cracklib.la
lib/security/pam_debug.la
lib/security/pam_deny.la
lib/security/pam_env.la
lib/security/pam_filter.la
lib/security/pam_filter/upperLOWER
lib/security/pam_ftp.la
lib/security/pam_group.la
lib/security/pam_issue.la
lib/security/pam_lastlog.la
${PLIST.limits}lib/security/pam_limits.la
lib/security/pam_listfile.la
lib/security/pam_mail.la
lib/security/pam_mkhomedir.la
lib/security/pam_motd.la
lib/security/pam_nologin.la
lib/security/pam_permit.la
lib/security/pam_rhosts_auth.la
lib/security/pam_rootok.la
lib/security/pam_securetty.la
lib/security/pam_shells.la
lib/security/pam_stress.la
lib/security/pam_tally.la
lib/security/pam_time.la
lib/security/pam_unix.la
lib/security/pam_unix_acct.so
lib/security/pam_unix_auth.so
lib/security/pam_unix_passwd.so
lib/security/pam_unix_session.so
lib/security/pam_userdb.la
lib/security/pam_warn.la
lib/security/pam_wheel.la
man/man3/pam_authenticate.3
man/man3/pam_chauthtok.3
man/man3/pam_close_session.3
man/man3/pam_end.3
man/man3/pam_fail_delay.3
man/man3/pam_get_item.3
man/man3/pam_open_session.3
man/man3/pam_set_item.3
man/man3/pam_setcred.3
man/man3/pam_start.3
man/man3/pam_strerror.3
man/man8/pam.8
man/man8/pam.conf.8
man/man8/pam.d.8
sbin/pam_tally
sbin/unix_chkpwd
share/examples/${PKGBASE}/access.conf
share/examples/${PKGBASE}/group.conf
${PLIST.limits}share/examples/${PKGBASE}/limits.conf
share/examples/${PKGBASE}/pam.conf
share/examples/${PKGBASE}/pam_env.conf
share/examples/${PKGBASE}/time.conf

View File

@@ -0,0 +1,15 @@
# $NetBSD: buildlink3.mk,v 1.25 2009/03/20 19:25:16 joerg Exp $
BUILDLINK_TREE+= linux-pam
.if !defined(LINUX_PAM_BUILDLINK3_MK)
LINUX_PAM_BUILDLINK3_MK:=
BUILDLINK_API_DEPENDS.linux-pam+= PAM>=0.75
BUILDLINK_ABI_DEPENDS.linux-pam+= PAM>=0.77nb5
BUILDLINK_PKGSRCDIR.linux-pam?= ../../security/PAM
.include "../../mk/dlopen.buildlink3.mk"
.endif # LINUX_PAM_BUILDLINK3_MK
BUILDLINK_TREE+= -linux-pam

74
security/PAM/builtin.mk Normal file
View File

@@ -0,0 +1,74 @@
# $NetBSD: builtin.mk,v 1.14 2006/04/06 06:22:37 reed Exp $
BUILTIN_PKG:= linux-pam
BUILTIN_FIND_FILES_VAR:= H_LINUX_PAM
BUILTIN_FIND_FILES.H_LINUX_PAM= /usr/include/security/pam_appl.h \
/usr/include/pam/pam_appl.h
BUILTIN_FIND_GREP.H_LINUX_PAM= The Linux-PAM Framework layer API
.include "../../mk/buildlink3/bsd.builtin.mk"
###
### Determine if there is a built-in implementation of the package and
### set IS_BUILTIN.<pkg> appropriately ("yes" or "no").
###
.if !defined(IS_BUILTIN.linux-pam)
IS_BUILTIN.linux-pam= no
. if empty(H_LINUX_PAM:M__nonexistent__) && empty(H_LINUX_PAM:M${LOCALBASE}/*)
IS_BUILTIN.linux-pam= yes
. endif
.endif
MAKEVARS+= IS_BUILTIN.linux-pam
###
### Determine whether we should use the built-in implementation if it
### exists, and set USE_BUILTIN.<pkg> appropriate ("yes" or "no").
###
.if !defined(USE_BUILTIN.linux-pam)
. if ${PREFER.linux-pam} == "pkgsrc"
USE_BUILTIN.linux-pam= no
. else
USE_BUILTIN.linux-pam= ${IS_BUILTIN.linux-pam}
. if defined(BUILTIN_PKG.linux-pam) && \
!empty(IS_BUILTIN.linux-pam:M[yY][eE][sS])
USE_BUILTIN.linux-pam= yes
. for _dep_ in ${BUILDLINK_API_DEPENDS.linux-pam}
. if !empty(USE_BUILTIN.linux-pam:M[yY][eE][sS])
USE_BUILTIN.linux-pam!= \
if ${PKG_ADMIN} pmatch ${_dep_:Q} ${BUILTIN_PKG.linux-pam:Q}; then \
${ECHO} yes; \
else \
${ECHO} no; \
fi
. endif
. endfor
. endif
. endif # PREFER.linux-pam
.endif
MAKEVARS+= USE_BUILTIN.linux-pam
###
### The section below only applies if we are not including this file
### solely to determine whether a built-in implementation exists.
###
CHECK_BUILTIN.linux-pam?= no
.if !empty(CHECK_BUILTIN.linux-pam:M[nN][oO])
. if !empty(USE_BUILTIN.linux-pam:M[yY][eE][sS])
BUILDLINK_TARGETS+= buildlink-pam-security
. endif
. if !target(buildlink-pam-security)
.PHONY: buildlink-pam-security
buildlink-pam-security:
${_PKG_SILENT}${_PKG_DEBUG} \
src=${BUILDLINK_PREFIX.linux-pam:Q}"/include/pam"; \
dest=${BUILDLINK_DIR:Q}"/include/security"; \
if ${TEST} -d "$$src"; then \
${RM} -fr "$$dest"; \
${LN} -fs "$$src" "$$dest"; \
fi
. endif
.endif # CHECK_BUILTIN.linux-pam

31
security/PAM/distinfo Normal file
View File

@@ -0,0 +1,31 @@
$NetBSD: distinfo,v 1.17 2010/02/02 17:09:28 tnn Exp $
SHA1 (Linux-PAM-0.77.tar.gz) = 58dff29aec3c0b6a9e9b53af6fb643056ce0f304
RMD160 (Linux-PAM-0.77.tar.gz) = 15391ed7bed7b506bb391608b735332d0391580c
Size (Linux-PAM-0.77.tar.gz) = 442569 bytes
SHA1 (patch-aa) = 99f4889c24ff71a9e40e0e913d6071b78a326877
SHA1 (patch-ab) = 8f0ba8b8390a67ffc9a7cf0ea33522e3e5603428
SHA1 (patch-ac) = 4b956ff74eae3b61c3f33699087666f64fe7f467
SHA1 (patch-ad) = 9604689a4ab826cc31db29119012c473c876b286
SHA1 (patch-ae) = 2d403c3737005f034624458730562ff094e04ed6
SHA1 (patch-af) = 303f272464f8bb90b934428b99ce50d92ddd0b3c
SHA1 (patch-ag) = 5b33842c46fa251b493ad554199b084980de7923
SHA1 (patch-ah) = 50f68734e5b879db823e137f474b40d8473f0e6e
SHA1 (patch-ai) = 950c9e949c72eaf904452d8afefc0f994101e5a8
SHA1 (patch-aj) = d47bc58c3dc810497290d6ec4a3646380b5fa4d7
SHA1 (patch-ak) = 491aa837ee756269d57d642aeba999d1f8cc8187
SHA1 (patch-al) = 29c9ca136655d49d739d3c4dc664af9f0b1a5fa8
SHA1 (patch-am) = 9cf69342d0c6665ff6d9eebec35d6c3898854c8a
SHA1 (patch-an) = 46e85fc6db95eda99ed664e7d4282a49d95437c4
SHA1 (patch-ao) = da8c42c2afa2c66fee4e8f453970d1a4b3a0f285
SHA1 (patch-ap) = 0a923b67a909dde6f72129b0c853088f9d48bd91
SHA1 (patch-aq) = 91587c5b9c6587221708247decb0e82f665ae2bf
SHA1 (patch-ar) = b8072ebbc1a38c26d44c0e087a2b8b93f1eb7768
SHA1 (patch-as) = e4fdfef53c097985c2aa8ff8225fed1caa812c10
SHA1 (patch-at) = 5ac29da5019df10beae09874ef61559f16097a7b
SHA1 (patch-au) = 6c1327faf2ec9f1ff74f01443075852bf94f3788
SHA1 (patch-av) = 98c7b6ea2ba655cb405492eddba2f9d246b08817
SHA1 (patch-aw) = fc7ed36cd8fb67058e52a9ccf5474498086db893
SHA1 (patch-ax) = 16f4ef37306f05a9792684440a802bed727b03df
SHA1 (patch-ay) = 8e40db2360bec88a22cd661c813f4a7f9a906f34
SHA1 (patch-az) = 4083bdfc19ee7d528a27fce0339b666c58f73583

15
security/PAM/module.mk Normal file
View File

@@ -0,0 +1,15 @@
# $NetBSD: module.mk,v 1.5 2005/03/24 22:42:58 jlam Exp $
.if !defined(PAM_MODULE_MK)
PAM_MODULE_MK= # defined
.include "../../mk/pam.buildlink3.mk"
.if defined(DEFAULT_VIEW.${PAM_TYPE})
DEFAULT_VIEW.${PKGBASE}= ${DEFAULT_VIEW.${PAM_TYPE}}
.endif
PAM_MODULEDIR= ${VIEWBASE}/lib/security
PAM_INSTMODULEDIR= ${PREFIX}/${PAM_MODULEDIR:S,${VIEWBASE}/,,}
.endif # PAM_MODULE_MK

View File

@@ -0,0 +1,21 @@
$NetBSD: patch-aa,v 1.4 2002/12/23 21:23:58 jlam Exp $
--- _pam_aconf.h.in.orig Sun Nov 25 22:04:46 2001
+++ _pam_aconf.h.in
@@ -28,6 +28,16 @@
# include <features.h>
#endif /* HAVE_FEATURES_H */
+/* we have <utmp.h> */
+#undef HAVE_UTMP_H
+
+/* we have <termios.h> */
+#undef HAVE_TERMIOS_H
+
+/* we have Linux shadow passwords */
+#undef HAVE_SHADOW_H
+#undef HAVE_GETSPNAM
+
/* we have libcrack available */
#undef HAVE_LIBCRACK

View File

@@ -0,0 +1,65 @@
$NetBSD: patch-ab,v 1.6 2007/07/09 03:51:33 minskim Exp $
--- configure.in.orig 2002-07-08 23:17:13.000000000 -0700
+++ configure.in
@@ -157,6 +157,10 @@ AC_ARG_ENABLE(lckpwdf,
WITH_LCKPWDF=no, WITH_LCKPWDF=yes)
AC_SUBST(WITH_LCKPWDF)
+AC_ARG_ENABLE(crack,
+[ --disable-crack do not use crack],
+ WITH_CRACK=no, WITH_CRACK=yes)
+
AC_CHECK_HEADERS(paths.h)
AC_ARG_WITH(mailspool,
[ --with-mailspool path to mail spool directory
@@ -195,11 +199,15 @@ dnl
dnl At least on Solaris, the existing libcrack must be dynamic.
dnl Ought to introduce a check for this.
dnl
+if test "$WITH_CRACK" = "yes"; then
AC_CHECK_LIB(crack, FascistCheck, HAVE_LIBCRACK=yes ; AC_DEFINE(HAVE_LIBCRACK),
HAVE_LIBCRACK=no)
+else
+HAVE_LIBCRACK=no
+fi
AC_SUBST(HAVE_LIBCRACK)
-AC_CHECK_LIB(crypt, fcrypt, HAVE_LIBCRYPT=yes ; AC_DEFINE(HAVE_LIBCRYPT),
+AC_CHECK_LIB(crypt, crypt, HAVE_LIBCRYPT=yes ; AC_DEFINE(HAVE_LIBCRYPT),
HAVE_LIBCRYPT=no)
AC_SUBST(HAVE_LIBCRYPT)
AC_CHECK_LIB(util, logwtmp, HAVE_LIBUTIL=yes ; AC_DEFINE(HAVE_LIBUTIL),
@@ -215,6 +223,9 @@ if test x$HAVE_LIBDB != xyes ; then
HAVE_LIBDB=no)
fi
AC_SUBST(HAVE_LIBDB)
+AC_CHECK_LIB(db4, db_create, HAVE_LIBDB4=yes ; AC_DEFINE(HAVE_LIBDB4),
+ HAVE_LIBDB4=no)
+AC_SUBST(HAVE_LIBDB4)
AC_CHECK_LIB(fl, yylex, yyterminate, HAVE_LIBFL=yes ; AC_DEFINE(HAVE_LIBFL),
HAVE_LIBFL=no)
AC_SUBST(HAVE_LIBFL)
@@ -240,6 +251,13 @@ AC_CHECK_HEADERS(fcntl.h limits.h malloc
dnl Linux wants features.h in some of the source files.
AC_CHECK_HEADERS(features.h)
+dnl For module/pam_filter
+AC_CHECK_HEADERS(termios.h)
+
+dnl For module/pam_unix
+AC_CHECK_HEADERS(shadow.h)
+AC_CHECK_FUNCS(getspnam)
+
dnl For module/pam_cracklib
AC_CHECK_HEADERS(crypt.h)
@@ -257,7 +275,7 @@ dnl being found.
dnl Look for cracklib dictionary
AC_MSG_CHECKING(path to cracklib dictionary)
-DICT_DIR_CANDIDATES="/usr/lib /usr/share/dict /usr/share/lib \
+DICT_DIR_CANDIDATES="${prefix}/libdata /usr/lib /usr/share/dict /usr/share/lib \
/usr/local/lib /usr/local/share/lib"
DICT_FILE_CANDIDATES="pw_dict cracklib_dict"
CRACKLIB_DICTPATH=""

View File

@@ -0,0 +1,296 @@
$NetBSD: patch-ac,v 1.6 2007/07/09 03:51:33 minskim Exp $
--- configure.orig 2002-07-08 23:17:13.000000000 -0700
+++ configure
@@ -47,6 +47,8 @@ ac_help="$ac_help
ac_help="$ac_help
--disable-lckpwdf do not use the lckpwdf function"
ac_help="$ac_help
+ --disable-crack do not use crack"
+ac_help="$ac_help
--with-mailspool path to mail spool directory
[default _PATH_MAILDIR if defined in paths.h, otherwise /var/spool/mail]"
@@ -1170,8 +1172,17 @@ fi
+# Check whether --enable-crack or --disable-crack was given.
+if test "${enable_crack+set}" = set; then
+ enableval="$enable_crack"
+ WITH_CRACK=no
+else
+ WITH_CRACK=yes
+fi
+
+
echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:1175: checking how to run the C preprocessor" >&5
+echo "configure:1186: checking how to run the C preprocessor" >&5
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
CPP=
@@ -1461,8 +1472,9 @@ fi
+if test "$WITH_CRACK" = "yes"; then
echo $ac_n "checking for FascistCheck in -lcrack""... $ac_c" 1>&6
-echo "configure:1466: checking for FascistCheck in -lcrack" >&5
+echo "configure:1478: checking for FascistCheck in -lcrack" >&5
ac_lib_var=`echo crack'_'FascistCheck | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1505,11 +1517,14 @@ else
HAVE_LIBCRACK=no
fi
+else
+HAVE_LIBCRACK=no
+fi
-echo $ac_n "checking for fcrypt in -lcrypt""... $ac_c" 1>&6
-echo "configure:1512: checking for fcrypt in -lcrypt" >&5
-ac_lib_var=`echo crypt'_'fcrypt | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for crypt in -lcrypt""... $ac_c" 1>&6
+echo "configure:1527: checking for crypt in -lcrypt" >&5
+ac_lib_var=`echo crypt'_'crypt | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1521,13 +1536,13 @@ cat > conftest.$ac_ext <<EOF
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply. */
-char fcrypt();
+char crypt();
int main() {
-fcrypt()
+crypt()
; return 0; }
EOF
-if { (eval echo configure:1531: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1546: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -1733,8 +1748,53 @@ fi
fi
+echo $ac_n "checking for db_create in -ldb4""... $ac_c" 1>&6
+echo "configure:1753: checking for db_create in -ldb4" >&5
+ac_lib_var=`echo db4'_'db_create | sed 'y%./+-%__p_%'`
+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ ac_save_LIBS="$LIBS"
+LIBS="-ldb4 $LIBS"
+cat > conftest.$ac_ext <<EOF
+#line 1761 "configure"
+#include "confdefs.h"
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char db_create();
+
+int main() {
+db_create()
+; return 0; }
+EOF
+if { (eval echo configure:1772: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_lib_$ac_lib_var=no"
+fi
+rm -f conftest*
+LIBS="$ac_save_LIBS"
+
+fi
+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ HAVE_LIBDB4=yes ; cat >> confdefs.h <<\EOF
+#define HAVE_LIBDB4 1
+EOF
+
+else
+ echo "$ac_t""no" 1>&6
+HAVE_LIBDB4=no
+fi
+
+
echo $ac_n "checking for yylex in -lfl""... $ac_c" 1>&6
-echo "configure:1738: checking for yylex in -lfl" >&5
+echo "configure:1798: checking for yylex in -lfl" >&5
ac_lib_var=`echo fl'_'yylex | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -2312,6 +2372,143 @@ fi
done
+for ac_hdr in termios.h
+do
+ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+echo "configure:2380: checking for $ac_hdr" >&5
+if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 2385 "configure"
+#include "confdefs.h"
+#include <$ac_hdr>
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:2390: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+ rm -rf conftest*
+ eval "ac_cv_header_$ac_safe=yes"
+else
+ echo "$ac_err" >&5
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_header_$ac_safe=no"
+fi
+rm -f conftest*
+fi
+if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
+ cat >> confdefs.h <<EOF
+#define $ac_tr_hdr 1
+EOF
+
+else
+ echo "$ac_t""no" 1>&6
+fi
+done
+
+
+for ac_hdr in shadow.h
+do
+ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+echo "configure:2421: checking for $ac_hdr" >&5
+if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 2426 "configure"
+#include "confdefs.h"
+#include <$ac_hdr>
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:2431: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+ rm -rf conftest*
+ eval "ac_cv_header_$ac_safe=yes"
+else
+ echo "$ac_err" >&5
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_header_$ac_safe=no"
+fi
+rm -f conftest*
+fi
+if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
+ cat >> confdefs.h <<EOF
+#define $ac_tr_hdr 1
+EOF
+
+else
+ echo "$ac_t""no" 1>&6
+fi
+done
+
+for ac_func in getspnam
+do
+echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+echo "configure:2460: checking for $ac_func" >&5
+if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 2465 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error. */
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char $ac_func();
+
+int main() {
+
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+$ac_func();
+#endif
+
+; return 0; }
+EOF
+if { (eval echo configure:2488: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=no"
+fi
+rm -f conftest*
+fi
+
+if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
+ cat >> confdefs.h <<EOF
+#define $ac_tr_func 1
+EOF
+
+else
+ echo "$ac_t""no" 1>&6
+fi
+done
+
+
for ac_hdr in crypt.h
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
@@ -2439,8 +2636,8 @@ done
echo $ac_n "checking path to cracklib dictionary""... $ac_c" 1>&6
-echo "configure:2443: checking path to cracklib dictionary" >&5
-DICT_DIR_CANDIDATES="/usr/lib /usr/share/dict /usr/share/lib \
+echo "configure:2640: checking path to cracklib dictionary" >&5
+DICT_DIR_CANDIDATES="${prefix}/libdata /usr/lib /usr/share/dict /usr/share/lib \
/usr/local/lib /usr/local/share/lib"
DICT_FILE_CANDIDATES="pw_dict cracklib_dict"
CRACKLIB_DICTPATH=""
@@ -3646,6 +3843,7 @@ s%@HAVE_LIBCRYPT@%$HAVE_LIBCRYPT%g
s%@HAVE_LIBUTIL@%$HAVE_LIBUTIL%g
s%@HAVE_LIBNDBM@%$HAVE_LIBNDBM%g
s%@HAVE_LIBDB@%$HAVE_LIBDB%g
+s%@HAVE_LIBDB4@%$HAVE_LIBDB4%g
s%@HAVE_LIBFL@%$HAVE_LIBFL%g
s%@HAVE_LIBNSL@%$HAVE_LIBNSL%g
s%@HAVE_LIBPWDB@%$HAVE_LIBPWDB%g

View File

@@ -0,0 +1,152 @@
$NetBSD: patch-ad,v 1.7 2010/02/02 17:09:28 tnn Exp $
--- libpam/Makefile.orig 2001-12-09 21:44:58.000000000 +0000
+++ libpam/Makefile
@@ -6,7 +6,7 @@
include ../Make.Rules
# need to tell libpam about the default directory for PAMs
-MOREFLAGS=-D"DEFAULT_MODULE_PATH=\"$(SECUREDIR)/\""
+MOREFLAGS=-D"DEFAULT_MODULE_PATH=\"$(PAM_MODULEDIR)/\""
ifeq ($(WITH_LIBDEBUG),yes)
LIBNAME=libpamd
@@ -22,7 +22,7 @@ dummy: ../Make.Rules all
# ---------------------------------------------
-CFLAGS += $(DYNAMIC) $(STATIC) $(MOREFLAGS) \
+CFLAGS += $(DYNAMIC) $(STATIC) $(LTCFLAGS) $(MOREFLAGS) \
-DLIBPAM_VERSION_MAJOR=$(MAJOR_REL) \
-DLIBPAM_VERSION_MINOR=$(MINOR_REL)
@@ -36,6 +36,10 @@ LIBPAMFULL = $(LIBPAMNAME)$(MODIFICATION
LIBPAMSTATIC = $(LIBNAME).a
+# libtool library name
+
+LIBPAMLIBTOOL = $(LIBNAME).la
+
ifdef STATIC
@echo Did you mean to set STATIC\?
MODULES = $(shell cat ../modules/_static_module_objects)
@@ -56,7 +60,7 @@ LIBOBJECTS = pam_item.o pam_strerror.o p
ifeq ($(DYNAMIC_LIBPAM),yes)
# libpam.so needs -ldl, too.
DLIBOBJECTS = $(addprefix dynamic/,$(LIBOBJECTS) $(STATICOBJ))
-ifeq ($(STATICOBJ),yes)
+ifdef STATICOBJ
dynamic/pam_static.o: pam_static.c ../modules/_static_module_objects
$(CC) $(CFLAGS) -c pam_static.c -o $@
endif
@@ -70,10 +74,28 @@ static/pam_static.o: pam_static.c ../mod
endif
endif
+ifeq ($(LIBTOOL_LIBPAM),yes)
+LALIBOBJECTS = $(LIBOBJECTS:.o=.lo) $(STATICOBJ:.o=.lo)
+ifdef STATICOBJ
+pam_static.lo: pam_static.c ../modules/_static_module_objects
+ $(LIBTOOL) --tag=CC --mode=compile $(CC) $(CFLAGS) -c pam_static.c
+endif
+endif
+
# ---------------------------------------------
## rules
-all: dirs $(LIBPAM) $(LIBPAMSTATIC) ../Make.Rules
+ifeq ($(DYNAMIC_LIBPAM),yes)
+LIBS_TO_BUILD+= $(LIBPAM)
+endif
+ifeq ($(STATIC_LIBPAM),yes)
+LIBS_TO_BUILD+= $(LIBPAMSTATIC)
+endif
+ifeq ($(LIBTOOL_LIBPAM),yes)
+LIBS_TO_BUILD+= $(LIBPAMLIBTOOL)
+endif
+
+all: dirs $(LIBS_TO_BUILD) ../Make.Rules
dirs:
ifeq ($(DYNAMIC_LIBPAM),yes)
@@ -89,6 +111,9 @@ dynamic/%.o : %.c
static/%.o : %.c
$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
+%.lo : %.c
+ $(LIBTOOL) --tag=CC --mode=compile $(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $<
+
$(LIBPAM): $(DLIBOBJECTS)
ifeq ($(DYNAMIC_LIBPAM),yes)
ifeq ($(USESONAME),yes)
@@ -111,7 +136,26 @@ ifeq ($(STATIC_LIBPAM),yes)
$(RANLIB) $@
endif
-install: all
+$(LIBPAMLIBTOOL): $(LALIBOBJECTS)
+ifeq ($(LIBTOOL_LIBPAM),yes)
+ $(LIBTOOL) --tag=CC --mode=link $(CC) $(LDFLAGS) $(LALIBOBJECTS) -o $@ \
+ $(MODULES) $(LINKLIBS) \
+ -rpath $(libdir) -version-info $(MAJOR_REL):$(MINOR_REL)
+endif
+
+install: all install-headers
+
+ifeq ($(DYNAMIC_LIBPAM),yes)
+install: install-dynamic
+endif
+ifeq ($(STATIC_LIBPAM),yes)
+install: install-static
+endif
+ifeq ($(LIBTOOL_LIBPAM),yes)
+install: install-libtool
+endif
+
+install-headers:
$(MKDIR) $(FAKEROOT)$(INCLUDED) $(FAKEROOT)$(libdir)
$(INSTALL) -m 644 include/security/pam_appl.h $(FAKEROOT)$(INCLUDED)
$(INSTALL) -m 644 include/security/pam_modules.h $(FAKEROOT)$(INCLUDED)
@@ -121,6 +165,8 @@ install: all
ifdef MEMORY_DEBUG
$(INSTALL) -m 644 include/security/pam_malloc.h $(FAKEROOT)$(INCLUDED)
endif
+
+install-dynamic:
ifeq ($(DYNAMIC_LIBPAM),yes)
$(INSTALL) -m $(SHLIBMODE) $(LIBPAM) $(FAKEROOT)$(libdir)/$(LIBPAMFULL)
$(LDCONFIG)
@@ -129,10 +175,17 @@ ifeq ($(DYNAMIC_LIBPAM),yes)
ln -sf $(LIBPAMNAME) $(LIBPAM) )
endif
endif
+
+install-static:
ifeq ($(STATIC_LIBPAM),yes)
$(INSTALL) -m 644 $(LIBPAMSTATIC) $(FAKEROOT)$(libdir)
endif
+install-libtool:
+ifeq ($(LIBTOOL_LIBPAM),yes)
+ $(LIBTOOL) --mode=install $(INSTALL) -c $(LIBPAMLIBTOOL) $(FAKEROOT)$(libdir)
+endif
+
remove:
rm -f $(FAKEROOT)$(INCLUDED)/_pam_types.h
rm -f $(FAKEROOT)$(INCLUDED)/_pam_macros.h
@@ -143,9 +196,13 @@ remove:
rm -f $(FAKEROOT)$(libdir)/$(LIBPAM)
$(LDCONFIG)
rm -f $(FAKEROOT)$(libdir)/$(LIBPAMSTATIC)
+ifeq ($(LIBTOOL_LIBPAM),yes)
+ $(LIBTOOL) --mode=uninstall rm $(FAKEROOT)$(libdir)$(LIBPAMLIBTOOL)
+endif
clean:
rm -f a.out core *~ static/*.o dynamic/*.o
- rm -f *.a *.o *.so ./include/security/*~
+ rm -f *.a *.la *.lo *.o *.so .libs/* ./include/security/*~
if [ -d dynamic ]; then rmdir dynamic ; fi
if [ -d static ]; then rmdir static ; fi
+ if [ -d .libs ]; then rmdir .libs ; fi

View File

@@ -0,0 +1,130 @@
$NetBSD: patch-ae,v 1.7 2010/02/02 17:09:28 tnn Exp $
--- libpam_misc/Makefile.orig 2002-06-27 04:04:54.000000000 +0000
+++ libpam_misc/Makefile
@@ -15,8 +15,13 @@ endif
VERSION=.$(MAJOR_REL)
MODIFICATION=.$(MINOR_REL)
-CFLAGS += $(MOREFLAGS) $(DYNAMIC) $(STATIC)
+CFLAGS += $(MOREFLAGS) $(DYNAMIC) $(STATIC) $(LTCFLAGS)
+ifeq ($(DYNAMIC_LIBPAM),yes)
LINKLIBS += -L$(absolute_objdir)/libpam -lpam
+endif
+ifeq ($(LIBTOOL_LIBPAM),yes)
+LINKLIBS += $(absolute_objdir)/libpam/libpam.la
+endif
# dynamic library names
@@ -28,6 +33,10 @@ LIBNAMEDFULL = $(LIBNAMEDNAME)$(MODIFICA
LIBNAMEDSTATIC = $(LIBNAME).a
+# libtool library name
+
+LIBNAMEDLIBTOOL = $(LIBNAME).la
+
LIBOBJECTS = help_env.o misc_conv.o
ifeq ($(DYNAMIC_LIBPAM),yes)
@@ -38,10 +47,24 @@ ifeq ($(STATIC_LIBPAM),yes)
SLIBOBJECTS = $(addprefix static/,$(LIBOBJECTS))
endif
+ifeq ($(LIBTOOL_LIBPAM),yes)
+LALIBOBJECTS = $(LIBOBJECTS:.o=.lo)
+endif
+
# ---------------------------------------------
## rules
-all: dirs $(LIBNAMED) $(LIBNAMEDSTATIC)
+ifeq ($(DYNAMIC_LIBPAM),yes)
+LIBS_TO_BUILD+= $(LIBNAMED)
+endif
+ifeq ($(STATIC_LIBPAM),yes)
+LIBS_TO_BUILD+= $(LIBNAMEDSTATIC)
+endif
+ifeq ($(LIBTOOL_LIBPAM),yes)
+LIBS_TO_BUILD+= $(LIBNAMEDLIBTOOL)
+endif
+
+all: dirs $(LIBS_TO_BUILD)
dirs:
ifeq ($(DYNAMIC_LIBPAM),yes)
@@ -57,6 +80,9 @@ dynamic/%.o : %.c
static/%.o : %.c
$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
+%.lo : %.c
+ $(LIBTOOL) --tag=CC --mode=compile $(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $<
+
$(LIBNAMED): $(DLIBOBJECTS)
ifeq ($(DYNAMIC_LIBPAM),yes)
ifeq ($(USESONAME),yes)
@@ -78,9 +104,30 @@ ifeq ($(STATIC_LIBPAM),yes)
$(RANLIB) $@
endif
-install: all
+$(LIBNAMEDLIBTOOL): $(LALIBOBJECTS)
+ifeq ($(LIBTOOL_LIBPAM),yes)
+ $(LIBTOOL) --tag=CC --mode=link $(CC) $(LDFLAGS) $(LALIBOBJECTS) -o $@ \
+ $(MODULES) $(LINKLIBS) \
+ -rpath $(libdir) -version-info $(MAJOR_REL):$(MINOR_REL)
+endif
+
+install: all install-headers
+
+ifeq ($(DYNAMIC_LIBPAM),yes)
+install: install-dynamic
+endif
+ifeq ($(STATIC_LIBPAM),yes)
+install: install-static
+endif
+ifeq ($(LIBTOOL_LIBPAM),yes)
+install: install-libtool
+endif
+
+install-headers:
$(MKDIR) $(FAKEROOT)$(INCLUDED)
$(INSTALL) -m 644 include/security/pam_misc.h $(FAKEROOT)$(INCLUDED)
+
+install-dynamic:
ifeq ($(DYNAMIC_LIBPAM),yes)
$(MKDIR) $(FAKEROOT)$(libdir)
$(INSTALL) -m $(SHLIBMODE) $(LIBNAMED) $(FAKEROOT)$(libdir)/$(LIBNAMEDFULL)
@@ -89,19 +136,30 @@ ifeq ($(DYNAMIC_LIBPAM),yes)
( cd $(FAKEROOT)$(libdir) ; rm -f $(LIBNAMED) ; ln -s $(LIBNAMEDNAME) $(LIBNAMED) )
endif
endif
+
+install-static:
ifeq ($(STATIC_LIBPAM),yes)
$(INSTALL) -m 644 $(LIBNAMEDSTATIC) $(FAKEROOT)$(libdir)
endif
+install-libtool:
+ifeq ($(LIBTOOL_LIBPAM),yes)
+ $(LIBTOOL) --mode=install $(INSTALL) -c $(LIBNAMEDLIBTOOL) $(FAKEROOT)$(libdir)
+endif
+
remove:
rm -f $(FAKEROOT)$(INCLUDED)/pam_misc.h
rm -f $(FAKEROOT)$(libdir)/$(LIBNAMEDFULL)
rm -f $(FAKEROOT)$(libdir)/$(LIBNAMED)
$(LDCONFIG)
rm -f $(FAKEROOT)$(libdir)/$(LIBNAMEDSTATIC)
+ifeq ($(LIBTOOL_LIBPAM),yes)
+ $(LIBTOOL) --mode=uninstall rm $(FAKEROOT)$(libdir)/$(LIBNAMEDLIBTOOL)
+endif
clean:
rm -f a.out core *~ static/*.o dynamic/*.o
- rm -f *.a *.out *.o *.so ./include/security/*~
+ rm -f *.a *.la *.lo *.out *.o *.so .libs/* ./include/security/*~
if [ -d dynamic ]; then rmdir dynamic ; fi
if [ -d static ]; then rmdir static ; fi
+ if [ -d .libs ]; then rmdir .libs ; fi

View File

@@ -0,0 +1,125 @@
$NetBSD: patch-af,v 1.6 2010/02/02 17:09:28 tnn Exp $
--- libpamc/Makefile.orig 2001-02-10 07:17:53.000000000 +0000
+++ libpamc/Makefile
@@ -15,7 +15,7 @@ endif
VERSION=.$(MAJOR_REL)
MODIFICATION=.$(MINOR_REL)
-CFLAGS += $(MOREFLAGS) $(DYNAMIC) $(STATIC)
+CFLAGS += $(MOREFLAGS) $(DYNAMIC) $(STATIC) $(LTCFLAGS)
# dynamic library names
@@ -27,6 +27,10 @@ LIBNAMEDFULL = $(LIBNAMEDNAME)$(MODIFICA
LIBNAMEDSTATIC = $(LIBNAME).a
+# libtool library name
+
+LIBNAMEDLIBTOOL = $(LIBNAME).la
+
LIBOBJECTS = pamc_client.o pamc_converse.o pamc_load.o
ifeq ($(DYNAMIC_LIBPAM),yes)
@@ -37,10 +41,24 @@ ifeq ($(STATIC_LIBPAM),yes)
SLIBOBJECTS = $(addprefix static/,$(LIBOBJECTS))
endif
+ifeq ($(LIBTOOL_LIBPAM),yes)
+LALIBOBJECTS = $(LIBOBJECTS:.o=.lo)
+endif
+
# ---------------------------------------------
## rules
-all: dirs $(LIBNAMED) $(LIBNAMEDSTATIC)
+ifeq ($(DYNAMIC_LIBPAM),yes)
+LIBS_TO_BUILD+= $(LIBNAMED)
+endif
+ifeq ($(STATIC_LIBPAM),yes)
+LIBS_TO_BUILD+= $(LIBNAMEDSTATIC)
+endif
+ifeq ($(LIBTOOL_LIBPAM),yes)
+LIBS_TO_BUILD+= $(LIBNAMEDLIBTOOL)
+endif
+
+all: dirs $(LIBS_TO_BUILD)
dirs:
ifeq ($(DYNAMIC_LIBPAM),yes)
@@ -56,6 +74,9 @@ dynamic/%.o : %.c
static/%.o : %.c
$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
+%.lo : %.c
+ $(LIBTOOL) --tag=CC --mode=compile $(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $<
+
$(LIBNAMED): $(DLIBOBJECTS)
ifeq ($(DYNAMIC_LIBPAM),yes)
ifeq ($(USESONAME),yes)
@@ -77,9 +98,30 @@ ifeq ($(STATIC_LIBPAM),yes)
$(RANLIB) $@
endif
-install: all
+$(LIBNAMEDLIBTOOL): $(LALIBOBJECTS)
+ifeq ($(LIBTOOL_LIBPAM),yes)
+ $(LIBTOOL) --tag=CC --mode=link $(CC) $(LDFLAGS) $(LALIBOBJECTS) -o $@ \
+ $(MODULES) $(LINKLIBS) \
+ -rpath $(libdir) -version-info $(MAJOR_REL):$(MINOR_REL)
+endif
+
+install: all install-headers
+
+ifeq ($(DYNAMIC_LIBPAM),yes)
+install: install-dynamic
+endif
+ifeq ($(STATIC_LIBPAM),yes)
+install: install-static
+endif
+ifeq ($(LIBTOOL_LIBPAM),yes)
+install: install-libtool
+endif
+
+install-headers:
$(MKDIR) $(FAKEROOT)$(INCLUDED)
$(INSTALL) -m 644 include/security/pam_client.h $(FAKEROOT)$(INCLUDED)
+
+install-dynamic:
ifeq ($(DYNAMIC_LIBPAM),yes)
$(MKDIR) $(FAKEROOT)$(libdir)
$(INSTALL) -m $(SHLIBMODE) $(LIBNAMED) $(FAKEROOT)$(libdir)/$(LIBNAMEDFULL)
@@ -88,20 +130,30 @@ ifeq ($(DYNAMIC_LIBPAM),yes)
( cd $(FAKEROOT)$(libdir) ; rm -f $(LIBNAMED) ; ln -s $(LIBNAMEDNAME) $(LIBNAMED) )
endif
endif
+
+install-static:
ifeq ($(STATIC_LIBPAM),yes)
$(INSTALL) -m 644 $(LIBNAMEDSTATIC) $(FAKEROOT)$(libdir)
endif
+install-libtool:
+ifeq ($(LIBTOOL_LIBPAM),yes)
+ $(LIBTOOL) --mode=install $(INSTALL) -c $(LIBNAMEDLIBTOOL) $(FAKEROOT)$(libdir)
+endif
+
remove:
rm -f $(FAKEROOT)$(INCLUDED)/pam_client.h
rm -f $(FAKEROOT)$(libdir)/$(LIBNAMEDFULL)
rm -f $(FAKEROOT)$(libdir)/$(LIBNAMED)
$(LDCONFIG)
rm -f $(FAKEROOT)$(libdir)/$(LIBNAMEDSTATIC)
+ifeq ($(LIBTOOL_LIBPAM),yes)
+ $(LIBTOOL) --mode=uninstall rm $(FAKEROOT)$(libdir)/$(LIBNAMEDLIBTOOL)
+endif
clean:
rm -f a.out core *~ static/*.o dynamic/*.o
- rm -f *.a *.out *.o *.so ./include/security/*~
+ rm -f *.a *.la *.lo *.out *.o *.so .libs/* ./include/security/*~
if [ -d dynamic ]; then rmdir dynamic ; fi
if [ -d static ]; then rmdir static ; fi
-
+ if [ -d .libs ]; then rmdir .libs ; fi

View File

@@ -0,0 +1,52 @@
$NetBSD: patch-ag,v 1.5 2010/02/02 17:09:28 tnn Exp $
--- modules/pammodutil/Makefile.orig 2001-12-09 22:15:12.000000000 +0000
+++ modules/pammodutil/Makefile
@@ -25,10 +25,15 @@ LIBSTATIC = $(LIBNAME).a
SLIBOBJECTS = $(addprefix static/,$(LIBOBJECTS) $(STATICOBJ))
+# libtool library name
+LIBLIBTOOL = $(LIBNAME).la
+
+LALIBOBJECTS = $(LIBOBJECTS:.o=.lo)
+
# ---------------------------------------------
## rules
-all: dirs $(LIBSTATIC) ../../Make.Rules
+all: dirs $(LIBLIBTOOL) ../../Make.Rules
dirs:
$(MKDIR) static
@@ -36,10 +41,19 @@ dirs:
static/%.o : %.c
$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
+%.lo: %.c
+ $(LIBTOOL) --tag=CC --mode=compile $(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $<
+
$(LIBSTATIC): $(SLIBOBJECTS)
ar cr $@ $(SLIBOBJECTS)
$(RANLIB) $@
+# This is a libtool convenience library that may be linked into shared
+# libraries and modules.
+#
+$(LIBLIBTOOL): $(LALIBOBJECTS)
+ $(LIBTOOL) --tag=CC --mode=link $(CC) $(LDFLAGS) $(LALIBOBJECTS) -o $@
+
install:
@echo "at this time, we're not installing $(LIBSTATIC)"
@@ -47,7 +61,8 @@ remove:
@echo "at this time, there is nothing to remove"
clean:
- rm -f a.out core *~ static/*.o
- rm -f *.a *.o
+ rm -f a.out core *~ static/*.o .libs/*
+ rm -f *.a *.la *.la *.o
if [ -d dynamic ]; then rmdir dynamic ; fi
if [ -d static ]; then rmdir static ; fi
+ if [ -d libs ]; then rmdir .libs; fi

View File

@@ -0,0 +1,94 @@
$NetBSD: patch-ah,v 1.7 2006/05/14 19:58:04 minskim Exp $
--- modules/Simple.Rules.orig 2001-12-09 22:15:11.000000000 +0000
+++ modules/Simple.Rules
@@ -18,8 +18,13 @@ LIBSRC = $(addsuffix .c,$(LIBFILES))
LIBOBJ = $(addsuffix .o,$(LIBFILES))
LIBOBJD = $(addprefix dynamic/,$(LIBOBJ))
LIBOBJS = $(addprefix static/,$(LIBOBJ))
+LIBOBJLA = $(LIBOBJ:.o=.lo)
+ifdef LIBTOOL
+LINK_PAMMODUTILS = ../pammodutil/libpammodutil.la
+else
LINK_PAMMODUTILS = -L../pammodutil -lpammodutil
+endif
INCLUDE_PAMMODUTILS = -I../pammodutil/include
ifdef DYNAMIC
@@ -30,9 +35,23 @@ ifdef STATIC
LIBSTATIC = lib$(TITLE).o
endif
+ifdef LIBTOOL
+LIBLIBTOOL = $(TITLE).la
+endif
+
####################### don't edit below #######################
-all: dirs $(LIBSHARED) $(LIBSTATIC) register
+ifdef DYNAMIC
+MODULES_TO_BUILD+= $(LIBSHARED)
+endif
+ifdef STATIC
+MODULES_TO_BUILD+= $(LIBSTATIC)
+endif
+ifdef LIBTOOL
+MODULES_TO_BUILD+= $(LIBLIBTOOL)
+endif
+
+all: dirs $(MODULES_TO_BUILD) register
dynamic/%.o : %.c
$(CC) $(CFLAGS) $(INCLUDE_PAMMODUTILS) $(DYNAMIC) $(TARGET_ARCH) -c $< -o $@
@@ -40,6 +59,9 @@ dynamic/%.o : %.c
static/%.o : %.c
$(CC) $(CFLAGS) $(INCLUDE_PAMMODUTILS) $(STATIC) $(TARGET_ARCH) -c $< -o $@
+%.lo : %.c
+ $(SHLIBTOOL) --mode=compile $(CC) $(CFLAGS) $(INCLUDE_PAMMODUTILS) $(LTCFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $<
+
dirs:
ifdef DYNAMIC
$(MKDIR) ./dynamic
@@ -72,22 +94,37 @@ $(LIBSTATIC): $(LIBOBJS)
$(LD) -r -o $@ $(LIBOBJS) $(MODULE_SIMPLE_EXTRALIBS) $(LINK_PAMMODUTILS)
endif
+ifdef LIBTOOL
+$(LIBOBJLA): $(LIBSRC)
+endif
+
+ifdef LIBTOOL
+$(LIBLIBTOOL): $(LIBOBJLA)
+ $(SHLIBTOOL) --mode=link $(CC) $(LDFLAGS) $(LIBOBJLA) -o $@ $(MODULE_SIMPLE_EXTRALIBS) $(NEED_LINK_LIB_C) $(LINK_PAMMODUTILS) -module -avoid-version -rpath $(FAKEROOT)$(SECUREDIR)
+endif
+
install: all
$(MKDIR) $(FAKEROOT)$(SECUREDIR)
ifdef DYNAMIC
$(INSTALL) -m $(SHLIBMODE) $(LIBSHARED) $(FAKEROOT)$(SECUREDIR)
endif
+ifdef LIBTOOL
+ $(SHLIBTOOL) --mode=install $(INSTALL) -c $(LIBLIBTOOL) $(FAKEROOT)$(SECUREDIR)
+endif
$(MODULE_SIMPLE_INSTALL)
remove:
rm -f $(FAKEROOT)$(SECUREDIR)/$(TITLE).so
+ifdef LIBTOOL
+ $(SHLIBTOOL) --mode=uninstall rm $(FAKEROOT)$(SECUREDIR)/$(TITLE).la
+endif
$(MODULE_SIMPLE_REMOVE)
clean:
- rm -f $(LIBOBJD) $(LIBOBJS) core *~
+ rm -f $(LIBOBJD) $(LIBOBJS) $(LIBOBJLA) core *~
$(MODULE_SIMPLE_CLEAN)
- rm -f *.a *.o *.so *.bak
- rm -rf dynamic static
+ rm -f *.a *.la *.lo *.o *.so *.bak
+ rm -rf dynamic static .libs
$(MODULE_SIMPLE_EXTRACLEAN)
.c.o:

View File

@@ -0,0 +1,13 @@
$NetBSD: patch-ai,v 1.3 2002/12/23 21:23:59 jlam Exp $
--- modules/pam_access/Makefile.orig Sun Nov 19 18:54:03 2000
+++ modules/pam_access/Makefile
@@ -14,8 +14,4 @@ INSTALLED_CONFILE=$(SCONFIGD)/access.con
DEFS=-DDEFAULT_CONF_FILE=\"$(INSTALLED_CONFILE)\"
CFLAGS += $(DEFS)
-MODULE_SIMPLE_INSTALL=bash -f ../install_conf "$(FAKEROOT)" "$(SCONFIGD)" "$(INSTALLED_CONFILE)" "$(TITLE)" "$(LOCAL_CONFILE)"
-MODULE_SIMPLE_REMOVE=rm -f $(FAKEROOT)$(INSTALLED_CONFILE)
-MODULE_SIMPLE_CLEAN=rm -f ./.ignore_age
-
include ../Simple.Rules

View File

@@ -0,0 +1,13 @@
$NetBSD: patch-aj,v 1.3 2002/12/23 21:23:59 jlam Exp $
--- modules/pam_env/Makefile.orig Sun Nov 19 18:54:03 2000
+++ modules/pam_env/Makefile
@@ -15,8 +15,4 @@ INSTALLED_CONFILE=$(SCONFIGD)/pam_env.co
DEFS=-DDEFAULT_CONF_FILE=\"$(INSTALLED_CONFILE)\"
CFLAGS += $(DEFS)
-MODULE_SIMPLE_INSTALL=bash -f ../install_conf "$(FAKEROOT)" "$(SCONFIGD)" "$(INSTALLED_CONFILE)" "$(TITLE)" "$(LOCAL_CONFILE)"
-MODULE_SIMPLE_REMOVE=rm -f $(FAKEROOT)$(INSTALLED_CONFILE)
-MODULE_SIMPLE_CLEAN=rm -f ./.ignore_age
-
include ../Simple.Rules

View File

@@ -0,0 +1,90 @@
$NetBSD: patch-ak,v 1.3 2002/12/23 21:23:59 jlam Exp $
--- modules/pam_filter/pam_filter.c.orig Sun Nov 11 02:43:54 2001
+++ modules/pam_filter/pam_filter.c
@@ -21,7 +21,17 @@
#include <sys/stat.h>
#include <sys/socket.h>
#include <sys/ioctl.h>
+#ifdef HAVE_TERMIOS_H
+#include <termios.h>
+#define STRUCT_TERMIO struct termios
+#define TCGETATTR(fd, p_termio) tcgetattr(fd, p_termio)
+#define TCSETATTR(fd, p_termio) tcsetattr(fd, TCSANOW, p_termio)
+#else
#include <termio.h>
+#define STRUCT_TERMIO struct termio
+#define TCGETATTR(fd, p_termio) ioctl(fd, TCGETA, (char *) p_termio)
+#define TCSETATTR(fd, p_termio) ioctl(fd, TCSETA, (char *) p_termio)
+#endif
#include <signal.h>
@@ -278,7 +288,7 @@ static int set_filter(pam_handle_t *pamh
{
int status=-1;
char terminal[TERMINAL_LEN];
- struct termio stored_mode; /* initial terminal mode settings */
+ STRUCT_TERMIO stored_mode; /* initial terminal mode settings */
int fd[2], child=0, child2=0, aterminal;
if (filtername == NULL || *filtername != '/') {
@@ -307,17 +317,20 @@ static int set_filter(pam_handle_t *pamh
/* this is termio terminal handling... */
- if (ioctl(STDIN_FILENO, TCGETA, (char *) &stored_mode ) < 0) {
+ if (TCGETATTR(STDIN_FILENO, &stored_mode ) < 0) {
/* in trouble, so close down */
close(fd[0]);
_pam_log(LOG_CRIT, "couldn't copy terminal mode");
return PAM_ABORT;
} else {
- struct termio t_mode = stored_mode;
+ STRUCT_TERMIO t_mode = stored_mode;
t_mode.c_iflag = 0; /* no input control */
t_mode.c_oflag &= ~OPOST; /* no ouput post processing */
+#ifndef XCASE
+#define XCASE 0
+#endif
/* no signals, canonical input, echoing, upper/lower output */
t_mode.c_lflag &= ~(ISIG|ICANON|ECHO|XCASE);
t_mode.c_cflag &= ~(CSIZE|PARENB); /* no parity */
@@ -326,7 +339,7 @@ static int set_filter(pam_handle_t *pamh
t_mode.c_cc[VMIN] = 1; /* number of chars to satisfy a read */
t_mode.c_cc[VTIME] = 0; /* 0/10th second for chars */
- if (ioctl(STDIN_FILENO, TCSETA, (char *) &t_mode) < 0) {
+ if (TCSETATTR(STDIN_FILENO, &t_mode) < 0) {
close(fd[0]);
_pam_log(LOG_WARNING, "couldn't put terminal in RAW mode");
return PAM_ABORT;
@@ -356,7 +369,7 @@ static int set_filter(pam_handle_t *pamh
_pam_log(LOG_WARNING,"first fork failed");
if (aterminal) {
- (void) ioctl(STDIN_FILENO, TCSETA, (char *) &stored_mode);
+ (void) TCSETATTR(STDIN_FILENO, &stored_mode);
}
return PAM_AUTH_ERR;
@@ -398,7 +411,7 @@ static int set_filter(pam_handle_t *pamh
/* initialize the child's terminal to be the way the
parent's was before we set it into RAW mode */
- if (ioctl(fd[1], TCSETA, (char *) &stored_mode) < 0) {
+ if (TCSETATTR(fd[1], &stored_mode) < 0) {
_pam_log(LOG_WARNING,"cannot set slave terminal mode; %s"
,terminal);
close(fd[1]);
@@ -572,7 +585,7 @@ static int set_filter(pam_handle_t *pamh
if (aterminal) {
/* reset to initial terminal mode */
- (void) ioctl(STDIN_FILENO, TCSETA, (char *) &stored_mode);
+ (void) TCSETATTR(STDIN_FILENO, &stored_mode);
}
if (ctrl & FILTER_DEBUG) {

View File

@@ -0,0 +1,13 @@
$NetBSD: patch-al,v 1.3 2002/12/23 21:23:59 jlam Exp $
--- modules/pam_group/Makefile.orig Sun Nov 19 18:54:04 2000
+++ modules/pam_group/Makefile
@@ -14,8 +14,4 @@ INSTALLED_CONFILE=$(SCONFIGD)/group.conf
DEFS=-DDEFAULT_CONF_FILE=\"$(CONFILE)\"
CFLAGS += $(DEFS)
-MODULE_SIMPLE_INSTALL=bash -f ../install_conf "$(FAKEROOT)" "$(SCONFIGD)" "$(INSTALLED_CONFILE)" "$(TITLE)" "$(LOCAL_CONFILE)"
-MODULE_SIMPLE_REMOVE=rm -f $(FAKEROOT)$(INSTALLED_CONFILE)
-MODULE_SIMPLE_CLEAN=rm -f ./.ignore_age
-
include ../Simple.Rules

View File

@@ -0,0 +1,37 @@
$NetBSD: patch-am,v 1.4 2002/12/23 21:23:59 jlam Exp $
--- modules/pam_issue/pam_issue.c.orig Sun Nov 11 21:23:29 2001
+++ modules/pam_issue/pam_issue.c
@@ -21,6 +21,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
+#include <sys/param.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <string.h>
@@ -244,12 +245,24 @@ char *do_prompt(FILE *fd)
case 'U':
{
int users = 0;
+#if (defined(BSD) && BSD >= 199306)
+ struct utmp ut;
+ FILE *uf;
+
+ if ((uf == fopen(_PATH_UTMP, "r")) != NULL) {
+ while (fread(&ut, sizeof(ut), 1, uf) > 0)
+ if (ut.ut_name[0] != '\0')
+ ++users;
+ (void) fclose(uf);
+ }
+#else
struct utmp *ut;
setutent();
while ((ut = getutent()))
if (ut->ut_type == USER_PROCESS)
users++;
endutent();
+#endif
printf ("%d ", users);
if (c == 'U')
snprintf (buf, 1024, "%s", (users == 1) ?

View File

@@ -0,0 +1,12 @@
$NetBSD: patch-an,v 1.3 2002/12/23 21:23:59 jlam Exp $
--- modules/pam_mkhomedir/pam_mkhomedir.c.orig Fri Feb 8 00:20:17 2002
+++ modules/pam_mkhomedir/pam_mkhomedir.c
@@ -34,6 +34,7 @@
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
+#include <limits.h>
#include <pwd.h>
#include <stdlib.h>
#include <stdio.h>

View File

@@ -0,0 +1,13 @@
$NetBSD: patch-ao,v 1.3 2002/12/23 21:23:59 jlam Exp $
--- modules/pam_time/Makefile.orig Sun Nov 19 18:54:05 2000
+++ modules/pam_time/Makefile
@@ -14,8 +14,4 @@ INSTALLED_CONFILE=$(SCONFIGD)/time.conf
DEFS=-DDEFAULT_CONF_FILE=\"$(INSTALLED_CONFILE)\"
CFLAGS += $(DEFS)
-MODULE_SIMPLE_INSTALL=bash -f ../install_conf "$(FAKEROOT)" "$(SCONFIGD)" "$(INSTALLED_CONFILE)" "$(TITLE)" "$(LOCAL_CONFILE)"
-MODULE_SIMPLE_REMOVE=rm -f $(FAKEROOT)$(INSTALLED_CONFILE)
-MODULE_SIMPLE_CLEAN=rm -f ./.ignore_age
-
include ../Simple.Rules

View File

@@ -0,0 +1,141 @@
$NetBSD: patch-ap,v 1.3 2002/12/23 21:23:59 jlam Exp $
--- modules/pam_unix/pam_unix_acct.c.orig Wed Dec 20 00:15:05 2000
+++ modules/pam_unix/pam_unix_acct.c
@@ -43,7 +43,9 @@
#include <sys/types.h>
#include <syslog.h>
#include <pwd.h>
+#ifdef HAVE_SHADOW_H
#include <shadow.h>
+#endif
#include <time.h> /* for time() */
#include <security/_pam_macros.h>
@@ -71,8 +73,10 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_hand
unsigned int ctrl;
const char *uname;
int retval, daysleft;
- time_t curdays;
+ time_t now, curdays;
+#ifdef HAVE_GETSPNAM
struct spwd *spent;
+#endif
struct passwd *pwent;
char buf[80];
@@ -113,7 +117,9 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_hand
return PAM_CRED_INSUFFICIENT;
}
}
+#ifdef HAVE_GETSPNAM
spent = getspnam( uname );
+#endif
if (save_uid == pwent->pw_uid)
setreuid( save_uid, save_euid );
else {
@@ -123,15 +129,21 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_hand
}
} else if (!strcmp( pwent->pw_passwd, "x" )) {
+#ifdef HAVE_GETSPNAM
spent = getspnam(uname);
+#endif
} else {
return PAM_SUCCESS;
}
+#ifdef HAVE_GETSPNAM
if (!spent)
return PAM_AUTHINFO_UNAVAIL; /* Couldn't get username from shadow */
+#endif
- curdays = time(NULL) / (60 * 60 * 24);
+ now = time(NULL);
+ curdays = now / (60 * 60 * 24);
+#ifdef HAVE_GETSPNAM
D(("today is %d, last change %d", curdays, spent->sp_lstchg));
if ((curdays > spent->sp_expire) && (spent->sp_expire != -1)
&& (spent->sp_lstchg != 0)) {
@@ -143,6 +155,29 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_hand
D(("account expired"));
return PAM_ACCT_EXPIRED;
}
+#else
+ if ((now > pwent->pw_expire) && (pwent->pw_expire != 0)) {
+ _log_err(LOG_NOTICE, pamh
+ ,"account %s has expired (account expired)"
+ ,uname);
+ _make_remark(pamh, ctrl, PAM_ERROR_MSG,
+ "Your account has expired; please contact your system administrator");
+ D(("account expired"));
+ return PAM_ACCT_EXPIRED;
+ }
+ if ((now + _PASSWORD_WARNDAYS * 60 * 60 * 24 > pwent->pw_expire)
+ && (pwent->pw_expire != 0)) {
+ daysleft = (pwent->pw_expire - now) / (60 * 60 * 24);
+ _log_err(LOG_DEBUG, pamh
+ ,"account for user %s will expire in %d days"
+ ,uname, daysleft);
+ snprintf(buf, 80, "Warning: your account will expire in %d day%.2s",
+ daysleft, daysleft == 1 ? "" : "s");
+ _make_remark(pamh, ctrl, PAM_TEXT_INFO, buf);
+ }
+#endif
+
+#ifdef HAVE_GETSPNAM
if ((curdays > (spent->sp_lstchg + spent->sp_max + spent->sp_inact))
&& (spent->sp_max != -1) && (spent->sp_inact != -1)
&& (spent->sp_lstchg != 0)) {
@@ -154,7 +189,9 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_hand
D(("account expired 2"));
return PAM_ACCT_EXPIRED;
}
+#endif
D(("when was the last change"));
+#ifdef HAVE_GETSPNAM
if (spent->sp_lstchg == 0) {
_log_err(LOG_NOTICE, pamh
,"expired password for user %s (root enforced)"
@@ -173,6 +210,19 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_hand
D(("need a new password 2"));
return PAM_NEW_AUTHTOK_REQD;
}
+#else
+ if (pwent->pw_change == -1) {
+ _log_err(LOG_NOTICE, pamh
+ ,"expired password for user %s (root enforced)"
+ ,uname);
+ _make_remark(pamh, ctrl, PAM_ERROR_MSG,
+ "You are required to change your password immediately (root enforced)");
+ D(("need a new password"));
+ return PAM_NEW_AUTHTOK_REQD;
+ }
+#endif
+
+#ifdef HAVE_GETSPNAM
if ((curdays > (spent->sp_lstchg + spent->sp_max - spent->sp_warn))
&& (spent->sp_max != -1) && (spent->sp_warn != -1)) {
daysleft = (spent->sp_lstchg + spent->sp_max) - curdays;
@@ -183,6 +233,21 @@ PAM_EXTERN int pam_sm_acct_mgmt(pam_hand
daysleft, daysleft == 1 ? "" : "s");
_make_remark(pamh, ctrl, PAM_TEXT_INFO, buf);
}
+#else
+#ifndef _PASSWORD_WARNDAYS
+#define _PASSWORD_WARNDAYS 14
+#endif
+ if ((now + _PASSWORD_WARNDAYS * 60 * 60 * 24 > pwent->pw_change)
+ && (pwent->pw_change != 0) && (pwent->pw_change != -1)) {
+ daysleft = (pwent->pw_change - now) / (60 * 60 * 24);
+ _log_err(LOG_DEBUG, pamh
+ ,"password for user %s will expire in %d days"
+ ,uname, daysleft);
+ snprintf(buf, 80, "Warning: your password will expire in %d day%.2s",
+ daysleft, daysleft == 1 ? "" : "s");
+ _make_remark(pamh, ctrl, PAM_TEXT_INFO, buf);
+ }
+#endif
D(("all done"));

View File

@@ -0,0 +1,81 @@
$NetBSD: patch-aq,v 1.4 2002/12/23 21:23:59 jlam Exp $
--- modules/pam_unix/pam_unix_passwd.c.orig Tue Jul 9 00:44:18 2002
+++ modules/pam_unix/pam_unix_passwd.c
@@ -47,7 +47,10 @@
#include <sys/types.h>
#include <pwd.h>
#include <syslog.h>
+#include <sys/param.h>
+#ifdef HAVE_SHADOW_H
#include <shadow.h>
+#endif
#include <time.h> /* for time() */
#include <fcntl.h>
#include <ctype.h>
@@ -77,7 +80,7 @@
#include "md5.h"
#include "support.h"
-#if !((__GLIBC__ == 2) && (__GLIBC_MINOR__ >= 1))
+#if !defined(BSD) && !((__GLIBC__ == 2) && (__GLIBC_MINOR__ >= 1))
extern int getrpcport(const char *host, unsigned long prognum,
unsigned long versnum, unsigned int proto);
#endif /* GNU libc 2.1 */
@@ -346,6 +349,7 @@ static int save_old_password(const char
static int _update_passwd(pam_handle_t *pamh,
const char *forwho, const char *towhat)
{
+#ifdef HAVE_SHADOW_H
struct passwd *tmpent = NULL;
FILE *pwfile, *opwfile;
int err = 1;
@@ -401,10 +405,14 @@ static int _update_passwd(pam_handle_t *
unlink(PW_TMPFILE);
return PAM_AUTHTOK_ERR;
}
+#else
+ return PAM_AUTHTOK_ERR;
+#endif
}
static int _update_shadow(const char *forwho, char *towhat)
{
+#ifdef HAVE_GETSPNAM
struct spwd *spwdent = NULL, *stmpent = NULL;
FILE *pwfile, *opwfile;
int err = 1;
@@ -461,6 +469,9 @@ static int _update_shadow(const char *fo
unlink(SH_TMPFILE);
return PAM_AUTHTOK_ERR;
}
+#else
+ return PAM_AUTHTOK_ERR;
+#endif
}
static int _do_setpass(pam_handle_t* pamh, const char *forwho, char *fromwhat,
@@ -569,6 +580,7 @@ static int _unix_verify_shadow(const cha
if (pwd == NULL)
return PAM_AUTHINFO_UNAVAIL; /* We don't need to do the rest... */
+#ifdef HAVE_GETSPNAM
if (strcmp(pwd->pw_passwd, "x") == 0) {
/* ...and shadow password file entry for this user, if shadowing
is enabled */
@@ -619,6 +631,15 @@ static int _unix_verify_shadow(const cha
}
}
return retval;
+#else
+ if (strcmp(pwd->pw_passwd, "x") == 0)
+ return PAM_AUTHINFO_UNAVAIL;
+
+ if (off(UNIX__IAMROOT, ctrl)) {
+ if (time(NULL) > pwd->pw_expire)
+ return PAM_ACCT_EXPIRED;
+ }
+#endif
}
static int _pam_unix_approve_pass(pam_handle_t * pamh

View File

@@ -0,0 +1,79 @@
$NetBSD: patch-ar,v 1.4 2003/05/16 17:30:59 wiz Exp $
--- modules/pam_unix/support.c.orig Mon Sep 23 13:33:22 2002
+++ modules/pam_unix/support.c
@@ -6,13 +6,17 @@
#define _BSD_SOURCE
+#include "../../_pam_aconf.h"
+
#include <stdlib.h>
#include <unistd.h>
#include <stdarg.h>
#include <string.h>
#include <malloc.h>
#include <pwd.h>
+#ifdef HAVE_SHADOW_H
#include <shadow.h>
+#endif
#include <limits.h>
#include <utmp.h>
#include <errno.h>
@@ -113,6 +117,12 @@ int _make_remark(pam_handle_t * pamh, un
*/
char *PAM_getlogin(void)
{
+#ifdef USE_GETLOGIN
+ char *retval = NULL;
+ retval = getlogin();
+ D(("PAM_getlogin retval: %s", retval));
+ return retval;
+#else
struct utmp *ut, line;
char *curr_tty, *retval;
static char curr_user[sizeof(ut->ut_user) + 4];
@@ -135,6 +145,7 @@ char *PAM_getlogin(void)
D(("PAM_getlogin retval: %s", retval));
return retval;
+#endif
}
/*
@@ -358,6 +369,7 @@ int _unix_blankpasswd(unsigned int ctrl,
#endif
if (pwd != NULL) {
+#ifdef HAVE_GETSPNAM
if (strcmp( pwd->pw_passwd, "*NP*" ) == 0)
{ /* NIS+ */
uid_t save_euid, save_uid;
@@ -400,6 +412,9 @@ int _unix_blankpasswd(unsigned int ctrl,
salt = x_strdup(spwdent->sp_pwdp);
else
salt = x_strdup(pwd->pw_passwd);
+#else
+ salt = x_strdup(pwd->pw_passwd);
+#endif
}
/* Does this user have a password? */
if (salt == NULL) {
@@ -535,6 +550,7 @@ int _unix_verify_password(pam_handle_t *
pwd = getpwnam(name); /* Get password file entry... */
if (pwd != NULL) {
+#ifdef HAVE_GETSPNAM
if (strcmp( pwd->pw_passwd, "*NP*" ) == 0)
{ /* NIS+ */
uid_t save_euid, save_uid;
@@ -572,6 +588,9 @@ int _unix_verify_password(pam_handle_t *
salt = x_strdup(spwdent->sp_pwdp);
else
salt = x_strdup(pwd->pw_passwd);
+#else
+ salt = x_strdup(pwd->pw_passwd);
+#endif
}
data_name = (char *) malloc(sizeof(FAIL_PREFIX) + strlen(name));

View File

@@ -0,0 +1,32 @@
$NetBSD: patch-as,v 1.3 2002/12/23 21:24:00 jlam Exp $
--- modules/pam_unix/unix_chkpwd.c.orig Mon Sep 23 13:33:22 2002
+++ modules/pam_unix/unix_chkpwd.c
@@ -29,7 +29,9 @@
#include <unistd.h>
#include <sys/types.h>
#include <pwd.h>
+#ifdef HAVE_SHADOW_H
#include <shadow.h>
+#endif
#include <signal.h>
#define MAXPASS 200 /* the maximum length of a password */
@@ -101,6 +103,7 @@ static int _unix_verify_password(const c
pwd = getpwnam(name); /* Get password file entry... */
endpwent();
if (pwd != NULL) {
+#ifdef HAVE_GETSPNAM
if (strcmp(pwd->pw_passwd, "x") == 0) {
/*
* ...and shadow password file entry for this user,
@@ -127,6 +130,9 @@ static int _unix_verify_password(const c
salt = x_strdup(pwd->pw_passwd);
}
}
+#else
+ salt = x_strdup(pwd->pw_passwd);
+#endif
}
if (pwd == NULL || salt == NULL) {
_log_err(LOG_ALERT, "check pass; user unknown");

View File

@@ -0,0 +1,40 @@
$NetBSD: patch-at,v 1.6 2007/07/09 03:51:33 minskim Exp $
--- Make.Rules.in.orig 2002-06-26 21:04:54.000000000 -0700
+++ Make.Rules.in
@@ -49,6 +49,7 @@ HAVE_LIBUTIL=@HAVE_LIBUTIL@
HAVE_NDBM_H=@HAVE_NDBM_H@
HAVE_LIBNDBM=@HAVE_LIBNDBM@
HAVE_LIBDB=@HAVE_LIBDB@
+HAVE_LIBDB4=@HAVE_LIBDB4@
HAVE_LIBFL=@HAVE_LIBFL@
HAVE_LIBNSL=@HAVE_LIBNSL@
HAVE_LIBPWDB=@HAVE_LIBPWDB@
@@ -75,10 +76,14 @@ WITH_MEMORY_DEBUG=@WITH_MEMORY_DEBUG@
WITH_LIBDEBUG=@WITH_LIBDEBUG@
WITH_PAMLOCKING=@WITH_PAMLOCKING@
WITH_LCKPWDF=@WITH_LCKPWDF@
-STATIC_LIBPAM=@STATIC_LIBPAM@
-DYNAMIC_LIBPAM=@DYNAMIC_LIBPAM@
-STATIC=@STATIC@
-DYNAMIC=@DYNAMIC@
+STATIC_LIBPAM=no
+DYNAMIC_LIBPAM=no
+LIBTOOL_LIBPAM=yes
+STATIC=
+DYNAMIC=
+LTCFLAGS=-DPAM_DYNAMIC
+LIBTOOL=@LIBTOOL@
+SHLIBTOOL=@SHLIBTOOL@
# Location of libraries when installed on the system
FAKEROOT=@FAKEROOT@
@@ -104,7 +109,7 @@ LIBDL=@LIBDL@
MKDIR=@MKDIR@
INSTALL=@INSTALL@
RANLIB=@RANLIB@
-STRIP=@STRIP@
+STRIP=:
CC_STATIC=@CC_STATIC@
LINKLIBS = $(NEED_LINK_LIB_C) $(LIBDL)

View File

@@ -0,0 +1,95 @@
$NetBSD: patch-au,v 1.5 2004/11/19 14:54:55 jlam Exp $
--- modules/pam_filter/Makefile.orig 2001-11-11 02:43:54.000000000 -0500
+++ modules/pam_filter/Makefile
@@ -27,6 +27,7 @@ LIBSRC = $(TITLE).c
LIBOBJ = $(TITLE).o
LIBOBJD = $(addprefix dynamic/,$(LIBOBJ))
LIBOBJS = $(addprefix static/,$(LIBOBJ))
+LIBOBJLA = $(LIBOBJ:.o=.lo)
dynamic/%.o : %.c
$(CC) $(CFLAGS) $(DYNAMIC) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
@@ -34,6 +35,9 @@ dynamic/%.o : %.c
static/%.o : %.c
$(CC) $(CFLAGS) $(STATIC) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
+%.lo : %.c
+ $(SHLIBTOOL) --mode=compile $(CC) $(CFLAGS) $(INCLUDE_PAMMODUTILS) $(LTCFLAGS) $(TARGET_ARCH) -c $<
+
ifdef DYNAMIC
LIBSHARED = $(TITLE).so
endif
@@ -42,13 +46,27 @@ ifdef STATIC
LIBSTATIC = lib$(TITLE).o
endif
+ifdef LIBTOOL
+LIBLIBTOOL = $(TITLE).la
+endif
+
####################### don't edit below #######################
#
# this is where we compile this module
#
-all: dirs $(LIBSHARED) $(LIBSTATIC) register filters
+ifdef DYNAMIC
+MODULES_TO_BUILD+= $(LIBSHARED)
+endif
+ifdef STATIC
+MODULES_TO_BUILD+= $(LIBSTATIC)
+endif
+ifdef LIBTOOL
+MODULES_TO_BUILD+= $(LIBLIBTOOL)
+endif
+
+all: dirs $(MODULES_TO_BUILD) register filters
dirs:
if [ ! -r include/security ]; then ln -sf . include/security ; fi
@@ -90,8 +108,20 @@ $(LIBSTATIC): $(LIBOBJS)
$(LD) -r -o $@ $(LIBOBJS)
endif
+ifdef LIBTOOL
+$(LIBOBJLA): $(LIBSRC)
+endif
+
+ifdef LIBTOOL
+$(LIBLIBTOOL): $(LIBOBJLA)
+ $(SHLIBTOOL) --mode=link $(CC) $(LDFLAGS) $(LIBOBJLA) -o $@ -module -avoid-version -rpath $(FAKEROOT)$(SECUREDIR)
+endif
+
remove:
rm -f $(FAKEROOT)$(SECUREDIR)/$(TITLE).so
+ifdef LIBTOOL
+ $(LIBTOOL) --mode-uninstall rm $(FAKEROOT)$(SECUREDIR)/$(TITLE).la
+endif
rm -f $(FAKEROOT)$(INCLUDED)/pam_filter.h
@for i in $(FILTERS) ; do \
if [ -d $$i ]; then \
@@ -109,6 +139,9 @@ install: all
ifdef DYNAMIC
$(INSTALL) -m $(SHLIBMODE) $(LIBSHARED) $(FAKEROOT)$(SECUREDIR)
endif
+ifdef LIBTOOL
+ $(LIBTOOL) --mode=install $(INSTALL) $(LIBLIBTOOL) $(FAKEROOT)$(SECUREDIR)
+endif
$(MKDIR) $(FAKEROOT)$(INCLUDED)
$(INSTALL) -m 644 include/pam_filter.h $(FAKEROOT)$(INCLUDED)
@@ -118,9 +151,9 @@ clean:
$(MAKE) -C $$i clean ; \
fi ; \
done
- rm -f $(LIBSHARED) $(LIBOBJD) $(LIBOBJS) core *~
+ rm -f $(LIBSHARED) $(LIBLIBTOOL) $(LIBOBJD) $(LIBOBJS) $(LIBOBJSLA) core *~
rm -f include/security
- rm -fr dynamic static
- rm -f *.a *.o *.so *.bak
+ rm -fr dynamic static .libs
+ rm -f *.a *.la *.lo *.o *.so *.bak
endif

View File

@@ -0,0 +1,101 @@
$NetBSD: patch-av,v 1.5 2004/11/19 14:54:55 jlam Exp $
--- modules/pam_tally/Makefile.orig 2001-06-27 02:20:43.000000000 -0400
+++ modules/pam_tally/Makefile
@@ -20,6 +20,7 @@ LIBSRC = $(TITLE).c
LIBOBJ = $(TITLE).o
LIBOBJD = $(addprefix dynamic/,$(LIBOBJ))
LIBOBJS = $(addprefix static/,$(LIBOBJ))
+LIBOBJLA = $(LIBOBJ:.o=.lo)
APPSRC = $(TITLE)_app.c
APPOBJ = $(TITLE)_app.o
@@ -32,6 +33,8 @@ dynamic/%.o : %.c
static/%.o : %.c
$(CC) $(CFLAGS) $(STATIC) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
+%.lo : %.c
+ $(SHLIBTOOL) --mode=compile $(CC) $(CFLAGS) $(LTCFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $<
ifdef DYNAMIC
LIBSHARED = $(TITLE).so
@@ -41,12 +44,26 @@ ifdef STATIC
LIBSTATIC = lib$(TITLE).o
endif
+ifdef LIBTOOL
+LIBLIBTOOL = $(TITLE).la
+endif
+
APPLICATION = $(TITLE)
APPMODE = 755
####################### don't edit below #######################
-all: dirs $(LIBSHARED) $(LIBSTATIC) register $(APPLICATION)
+ifdef DYNAMIC
+MODULES_TO_BUILD+= $(LIBSHARED)
+endif
+ifdef STATIC
+MODULES_TO_BUILD+= $(LIBSTATIC)
+endif
+ifdef LIBTOOL
+MODULES_TO_BUILD+= $(LIBLIBTOOL)
+endif
+
+all: dirs $(MODULES_TO_BUILD) register $(APPLICATION)
dirs:
ifdef DYNAMIC
@@ -55,6 +72,9 @@ endif
ifdef STATIC
$(MKDIR) ./static
endif
+ifdef LIBTOOL
+ $(MKDIR) ./static
+endif
register:
ifdef STATIC
@@ -82,22 +102,38 @@ $(APPLICATION): $(APPOBJS) $(TITLE).c
$(CC) $(CFLAGS) -o $@ $(APPOBJS) $(LOADLIBES)
endif
+ifdef LIBTOOL
+$(LIBOBJLA): $(LIBSRC)
+
+$(LIBLIBTOOL): $(LIBOBJLA)
+ $(SHLIBTOOL) --mode=link $(CC) $(LDFLAGS) $(LIBOBJLA) -o $@ -module -avoid-version -rpath $(FAKEROOT)$(SECUREDIR)
+
+$(APPLICATION): $(APPOBJS) $(TITLE).c
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(CFLAGS) -o $@ $(APPOBJS) $(LOADLIBES)
+endif
+
install: all
$(MKDIR) $(FAKEROOT)$(SECUREDIR)
ifdef DYNAMIC
$(INSTALL) -m $(SHLIBMODE) $(LIBSHARED) $(FAKEROOT)$(SECUREDIR)
endif
+ifdef LIBTOOL
+ $(SHLIBTOOL) --mode=install $(INSTALL) $(LIBLIBTOOL) $(FAKEROOT)$(SECUREDIR)
+endif
$(MKDIR) $(FAKEROOT)$(SUPLEMENTED)
$(INSTALL) -m $(APPMODE) $(APPLICATION) $(FAKEROOT)$(SUPLEMENTED)
remove:
rm -f $(FAKEROOT)$(SECUREDIR)/$(TITLE).so
+ifdef LIBTOOL
+ $(SHLIBTOOL) --mode=uninstall rm $(FAKEROOT)$(SECUREDIR)/$(TITLE).la
+endif
rm -f $(FAKEROOT)$(SUPLEMENTED)/$(TITLE)
clean:
- rm -f $(LIBOBJD) $(LIBOBJS) $(APPOBJD) $(APPOBJS) core *~
- rm -f *.a *.o *.so *.bak dynamic/* static/* $(APPLICATION)
- rm -rf dynamic static
+ rm -f $(LIBOBJD) $(LIBOBJS) $(LIBOBJLA) $(APPOBJD) $(APPOBJS) core *~
+ rm -f *.a *.la *.lo *.o *.so *.bak dynamic/* static/* $(APPLICATION)
+ rm -rf dynamic static .libs
.c.o:
$(CC) $(CFLAGS) -c $<

View File

@@ -0,0 +1,137 @@
$NetBSD: patch-aw,v 1.6 2010/02/02 17:09:28 tnn Exp $
--- modules/pam_unix/Makefile.orig 2001-02-11 06:33:53.000000000 +0000
+++ modules/pam_unix/Makefile
@@ -55,6 +55,7 @@ LIBSRC = pam_unix_auth.c pam_unix_acct.c
support.c
LIBOBJD = $(addprefix dynamic/,$(LIBOBJ))
LIBOBJS = $(addprefix static/,$(LIBOBJ))
+LIBOBJLA = $(LIBOBJ:.o=.lo)
PLUS = md5_good.o md5_broken.o md5_crypt_good.o md5_crypt_broken.o \
yppasswd_xdr.o bigcrypt.o
@@ -65,11 +66,24 @@ endif
ifdef STATIC
LIBSTATIC = libpam_unix.o
endif
+ifdef LIBTOOL
+LIBLIBTOOL = pam_unix.la
+endif
########################### don't edit below #######################
-all: dirs info $(PLUS) $(LIBSHARED) $(LIBSTATIC) $(CHKPWD) register
+ifdef DYNAMIC
+MODULES_TO_BUILD+= $(LIBSHARED)
+endif
+ifdef STATIC
+MODULES_TO_BUILD+= $(LIBSTATIC)
+endif
+ifdef LIBTOOL
+MODULES_TO_BUILD+= $(LIBLIBTOOL)
+endif
+
+all: dirs info $(MODULES_TO_BUILD) $(CHKPWD) register
dynamic/%.o : %.c
$(CC) $(CFLAGS) $(DYNAMIC) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
@@ -77,6 +91,9 @@ dynamic/%.o : %.c
static/%.o: %.c
$(CC) $(CFLAGS) $(STATIC) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
+%.lo : %.c
+ $(SHLIBTOOL) --tag=CC --mode=compile $(CC) $(CFLAGS) $(LTCFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $<
+
dummy:
@echo "**** This is not a top-level Makefile "
exit
@@ -117,10 +134,17 @@ $(LIBSTATIC): $(LIBOBJS)
$(LD) -r -o $@ $(LIBOBJS) $(PLUS) $(CRACKLIB) $(LDLIBS) $(LIBNSL) $(LIBCRYPT)
endif
+ifdef LIBTOOL
+$(LIBOBJLA): $(LIBSRC)
+
+$(LIBLIBTOOL): $(LIBOBJLA) $(PLUS:.o=.lo)
+ $(SHLIBTOOL) --tag=CC --mode=link $(CC) $(LDFLAGS) $(LIBOBJLA) -o $@ $(PLUS:.o=.lo) $(CRACKLIB) $(LDLIBS) $(LIBNSL) $(LIBCRYPT) -module -avoid-version -rpath $(FAKEROOT)$(SECUREDIR)
+endif
+
$(CHKPWD): unix_chkpwd.o md5_good.o md5_broken.o \
md5_crypt_good.o md5_crypt_broken.o \
bigcrypt.o
- $(CC) -o $(CHKPWD) $^ $(LDLIBS) $(LIBCRYPT)
+ $(CC) $(LDFLAGS) -o $(CHKPWD) $^ $(LDLIBS) $(LIBCRYPT)
unix_chkpwd.o: unix_chkpwd.c
$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
@@ -129,18 +153,38 @@ md5_good.o: md5.c
$(CC) $(CFLAGS) $(CPPFLAGS) -DHIGHFIRST -D'MD5Name(x)=Good##x' \
$(TARGET_ARCH) -c $< -o $@
+md5_good.lo: md5.c
+ $(LIBTOOL) --tag=CC --mode=compile $(CC) $(CFLAGS) $(CPPFLAGS) \
+ -DHIGHFIRST -D'MD5Name(x)=Good##x' \
+ $(TARGET_ARCH) -c $< -o $@
+
md5_broken.o: md5.c
$(CC) $(CFLAGS) $(CPPFLAGS) -D'MD5Name(x)=Broken##x' \
$(TARGET_ARCH) -c $< -o $@
+md5_broken.lo: md5.c
+ $(LIBTOOL) --tag=CC --mode=compile $(CC) $(CFLAGS) $(CPPFLAGS) \
+ -D'MD5Name(x)=Broken##x' \
+ $(TARGET_ARCH) -c $< -o $@
+
md5_crypt_good.o: md5_crypt.c
$(CC) $(CFLAGS) $(CPPFLAGS) -D'MD5Name(x)=Good##x' \
$(TARGET_ARCH) -c $< -o $@
+md5_crypt_good.lo: md5_crypt.c
+ $(LIBTOOL) --tag=CC --mode=compile $(CC) $(CFLAGS) $(CPPFLAGS) \
+ -D'MD5Name(x)=Good##x' \
+ $(TARGET_ARCH) -c $< -o $@
+
md5_crypt_broken.o: md5_crypt.c
$(CC) $(CFLAGS) $(CPPFLAGS) -D'MD5Name(x)=Broken##x' \
$(TARGET_ARCH) -c $< -o $@
+md5_crypt_broken.lo: md5_crypt.c
+ $(LIBTOOL) --tag=CC --mode=compile $(CC) $(CFLAGS) $(CPPFLAGS) \
+ -D'MD5Name(x)=Broken##x' \
+ $(TARGET_ARCH) -c $< -o $@
+
install: all
mkdir -p $(FAKEROOT)$(SECUREDIR)
ifdef DYNAMIC
@@ -148,19 +192,28 @@ ifdef DYNAMIC
for x in pam_unix_auth pam_unix_acct pam_unix_passwd pam_unix_session;\
do ln -sf $(LIBSHARED) $(FAKEROOT)$(SECUREDIR)/$$x.so ; done
endif
+ifdef LIBTOOL
+ $(SHLIBTOOL) --mode=install install $(LIBLIBTOOL) $(FAKEROOT)$(SECUREDIR)
+ . $(FAKEROOT)$(SECUREDIR)/$(LIBLIBTOOL); \
+ for x in pam_unix_auth pam_unix_acct pam_unix_passwd pam_unix_session;\
+ do ln -sf $$dlname $(FAKEROOT)$(SECUREDIR)/$$x.so ; done
+endif
$(MKDIR) $(FAKEROOT)$(SUPLEMENTED)
install -m 4555 $(CHKPWD) $(FAKEROOT)$(SUPLEMENTED)
remove:
rm -f $(FAKEROOT)$(SECUREDIR)/$(LIBSHARED)
+ifdef LIBTOOL
+ $(SHLIBTOOL) --mode=uninstall rm $(FAKEROOT)$(SECUREDIR)/$(LIBLIBTOOL)
+endif
for x in pam_unix_auth pam_unix_acct pam_unix_passwd pam_unix_session;\
do rm -f $(FAKEROOT)$(SECUREDIR)/$$x.so ; done
rm -f $(FAKEROOT)$(SUPLEMENTED)/$(CHKPWD)
clean:
- rm -f $(LIBOBJD) $(LIBOBJS) $(CHKPWD) *.o *.so core
+ rm -f $(LIBOBJD) $(LIBOBJS) $(LIBOBJLA) $(CHKPWD) *.la *.lo *.o *.so core
rm -f *~ *.a *.out *.bak
- rm -rf dynamic static
+ rm -rf dynamic static .libs
.c.o:
$(CC) -c $(CFLAGS) $<

View File

@@ -0,0 +1,13 @@
$NetBSD: patch-ax,v 1.3 2004/11/16 07:46:58 jlam Exp $
--- Makefile.orig 2001-05-08 00:14:20.000000000 -0400
+++ Makefile
@@ -15,7 +15,7 @@ ifeq ($(shell test \! -f Make.Rules || e
include Make.Rules
endif
-THINGSTOMAKE = modules libpam libpamc libpam_misc doc examples
+THINGSTOMAKE = modules libpam libpamc libpam_misc doc
all: $(THINGSTOMAKE)

View File

@@ -0,0 +1,15 @@
$NetBSD: patch-ay,v 1.3 2006/06/06 00:57:59 minskim Exp $
--- modules/pam_limits/Makefile.orig 2000-11-19 23:54:04.000000000 +0000
+++ modules/pam_limits/Makefile
@@ -18,10 +18,6 @@ INSTALLED_CONFILE=$(SCONFIGD)/limits.con
DEFS=-DDEFAULT_CONF_FILE=\"$(INSTALLED_CONFILE)\"
CFLAGS += $(DEFS)
-MODULE_SIMPLE_INSTALL=bash -f ../install_conf "$(FAKEROOT)" "$(SCONFIGD)" "$(INSTALLED_CONFILE)" "$(TITLE)" "$(LOCAL_CONFILE)"
-MODULE_SIMPLE_REMOVE=rm -f $(FAKEROOT)$(INSTALLED_CONFILE)
-MODULE_SIMPLE_CLEAN=rm -f ./.ignore_age
-
include ../Simple.Rules
else

View File

@@ -0,0 +1,19 @@
$NetBSD: patch-az,v 1.4 2007/07/09 03:51:33 minskim Exp $
--- modules/pam_userdb/Makefile.orig 2007-07-08 13:43:37.000000000 -0700
+++ modules/pam_userdb/Makefile
@@ -20,9 +20,14 @@ ifeq ($(HAVE_LIBDB),yes)
WHICH_DB=db
MODULE_SIMPLE_EXTRALIBS = -ldb
else
+ifeq ($(HAVE_LIBDB4),yes)
+ WHICH_DB=db4
+ MODULE_SIMPLE_EXTRALIBS = -ldb4
+else
WHICH_DB=none
endif
endif
+endif
ifeq ($(WHICH_DB),none)