diff --git a/databases/courier-authlib-mysql/Makefile b/databases/courier-authlib-mysql/Makefile index 89deab0ae110..496f19319021 100644 --- a/databases/courier-authlib-mysql/Makefile +++ b/databases/courier-authlib-mysql/Makefile @@ -1,9 +1,8 @@ -PORTREVISION= 1 PKGNAMESUFFIX= -mysql COMMENT= MySQL support for the Courier authentication library CATEGORIES= databases mail MASTERDIR= ${.CURDIR}/../../security/courier-authlib .include "${MASTERDIR}/Makefile" diff --git a/databases/courier-authlib-pgsql/Makefile b/databases/courier-authlib-pgsql/Makefile index a50cbe4eee87..58c6f3042856 100644 --- a/databases/courier-authlib-pgsql/Makefile +++ b/databases/courier-authlib-pgsql/Makefile @@ -1,9 +1,8 @@ -PORTREVISION= 1 PKGNAMESUFFIX= -pgsql COMMENT= PostgreSQL support for the Courier authentication library CATEGORIES= databases mail MASTERDIR= ${.CURDIR}/../../security/courier-authlib .include "${MASTERDIR}/Makefile" diff --git a/databases/courier-authlib-sqlite/Makefile b/databases/courier-authlib-sqlite/Makefile index 576eb2bf1782..43ab74a98a31 100644 --- a/databases/courier-authlib-sqlite/Makefile +++ b/databases/courier-authlib-sqlite/Makefile @@ -1,9 +1,8 @@ -PORTREVISION= 1 PKGNAMESUFFIX= -sqlite COMMENT= SQLite support for the Courier authentication library CATEGORIES= databases mail MASTERDIR= ${.CURDIR}/../../security/courier-authlib .include "${MASTERDIR}/Makefile" diff --git a/databases/courier-authlib-userdb/Makefile b/databases/courier-authlib-userdb/Makefile index ede6ad4f7787..fa4afcaed494 100644 --- a/databases/courier-authlib-userdb/Makefile +++ b/databases/courier-authlib-userdb/Makefile @@ -1,11 +1,10 @@ -PORTREVISION= 1 PKGNAMESUFFIX= -userdb COMMENT= Userdb support for the Courier authentication library CATEGORIES= databases mail CONFLICTS_INSTALL= courier-authlib-usergdbm # lib/courier-authlib/libauthuserdb.so MASTERDIR= ${.CURDIR}/../../security/courier-authlib .include "${MASTERDIR}/Makefile" diff --git a/databases/courier-authlib-usergdbm/Makefile b/databases/courier-authlib-usergdbm/Makefile index aac9214a1067..36e101a00423 100644 --- a/databases/courier-authlib-usergdbm/Makefile +++ b/databases/courier-authlib-usergdbm/Makefile @@ -1,11 +1,10 @@ -PORTREVISION= 1 PKGNAMESUFFIX= -usergdbm COMMENT= Userdb support for the Courier authentication library CATEGORIES= databases mail CONFLICTS_INSTALL= courier-authlib-userdb # lib/courier-authlib/libauthuserdb.so MASTERDIR= ${.CURDIR}/../../security/courier-authlib .include "${MASTERDIR}/Makefile" diff --git a/mail/courier-authlib-vchkpw/Makefile b/mail/courier-authlib-vchkpw/Makefile index 5e0d1307a2f1..e8d5b44277e2 100644 --- a/mail/courier-authlib-vchkpw/Makefile +++ b/mail/courier-authlib-vchkpw/Makefile @@ -1,9 +1,8 @@ -PORTREVISION= 1 PKGNAMESUFFIX= -vchkpw COMMENT= Vpopmail/vchkpw support for the Courier authentication library CATEGORIES= mail MASTERDIR= ${.CURDIR}/../../security/courier-authlib .include "${MASTERDIR}/Makefile" diff --git a/net/courier-authlib-ldap/Makefile b/net/courier-authlib-ldap/Makefile index c862bf5a5eb3..722d609d7849 100644 --- a/net/courier-authlib-ldap/Makefile +++ b/net/courier-authlib-ldap/Makefile @@ -1,9 +1,8 @@ -PORTREVISION= 1 PKGNAMESUFFIX= -ldap COMMENT= LDAP support for the Courier authentication library CATEGORIES= net mail MASTERDIR= ${.CURDIR}/../../security/courier-authlib .include "${MASTERDIR}/Makefile" diff --git a/security/courier-authlib-base/Makefile b/security/courier-authlib-base/Makefile index 7d728962dada..84e64c4cd3eb 100644 --- a/security/courier-authlib-base/Makefile +++ b/security/courier-authlib-base/Makefile @@ -1,11 +1,10 @@ -PORTREVISION= 1 PKGNAMESUFFIX= -base COMMENT= Courier authentication library base CATEGORIES= security mail MASTERDIR= ${.CURDIR}/../../security/courier-authlib USE_LDCONFIG= ${PREFIX}/lib/${PORTNAME} .include "${MASTERDIR}/Makefile" diff --git a/security/courier-authlib/Makefile b/security/courier-authlib/Makefile index edf1edc65ff9..aebdbab5d262 100644 --- a/security/courier-authlib/Makefile +++ b/security/courier-authlib/Makefile @@ -1,212 +1,213 @@ PORTNAME= courier-authlib -PORTVERSION= 0.72.0 -PORTREVISION= 1 +PORTVERSION= 0.72.1 CATEGORIES?= security mail .if defined(PKGNAMESUFFIX) MASTER_SITES= SF/courier/authlib/${PORTVERSION} .else MASTER_SITES= # empty DISTFILES= # empty EXTRACT_ONLY= # empty .endif MAINTAINER= madpilot@FreeBSD.org COMMENT?= Meta-port for the courier authentication library WWW= https://www.Courier-MTA.org/authlib/ CONFLICTS= courier-0.45* .if !defined(PKGNAMESUFFIX) RUN_DEPENDS= courierauthconfig:security/courier-authlib-base NO_BUILD= yes NO_INSTALL= yes PATCHDIR= /dev/null OPTIONS_DEFINE+= GDBM .include "${.CURDIR}/Makefile.opt" .else # !defined(PKGNAMESUFFIX) -LIB_DEPENDS+= libltdl.so:devel/libltdl \ +LIB_DEPENDS+= libidn2.so:dns/libidn2 \ + libltdl.so:devel/libltdl \ libcourier-unicode.so:devel/courier-unicode -USES= iconv gmake libtool localbase perl5 tar:bzip2 +USES= iconv gmake libtool localbase perl5 pkgconfig tar:bzip2 GNU_CONFIGURE= yes USE_SUBMAKE= yes MAILOWN= courier MAILGRP= courier LOCALSTATEDIR= /var AUTHDAEMONVAR= ${LOCALSTATEDIR}/run/authdaemond VPOPMAILDIR?= ${LOCALBASE}/vpopmail USERDB?= ${PREFIX}/etc/userdb +GNU_CONFIGURE_MANPREFIX=${PREFIX}/share CONFIGURE_ARGS= --enable-unicode \ --disable-static \ --without-authcustom \ --without-authshadow \ --without-authpwd \ --with-mailuser=${MAILOWN} \ --with-mailgroup=${MAILGRP} \ --localstatedir=${LOCALSTATEDIR} \ --with-authdaemonvar=${AUTHDAEMONVAR} \ --cache-file=${WRKDIR}/courier-authlib.cache INSTALL_TARGET= install-strip DESCR= ${PKGDIR}/pkg-descr${PKGNAMESUFFIX} PLIST= ${PKGDIR}/pkg-plist${PKGNAMESUFFIX:S/gdbm/db/} PLIST_SUB+= MAILOWN=${MAILOWN} MAILGRP=${MAILGRP} AUTHMOD= auth${PKGNAMESUFFIX:S/-//:S/gdbm/db/} .if ${AUTHMOD} == authbase RUN_DEPENDS+= ${LOCALBASE}/share/sysconftool/sysconftool:devel/sysconftool CONFIGURE_ARGS+=--with-base --with-authpam --with-authpipe USERS= ${MAILOWN} GROUPS= ${MAILGRP} OPTIONS_DEFINE+= DOCS DOCS= AUTHORS COPYING ChangeLog INSTALL NEWS README \ README.authdebug.html README_authlib.html PLIST_SUB+= AUTHDAEMONVAR=${AUTHDAEMONVAR} SUB_LIST+= AUTHDAEMONVAR=${AUTHDAEMONVAR} .if defined(WITH_AUTHPIPE_PROG) CONFIGURE_ARGS+=--with-pipeprog=${WITH_AUTHPIPE_PROG} .endif .else RUN_DEPENDS+= courierauthconfig:security/courier-authlib-base CONFIGURE_ARGS+=--without-base --without-authpam --without-authpipe REMOVE_SUBDIRS+=liblock liblog .endif .if ${AUTHMOD} == authuserdb .if ${PKGNAMESUFFIX} == -usergdbm CONFLICTS+= ${PORTNAME}-userdb-0.* LIB_DEPENDS+= libgdbm.so:databases/gdbm CONFIGURE_ARGS+=--with-db=gdbm .elif ${PKGNAMESUFFIX} == -userdb CONFLICTS+= ${PORTNAME}-usergdbm-0.* CONFIGURE_ARGS+=--with-db=db .endif CONFIGURE_ARGS+=--with-userdb=${USERDB} .else CONFIGURE_ARGS+=--with-db=db --without-authuserdb REMOVE_SUBDIRS+=makedat userdb .endif .if ${AUTHMOD} == authldap RUN_DEPENDS+= ${LOCALBASE}/share/sysconftool/sysconftool:devel/sysconftool OPTIONS_DEFINE+= DOCS DOCS= README.ldap USES+= ldap CONFIGURE_ARGS+=--with-authldap .else CONFIGURE_ARGS+=--without-authldap .endif .if ${AUTHMOD} == authmysql RUN_DEPENDS+= ${LOCALBASE}/share/sysconftool/sysconftool:devel/sysconftool OPTIONS_DEFINE+= DOCS DOCS= README.authmysql.html README.authmysql.myownquery USES+= compiler:c11 mysql CONFIGURE_ARGS+=--with-authmysql \ --with-mysql-libs=${LOCALBASE}/lib/mysql \ --with-mysql-includes=${LOCALBASE}/include/mysql .else CONFIGURE_ARGS+=--without-authmysql .endif .if ${AUTHMOD} == authpgsql RUN_DEPENDS+= ${LOCALBASE}/share/sysconftool/sysconftool:devel/sysconftool OPTIONS_DEFINE+= DOCS DOCS= README.authpostgres.html USES+= pgsql CONFIGURE_ARGS+=--with-authpgsql .else CONFIGURE_ARGS+=--without-authpgsql .endif .if ${AUTHMOD} == authsqlite RUN_DEPENDS+= ${LOCALBASE}/share/sysconftool/sysconftool:devel/sysconftool OPTIONS_DEFINE+= DOCS DOCS= README.authsqlite.html USES+= pkgconfig sqlite CONFIGURE_ARGS+=--with-authsqlite .else CONFIGURE_ARGS+=--without-authsqlite .endif .if ${AUTHMOD} == authvchkpw BUILD_DEPENDS+= ${VPOPMAILDIR}/lib/libvpopmail.a:mail/vpopmail CONFIGURE_ARGS+=--with-authvchkpw .else CONFIGURE_ARGS+=--without-authvchkpw .endif .endif # !defined(PKGNAMESUFFIX) .include .if !defined(PKGNAMESUFFIX) .include "${.CURDIR}/Makefile.dep" .else # !defined(PKGNAMESUFFIX) .if ${AUTHMOD} == authbase USE_RC_SUBR= courier-authdaemond pre-everything:: @${ECHO_CMD} @${ECHO_CMD} " Set WITH_AUTHPIPE_PROG to a program you want to use instead of" @${ECHO_CMD} " authProg for libauthpipe" @${ECHO_CMD} .endif post-patch: @${REINPLACE_CMD} -e 's|$$VPOPMAILLIBS|& -lcrypt|g; \ s|mysql_connect|mysql_real_connect|g; \ s|%%LOCALBASE%%|${LOCALBASE}|' \ ${WRKSRC}/*/configure \ ${WRKSRC}/configure .for subdir in ${REMOVE_SUBDIRS} @${REINPLACE_CMD} -E 's,(^(ac_subdirs_all|subdirs).*)${subdir},\1,g' \ ${WRKSRC}/configure .endfor @${REINPLACE_CMD} -e 's|^\(DEFAULTOPTIONS=\)""$$|\1"wbnodsn=1"|' \ -e 's|@ALLMODULES@|authuserdb authvchkpw authpam authldap authmysql authpgsql|' \ ${WRKSRC}/authdaemonrc.in @${REINPLACE_CMD} -e 's:^#! @EXPECT@:#!${LOCALBASE}/bin/expect:' \ ${WRKSRC}/authsystem.passwd.in pre-configure: @if [ -f "${WRKDIR}/courier-authlib.cache" -a -s "${WRKDIR}/courier-authlib.cache" ] ; then \ ${RM} "${WRKDIR}/courier-authlib.cache" ; \ fi post-install: .if !empty(DOCS) @${MKDIR} ${STAGEDIR}${DOCSDIR} .for f in ${DOCS} ${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}${DOCSDIR} .endfor .endif .endif # !defined(PKGNAMESUFFIX) .include diff --git a/security/courier-authlib/distinfo b/security/courier-authlib/distinfo index a8d664d0583e..35c59fb68201 100644 --- a/security/courier-authlib/distinfo +++ b/security/courier-authlib/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1670179404 -SHA256 (courier-authlib-0.72.0.tar.bz2) = 5cc7a2ca16cf43af0c667cb365d455abde52559a89d2197a9b87448fff137ee3 -SIZE (courier-authlib-0.72.0.tar.bz2) = 2274507 +TIMESTAMP = 1706686463 +SHA256 (courier-authlib-0.72.1.tar.bz2) = 1ca3cca191a7f1a973312f4b68da4d45986f006ac1323a71bf10193891c44585 +SIZE (courier-authlib-0.72.1.tar.bz2) = 2288448 diff --git a/security/courier-authlib/files/patch-Makefile.in b/security/courier-authlib/files/patch-Makefile.in index ed57a270e1fb..30b24b2f1beb 100644 --- a/security/courier-authlib/files/patch-Makefile.in +++ b/security/courier-authlib/files/patch-Makefile.in @@ -1,541 +1,541 @@ ---- Makefile.in.orig 2022-05-27 01:32:50 UTC +--- Makefile.in.orig 2024-01-28 13:22:04 UTC +++ Makefile.in @@ -95,11 +95,10 @@ host_triplet = @host@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -sbin_PROGRAMS = authtest$(EXEEXT) authenumerate$(EXEEXT) \ - authpasswd$(EXEEXT) -bin_PROGRAMS = courierauthconfig$(EXEEXT) -noinst_PROGRAMS = authdaemontest$(EXEEXT) authmksock$(EXEEXT) \ - authdaemondprog$(EXEEXT) +@HAVE_BASE_TRUE@sbin_PROGRAMS = authtest$(EXEEXT) authenumerate$(EXEEXT) +@HAVE_BASE_TRUE@bin_PROGRAMS = courierauthconfig$(EXEEXT) +@HAVE_BASE_TRUE@noinst_PROGRAMS = authdaemontest$(EXEEXT) authmksock$(EXEEXT) \ +@HAVE_BASE_TRUE@ authdaemondprog$(EXEEXT) subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac @@ -154,7 +153,7 @@ am__v_lt_0 = --silent AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent -am__v_lt_1 = +am__v_lt_1 = libauthcustom_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ $(AM_CFLAGS) $(CFLAGS) $(libauthcustom_la_LDFLAGS) $(LDFLAGS) \ @@ -219,6 +218,13 @@ libcourierauth_la_DEPENDENCIES = libs/libhmac/libhmac. libs/md5/libmd5.la libs/sha1/libsha1.la \ libs/numlib/libnumlib.la libs/random128/librandom128.la \ libs/rfc822/libencode.la +am_libauthvchkpw_la_OBJECTS = authvchkpw.lo authvchkpwlib.lo \ + preauthvchkpw.lo +libauthvchkpw_la_OBJECTS = $(am_libauthvchkpw_la_OBJECTS) +libauthvchkpw_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libauthvchkpw_la_LDFLAGS) $(LDFLAGS) \ + -o $@ am_libcourierauth_la_OBJECTS = authdaemon.lo authdaemonlib.lo \ preauthdaemon.lo authmoduser2.lo authmoduser3.lo debug.lo \ authoption.lo @@ -299,11 +305,11 @@ am__v_GEN_0 = @echo " GEN " $@; AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = +am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ -am__v_at_1 = +am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__maybe_remake_depfiles = depfiles @@ -335,7 +341,9 @@ am__depfiles_remade = ./$(DEPDIR)/authconfigfile.Plo \ ./$(DEPDIR)/authsqlite.Plo ./$(DEPDIR)/authsqlitelib.Plo \ ./$(DEPDIR)/authsyschangepwd.Plo ./$(DEPDIR)/authsyscommon.Plo \ ./$(DEPDIR)/authtest.Po ./$(DEPDIR)/authuserdb.Plo \ - ./$(DEPDIR)/authuserdbpwd.Plo ./$(DEPDIR)/checkpassword.Plo \ + ./$(DEPDIR)/authuserdbpwd.Plo \ + ./$(DEPDIR)/authvchkpw.Plo ./$(DEPDIR)/authvchkpwlib.Plo \ + ./$(DEPDIR)/checkpassword.Plo \ ./$(DEPDIR)/checkpasswordmd5.Plo \ ./$(DEPDIR)/checkpasswordsha1.Plo ./$(DEPDIR)/cramlib.Plo \ ./$(DEPDIR)/cryptpassword.Plo ./$(DEPDIR)/debug.Plo \ @@ -343,7 +351,7 @@ am__depfiles_remade = ./$(DEPDIR)/authconfigfile.Plo \ ./$(DEPDIR)/preauthldap.Plo ./$(DEPDIR)/preauthmysql.Plo \ ./$(DEPDIR)/preauthpam.Plo ./$(DEPDIR)/preauthpwd.Plo \ ./$(DEPDIR)/preauthshadow.Plo ./$(DEPDIR)/preauthuserdb.Plo \ - ./$(DEPDIR)/preauthuserdbcommon.Plo + ./$(DEPDIR)/preauthuserdbcommon.Plo ./$(DEPDIR)/preauthvchkpw.Plo am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @@ -354,7 +362,7 @@ am__v_CC_0 = @echo " CC " $@; AM_V_CC = $(am__v_CC_@AM_V@) am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = +am__v_CC_1 = CCLD = $(CC) LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ @@ -362,7 +370,7 @@ am__v_CCLD_0 = @echo " CCLD " $@; AM_V_CCLD = $(am__v_CCLD_@AM_V@) am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = +am__v_CCLD_1 = CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ @@ -372,7 +380,7 @@ am__v_CXX_0 = @echo " CXX " $@; AM_V_CXX = $(am__v_CXX_@AM_V@) am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) am__v_CXX_0 = @echo " CXX " $@; -am__v_CXX_1 = +am__v_CXX_1 = CXXLD = $(CXX) CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ @@ -380,12 +388,13 @@ am__v_CXXLD_0 = @echo " CXXLD " $@; AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) am__v_CXXLD_0 = @echo " CXXLD " $@; -am__v_CXXLD_1 = +am__v_CXXLD_1 = SOURCES = $(libauthcustom_la_SOURCES) $(libauthldap_la_SOURCES) \ $(libauthmysql_la_SOURCES) $(libauthpam_la_SOURCES) \ $(libauthpgsql_la_SOURCES) $(libauthpipe_la_SOURCES) \ $(libauthpwd_la_SOURCES) $(libauthshadow_la_SOURCES) \ $(libauthsqlite_la_SOURCES) $(libauthuserdb_la_SOURCES) \ + $(libauthvchkpw_la_SOURCES) \ $(libcourierauth_la_SOURCES) \ $(libcourierauthcommon_la_SOURCES) \ $(libcourierauthsasl_la_SOURCES) \ @@ -399,6 +408,7 @@ DIST_SOURCES = $(libauthcustom_la_SOURCES) $(libauthld $(libauthpgsql_la_SOURCES) $(libauthpipe_la_SOURCES) \ $(libauthpwd_la_SOURCES) $(libauthshadow_la_SOURCES) \ $(libauthsqlite_la_SOURCES) $(libauthuserdb_la_SOURCES) \ + $(libauthvchkpw_la_SOURCES) \ $(libcourierauth_la_SOURCES) \ $(libcourierauthcommon_la_SOURCES) \ $(libcourierauthsasl_la_SOURCES) \ -@@ -568,6 +578,7 @@ LIBAUTHUSERDB = @LIBAUTHUSERDB@ +@@ -569,6 +579,7 @@ LIBAUTHUSERDB = @LIBAUTHUSERDB@ LIBAUTHSHADOW = @LIBAUTHSHADOW@ LIBAUTHSQLITE = @LIBAUTHSQLITE@ LIBAUTHUSERDB = @LIBAUTHUSERDB@ +LIBAUTHVCHKPW = @LIBAUTHVCHKPW@ LIBDB = @LIBDB@ LIBDL = @LIBDL@ LIBGDBM = @LIBGDBM@ -@@ -701,7 +712,10 @@ AUTOMAKE_OPTIONS = dist-bzip2 +@@ -702,7 +713,10 @@ AUTOMAKE_OPTIONS = dist-bzip2 userdb = @userdb@ using_systemd = @using_systemd@ AUTOMAKE_OPTIONS = dist-bzip2 -SUBDIRS = libs/gdbmobj libs/bdbobj libs/md5 libs/sha1 libs/libhmac libs/numlib libs/makedat userdb libs/rfc822 libs/random128 libs/liblock liblog +SUBDIRS = libs/gdbmobj libs/bdbobj libs/md5 libs/sha1 libs/libhmac libs/numlib +@HAVE_USERDB_TRUE@SUBDIRS += libs/makedat userdb +SUBDIRS += libs/rfc822 libs/random128 +@HAVE_BASE_TRUE@SUBDIRS += libs/liblock liblog AM_CPPFLAGS = -I liblock $(LTDLINCL) BUILT_SOURCES = authdaemonrc.h $(BUILT1) $(GITFILES) \ $(man3:%.3=%.html) $(man1:%.1=%.html) authsqliterc.h \ -@@ -709,16 +723,18 @@ modules = @LIBAUTHUSERDB@ \ +@@ -710,16 +724,18 @@ modules = @LIBAUTHUSERDB@ \ modules = @LIBAUTHUSERDB@ \ @LIBAUTHPAM@ @LIBAUTHPWD@ @LIBAUTHSHADOW@ \ @LIBAUTHPGSQL@ @LIBAUTHLDAP@ @LIBAUTHMYSQL@ @LIBAUTHSQLITE@ \ - @LIBAUTHCUSTOM@ @LIBAUTHPIPE@ + @LIBAUTHCUSTOM@ @LIBAUTHVCHKPW@ @LIBAUTHPIPE@ pkglibexec_SCRIPTS = authsystem.passwd -pkglib_LTLIBRARIES = libcourierauth.la \ - libcourierauthcommon.la libcourierauthsasl.la libcourierauthsaslclient.la \ - $(modules) +@HAVE_BASE_TRUE@pkglib_LTLIBRARIES = libcourierauth.la \ +@HAVE_BASE_TRUE@ libcourierauthcommon.la libcourierauthsasl.la libcourierauthsaslclient.la \ +@HAVE_BASE_TRUE@ $(modules) +@HAVE_BASE_FALSE@pkglib_LTLIBRARIES = $(modules) sbin_SCRIPTS = authdaemond EXTRA_LTLIBRARIES = libauthuserdb.la \ libauthpam.la libauthpwd.la libauthshadow.la \ + libauthvchkpw.la \ libauthpgsql.la \ libauthldap.la \ libauthmysql.la \ -@@ -791,6 +807,13 @@ libauthshadow_la_LDFLAGS = $(commonldflags) +@@ -792,6 +808,13 @@ libauthshadow_la_LDFLAGS = $(commonldflags) libauthshadow_la_LIBADD = $(commonlibadd) $(libauthshadow_t) libauthshadow_la_LDFLAGS = $(commonldflags) +# The authvchkpw module +libauthvchkpw_t = @VPOPMAILLIBS@ @LIBM@ +libauthvchkpw_la_SOURCES = authvchkpw.c authvchkpwlib.c preauthvchkpw.c +libauthvchkpw_la_DEPENDENCIES = $(commonlibdep) +libauthvchkpw_la_LIBADD = $(commonlibadd) $(libauthvchkpw_t) +libauthvchkpw_la_LDFLAGS = $(commonldflags) + # The authpgsql module libauthpgsql_t = @PGSQL_LIBS@ @LIBM@ @NETLIBS@ libauthpgsql_la_SOURCES = authpgsql.c authpgsqllib.cpp authpgsql.h -@@ -878,8 +901,8 @@ libcourierauthsaslclient_la_LDFLAGS = -export-symbols- +@@ -880,8 +903,8 @@ libcourierauthsaslclient_la_LDFLAGS = -export-symbols- libcourierauthsaslclient_la_LIBADD = libcourierauth.la libcourierauthsaslclient_la_LDFLAGS = -export-symbols-regex '^auth_sasl_client$$' -version-info @LIBVERSION_INFO@ -include_HEADERS = courierauth.h courierauthsasl.h \ - courierauthsaslclient.h courierauthdebug.h courierauthstaticlist.h +@HAVE_BASE_TRUE@include_HEADERS = courierauth.h courierauthsasl.h \ +@HAVE_BASE_TRUE@ courierauthsaslclient.h courierauthdebug.h courierauthstaticlist.h courierauthconfig_SOURCES = authinfo.c authpasswd_SOURCES = authpasswd.c -@@ -896,7 +919,7 @@ authenumerate_LDADD = libcourierauth.la \ +@@ -898,7 +921,7 @@ authenumerate_LDADD = libcourierauth.la \ authenumerate_LDADD = libcourierauth.la \ libs/numlib/libnumlib.la -authenumerate_LDFLAGS = +authenumerate_LDFLAGS = # # The main daemon. -@@ -927,7 +950,7 @@ extraman3 = auth_generic_meta.3 auth_login_meta.3 auth +@@ -929,7 +952,7 @@ extraman3 = auth_generic_meta.3 auth_login_meta.3 auth extraman3 = auth_generic_meta.3 auth_login_meta.3 auth_getuserinfo_meta.3 \ auth_sasl_ex.3 -man1 = authpasswd.1 authtest.1 +man1 = authtest.1 man_MANS = $(man1) $(man3) $(extraman3) BUILT1 = authlib.html authldaprc.h authmysqlrc.h authpgsqlrc.h authpiperc.h \ authdaemonrc.h packageversion.h \ -@@ -986,7 +1009,7 @@ stamp-h1: $(srcdir)/courier_auth_config.h.in $(top_bui +@@ -988,7 +1011,7 @@ stamp-h1: $(srcdir)/courier_auth_config.h.in $(top_bui stamp-h1: $(srcdir)/courier_auth_config.h.in $(top_builddir)/config.status @rm -f stamp-h1 cd $(top_builddir) && $(SHELL) ./config.status courier_auth_config.h -$(srcdir)/courier_auth_config.h.in: $(am__configure_deps) +$(srcdir)/courier_auth_config.h.in: $(am__configure_deps) ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) rm -f stamp-h1 touch $@ -@@ -1158,73 +1181,76 @@ clean-pkglibLTLIBRARIES: +@@ -1160,73 +1183,76 @@ clean-pkglibLTLIBRARIES: rm -f $${locs}; \ } -libauthcustom.la: $(libauthcustom_la_OBJECTS) $(libauthcustom_la_DEPENDENCIES) $(EXTRA_libauthcustom_la_DEPENDENCIES) +libauthcustom.la: $(libauthcustom_la_OBJECTS) $(libauthcustom_la_DEPENDENCIES) $(EXTRA_libauthcustom_la_DEPENDENCIES) $(AM_V_CCLD)$(libauthcustom_la_LINK) $(libauthcustom_la_OBJECTS) $(libauthcustom_la_LIBADD) $(LIBS) -libauthldap.la: $(libauthldap_la_OBJECTS) $(libauthldap_la_DEPENDENCIES) $(EXTRA_libauthldap_la_DEPENDENCIES) +libauthldap.la: $(libauthldap_la_OBJECTS) $(libauthldap_la_DEPENDENCIES) $(EXTRA_libauthldap_la_DEPENDENCIES) $(AM_V_CXXLD)$(libauthldap_la_LINK) $(libauthldap_la_OBJECTS) $(libauthldap_la_LIBADD) $(LIBS) -libauthmysql.la: $(libauthmysql_la_OBJECTS) $(libauthmysql_la_DEPENDENCIES) $(EXTRA_libauthmysql_la_DEPENDENCIES) +libauthmysql.la: $(libauthmysql_la_OBJECTS) $(libauthmysql_la_DEPENDENCIES) $(EXTRA_libauthmysql_la_DEPENDENCIES) $(AM_V_CXXLD)$(libauthmysql_la_LINK) $(libauthmysql_la_OBJECTS) $(libauthmysql_la_LIBADD) $(LIBS) -libauthpam.la: $(libauthpam_la_OBJECTS) $(libauthpam_la_DEPENDENCIES) $(EXTRA_libauthpam_la_DEPENDENCIES) +libauthpam.la: $(libauthpam_la_OBJECTS) $(libauthpam_la_DEPENDENCIES) $(EXTRA_libauthpam_la_DEPENDENCIES) $(AM_V_CCLD)$(libauthpam_la_LINK) $(libauthpam_la_OBJECTS) $(libauthpam_la_LIBADD) $(LIBS) -libauthpgsql.la: $(libauthpgsql_la_OBJECTS) $(libauthpgsql_la_DEPENDENCIES) $(EXTRA_libauthpgsql_la_DEPENDENCIES) +libauthpgsql.la: $(libauthpgsql_la_OBJECTS) $(libauthpgsql_la_DEPENDENCIES) $(EXTRA_libauthpgsql_la_DEPENDENCIES) $(AM_V_CXXLD)$(libauthpgsql_la_LINK) $(libauthpgsql_la_OBJECTS) $(libauthpgsql_la_LIBADD) $(LIBS) -libauthpipe.la: $(libauthpipe_la_OBJECTS) $(libauthpipe_la_DEPENDENCIES) $(EXTRA_libauthpipe_la_DEPENDENCIES) +libauthpipe.la: $(libauthpipe_la_OBJECTS) $(libauthpipe_la_DEPENDENCIES) $(EXTRA_libauthpipe_la_DEPENDENCIES) $(AM_V_CCLD)$(libauthpipe_la_LINK) $(libauthpipe_la_OBJECTS) $(libauthpipe_la_LIBADD) $(LIBS) -libauthpwd.la: $(libauthpwd_la_OBJECTS) $(libauthpwd_la_DEPENDENCIES) $(EXTRA_libauthpwd_la_DEPENDENCIES) +libauthpwd.la: $(libauthpwd_la_OBJECTS) $(libauthpwd_la_DEPENDENCIES) $(EXTRA_libauthpwd_la_DEPENDENCIES) $(AM_V_CCLD)$(libauthpwd_la_LINK) $(libauthpwd_la_OBJECTS) $(libauthpwd_la_LIBADD) $(LIBS) -libauthshadow.la: $(libauthshadow_la_OBJECTS) $(libauthshadow_la_DEPENDENCIES) $(EXTRA_libauthshadow_la_DEPENDENCIES) +libauthshadow.la: $(libauthshadow_la_OBJECTS) $(libauthshadow_la_DEPENDENCIES) $(EXTRA_libauthshadow_la_DEPENDENCIES) $(AM_V_CCLD)$(libauthshadow_la_LINK) $(libauthshadow_la_OBJECTS) $(libauthshadow_la_LIBADD) $(LIBS) -libauthsqlite.la: $(libauthsqlite_la_OBJECTS) $(libauthsqlite_la_DEPENDENCIES) $(EXTRA_libauthsqlite_la_DEPENDENCIES) +libauthsqlite.la: $(libauthsqlite_la_OBJECTS) $(libauthsqlite_la_DEPENDENCIES) $(EXTRA_libauthsqlite_la_DEPENDENCIES) $(AM_V_CXXLD)$(libauthsqlite_la_LINK) $(libauthsqlite_la_OBJECTS) $(libauthsqlite_la_LIBADD) $(LIBS) -libauthuserdb.la: $(libauthuserdb_la_OBJECTS) $(libauthuserdb_la_DEPENDENCIES) $(EXTRA_libauthuserdb_la_DEPENDENCIES) +libauthuserdb.la: $(libauthuserdb_la_OBJECTS) $(libauthuserdb_la_DEPENDENCIES) $(EXTRA_libauthuserdb_la_DEPENDENCIES) $(AM_V_CCLD)$(libauthuserdb_la_LINK) $(libauthuserdb_la_OBJECTS) $(libauthuserdb_la_LIBADD) $(LIBS) -libcourierauth.la: $(libcourierauth_la_OBJECTS) $(libcourierauth_la_DEPENDENCIES) $(EXTRA_libcourierauth_la_DEPENDENCIES) +libauthvchkpw.la: $(libauthvchkpw_la_OBJECTS) $(libauthvchkpw_la_DEPENDENCIES) + $(AM_V_CCLD)$(libauthvchkpw_la_LINK) $(libauthvchkpw_la_OBJECTS) $(libauthvchkpw_la_LIBADD) $(LIBS) + +libcourierauth.la: $(libcourierauth_la_OBJECTS) $(libcourierauth_la_DEPENDENCIES) $(EXTRA_libcourierauth_la_DEPENDENCIES) $(AM_V_CCLD)$(libcourierauth_la_LINK) -rpath $(pkglibdir) $(libcourierauth_la_OBJECTS) $(libcourierauth_la_LIBADD) $(LIBS) -libcourierauthcommon.la: $(libcourierauthcommon_la_OBJECTS) $(libcourierauthcommon_la_DEPENDENCIES) $(EXTRA_libcourierauthcommon_la_DEPENDENCIES) +libcourierauthcommon.la: $(libcourierauthcommon_la_OBJECTS) $(libcourierauthcommon_la_DEPENDENCIES) $(EXTRA_libcourierauthcommon_la_DEPENDENCIES) $(AM_V_CXXLD)$(libcourierauthcommon_la_LINK) -rpath $(pkglibdir) $(libcourierauthcommon_la_OBJECTS) $(libcourierauthcommon_la_LIBADD) $(LIBS) -libcourierauthsasl.la: $(libcourierauthsasl_la_OBJECTS) $(libcourierauthsasl_la_DEPENDENCIES) $(EXTRA_libcourierauthsasl_la_DEPENDENCIES) +libcourierauthsasl.la: $(libcourierauthsasl_la_OBJECTS) $(libcourierauthsasl_la_DEPENDENCIES) $(EXTRA_libcourierauthsasl_la_DEPENDENCIES) $(AM_V_CCLD)$(libcourierauthsasl_la_LINK) -rpath $(pkglibdir) $(libcourierauthsasl_la_OBJECTS) $(libcourierauthsasl_la_LIBADD) $(LIBS) -libcourierauthsaslclient.la: $(libcourierauthsaslclient_la_OBJECTS) $(libcourierauthsaslclient_la_DEPENDENCIES) $(EXTRA_libcourierauthsaslclient_la_DEPENDENCIES) +libcourierauthsaslclient.la: $(libcourierauthsaslclient_la_OBJECTS) $(libcourierauthsaslclient_la_DEPENDENCIES) $(EXTRA_libcourierauthsaslclient_la_DEPENDENCIES) $(AM_V_CCLD)$(libcourierauthsaslclient_la_LINK) -rpath $(pkglibdir) $(libcourierauthsaslclient_la_OBJECTS) $(libcourierauthsaslclient_la_LIBADD) $(LIBS) -authdaemondprog$(EXEEXT): $(authdaemondprog_OBJECTS) $(authdaemondprog_DEPENDENCIES) $(EXTRA_authdaemondprog_DEPENDENCIES) +authdaemondprog$(EXEEXT): $(authdaemondprog_OBJECTS) $(authdaemondprog_DEPENDENCIES) $(EXTRA_authdaemondprog_DEPENDENCIES) @rm -f authdaemondprog$(EXEEXT) $(AM_V_CXXLD)$(authdaemondprog_LINK) $(authdaemondprog_OBJECTS) $(authdaemondprog_LDADD) $(LIBS) -authdaemontest$(EXEEXT): $(authdaemontest_OBJECTS) $(authdaemontest_DEPENDENCIES) $(EXTRA_authdaemontest_DEPENDENCIES) +authdaemontest$(EXEEXT): $(authdaemontest_OBJECTS) $(authdaemontest_DEPENDENCIES) $(EXTRA_authdaemontest_DEPENDENCIES) @rm -f authdaemontest$(EXEEXT) $(AM_V_CCLD)$(authdaemontest_LINK) $(authdaemontest_OBJECTS) $(authdaemontest_LDADD) $(LIBS) -authenumerate$(EXEEXT): $(authenumerate_OBJECTS) $(authenumerate_DEPENDENCIES) $(EXTRA_authenumerate_DEPENDENCIES) +authenumerate$(EXEEXT): $(authenumerate_OBJECTS) $(authenumerate_DEPENDENCIES) $(EXTRA_authenumerate_DEPENDENCIES) @rm -f authenumerate$(EXEEXT) $(AM_V_CCLD)$(authenumerate_LINK) $(authenumerate_OBJECTS) $(authenumerate_LDADD) $(LIBS) -authmksock$(EXEEXT): $(authmksock_OBJECTS) $(authmksock_DEPENDENCIES) $(EXTRA_authmksock_DEPENDENCIES) +authmksock$(EXEEXT): $(authmksock_OBJECTS) $(authmksock_DEPENDENCIES) $(EXTRA_authmksock_DEPENDENCIES) @rm -f authmksock$(EXEEXT) $(AM_V_CCLD)$(LINK) $(authmksock_OBJECTS) $(authmksock_LDADD) $(LIBS) -authpasswd$(EXEEXT): $(authpasswd_OBJECTS) $(authpasswd_DEPENDENCIES) $(EXTRA_authpasswd_DEPENDENCIES) +authpasswd$(EXEEXT): $(authpasswd_OBJECTS) $(authpasswd_DEPENDENCIES) $(EXTRA_authpasswd_DEPENDENCIES) @rm -f authpasswd$(EXEEXT) $(AM_V_CCLD)$(LINK) $(authpasswd_OBJECTS) $(authpasswd_LDADD) $(LIBS) -authtest$(EXEEXT): $(authtest_OBJECTS) $(authtest_DEPENDENCIES) $(EXTRA_authtest_DEPENDENCIES) +authtest$(EXEEXT): $(authtest_OBJECTS) $(authtest_DEPENDENCIES) $(EXTRA_authtest_DEPENDENCIES) @rm -f authtest$(EXEEXT) $(AM_V_CCLD)$(LINK) $(authtest_OBJECTS) $(authtest_LDADD) $(LIBS) -courierauthconfig$(EXEEXT): $(courierauthconfig_OBJECTS) $(courierauthconfig_DEPENDENCIES) $(EXTRA_courierauthconfig_DEPENDENCIES) +courierauthconfig$(EXEEXT): $(courierauthconfig_OBJECTS) $(courierauthconfig_DEPENDENCIES) $(EXTRA_courierauthconfig_DEPENDENCIES) @rm -f courierauthconfig$(EXEEXT) $(AM_V_CCLD)$(LINK) $(courierauthconfig_OBJECTS) $(courierauthconfig_LDADD) $(LIBS) install-pkglibexecSCRIPTS: $(pkglibexec_SCRIPTS) -@@ -1351,6 +1377,8 @@ distclean-compile: +@@ -1353,6 +1379,8 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/authtest.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/authuserdb.Plo@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/authuserdbpwd.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/authvchkpw.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/authvchkpwlib.Plo@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/checkpassword.Plo@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/checkpasswordmd5.Plo@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/checkpasswordsha1.Plo@am__quote@ # am--include-marker -@@ -1366,6 +1394,7 @@ distclean-compile: +@@ -1368,6 +1396,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/preauthshadow.Plo@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/preauthuserdb.Plo@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/preauthuserdbcommon.Plo@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/preauthvchkpw.Plo@am__quote@ # am--include-marker $(am__depfiles_remade): @$(MKDIR_P) $(@D) -@@ -1935,6 +1964,8 @@ distclean: distclean-recursive +@@ -1937,6 +1966,8 @@ distclean: distclean-recursive -rm -f ./$(DEPDIR)/authtest.Po -rm -f ./$(DEPDIR)/authuserdb.Plo -rm -f ./$(DEPDIR)/authuserdbpwd.Plo + -rm -f ./$(DEPDIR)/authvchkpw.Plo + -rm -f ./$(DEPDIR)/authvchkpwlib.Plo -rm -f ./$(DEPDIR)/checkpassword.Plo -rm -f ./$(DEPDIR)/checkpasswordmd5.Plo -rm -f ./$(DEPDIR)/checkpasswordsha1.Plo -@@ -1950,6 +1981,7 @@ distclean: distclean-recursive +@@ -1952,6 +1983,7 @@ distclean: distclean-recursive -rm -f ./$(DEPDIR)/preauthshadow.Plo -rm -f ./$(DEPDIR)/preauthuserdb.Plo -rm -f ./$(DEPDIR)/preauthuserdbcommon.Plo + -rm -f ./$(DEPDIR)/preauthvchkpw.Plo -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-hdr distclean-libtool distclean-tags -@@ -1966,18 +1998,26 @@ info-am: +@@ -1968,18 +2000,26 @@ info-am: info-am: -install-data-am: install-includeHEADERS install-man - @$(NORMAL_INSTALL) - $(MAKE) $(AM_MAKEFLAGS) install-data-hook +@HAVE_BASE_TRUE@install-data-am: install-includeHEADERS install-man +@HAVE_BASE_TRUE@ @$(NORMAL_INSTALL) +@HAVE_BASE_TRUE@ $(MAKE) $(AM_MAKEFLAGS) install-data-hook + +@HAVE_BASE_FALSE@install-data-am: +@HAVE_BASE_FALSE@ $(MAKE) $(AM_MAKEFLAGS) install-data-hook + install-dvi: install-dvi-recursive install-dvi-am: -install-exec-am: install-binPROGRAMS install-pkglibLTLIBRARIES \ - install-pkglibexecSCRIPTS install-sbinPROGRAMS \ - install-sbinSCRIPTS - @$(NORMAL_INSTALL) - $(MAKE) $(AM_MAKEFLAGS) install-exec-hook +@HAVE_BASE_TRUE@install-exec-am: install-binPROGRAMS install-pkglibLTLIBRARIES \ +@HAVE_BASE_TRUE@ install-pkglibexecSCRIPTS install-sbinPROGRAMS \ +@HAVE_BASE_TRUE@ install-sbinSCRIPTS +@HAVE_BASE_TRUE@ @$(NORMAL_INSTALL) +@HAVE_BASE_TRUE@ $(MAKE) $(AM_MAKEFLAGS) install-exec-hook + +@HAVE_BASE_FALSE@install-exec-am: install-pkglibLTLIBRARIES +@HAVE_BASE_FALSE@ $(MAKE) $(AM_MAKEFLAGS) install-exec-hook + install-html: install-html-recursive install-html-am: -@@ -2120,13 +2160,16 @@ uninstall-man: uninstall-man1 uninstall-man3 +@@ -2122,13 +2162,16 @@ uninstall-man: uninstall-man1 uninstall-man3 .PRECIOUS: Makefile +authvchkpw.lo: authvchkpw.c vpopmail_config.h +preauthvchkpw.lo: preauthvchkpw.c vpopmail_config.h +vpopmail_config.h: + echo '#include "@vpopmail_home@/include/config.h"' >vpopmail_config.h + @HAVE_AUTHPGSQL_TRUE@install-authpgsqlrc: @HAVE_AUTHPGSQL_TRUE@ $(mkinstalldirs) $(DESTDIR)`dirname @authpgsqlrc@` || : @HAVE_AUTHPGSQL_TRUE@ $(INSTALL_DATA) -m 660 $(srcdir)/authpgsqlrc \ @HAVE_AUTHPGSQL_TRUE@ $(DESTDIR)@authpgsqlrc@.dist -@HAVE_AUTHPGSQL_TRUE@ -chown @mailuser@ $(DESTDIR)@authpgsqlrc@.dist -@HAVE_AUTHPGSQL_TRUE@ -chgrp @mailgroup@ $(DESTDIR)@authpgsqlrc@.dist @HAVE_AUTHPGSQL_TRUE@uninstall-authpgsqlrc: @HAVE_AUTHPGSQL_TRUE@ rm -f $(DESTDIR)@authpgsqlrc@.dist -@@ -2144,8 +2187,6 @@ authpgsqlrc.h: +@@ -2146,8 +2189,6 @@ authpgsqlrc.h: @HAVE_LDAP_TRUE@ $(mkinstalldirs) $(DESTDIR)`dirname @authldaprc@` || : @HAVE_LDAP_TRUE@ $(INSTALL_DATA) -m 660 $(srcdir)/authldaprc \ @HAVE_LDAP_TRUE@ $(DESTDIR)@authldaprc@.dist -@HAVE_LDAP_TRUE@ -chown @mailuser@ $(DESTDIR)@authldaprc@.dist -@HAVE_LDAP_TRUE@ -chgrp @mailgroup@ $(DESTDIR)@authldaprc@.dist @HAVE_LDAP_TRUE@uninstall-authldaprc: @HAVE_LDAP_TRUE@ rm -f $(DESTDIR)@authldaprc@.dist -@@ -2156,6 +2197,18 @@ authpgsqlrc.h: +@@ -2158,6 +2199,18 @@ authpgsqlrc.h: @HAVE_LDAP_FALSE@uninstall-authldaprc: @HAVE_LDAP_FALSE@ @: +@HAVE_LDAP_TRUE@install-ldapschema: +@HAVE_LDAP_TRUE@ $(mkinstalldirs) ${DESTDIR}${sysconfdir}/openldap/schema +@HAVE_LDAP_TRUE@ $(INSTALL_DATA) -m 0444 $(srcdir)/authldap.schema \ +@HAVE_LDAP_TRUE@ ${DESTDIR}${sysconfdir}/openldap/schema/authldap.schema.dist +@HAVE_LDAP_TRUE@# if test ! -f ${sysconfdir}/openldap/schema/authldap.schema ; then \ +@HAVE_LDAP_TRUE@# $(INSTALL_DATA) -m 0444 $(srcdir)/authldap.schema \ +@HAVE_LDAP_TRUE@# ${sysconfdir}/openldap/schema/authldap.schema ; \ +@HAVE_LDAP_TRUE@# fi + +@HAVE_LDAP_FALSE@install-ldapschema: +@HAVE_LDAP_FALSE@ @: + authldaprc.h: echo "#define AUTHLDAPRC \"@authldaprc@\"" >authldaprc.h -@@ -2163,8 +2216,6 @@ authldaprc.h: +@@ -2165,8 +2218,6 @@ authldaprc.h: @HAVE_AUTHMYSQL_TRUE@ $(mkinstalldirs) $(DESTDIR)`dirname @authmysqlrc@` || : @HAVE_AUTHMYSQL_TRUE@ $(INSTALL_DATA) -m 660 $(srcdir)/authmysqlrc \ @HAVE_AUTHMYSQL_TRUE@ $(DESTDIR)@authmysqlrc@.dist -@HAVE_AUTHMYSQL_TRUE@ -chown @mailuser@ $(DESTDIR)@authmysqlrc@.dist -@HAVE_AUTHMYSQL_TRUE@ -chgrp @mailgroup@ $(DESTDIR)@authmysqlrc@.dist @HAVE_AUTHMYSQL_TRUE@uninstall-authmysqlrc: @HAVE_AUTHMYSQL_TRUE@ rm -f $(DESTDIR)@authmysqlrc@.dist -@@ -2182,8 +2233,6 @@ authmysqlrc.h: +@@ -2184,8 +2235,6 @@ authmysqlrc.h: @HAVE_AUTHSQLITE_TRUE@ $(mkinstalldirs) $(DESTDIR)`dirname @authsqliterc@` || : @HAVE_AUTHSQLITE_TRUE@ $(INSTALL_DATA) -m 660 $(srcdir)/authsqliterc \ @HAVE_AUTHSQLITE_TRUE@ $(DESTDIR)@authsqliterc@.dist -@HAVE_AUTHSQLITE_TRUE@ -chown @mailuser@ $(DESTDIR)@authsqliterc@.dist -@HAVE_AUTHSQLITE_TRUE@ -chgrp @mailgroup@ $(DESTDIR)@authsqliterc@.dist @HAVE_AUTHSQLITE_TRUE@uninstall-authsqliterc: @HAVE_AUTHSQLITE_TRUE@ rm -f $(DESTDIR)@authsqliterc@.dist -@@ -2202,17 +2251,21 @@ authpiperc.h: +@@ -2204,17 +2253,21 @@ authpiperc.h: authpiperc.h: echo "#define PIPE_PROGRAM \"@authProg@\"" >authpiperc.h -install-authdaemonrc: - $(mkinstalldirs) $(DESTDIR)`dirname @authdaemonrc@` || : - sed 's/@ALLMODULES@/$(modules:lib%.la=%)/' authdaemonrc.tmp - $(INSTALL_DATA) -m 660 authdaemonrc.tmp $(DESTDIR)@authdaemonrc@.dist - rm -f authdaemonrc.tmp - -chown @mailuser@ $(DESTDIR)@authdaemonrc@.dist - -chgrp @mailgroup@ $(DESTDIR)@authdaemonrc@.dist +@HAVE_BASE_TRUE@install-authdaemonrc: +@HAVE_BASE_TRUE@ $(mkinstalldirs) $(DESTDIR)`dirname @authdaemonrc@` || : +@HAVE_BASE_TRUE@ sed 's/@ALLMODULES@/$(modules:lib%.la=%)/' authdaemonrc.tmp +@HAVE_BASE_TRUE@ $(INSTALL_DATA) -m 660 authdaemonrc.tmp $(DESTDIR)@authdaemonrc@.dist +@HAVE_BASE_TRUE@ rm -f authdaemonrc.tmp -uninstall-authdaemonrc: - rm -f $(DESTDIR)@authdaemonrc@.dist +@HAVE_BASE_FALSE@install-authdaemonrc: +@HAVE_BASE_FALSE@ @: +@HAVE_BASE_TRUE@uninstall-authdaemonrc: +@HAVE_BASE_TRUE@ rm -f $(DESTDIR)@authdaemonrc@.dist + +@HAVE_BASE_FALSE@uninstall-authdaemonrc: +@HAVE_BASE_FALSE@ @: + authdaemonrc.h: echo "#define AUTHDAEMONRC \"@authdaemonrc@\"" >authdaemonrc.h echo "#define AUTHDAEMONVAR \"@authdaemonvar@\"" >>authdaemonrc.h -@@ -2268,24 +2321,24 @@ install-data-hook: install-authdaemonrc install-authpg +@@ -2270,24 +2323,24 @@ install-data-hook: install-authdaemonrc install-authpg # automake still a bit stupid... install-data-hook: install-authdaemonrc install-authpgsqlrc \ - install-authldaprc install-authmysqlrc install-authsqliterc + install-authldaprc install-ldapschema install-authmysqlrc install-authsqliterc : install-exec-hook: - $(mkinstalldirs) $(DESTDIR)$(bindir) || : - $(mkinstalldirs) $(DESTDIR)$(sbindir) || : - $(mkinstalldirs) $(DESTDIR)$(pkglibexecdir) || : - chmod 755 $(DESTDIR)$(pkglibexecdir) - -chown @mailuser@ $(DESTDIR)$(pkglibexecdir) - -chgrp @mailgroup@ $(DESTDIR)$(pkglibexecdir) - $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) authdaemondprog $(DESTDIR)$(pkglibexecdir)/authdaemond - $(mkinstalldirs) $(DESTDIR)@authdaemonvar@ || : - chmod 750 $(DESTDIR)@authdaemonvar@ - -chown @mailuser@ $(DESTDIR)@authdaemonvar@ - -chgrp @mailgroup@ $(DESTDIR)@authdaemonvar@ +@HAVE_BASE_TRUE@ $(mkinstalldirs) $(DESTDIR)$(bindir) || : +@HAVE_BASE_TRUE@ $(mkinstalldirs) $(DESTDIR)$(sbindir) || : +@HAVE_BASE_TRUE@ $(mkinstalldirs) $(DESTDIR)$(pkglibexecdir) || : +@HAVE_BASE_TRUE@ chmod 755 $(DESTDIR)$(pkglibexecdir) +@HAVE_USERDB_TRUE@ $(mkinstalldirs) $(DESTDIR)$(pkglibexecdir) || : +@HAVE_USERDB_TRUE@ chmod 755 $(DESTDIR)$(pkglibexecdir) +@HAVE_BASE_TRUE@ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) authdaemondprog $(DESTDIR)$(pkglibexecdir)/authdaemond +@HAVE_BASE_TRUE@ $(mkinstalldirs) $(DESTDIR)@authdaemonvar@ || : +@HAVE_BASE_TRUE@ chmod 750 $(DESTDIR)@authdaemonvar@ test "@LIBAUTHUSERDB@" = "" && exit 0 ;\ $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) libs/makedat/makedatprog \ $(DESTDIR)$(pkglibexecdir)/makedatprog ; \ + $(INSTALL_SCRIPT) userdb/vchkpw2userdb \ + $(DESTDIR)$(sbindir)/vchkpw2userdb ; \ $(INSTALL_SCRIPT) userdb/pw2userdb \ $(DESTDIR)$(sbindir)/pw2userdb ; \ $(INSTALL_SCRIPT) userdb/makeuserdb \ -@@ -2296,9 +2349,10 @@ uninstall-hook: uninstall-authldaprc uninstall-authdae +@@ -2298,9 +2351,10 @@ uninstall-hook: uninstall-authldaprc uninstall-authdae $(DESTDIR)$(sbindir)/userdbpw uninstall-hook: uninstall-authldaprc uninstall-authdaemonrc uninstall-authmysqlrc uninstall-authpgsqlrc uninstall-authsqliterc - rm -f $(DESTDIR)$(pkglibexecdir)/authdaemond +@HAVE_BASE_TRUE@ rm -f $(DESTDIR)$(pkglibexecdir)/authdaemond test "@AUTHUSERDB@" = "" && exit 0 ;\ rm -f $(DESTDIR)$(pkglibexecdir)/makedatprog \ + $(DESTDIR)$(sbindir)/vchkpw2userdb \ $(DESTDIR)$(sbindir)/pw2userdb \ $(DESTDIR)$(sbindir)/makeuserdb \ $(DESTDIR)$(sbindir)/userdb \ -@@ -2308,7 +2362,7 @@ authlib.3: authlib.3.in +@@ -2310,7 +2364,7 @@ authlib.3: authlib.3.in $(SHELL) ./config.status --file=authlib.html authlib.3: authlib.3.in - $(SHELL) ./config.status --file=authlib.3 +@HAVE_BASE_TRUE@ $(SHELL) ./config.status --file=authlib.3 @HAVE_SGML_TRUE@authpasswd.html: authpasswd.sgml libs/docbook/sgml2html @HAVE_SGML_TRUE@ libs/docbook/sgml2html authpasswd.sgml authpasswd.html diff --git a/security/courier-authlib/files/patch-authvchkpw b/security/courier-authlib/files/patch-authvchkpw index 486075609c89..9f898a5b6441 100644 --- a/security/courier-authlib/files/patch-authvchkpw +++ b/security/courier-authlib/files/patch-authvchkpw @@ -1,604 +1,604 @@ ---- authvchkpw.c.orig 2017-07-03 08:38:16 UTC +--- authvchkpw.c.orig 2024-01-31 08:30:47 UTC +++ authvchkpw.c @@ -0,0 +1,242 @@ +/* +** Copyright 1998 - 2007 Double Precision, Inc. See COPYING for +** distribution information. +*/ + +#if HAVE_CONFIG_H +#include "courier_auth_config.h" +#endif +#include +#include +#include +#include +#include +#if HAVE_UNISTD_H +#include +#endif +#include "auth.h" +#include "courierauthstaticlist.h" +#include "courierauthdebug.h" +#include "vpopmail_config.h" +#include +#include + +static const char rcsid[]="$Id: authvchkpw.c,v 1.29 2007/10/07 02:50:45 mrsam Exp $"; + + +extern int auth_vchkpw_pre(const char *userid, const char *service, + int (*callback)(struct authinfo *, void *), + void *arg); + +extern FILE *authvchkpw_file(const char *, const char *); + +static int auth_vchkpw_login(const char *service, char *authdata, + int (*callback_func)(struct authinfo *, void *), void *callback_arg); + +struct callback_info { + const char *pass; + int (*callback_func)(struct authinfo *, void *); + void *callback_arg; + }; + +static int callback_vchkpw(struct authinfo *a, void *p) +{ +struct callback_info *i=(struct callback_info *)p; + + /* exit with perm failure if the supplied password is empty, + * or if the supplied password doesnt match the retrieved password */ + if (a->passwd == 0) + { + DPRINTF("no password supplied"); + return (-1); + } + + if (authcheckpassword(i->pass, a->passwd)) + return (-1); + + a->clearpasswd=i->pass; + return (*i->callback_func)(a, i->callback_arg); +} + +#if HAVE_HMACLIB + +#include "libhmac/hmac.h" +#include "cramlib.h" + +static int auth_vchkpw_login(const char *service, char *authdata, + int (*callback_func)(struct authinfo *, void *), void *callback_arg); + +static int auth_vchkpw_cram(const char *service, + const char *authtype, char *authdata, + int (*callback_func)(struct authinfo *, void *), + void *callback_arg) +{ + struct cram_callback_info cci; + + if (auth_get_cram(authtype, authdata, &cci)) + return (-1); + + cci.callback_func=callback_func; + cci.callback_arg=callback_arg; + + return auth_vchkpw_pre(cci.user, service, &auth_cram_callback, &cci); +} +#endif + +int auth_vchkpw(const char *service, const char *authtype, char *authdata, + int (*callback_func)(struct authinfo *, void *), + void *callback_arg) +{ + if (strcmp(authtype, AUTHTYPE_LOGIN) == 0) + return (auth_vchkpw_login(service, authdata, + callback_func, callback_arg)); + +#if HAVE_HMACLIB + return (auth_vchkpw_cram(service, authtype, authdata, + callback_func, callback_arg)); +#else + errno=EPERM; + return (-1); +#endif + +} + + + +static int auth_vchkpw_login(const char *service, char *authdata, + int (*callback_func)(struct authinfo *, void *), void *callback_arg) +{ +char *user, *pass; +struct callback_info ci; +int rc; + /* Make sure that we have been supplied with the correct + * AUTHDATA format which is : useridpassword + */ + if ( (user=strtok(authdata, "\n")) == 0 || (pass=strtok(0, "\n")) == 0) + { + /* login syntax was invalid */ + errno=EPERM; + return (-1); + } + + ci.pass=pass; + ci.callback_func=callback_func; + ci.callback_arg=callback_arg; + + /* auth_vchkpw_pre() does this : + * - lookup the passwd entry for this user from the auth backend + * - check to see if this user is permitted to use this service type + * If successful it will populate the ci struct with the + * user's passwd entry. Return value of function will be 0. + * If unsuccessful (eg user doesnt exist, or is not permitted to + * use this auth method), it will return : + * <0 on a permanent failure (eg user doesnt exist) + * >0 on a temp failure + */ + rc=auth_vchkpw_pre(user, service, &callback_vchkpw, &ci); + + if (rc) + return rc; + + /* user has been successfully auth'ed at this point */ + +#if 0 + /* + ** sam - new courier-authlib never receives TCPREMOTEIP, at this + ** time. + */ + +#ifdef HAVE_OPEN_SMTP_RELAY + if ( (strcmp("pop3", service)==0) || (strcmp("imap", service)==0) ) { + /* Michael Bowe 13th August 2003 + * + * There is a problem here because open_smtp_relay needs + * to get the user's ip from getenv("TCPREMOTEIP"). + * If we run --with-authvchkpw --without-authdaemon, + * then this var is available. + * But if we run --with-authvchkpw --with-authdaemon, + * then TCPREMOTEIP is null + * + * If TCPREMOTEIP isnt available, then open_smtp_relay() + * will just return() back immediately. + */ + open_smtp_relay(); + } +#endif +#endif + + return 0; +} + +static void authvchkpwclose() +{ +} + +static int auth_vchkpw_changepass(const char *service, + const char *username, + const char *pass, + const char *npass) +{ +struct vqpasswd *vpw; +char User[256]; +char Domain[256]; + + /* Take the supplied userid, and split it out into the user and domain + * parts. (If a domain was not supplied, then set the domain to be + * the default domain) + */ + /* WARNING: parse_email lowercases the username in place - not const!! */ + if ( parse_email(username, User, Domain, 256) != 0) { + /* Failed to successfully extract user and domain. + * So now exit with a permanent failure code + */ + return(-1); + } + + /* check to see if domain exists. + * If you pass an alias domain to vget_assign, it will change it + * to be the real domain on return from the function + */ + if ( vget_assign(Domain,NULL,0,NULL,NULL) ==NULL ) { + /* domain doesnt exist */ + return (-1); + } + + if ( (vpw=vauth_getpw(User, Domain)) == NULL) { + /* That user doesnt exist in the auth backend */ + errno=ENOENT; + return (-1); + } + + /* Exit if any of the following : + * - user's password field in the passwd entry is empty + * - supplied current password doesnt match stored password + */ + if (vpw->pw_passwd == 0 || authcheckpassword(pass, vpw->pw_passwd)) { + errno=EPERM; + return (-1); + } + + /* save the new password into the auth backend */ + if ( vpasswd(User, Domain, (char *)npass, 0) != 0 ) { + /* password set failed */ + return (-1); + }; + + return (0); +} + +struct authstaticinfo authvchkpw_info={ + "authvchkpw", + auth_vchkpw, + auth_vchkpw_pre, + authvchkpwclose, + auth_vchkpw_changepass, + authvchkpwclose, + NULL}; + + +struct authstaticinfo *courier_authvchkpw_init() +{ + return &authvchkpw_info; +} ---- authvchkpwlib.c.orig 2017-07-03 08:38:16 UTC +--- authvchkpwlib.c.orig 2024-01-31 08:30:47 UTC +++ authvchkpwlib.c @@ -0,0 +1,33 @@ +/* +** Copyright 1998 - 2000 Double Precision, Inc. See COPYING for +** distribution information. +*/ + +#if HAVE_CONFIG_H +#include "courier_auth_config.h" +#endif +#include +#include +#include +#include +#include +#if HAVE_UNISTD_H +#include +#endif +#include +#include +#include "auth.h" + +static const char rcsid[]="$Id: authvchkpwlib.c,v 1.8 2004/10/21 00:10:49 mrsam Exp $"; + +char *authvchkpw_isvirtual(char *c) +{ +char *p; + + if ((p=strchr(c, '@')) != 0) return (p); +#if 0 + if ((p=strchr(c, '%')) != 0) return (p); +#endif + if ((p=strchr(c, ':')) != 0) return (p); + return (0); +} ---- courier_auth_config.h.in.orig 2017-07-02 14:41:47 UTC +--- courier_auth_config.h.in.orig 2024-01-28 13:22:18 UTC +++ courier_auth_config.h.in -@@ -124,6 +124,9 @@ +@@ -121,6 +121,9 @@ /* Define to 1 if you have the `opendir' function. */ #undef HAVE_OPENDIR +/* Whether -lvpopmail has the open_smtp_relay() function */ +#undef HAVE_OPEN_SMTP_RELAY + /* Define to 1 if you have the header file. */ #undef HAVE_PAM_PAM_APPL_H -@@ -226,6 +229,9 @@ +@@ -223,6 +226,9 @@ /* Define to the shared archive member specification, say "(shr.o)". */ #undef LT_SHARED_LIB_MEMBER + +/* Whether -lvpopmail has the vset_lastauth() function */ +#undef HAVE_VSET_LASTAUTH /* Whether we must a prototype for crypt() */ #undef NEED_CRYPT_PROTOTYPE ---- preauthvchkpw.c.orig 2017-07-03 08:38:16 UTC +--- preauthvchkpw.c.orig 2024-01-31 08:30:47 UTC +++ preauthvchkpw.c @@ -0,0 +1,159 @@ +/* +** Copyright 1998 - 2001 Double Precision, Inc. See COPYING for +** distribution information. +*/ + +#if HAVE_CONFIG_H +#include "courier_auth_config.h" +#endif +#include +#include +#include +#include +#include +#if HAVE_UNISTD_H +#include +#endif +#include "auth.h" +#include "courierauthdebug.h" +#include +#include +#include "vpopmail_config.h" + +/* make use of pw_flags only if available */ +#ifndef VQPASSWD_HAS_PW_FLAGS +#define pw_flags pw_gid +#endif + +extern FILE *authvchkpw_file(const char *, const char *); + +static const char rcsid[]="$Id: preauthvchkpw.c,v 1.26 2007/04/22 18:53:30 mrsam Exp $"; + +/* This function is called by the auth_vchkpw() function + * + * This function does the following : + * - extract the username and domain from the supplied userid + * - lookup the passwd entry for that user from the auth backend + * - populate *and return) a courier authinfo structure with the values + * from the vpopmail passwd entry + * + * Return -1 on perm failure + * Return 0 on success + * Return 1 on temp failure + * + */ + +int auth_vchkpw_pre( + const char *userid, + const char *service, + int (*callback)(struct authinfo *, void *), + void *arg) +{ +struct vqpasswd *vpw; +static uid_t uid; +gid_t gid; +struct authinfo auth; +static char User[256]; +static char Domain[256]; +static char options[80]; + + /* Make sure the auth struct is empty */ + memset(&auth, 0, sizeof(auth)); + + /* Take the supplied userid, and split it out into the user and domain + * parts. (If a domain was not supplied, then set the domain to be + * the default domain) + */ + if ( parse_email(userid, User, Domain, 256) != 0) { + /* Failed to successfully extract user and domain. + * So now exit with a permanent failure code + */ + DPRINTF("vchkpw: unable to split into user and domain"); + return(-1); + } + + /* Check to see if the domain exists. + * If so, on return vget_assign will : + * Rewrite Domain to be the real domain if it was sent as an alias domain + * Retrieve the domain's uid and gid + */ + if ( vget_assign(Domain,NULL,0,&uid, &gid) == NULL ) { + /* Domain does not exist + * So now exit with a permanent failure code */ + DPRINTF("vchkpw: domain does not exist"); + return (-1); + } + + /* Try and retrieve the user's passwd entry from the auth backend */ + if ( (vpw=vauth_getpw(User, Domain)) == NULL) { + /* User does not exist + * So now exit with a permanent failure code + */ + DPRINTF("vchkpw: user does not exist"); + return (-1); + } + + /* Check to see if the user has been allocated a dir yet. + * Some of the vpopmail backends (eg mysql) allow users to + * be manually inserted into the auth backend but without + * allocating a dir. A dir will be created when the user + * first trys to auth (or when they 1st receive mail) + */ + if (vpw->pw_dir == NULL || strlen(vpw->pw_dir) == 0 ) { + /* user does not have a dir allocated yet */ + if ( make_user_dir(User, Domain, uid, gid) == NULL) { + /* Could not allocate a user dir at this time + * so exit with a temp error code + */ + DPRINTF("vchkpw: make_user_dir failed"); + return(1); + } + /* We have allocated the user a dir now. + * Go and grab the updated passwd entry + */ + if ( (vpw=vauth_getpw(User, Domain)) == NULL ) { + /* Could not get the passwd entry + * So exit with a permanent failure code + */ + DPRINTF("vchkpw: could not get the password entry"); + return(-1); + } + } + + snprintf(options, sizeof(options), + "disablewebmail=%d,disablepop3=%d,disableimap=%d", + vpw->pw_flags & NO_WEBMAIL ? 1 : 0, + vpw->pw_flags & NO_POP ? 1 : 0, + vpw->pw_flags & NO_IMAP ? 1 : 0); + +#ifdef HAVE_VSET_LASTAUTH + /* if we are keeping track of their last auth time, + * then store this value now. Note that this isnt + * consistent with the authentication via vchkpw + * because it only stores the lastauth attempt + * after the password has been verified. Here we are + * logging it after the user has been found to exist, + * but before the password has been verified. We could + * do the logging inside authvchkpw.c, but that would + * be a lot harder because we would have to go and + * parse_email() again there before calling vset_lastauth() + */ + vset_lastauth(User, Domain, service); +#endif + + /* save the user's passwd fields into the appropriate + * courier structure + */ + /*auth.sysusername = userid;*/ + auth.sysuserid = &uid; + auth.sysgroupid = gid; + auth.homedir = vpw->pw_dir; + auth.address = userid; + auth.fullname = vpw->pw_gecos; + auth.passwd = vpw->pw_passwd; + auth.clearpasswd = vpw->pw_clear_passwd; + auth.options = options; + courier_authdebug_authinfo("DEBUG: authvchkpw: ", &auth, 0, vpw->pw_passwd); + + return ((*callback)(&auth, arg)); +} ---- userdb/Makefile.in.orig 2016-06-23 12:29:59 UTC +--- userdb/Makefile.in.orig 2023-11-18 22:04:05 UTC +++ userdb/Makefile.in -@@ -107,7 +107,7 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cach +@@ -107,7 +107,7 @@ CONFIG_HEADER = config.h configure.lineno config.status.lineno mkinstalldirs = $(install_sh) -d CONFIG_HEADER = config.h -CONFIG_CLEAN_FILES = userdb.pl makeuserdb pw2userdb +CONFIG_CLEAN_FILES = userdb.pl makeuserdb pw2userdb vchkpw2userdb CONFIG_CLEAN_VPATH_FILES = + PROGRAMS = $(noinst_PROGRAMS) LTLIBRARIES = $(noinst_LTLIBRARIES) - libuserdb_la_LIBADD = -@@ -222,6 +222,7 @@ CSCOPE = cscope +@@ -221,6 +221,7 @@ am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/conf AM_RECURSIVE_TARGETS = cscope am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \ $(srcdir)/makeuserdb.in $(srcdir)/pw2userdb.in \ + $(srcdir)/vchkpw2userdb.in \ $(srcdir)/userdb.pl.in $(top_srcdir)/../compile \ $(top_srcdir)/../config.guess $(top_srcdir)/../config.sub \ $(top_srcdir)/../depcomp $(top_srcdir)/../install-sh \ -@@ -377,7 +378,7 @@ BUILT_SOURCES = makeuserdb.html.in makeuserdb.8.in \ +@@ -383,7 +384,7 @@ BUILT_SOURCES = makeuserdb.html.in makeuserdb.8.in \ userdb.html.in userdb.8.in \ userdbpw.html.in userdbpw.8.in -noinst_SCRIPTS = makeuserdb pw2userdb dummy +noinst_SCRIPTS = makeuserdb pw2userdb vchkpw2userdb dummy noinst_DATA = makeuserdb.html userdb.html userdbpw.html userdbpw_SOURCES = userdbpw.c userdbpw_LDADD = libuserdb.la @HMACLIB@ @MD5LIB@ @SHA1LIB@ @CRYPTLIBS@ -@@ -444,6 +445,8 @@ userdb.pl: $(top_builddir)/config.status $(srcdir)/use +@@ -450,6 +451,8 @@ pw2userdb: $(top_builddir)/config.status $(srcdir)/pw2 makeuserdb: $(top_builddir)/config.status $(srcdir)/makeuserdb.in cd $(top_builddir) && $(SHELL) ./config.status $@ pw2userdb: $(top_builddir)/config.status $(srcdir)/pw2userdb.in + cd $(top_builddir) && $(SHELL) ./config.status $@ +vchkpw2userdb: $(top_builddir)/config.status $(srcdir)/vchkpw2userdb.in cd $(top_builddir) && $(SHELL) ./config.status $@ - clean-noinstLTLIBRARIES: ---- userdb/configure.orig 2016-06-23 12:29:59 UTC + clean-noinstPROGRAMS: +--- userdb/configure.orig 2023-11-18 22:04:06 UTC +++ userdb/configure -@@ -12873,7 +12873,7 @@ else +@@ -13559,7 +13559,7 @@ fi fi -ac_config_files="$ac_config_files Makefile userdb.pl makeuserdb pw2userdb" +ac_config_files="$ac_config_files Makefile userdb.pl makeuserdb pw2userdb vchkpw2userdb" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure -@@ -13894,6 +13894,7 @@ do +@@ -14577,6 +14577,7 @@ do "userdb.pl") CONFIG_FILES="$CONFIG_FILES userdb.pl" ;; "makeuserdb") CONFIG_FILES="$CONFIG_FILES makeuserdb" ;; "pw2userdb") CONFIG_FILES="$CONFIG_FILES pw2userdb" ;; + "vchkpw2userdb") CONFIG_FILES="$CONFIG_FILES vchkpw2userdb" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac ---- userdb/vchkpw2userdb.in.orig 2017-07-03 08:38:16 UTC +--- userdb/vchkpw2userdb.in.orig 2024-01-31 08:30:47 UTC +++ userdb/vchkpw2userdb.in @@ -0,0 +1,80 @@ +#! @PERL@ +# +# Convert vchkpw to userdb format. +# +# $Id: vchkpw2userdb.in,v 1.4 2000/02/16 01:12:13 mrsam Exp $ +# +# Copyright 1998 - 1999 Double Precision, Inc. See COPYING for +# distribution information. + +use Getopt::Long; + +die "Invalid options.\n" unless + GetOptions("vpopmailhome=s" => \$vpopmailhome, + "todir=s" => \$todir); + +if ( ! ( $vpopmailhome =~ /./ )) +{ + (undef, undef, undef, undef, undef, undef, undef, $vpopmailhome) + = getpwnam("vpopmail"); + + die "Cannot find vpopmail home.\n" unless $vpopmailhome =~ /./; +} + +-d "$vpopmailhome" || die "$vpopmailhome: not found.\n"; + +if ( $todir =~ /./ ) +{ + -d "$todir" || mkdir($todir, 0700) || die "$!\n"; +} + +$bindir=$0; + +if ($bindir =~ /^(.*)\/[^\/]*$/ ) +{ + $bindir=$1; +} +else +{ + $bindir="."; +} + +die "Unable to locate pw2userdb.\n" unless -f "$bindir/pw2userdb"; + +$redir=""; + +if ( $todir =~ /./ ) +{ + $redir=">$todir/users-vpasswd"; + -d "$todir/domains" || mkdir("$todir/domains", 0700) || die "$!\n"; +} + +if ( -f "$vpopmailhome/users/vpasswd") +{ + $rc=system ("$bindir/pw2userdb --vpopuid --passwd='$vpopmailhome/users/vpasswd' --noshadow --nouid $redir"); + exit $rc / 256 if $rc; +} + +if ( opendir(DIR, "$vpopmailhome/domains")) +{ + while ($domain=readdir(DIR)) + { + $domainopt="--domain='$domain'"; + $domainopt="" if $domain eq "default"; + next if $domain eq "." || $domain eq ".."; + next unless -f "$vpopmailhome/domains/$domain/vpasswd"; + $redir=""; + if ( $todir =~ /./ ) + { + $redir=">$todir/domains/$domain"; + $redir=">$todir/users-default" + if $domain eq "default"; + } + + $rc=system ("$bindir/pw2userdb --passwd='$vpopmailhome/domains/$domain/vpasswd' --vpopuid --noshadow --nouid $domainopt $redir"); + + exit $rc / 256 if $rc != 0; + } + close(DIR); +} + diff --git a/security/courier-authlib/files/patch-configure b/security/courier-authlib/files/patch-configure index f0a7712d21c0..81a6cb164337 100644 --- a/security/courier-authlib/files/patch-configure +++ b/security/courier-authlib/files/patch-configure @@ -1,366 +1,366 @@ ---- configure.orig 2022-05-27 01:32:50 UTC +--- configure.orig 2024-01-28 13:22:04 UTC +++ configure @@ -669,6 +669,10 @@ LTLIBOBJS am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS +HAVE_BASE_TRUE +HAVE_BASE_FALSE +HAVE_USERDB_TRUE +HAVE_USERDB_FALSE LIBOBJS using_systemd SOVERSION @@ -710,6 +714,9 @@ authpgsqlrc PGSQL_LIBS PG_CONFIG authpgsqlrc +vpopmail_home +VPOPMAILLIBS +LIBAUTHVCHKPW LIBAUTHPWD LIBAUTHSHADOW SHADOWLIBS -@@ -1609,6 +1616,7 @@ Optional Packages: +@@ -1610,6 +1617,7 @@ Optional Packages: --with-authldaprc=filename Expect to find authldaprc here --without-authpwd Do not include the authpwd module --without-authshadow Do not include the authshadow module + --without-authvchkpw Do not include the authvchkpw module --with-authpgsqlrc=filename Expect to find authpgsql here --without-authpgsql Do not include the authpgsql module --with-pgsql-libs=DIR Look for pgsql libs in this dir -@@ -3492,7 +3500,7 @@ fi +@@ -3493,7 +3501,7 @@ fi fi fi -INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" +INSTALL_STRIP_PROGRAM="${INSTALL_PROGRAM} -s" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a race-free mkdir -p" >&5 -@@ -19167,8 +19175,12 @@ then +@@ -19387,8 +19395,12 @@ then if test "$doauthuserdb" = "no" then + HAVE_USERDB_TRUE='#' + HAVE_USERDB_FALSE= AUTHUSERDB="" else + HAVE_USERDB_TRUE= + HAVE_USERDB_FALSE='#' AUTHUSERDB="authuserdb" LIBAUTHUSERDB="libauthuserdb.la" -@@ -19612,7 +19624,21 @@ fi +@@ -19832,7 +19844,21 @@ fi fi +if test "${with_base+set}" = set; then + withval="$with_base" + dobase="$withval" +else + dobase="yes" +fi; +if test "$dobase" = "no"; then + HAVE_BASE_TRUE='#' + HAVE_BASE_FALSE= +else + HAVE_BASE_TRUE= + HAVE_BASE_FALSE='#' +fi + if test "$HAVE_LDAP" = 1; then HAVE_LDAP_TRUE= HAVE_LDAP_FALSE='#' -@@ -19817,6 +19843,256 @@ fi +@@ -20037,6 +20063,256 @@ fi + +vpopmail_home=`$PERL -e '@a=getpwnam("vpopmail"); print "$a[7]";'` + + + + +# Check whether --with-authvchkpw was given. +if test "${with_authvchkpw+set}" = set; then + withval=$with_authvchkpw; doauthvchkpw="$withval" +else + doauthvchkpw=no + if test "$vpopmail_home" != "" + then + doauthvchkpw=yes + fi +fi + + +if test "$doauthvchkpw" = "no" +then + HAVE_VCHKPW=0 + vpopmail_home=. +else + HAVE_VCHKPW=1 + + + cat <&5 +echo "$as_me: error: ${vpopmail_home}/etc/lib_deps does not exist - upgrade vpopmail to the current version or fix the permissions on this file" >&2;} + { (exit 1); exit 1; }; } + fi +fi + + + +LIBAUTHVCHKPW="" +if test "$HAVE_VCHKPW" = 1 +then + LIBAUTHVCHKPW="libauthvchkpw.la" + HAVE_VCHKPW="1" + + + _SAVE_LIBS=$LIBS + LIBS="$VPOPMAILLIBS $CRYPTLIBS $LIBS" + { echo "$as_me:$LINENO: checking for open_smtp_relay" >&5 +echo $ECHO_N "checking for open_smtp_relay... $ECHO_C" >&6; } +if test "${ac_cv_func_open_smtp_relay+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define open_smtp_relay to an innocuous variant, in case declares open_smtp_relay. + For example, HP-UX 11i declares gettimeofday. */ +#define open_smtp_relay innocuous_open_smtp_relay + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char open_smtp_relay (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef open_smtp_relay + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char open_smtp_relay (); +/* 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_open_smtp_relay || defined __stub___open_smtp_relay +choke me +#endif + +int +main () +{ +return open_smtp_relay (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + ac_cv_func_open_smtp_relay=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_open_smtp_relay=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_func_open_smtp_relay" >&5 +echo "${ECHO_T}$ac_cv_func_open_smtp_relay" >&6; } +if test $ac_cv_func_open_smtp_relay = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_OPEN_SMTP_RELAY 1 +_ACEOF + +fi + + { echo "$as_me:$LINENO: checking for vset_lastauth" >&5 +echo $ECHO_N "checking for vset_lastauth... $ECHO_C" >&6; } +if test "${ac_cv_func_vset_lastauth+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define vset_lastauth to an innocuous variant, in case declares vset_lastauth. + For example, HP-UX 11i declares gettimeofday. */ +#define vset_lastauth innocuous_vset_lastauth + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char vset_lastauth (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef vset_lastauth + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char vset_lastauth (); +/* 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_vset_lastauth || defined __stub___vset_lastauth +choke me +#endif + +int +main () +{ +return vset_lastauth (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + ac_cv_func_vset_lastauth=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_vset_lastauth=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_func_vset_lastauth" >&5 +echo "${ECHO_T}$ac_cv_func_vset_lastauth" >&6; } +if test $ac_cv_func_vset_lastauth = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_VSET_LASTAUTH 1 +_ACEOF + +fi + + LIBS=$_SAVE_LIBS +fi + + + + + + + # Check whether --with-authpgsqlrc was given. if test ${with_authpgsqlrc+y} then : -@@ -20170,8 +20446,8 @@ then +@@ -20390,8 +20666,8 @@ then SQLITE_LIBS="`pkg-config --libs sqlite3 2>/dev/null`" saveLIBS="$LIBS" LIBS="$SQLITE_LIBS $LIBS" - ac_fn_c_check_func "$LINENO" "sqlite3_version" "ac_cv_func_sqlite3_version" -if test "x$ac_cv_func_sqlite3_version" = xyes +# ac_fn_c_check_func "$LINENO" "sqlite3_version" "ac_cv_func_sqlite3_version" +if test -n $SQLITE_LIBS; then : doauthsqlite="yes" -@@ -20189,14 +20465,14 @@ else +@@ -20409,14 +20685,14 @@ else else saveLIBS="$LIBS" LIBS="$SQLITE_LIBS $LIBS" - ac_fn_c_check_func "$LINENO" "sqlite3_version" "ac_cv_func_sqlite3_version" -if test "x$ac_cv_func_sqlite3_version" = xyes -then : - : -else $as_nop - as_fn_error $? "Cannot link with $SQLITE_LIBS" "$LINENO" 5 - -fi +# ac_fn_c_check_func "$LINENO" "sqlite3_version" "ac_cv_func_sqlite3_version" +#if test "x$ac_cv_func_sqlite3_version" = xyes +#then : +# : +#else $as_nop +# as_fn_error $? "Cannot link with $SQLITE_LIBS" "$LINENO" 5 +# +#fi LIBS="$saveLIBS" HAVE_AUTHSQLITE=1 diff --git a/security/courier-authlib/files/patch-libs_liblock_locktest.c b/security/courier-authlib/files/patch-libs_liblock_locktest.c index a55b4bcfac39..987dc298bd6a 100644 --- a/security/courier-authlib/files/patch-libs_liblock_locktest.c +++ b/security/courier-authlib/files/patch-libs_liblock_locktest.c @@ -1,38 +1,38 @@ ---- libs/liblock/locktest.c.orig 2014-07-13 13:58:08 UTC +--- libs/liblock/locktest.c.orig 2022-11-25 10:00:03 UTC +++ libs/liblock/locktest.c @@ -3,6 +3,7 @@ ** distribution information. */ +#include #include "liblock.h" #if USE_FCNTL #include "lockfcntl.c" -@@ -20,7 +21,7 @@ +@@ -27,7 +28,7 @@ int main() int main() { -#define FILENAME "courier-imap.locktest.XXXXXXXXXX" +#define FILENAME "courier-authlib.locktest.XXXXXXXXXX" int fd[2]; pid_t p; int s; -@@ -29,7 +30,7 @@ int f; +@@ -36,7 +37,7 @@ int f; char *name; const char *tmpdir; if ((tmpdir = (char *)getenv("TMPDIR")) == NULL || !*tmpdir) - tmpdir = "/tmp"; + tmpdir = _PATH_TMP; if ((name=malloc(strlen(tmpdir)+sizeof(FILENAME)+1)) == NULL) { -@@ -37,7 +38,8 @@ int f; +@@ -44,7 +45,8 @@ int f; exit(1); } - (void)sprintf(name, "%s/%s", tmpdir, FILENAME); + (void)sprintf(name, "%s%s%s", tmpdir, + (tmpdir[strlen(tmpdir) - 1] == '/') ? "" : "/", FILENAME); signal(SIGCHLD, SIG_DFL); if (pipe(fd)) diff --git a/security/courier-authlib/files/patch-userdb__pw2userdb.in b/security/courier-authlib/files/patch-userdb__pw2userdb.in index 7cb79aa49b02..4f80616efa26 100644 --- a/security/courier-authlib/files/patch-userdb__pw2userdb.in +++ b/security/courier-authlib/files/patch-userdb__pw2userdb.in @@ -1,104 +1,102 @@ ---- userdb/pw2userdb.in.orig Wed Jul 19 13:55:15 2000 -+++ userdb/pw2userdb.in Tue Mar 1 21:58:51 2005 -@@ -7,6 +7,8 @@ +--- userdb/pw2userdb.in.orig 2013-08-25 18:57:38 UTC ++++ userdb/pw2userdb.in +@@ -6,6 +6,8 @@ # Copyright 1998 - 1999 Double Precision, Inc. See COPYING for # distribution information. +# Adapted to BSD master.passwd + use Getopt::Long; # -@@ -22,42 +24,66 @@ +@@ -21,42 +23,66 @@ $passwd="/etc/passwd" unless $passwd =~ /./; if $vpopuid; $passwd="/etc/passwd" unless $passwd =~ /./; -$shadow="/etc/shadow" unless $shadow =~ /./; +$shadow="/etc/master.passwd" unless $shadow =~ /./; $domain="" unless $domain =~ /./; $domain="\@$domain" if $domain =~ /./; -open(PASSWD, $passwd) || die "$!\n"; - -while () +if (! $noshadow && $shadow =~ /master.passwd$/) { - chop if /\n$/; - next if /^#/; - ($acct,$passwd,$uid,$gid,$name,$home,$shell)=split( /:/ ); -- ++ open(PASSWD, $shadow) || die "$!\n"; + - ($uid,$gid)=($fixed_uid,$fixed_gid) if $vpopuid; -- ++ while () ++ { ++ chop if /\n$/; ++ next if /^#/; ++ ($acct,$passwd,$uid,$gid,$class,$change,$expire,$name,$home,$shell)=split( /:/ ); + - $PASSWORD{$acct}=$passwd if $passwd ne "x"; - $UID{$acct}=$uid; - $GID{$acct}=$gid; - $HOME{$acct}=$home; - $SHELL{$acct}=$shell; -- ++ ($uid,$gid)=($fixed_uid,$fixed_gid) if $vpopuid; ++ $name =~ s/\|/./g; # Just in case + - $name =~ s/\|/./g; # Just in case - $GECOS{$acct}=$name; -} -close (PASSWD); -+ open(PASSWD, $shadow) || die "$!\n"; - --if ( -f $shadow && ! $noshadow) --{ -- open (SHADOW, $shadow) || die "$!\n"; -- while () -+ while () - { -+ chop if /\n$/; - next if /^#/; -- ($acct,$passwd,$dummy)=split(/:/); -+ ($acct,$passwd,$uid,$gid,$class,$change,$expire,$name,$home,$shell)=split( /:/ ); -+ -+ ($uid,$gid)=($fixed_uid,$fixed_gid) if $vpopuid; -+ $name =~ s/\|/./g; # Just in case -+ - $PASSWORD{$acct}=$passwd; ++ $PASSWORD{$acct}=$passwd; + $UID{$acct}=$uid; + $GID{$acct}=$gid; + $HOME{$acct}=$home; + $SHELL{$acct}=$shell; + $GECOS{$acct}=$name; + } + close (PASSWD); +} else { + open(PASSWD, $passwd) || die "$!\n"; -+ + +-if ( -f $shadow && ! $noshadow) +-{ +- open (SHADOW, $shadow) || die "$!\n"; +- while () + while () -+ { + { + chop if /\n$/; -+ next if /^#/; + next if /^#/; +- ($acct,$passwd,$dummy)=split(/:/); +- $PASSWORD{$acct}=$passwd; + ($acct,$passwd,$uid,$gid,$name,$home,$shell)=split( /:/ ); + + ($uid,$gid)=($fixed_uid,$fixed_gid) if $vpopuid; + + $PASSWORD{$acct}=$passwd if $passwd ne "x"; + $UID{$acct}=$uid; + $GID{$acct}=$gid; + $HOME{$acct}=$home; + $SHELL{$acct}=$shell; + + $name =~ s/\|/./g; # Just in case + $GECOS{$acct}=$name; -+ } + } +- close (SHADOW); + close (PASSWD); + + if ( -f $shadow && ! $noshadow) + { + open (SHADOW, $shadow) || die "$!\n"; + while () + { + + next if /^#/; + ($acct,$passwd,$dummy)=split(/:/); + $PASSWORD{$acct}=$passwd; + } + close (SHADOW); - } -- close (SHADOW); ++ } } while ( defined ($key=each %UID)) diff --git a/security/courier-authlib/pkg-plist-base b/security/courier-authlib/pkg-plist-base index c1ff854632e2..f0d6ff73aa60 100644 --- a/security/courier-authlib/pkg-plist-base +++ b/security/courier-authlib/pkg-plist-base @@ -1,59 +1,59 @@ bin/courierauthconfig @preunexec if cmp -s %D/etc/authlib/authdaemonrc.dist %D/etc/authlib/authdaemonrc; then rm -f %D/etc/authlib/authdaemonrc; fi @(%%MAILOWN%%,%%MAILGRP%%,660) etc/authlib/authdaemonrc.dist @postexec %%LOCALBASE%%/share/sysconftool/sysconftool %D/etc/authlib/authdaemonrc include/courierauth.h include/courierauthdebug.h include/courierauthsasl.h include/courierauthsaslclient.h include/courierauthstaticlist.h lib/courier-authlib/libcourierauth.so lib/courier-authlib/libcourierauth.so.0 lib/courier-authlib/libcourierauth.so.0.0.0 lib/courier-authlib/libcourierauthcommon.so lib/courier-authlib/libcourierauthcommon.so.0 lib/courier-authlib/libcourierauthcommon.so.0.0.0 lib/courier-authlib/libcourierauthsasl.so lib/courier-authlib/libcourierauthsasl.so.0 lib/courier-authlib/libcourierauthsasl.so.0.0.0 lib/courier-authlib/libcourierauthsaslclient.so lib/courier-authlib/libcourierauthsaslclient.so.0 lib/courier-authlib/libcourierauthsaslclient.so.0.0.0 lib/courier-authlib/libauthpam.so lib/courier-authlib/libauthpam.so.0 lib/courier-authlib/libauthpam.so.0.0.0 lib/courier-authlib/libauthpipe.so lib/courier-authlib/libauthpipe.so.0 lib/courier-authlib/libauthpipe.so.0.0.0 libexec/courier-authlib/authdaemond libexec/courier-authlib/authsystem.passwd -man/man1/authtest.1.gz -man/man1/courierlogger.1.gz -man/man3/auth_enumerate.3.gz -man/man3/auth_generic.3.gz -man/man3/auth_generic_meta.3.gz -man/man3/auth_getoption.3.gz -man/man3/auth_getuserinfo.3.gz -man/man3/auth_getuserinfo_meta.3.gz -man/man3/auth_login.3.gz -man/man3/auth_login_meta.3.gz -man/man3/auth_meta.3.gz -man/man3/auth_mkhomedir.3.gz -man/man3/auth_passwd.3.gz -man/man3/auth_sasl.3.gz -man/man3/auth_sasl_ex.3.gz -man/man3/authlib.3.gz sbin/authdaemond sbin/authenumerate sbin/authtest sbin/courierlogger +share/man/man1/authtest.1.gz +share/man/man1/courierlogger.1.gz +share/man/man3/auth_enumerate.3.gz +share/man/man3/auth_generic.3.gz +share/man/man3/auth_generic_meta.3.gz +share/man/man3/auth_getoption.3.gz +share/man/man3/auth_getuserinfo.3.gz +share/man/man3/auth_getuserinfo_meta.3.gz +share/man/man3/auth_login.3.gz +share/man/man3/auth_login_meta.3.gz +share/man/man3/auth_meta.3.gz +share/man/man3/auth_mkhomedir.3.gz +share/man/man3/auth_passwd.3.gz +share/man/man3/auth_sasl.3.gz +share/man/man3/auth_sasl_ex.3.gz +share/man/man3/authlib.3.gz %%PORTDOCS%%%%DOCSDIR%%/AUTHORS %%PORTDOCS%%%%DOCSDIR%%/COPYING %%PORTDOCS%%%%DOCSDIR%%/ChangeLog %%PORTDOCS%%%%DOCSDIR%%/INSTALL %%PORTDOCS%%%%DOCSDIR%%/NEWS %%PORTDOCS%%%%DOCSDIR%%/README %%PORTDOCS%%%%DOCSDIR%%/README.authdebug.html %%PORTDOCS%%%%DOCSDIR%%/README_authlib.html @dir(%%MAILOWN%%,%%MAILGRP%%,750) %%AUTHDAEMONVAR%% @dir(%%MAILOWN%%,%%MAILGRP%%,755) libexec/courier-authlib diff --git a/security/courier-authlib/pkg-plist-userdb b/security/courier-authlib/pkg-plist-userdb index 052eee9eb728..51225d01d3e2 100644 --- a/security/courier-authlib/pkg-plist-userdb +++ b/security/courier-authlib/pkg-plist-userdb @@ -1,13 +1,13 @@ lib/courier-authlib/libauthuserdb.so lib/courier-authlib/libauthuserdb.so.0 lib/courier-authlib/libauthuserdb.so.0.0.0 libexec/courier-authlib/makedatprog -man/man8/makeuserdb.8.gz -man/man8/pw2userdb.8.gz -man/man8/userdb.8.gz -man/man8/userdbpw.8.gz sbin/makeuserdb sbin/pw2userdb sbin/userdb sbin/userdbpw sbin/vchkpw2userdb +share/man/man8/makeuserdb.8.gz +share/man/man8/pw2userdb.8.gz +share/man/man8/userdb.8.gz +share/man/man8/userdbpw.8.gz