diff options
-rw-r--r-- | UPDATING | 14 | ||||
-rw-r--r-- | mail/Makefile | 1 | ||||
-rw-r--r-- | mail/postfix35/Makefile | 378 | ||||
-rw-r--r-- | mail/postfix35/distinfo | 3 | ||||
-rw-r--r-- | mail/postfix35/files/extra-patch-blacklistd | 69 | ||||
-rw-r--r-- | mail/postfix35/files/mailer.conf.postfix.in | 7 | ||||
-rw-r--r-- | mail/postfix35/files/patch-makedefs | 45 | ||||
-rw-r--r-- | mail/postfix35/files/patch-src_posttls-finger_posttls-finger.c | 22 | ||||
-rw-r--r-- | mail/postfix35/files/patch-src_tls_tls__certkey.c | 11 | ||||
-rw-r--r-- | mail/postfix35/files/patch-src_tls_tls__server.c | 12 | ||||
-rw-r--r-- | mail/postfix35/files/patch-src_util_sys__defs.h | 12 | ||||
-rw-r--r-- | mail/postfix35/files/pkg-install.in | 189 | ||||
-rw-r--r-- | mail/postfix35/files/pkg-message.in | 44 | ||||
-rw-r--r-- | mail/postfix35/files/postfix.in | 50 | ||||
-rw-r--r-- | mail/postfix35/pkg-descr | 15 | ||||
-rw-r--r-- | mail/postfix35/pkg-help | 15 | ||||
-rw-r--r-- | mail/postfix35/pkg-plist | 190 |
17 files changed, 1077 insertions, 0 deletions
@@ -5,6 +5,20 @@ they are unavoidable. You should get into the habit of checking this file for changes each time you update your ports collection, before attempting any port upgrades. +20210506: + AFFECTS: users of mail/postfix + AUTHOR: ohauer@FreeBSD.org + + Postfix 3.6 and higher requires minimum OpenSSL 1.1.1 + FreeBSD 11 users using base OpenSSL can switch to + mail/postfix35 + + If you whish to use postfix35 until FreeBSD 11 EoL you might run the + following command: + + # pkg set -o mail/postfix:mail/postfix35 + # pkg upgrade + 20210505: AFFECTS: users of sysutils/terraform AUTHOR: 0mp@FreeBSD.org diff --git a/mail/Makefile b/mail/Makefile index 8388b9df8147..9866ab62f506 100644 --- a/mail/Makefile +++ b/mail/Makefile @@ -476,6 +476,7 @@ SUBDIR += postfix-policyd-weight SUBDIR += postfix-postfwd SUBDIR += postfix-sasl + SUBDIR += postfix35 SUBDIR += postfixadmin SUBDIR += postgrey SUBDIR += postsrsd diff --git a/mail/postfix35/Makefile b/mail/postfix35/Makefile new file mode 100644 index 000000000000..4b8b206844ea --- /dev/null +++ b/mail/postfix35/Makefile @@ -0,0 +1,378 @@ +# Created by: Torsten Blum <torstenb@FreeBSD.org> + +PORTNAME= postfix +DISTVERSION= 3.5.10 +PORTREVISION?= 0 +PORTEPOCH= 1 +CATEGORIES= mail +MASTER_SITES= http://ftp.porcupine.org/mirrors/postfix-release/ \ + http://de.postfix.org/ftpmirror/ \ + http://cdn.postfix.johnriley.me/mirrors/postfix-release/ \ + http://www.artfiles.org/postfix.org/postfix-release/ \ + http://mirror.lhsolutions.nl/postfix-release/ \ + ftp://postfix.mirrors.pair.com/ +MASTER_SITES:= ${MASTER_SITES:S|$|official/|} +DIST_SUBDIR= ${PORTNAME} + +MAINTAINER= ohauer@FreeBSD.org +COMMENT= Secure alternative to widely-used Sendmail + +LICENSE= EPL IPL10 +LICENSE_COMB= multi +LICENSE_FILE= ${WRKSRC}/LICENSE +LICENSE_NAME_IPL10= IBM PUBLIC LICENSE VERSION 1.0 +LICENSE_PERMS_IPL10= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept + +DEPRECATED= It is only here until FreeBSD 11 is EoL (Postfix >= 3.6 requires OpenSSL >= 1.1.x) +EXPIRATION_DATE=2021-09-30 + +PORTSCOUT= limit:^3\.5\. + +CONFLICTS_INSTALL?= courier-0.* opensmtpd-[0-9]* sendmail-8.* sendmail+*-8.* \ + postfix-* postfix-current-* + +USERS= postfix +GROUPS= mail maildrop postfix +USES= shebangfix cpe +SHEBANG_FILES= auxiliary/qshape/qshape.pl + +USE_RC_SUBR= postfix +USE_SUBMAKE= yes +SCRIPTS_ENV+= POSTFIX_DEFAULT_MTA="${POSTFIX_DEFAULT_MTA}" + +OPTIONS_SUB= yes +OPTIONS_DEFINE= BDB BLACKLISTD CDB DOCS EAI INST_BASE LDAP LDAP_SASL \ + LMDB MYSQL NIS PCRE PGSQL SASL SQLITE TEST TLS + +OPTIONS_RADIO= RG1 +OPTIONS_RADIO_RG1= SASLKRB5 SASLKMIT +OPTIONS_DEFAULT?= BLACKLISTD EAI PCRE TLS + +BDB_USES= bdb +BLACKLISTD_EXTRA_PATCHES= ${FILESDIR}/extra-patch-blacklistd +CDB_LIB_DEPENDS= libcdb.so:databases/tinycdb +EAI_LIB_DEPENDS= libicuuc.so:devel/icu +LDAP_USE= OPENLDAP=yes +LMDB_LIB_DEPENDS= liblmdb.so:databases/lmdb +MYSQL_USES?= mysql +PCRE_LIB_DEPENDS= libpcre.so:devel/pcre +PGSQL_USES= pgsql +SASLKMIT_LIB_DEPENDS= libkrb5.so:security/krb5 +SASL_LIB_DEPENDS= libsasl2.so:security/cyrus-sasl2 +SQLITE_USES= sqlite +TLS_USES= ssl + +BLACKLISTD_DESC= Enable blacklistd support (FreeBSD 11.0 and later only) +CDB_DESC= CDB maps lookups +EAI_DESC= Email Address Internationalization (SMTPUTF8) support +INST_BASE_DESC= Install into /usr and /etc/postfix +LDAP_DESC= LDAP maps (uses WITH_OPENLDAP_VER) +LDAP_SASL_DESC= LDAP client-to-server SASL auth +LMDB_DESC= LMDB maps +TEST_DESC= SMTP/LMTP test server and generator + +SASL_DESC= Cyrus SASL support (Dovecot SASL is always built in) +RG1_DESC= Kerberos network authentication protocol type +SASLKRB5_DESC= If your SASL req. Kerberos5, select this +SASLKMIT_DESC= If your SASL req. MIT Kerberos5, select this + +.include <bsd.port.options.mk> + +HTML1= body_checks.5.html bounce.5.html postfix-power.png \ + scache.8.html tlsmgr.8.html + +STRIP_LIBEXEC= anvil bounce cleanup discard dnsblog error flush lmtp local \ + master nqmgr oqmgr pickup pipe postlogd postscreen proxymap \ + qmgr qmqpd scache showq smtp smtpd spawn tlsmgr tlsproxy \ + trivial-rewrite verify virtual + +.if !defined(DEBUG) +MAKEFILEFLAGS+= DEBUG= +.endif + +MAKEFILEFLAGS+= pie=yes CC="${CC}" OPT="${CFLAGS}" + +.if ${PORT_OPTIONS:MINST_BASE} +PKGNAMESUFFIX= 35-base +PREFIX= /usr +ETCDIR= /etc/postfix +PLIST_SUB+= BMAN="share/" +.else +PKGNAMESUFFIX= 35 +PLIST_SUB+= BMAN="" +.endif + +PLIST_SUB+= PFETC=${ETCDIR} + +# check if mailwrapper supports $LOCALBASE +.if ${OPSYS} == FreeBSD +SUB_LIST+= USE_LOCALBASE_MAILER_CONF="yes" MC_PREFIX="${LOCALBASE}" +.else +SUB_LIST+= USE_LOCALBASE_MAILER_CONF="no" MC_PREFIX="" +.endif + +.if ${PORT_OPTIONS:MDOCS} +PORTDOCS= * +READMEDIR= ${DOCSDIR} +.else +READMEDIR= no +.endif + +# dynamic direcory location +DAEMONDIR= ${PREFIX}/libexec/postfix +SHLIB_DIRECTORY=${PREFIX}/lib/postfix +# new proposed location is ETCDIR (see README_FILES/INSTALL) +# keep compatiblity with Postfix 2.6 .. 2.11 and use DAEMOMDIR +META_DIRECTORY= ${DAEMONDIR} + +SUB_LIST+= REQUIRE="${_REQUIRE}" READMEDIR="${READMEDIR}" \ + DAEMONDIR="${DAEMONDIR}" META_DIRECTORY="${META_DIRECTORY}" +SUB_FILES+= pkg-install pkg-message mailer.conf.postfix + +POSTFIX_CCARGS+= -DDEF_CONFIG_DIR=\\\"${ETCDIR}\\\" \ + -DDEF_DAEMON_DIR=\\\"${DAEMONDIR}\\\" \ + -DDEF_META_DIR=\\\"${META_DIRECTORY}\\\" \ + -DDEF_COMMAND_DIR=\\\"${PREFIX}/sbin\\\" \ + -DDEF_SENDMAIL_PATH=\\\"${PREFIX}/sbin/sendmail\\\" \ + -DDEF_NEWALIAS_PATH=\\\"${PREFIX}/bin/newaliases\\\" \ + -DDEF_MAILQ_PATH=\\\"${PREFIX}/bin/mailq\\\" \ + -DDEF_MANPAGE_DIR=\\\"${MANPREFIX}/man\\\" \ + -DDEF_README_DIR=\\\"${READMEDIR}\\\" \ + -DDEF_HTML_DIR=\\\"${READMEDIR}\\\" \ + -DDEF_QUEUE_DIR=\\\"/var/spool/postfix\\\" \ + -DDEF_DATA_DIR=\\\"/var/db/postfix\\\" \ + -DDEF_MAIL_OWNER=\\\"postfix\\\" \ + -DDEF_SGID_GROUP=\\\"maildrop\\\" \ + -Wmissing-prototypes -Wformat -Wno-comment + +# Default requirement for postfix rc script +_REQUIRE= LOGIN cleanvar dovecot + +# always build with Dovecot SASL support, Cyrus is optional +# see Postfix HISTORY 20051222 +POSTFIX_CCARGS+= -DUSE_SASL_AUTH + +# Email Address Internationalization (EAI, RFC 6531..6533) +.if ${PORT_OPTIONS:MEAI} +POSTFIX_CCARGS+= -DHAS_EAI -I${LOCALBASE}/include +POSTFIX_AUXLIBS+= -L${LOCALBASE}/lib -licuuc +.else +POSTFIX_CCARGS+= -DNO_EAI +.endif + +.if ${PORT_OPTIONS:MPCRE} +DYN_EXT+= pcre +POSTFIX_CCARGS+= -DHAS_PCRE -I${LOCALBASE}/include +POSTFIX_DYN_AUXLIBS+= "AUXLIBS_PCRE=`${LOCALBASE}/bin/pcre-config --libs`" +.else +POSTFIX_CCARGS+= -DNO_PCRE +.endif + +.if ${PORT_OPTIONS:MSASL} +POSTFIX_CCARGS+= -DUSE_CYRUS_SASL -I${LOCALBASE}/include -I${LOCALBASE}/include/sasl +POSTFIX_AUXLIBS+= -L${LOCALBASE}/lib -lsasl2 -lpam -lcrypt +.else +POSTFIX_CCARGS+= -DDEF_SERVER_SASL_TYPE=\\\"dovecot\\\" +.endif + +.if ${PORT_OPTIONS:MSASLKRB5} +POSTFIX_AUXLIBS+= -lkrb5 -lhx509 -lcrypto -lcrypt -lcom_err -lasn1 -lroken +.endif + +.if ${PORT_OPTIONS:MSASLKMIT} +POSTFIX_AUXLIBS+= -Wl,--rpath,$${KRB5_HOME:-${LOCALBASE}}/lib -lkrb5 -lcrypto -lcrypt -lcom_err +.endif + +.if ${PORT_OPTIONS:MTLS} +POSTFIX_CCARGS+= -DUSE_TLS -I${OPENSSLINC} +# XXX LDFLAGS possible breaks dynamic building +POSTFIX_AUXLIBS+= -L${OPENSSLLIB} ${LDFLAGS} -lssl -lcrypto +.else +POSTFIX_CCARGS+= -DNO_TLS +.endif + +.if ${PORT_OPTIONS:MBDB} +POSTFIX_CCARGS+= -I${BDB_INCLUDE_DIR} +POSTFIX_AUXLIBS+= -L${BDB_LIB_DIR} -l${BDB_LIB_NAME} +.endif + +.if ${PORT_OPTIONS:MBLACKLISTD} +. if ${OPSYS} == FreeBSD +POSTFIX_AUXLIBS+= -lblacklist +. else +IGNORE= blacklistd is only supported on FreeBSD >= 11.0 +. endif +.endif + +.if ${PORT_OPTIONS:MMYSQL} +DYN_EXT+= mysql +POSTFIX_CCARGS+= -DHAS_MYSQL -I${LOCALBASE}/include/mysql +POSTFIX_DYN_AUXLIBS+= "AUXLIBS_MYSQL=-L${LOCALBASE}/lib/mysql -lmysqlclient -lz -lm" +_REQUIRE+= mysql +.endif + +.if ${PORT_OPTIONS:MPGSQL} +DYN_EXT+= pgsql +POSTFIX_CCARGS+= -DHAS_PGSQL -I${LOCALBASE}/include +POSTFIX_DYN_AUXLIBS+= "AUXLIBS_PGSQL=-L${LOCALBASE}/lib -lpq" +_REQUIRE+= postgresql +.endif + +.if ${PORT_OPTIONS:MSQLITE} +DYN_EXT+= sqlite +POSTFIX_CCARGS+= -DHAS_SQLITE -I${LOCALBASE}/include +POSTFIX_DYN_AUXLIBS+= "AUXLIBS_SQLITE=-L${LOCALBASE}/lib -lsqlite3 -lpthread" +.endif + +.if ${PORT_OPTIONS:MLDAP} +DYN_EXT+= ldap +. if defined(WITH_OPENLDAP_VER) +WANT_OPENLDAP_VER= ${WITH_OPENLDAP_VER} +. endif +POSTFIX_CCARGS+= -DHAS_LDAP -I${LOCALBASE}/include +POSTFIX_DYN_AUXLIBS+= "AUXLIBS_LDAP=-L${LOCALBASE}/lib -lldap -L${LOCALBASE}/lib -llber" +_REQUIRE+= slapd +. if ${PORT_OPTIONS:MLDAP_SASL} +. if ! ${PORT_OPTIONS:MSASL} +LIB_DEPENDS+= libsasl2.so:security/cyrus-sasl2 +. endif +WANT_OPENLDAP_SASL= yes +POSTFIX_CCARGS+= -I${LOCALBASE}/include/sasl -DUSE_LDAP_SASL +. endif +.endif + +.if ${PORT_OPTIONS:MCDB} +DYN_EXT+= cdb +POSTFIX_CCARGS+= -DHAS_CDB -I${LOCALBASE}/include +POSTFIX_DYN_AUXLIBS+= "AUXLIBS_CDB=-L${LOCALBASE}/lib -lcdb" +.endif + +.if ${PORT_OPTIONS:MNIS} +POSTFIX_CCARGS+= -DHAS_NIS +_REQUIRE+= ypserv +.endif + +.if ${PORT_OPTIONS:MTEST} +BINTEST= qmqp-sink qmqp-source smtp-sink smtp-source +MANTEST= qmqp-sink.1 qmqp-source.1 smtp-sink.1 smtp-source.1 +.endif + +.if ${PORT_OPTIONS:MLMDB} +DYN_EXT+= lmdb +POSTFIX_CCARGS+= -DHAS_LMDB -I${LOCALBASE}/include +POSTFIX_DYN_AUXLIBS+= "AUXLIBS_LMDB=-L${LOCALBASE}/lib -llmdb" +.endif + +# sed script for files in ${WRKSRC}/README_FILES ${WRKSRC}/conf ${WRKSRC}/man +REINPLACE= s!^PATH=.*!PATH=/bin:/sbin:/usr/bin:/usr/sbin:${PREFIX}/bin:${PREFIX}/sbin!;\ + s!(_directory = )/usr/!\1${PREFIX}/!g;\ + s!^(data_directory = /var/)lib/!\1db/!g;\ + s!^\#(mynetworks_style = host)!\1!g;\ + s!^(sendmail_path =)!\1 ${PREFIX}/sbin/sendmail!g;\ + s!^(newaliases_path =)!\1 ${PREFIX}/bin/newaliases!g;\ + s!^(mailq_path =)!\1 ${PREFIX}/bin/mailq!g;\ + s!^(setgid_group =)!\1 maildrop!g;\ + s!^(manpage_directory =)!\1 ${MANPREFIX}/man!g;\ + s!^((html|readme)_directory =)!\1 ${READMEDIR}!g;\ + \!^\#alias_database = dbm:/etc/mail/aliases$$!d;\ + s!(:|= )/etc/postfix!\1$$config_directory!g;\ + s!/etc/postfix!${ETCDIR}!g;\ + s!^(sample_directory =)!\1 ${ETCDIR}!g;\ + s!($config_directory/(access|aliases|canonical|generic|header_checks|relocated|transport|virtual):f:root:-:644:)p1!\1o!; + +pre-patch: +.if ${PORT_OPTIONS:MSASL} && ! ${PORT_OPTIONS:MMYSQL} && exists(${LOCALBASE}/lib/libsasl2.a) + @if /usr/bin/nm ${LOCALBASE}/lib/libsasl2.a | ${GREP} -wq "mysql_init"; then \ + ${ECHO_MSG}; \ + ${ECHO_MSG} "Your SASL library it's compiled with MYSQL"; \ + ${ECHO_MSG} "If you use MYSQL in ${PORTNAME} consider CTRL+C and"; \ + ${ECHO_MSG} "select MYSQL OPTION in config menu."; \ + ${ECHO_MSG} "# make clean config"; \ + ${ECHO_MSG}; \ + sleep 5; \ + fi +.endif + + @${ECHO_CMD} '<HTML><BODY>See <A HREF="header_checks.5.html">header_checks.5.html</A></BODY></HTML>' \ + > ${WRKSRC}/html/body_checks.5.html + @${REINPLACE_CMD} -E -e 's!^(#define DEF_SGID_GROUP[^"]+)"postdrop"$$!\1"maildrop"!' \ + ${WRKSRC}/src/global/mail_params.h + @${FIND} -X ${WRKSRC}/README_FILES ${WRKSRC}/conf ${WRKSRC}/man \ + -type f -a ! \( -name INSTALL -o -name aliases \) | ${XARGS} \ + ${REINPLACE_CMD} -i '' -E -e '${REINPLACE}' + +post-patch: +.for f in ${HTML1} + @${ECHO_CMD} '$$html_directory/$f:f:root:-:644' \ + >> ${WRKSRC}/conf/postfix-files +.endfor + @${ECHO_CMD} '$$manpage_directory/man1/posttls-finger.1:f:root:-:644' \ + >> ${WRKSRC}/conf/postfix-files + @${ECHO_CMD} '$$command_directory/posttls-finger:f:root:-:755' \ + >> ${WRKSRC}/conf/postfix-files + +do-configure: + (cd ${WRKSRC} && ${MAKE} -f Makefile.init makefiles \ + ${MAKEFILEFLAGS} CCARGS="${POSTFIX_CCARGS}" \ + shared=yes shlib_directory=${SHLIB_DIRECTORY} \ + dynamicmaps=yes \ + ${POSTFIX_DYN_AUXLIBS} \ + AUXLIBS="${POSTFIX_AUXLIBS}" && \ + ${ECHO_CMD} "all: default" >> Makefile) + +pre-install-INST_BASE-on: + ${MKDIR} ${STAGEDIR}/etc/rc.d + +do-install: + @(cd ${WRKSRC} && ${MAKE} non-interactive-package \ + install_root=${STAGEDIR} tempdir=${WRKDIR} \ + shlib_directory=${SHLIB_DIRECTORY} \ + config_directory=${ETCDIR} \ + command_directory=${PREFIX}/sbin \ + daemon_directory=${DAEMONDIR} \ + meta_directory=${META_DIRECTORY} \ + html_directory=${READMEDIR} \ + mailq_path=${PREFIX}/bin/mailq \ + manpage_directory=${MANPREFIX}/man \ + newaliases_path=${PREFIX}/bin/newaliases \ + readme_directory=${READMEDIR} \ + sendmail_path=${PREFIX}/sbin/sendmail ) + + ${INSTALL_SCRIPT} ${WRKSRC}/auxiliary/rmail/rmail ${STAGEDIR}${PREFIX}/bin/rmail + ${INSTALL_SCRIPT} ${WRKSRC}/auxiliary/qshape/qshape.pl ${STAGEDIR}${PREFIX}/bin/qshape + ${INSTALL_MAN} ${WRKSRC}/man/man1/qshape.1 ${STAGEDIR}${MANPREFIX}/man/man1 + +# == do not overwrite existing config + ${MV} ${STAGEDIR}${ETCDIR}/main.cf ${STAGEDIR}${ETCDIR}/main.cf.sample + ${MV} ${STAGEDIR}${ETCDIR}/master.cf ${STAGEDIR}${ETCDIR}/master.cf.sample + ${MKDIR} ${STAGEDIR}${DATADIR} + ${INSTALL_DATA} ${WRKDIR}/mailer.conf.postfix ${STAGEDIR}${DATADIR} + +# == chop dynamicmaps.cf entries into dedicated .cf files +# for future sub-packages support +.for f in ${DYN_EXT} +# adjust dynamicmaps.cf + ${GREP} -e "^#" -e "^${f}" ${STAGEDIR}${META_DIRECTORY}/dynamicmaps.cf \ + > ${STAGEDIR}${META_DIRECTORY}/dynamicmaps.cf.d/${f}.cf && \ + ${SED} -i '' -e '/${f}/d' ${STAGEDIR}${META_DIRECTORY}/dynamicmaps.cf + +# adjust / generate postfix-files for dynamic modules + ${SED} -i '' -e '/postfix-${f}.so/d' ${STAGEDIR}${META_DIRECTORY}/postfix-files && \ + ${PRINTF} '# Do not edit this file.\ + \n$$shlib_directory/postfix-${f}.so:f:root:-:755\ + \n$$meta_directory/postfix-files.d/${f}-files:f:root:-:644\ + \n$$meta_directory/dynamicmaps.cf.d/${f}.cf:f:root:-:644\n' \ + > ${STAGEDIR}${META_DIRECTORY}/postfix-files.d/${f}-files +.endfor + +# Fix compressed man pages and strip executables + ${SED} -i '' -E -e "s|(man[158]/.*.[158]):|\1.gz:|g" ${STAGEDIR}${META_DIRECTORY}/postfix-files + -@${STRIP_CMD} ${STRIP_LIBEXEC:S|^|${STAGEDIR}${DAEMONDIR}/|} + -@${STRIP_CMD} ${STAGEDIR}${PREFIX}/sbin/* + -@${STRIP_CMD} ${STAGEDIR}${SHLIB_DIRECTORY}/*.so + +do-install-TEST-on: + ${INSTALL_PROGRAM} ${BINTEST:S|^|${WRKSRC}/bin/|} ${STAGEDIR}${PREFIX}/bin + ${INSTALL_MAN} ${MANTEST:S|^|${WRKSRC}/man/man1/|} ${STAGEDIR}${MANPREFIX}/man/man1 + +.include <bsd.port.mk> diff --git a/mail/postfix35/distinfo b/mail/postfix35/distinfo new file mode 100644 index 000000000000..4169fdd0d92e --- /dev/null +++ b/mail/postfix35/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1618155540 +SHA256 (postfix/postfix-3.5.10.tar.gz) = 5bb4d7d72d7512b58f3a31426dcbd394fd354e0a43de21da89466b057a0228f8 +SIZE (postfix/postfix-3.5.10.tar.gz) = 4621130 diff --git a/mail/postfix35/files/extra-patch-blacklistd b/mail/postfix35/files/extra-patch-blacklistd new file mode 100644 index 000000000000..a9448d978c7d --- /dev/null +++ b/mail/postfix35/files/extra-patch-blacklistd @@ -0,0 +1,69 @@ +# PR 225664: support blacklistd on FreeBSD >= 11.0 +# +--- src/smtpd/Makefile.in.orig 2017-02-05 23:36:32 UTC ++++ src/smtpd/Makefile.in +@@ -2,14 +2,14 @@ SHELL = /bin/sh + SRCS = smtpd.c smtpd_token.c smtpd_check.c smtpd_chat.c smtpd_state.c \ + smtpd_peer.c smtpd_sasl_proto.c smtpd_sasl_glue.c smtpd_proxy.c \ + smtpd_xforward.c smtpd_dsn_fix.c smtpd_milter.c smtpd_resolve.c \ +- smtpd_expand.c smtpd_haproxy.c ++ smtpd_expand.c smtpd_haproxy.c pfilter.c + OBJS = smtpd.o smtpd_token.o smtpd_check.o smtpd_chat.o smtpd_state.o \ + smtpd_peer.o smtpd_sasl_proto.o smtpd_sasl_glue.o smtpd_proxy.o \ + smtpd_xforward.o smtpd_dsn_fix.o smtpd_milter.o smtpd_resolve.o \ +- smtpd_expand.o smtpd_haproxy.o ++ smtpd_expand.o smtpd_haproxy.o pfilter.o + HDRS = smtpd_token.h smtpd_check.h smtpd_chat.h smtpd_sasl_proto.h \ + smtpd_sasl_glue.h smtpd_proxy.h smtpd_dsn_fix.h smtpd_milter.h \ +- smtpd_resolve.h smtpd_expand.h ++ smtpd_resolve.h smtpd_expand.h pfilter.h + TESTSRC = smtpd_token_test.c + DEFS = -I. -I$(INC_DIR) -D$(SYSTYPE) + CFLAGS = $(DEBUG) $(OPT) $(DEFS) +--- src/smtpd/smtpd_sasl_glue.c.orig 2017-02-19 01:58:21 UTC ++++ src/smtpd/smtpd_sasl_glue.c +@@ -147,6 +147,7 @@ + #include "smtpd.h" + #include "smtpd_sasl_glue.h" + #include "smtpd_chat.h" ++#include "pfilter.h" /* for blacklistd(8) */ + + #ifdef USE_SASL_AUTH + +@@ -332,6 +333,10 @@ int smtpd_sasl_authenticate(SMTPD_ST + else + smtpd_chat_reply(state, "535 5.7.8 Error: authentication failed: %s", + STR(state->sasl_reply)); ++ ++ ++ /* notify blacklistd of SASL authentication failure */ ++ pfilter_notify(1, vstream_fileno(state->client)); + return (-1); + } + /* RFC 4954 Section 6. */ +--- src/smtpd/pfilter.h.orig 2018-02-04 15:36:49 UTC ++++ src/smtpd/pfilter.h +@@ -0,0 +1 @@ ++void pfilter_notify(int, int); +--- src/smtpd/pfilter.c.orig 2018-02-04 15:36:49 UTC ++++ src/smtpd/pfilter.c +@@ -0,0 +1,19 @@ ++#include "pfilter.h" ++#include <stdio.h> /* for NULL */ ++#include <blacklist.h> ++ ++static struct blacklist *blstate; ++ ++void ++pfilter_notify(int a, int fd) ++{ ++ if (blstate == NULL) ++ blstate = blacklist_open(); ++ if (blstate == NULL) ++ return; ++ (void)blacklist_r(blstate, a, fd, "smtpd"); ++ if (a == 0) { ++ blacklist_close(blstate); ++ blstate = NULL; ++ } ++} diff --git a/mail/postfix35/files/mailer.conf.postfix.in b/mail/postfix35/files/mailer.conf.postfix.in new file mode 100644 index 000000000000..08f2b2c00f35 --- /dev/null +++ b/mail/postfix35/files/mailer.conf.postfix.in @@ -0,0 +1,7 @@ +# +# Execute the Postfix sendmail program, named %%PREFIX%%/sbin/sendmail +# +sendmail %%PREFIX%%/sbin/sendmail +send-mail %%PREFIX%%/sbin/sendmail +mailq %%PREFIX%%/sbin/sendmail +newaliases %%PREFIX%%/sbin/sendmail diff --git a/mail/postfix35/files/patch-makedefs b/mail/postfix35/files/patch-makedefs new file mode 100644 index 000000000000..f688b8ab7338 --- /dev/null +++ b/mail/postfix35/files/patch-makedefs @@ -0,0 +1,45 @@ +--- makedefs.orig 2021-01-16 15:10:00 UTC ++++ makedefs +@@ -298,6 +298,42 @@ case "$SYSTEM.$RELEASE" in + : ${SHLIB_ENV="LD_LIBRARY_PATH=`pwd`/lib"} + : ${PLUGIN_LD="${CC} -shared"} + ;; ++ FreeBSD.11*) SYSTYPE=FREEBSD11 ++ : ${CC=cc} ++ : ${SHLIB_SUFFIX=.so} ++ : ${SHLIB_CFLAGS=-fPIC} ++ : ${SHLIB_LD="${CC} -shared"' -Wl,-soname,${LIB}'} ++ : ${SHLIB_RPATH='-Wl,-rpath,${SHLIB_DIR}'} ++ : ${SHLIB_ENV="LD_LIBRARY_PATH=`pwd`/lib"} ++ : ${PLUGIN_LD="${CC} -shared"} ++ ;; ++ FreeBSD.12*) SYSTYPE=FREEBSD12 ++ : ${CC=cc} ++ : ${SHLIB_SUFFIX=.so} ++ : ${SHLIB_CFLAGS=-fPIC} ++ : ${SHLIB_LD="${CC} -shared"' -Wl,-soname,${LIB}'} ++ : ${SHLIB_RPATH='-Wl,-rpath,${SHLIB_DIR}'} ++ : ${SHLIB_ENV="LD_LIBRARY_PATH=`pwd`/lib"} ++ : ${PLUGIN_LD="${CC} -shared"} ++ ;; ++ FreeBSD.13*) SYSTYPE=FREEBSD13 ++ : ${CC=cc} ++ : ${SHLIB_SUFFIX=.so} ++ : ${SHLIB_CFLAGS=-fPIC} ++ : ${SHLIB_LD="${CC} -shared"' -Wl,-soname,${LIB}'} ++ : ${SHLIB_RPATH='-Wl,-rpath,${SHLIB_DIR}'} ++ : ${SHLIB_ENV="LD_LIBRARY_PATH=`pwd`/lib"} ++ : ${PLUGIN_LD="${CC} -shared"} ++ ;; ++ FreeBSD.14*) SYSTYPE=FREEBSD14 ++ : ${CC=cc} ++ : ${SHLIB_SUFFIX=.so} ++ : ${SHLIB_CFLAGS=-fPIC} ++ : ${SHLIB_LD="${CC} -shared"' -Wl,-soname,${LIB}'} ++ : ${SHLIB_RPATH='-Wl,-rpath,${SHLIB_DIR}'} ++ : ${SHLIB_ENV="LD_LIBRARY_PATH=`pwd`/lib"} ++ : ${PLUGIN_LD="${CC} -shared"} ++ ;; + DragonFly.*) SYSTYPE=DRAGONFLY + ;; + OpenBSD.2*) SYSTYPE=OPENBSD2 diff --git a/mail/postfix35/files/patch-src_posttls-finger_posttls-finger.c b/mail/postfix35/files/patch-src_posttls-finger_posttls-finger.c new file mode 100644 index 000000000000..fdece6346ca5 --- /dev/null +++ b/mail/postfix35/files/patch-src_posttls-finger_posttls-finger.c @@ -0,0 +1,22 @@ +--- src/posttls-finger/posttls-finger.c.orig 2019-02-12 13:17:45 UTC ++++ src/posttls-finger/posttls-finger.c +@@ -1673,7 +1673,8 @@ static int finger(STATE *state) + return (0); + } + +-#if defined(USE_TLS) && OPENSSL_VERSION_NUMBER < 0x10100000L ++#if defined(USE_TLS) && \ ++ ( OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) ) + + /* ssl_cleanup - free memory allocated in the OpenSSL library */ + +@@ -2156,7 +2157,8 @@ int main(int argc, char *argv[]) + cleanup(&state); + + /* OpenSSL 1.1.0 and later (de)initialization is implicit */ +-#if defined(USE_TLS) && OPENSSL_VERSION_NUMBER < 0x10100000L ++#if defined(USE_TLS) && \ ++ ( OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) ) + ssl_cleanup(); + #endif + diff --git a/mail/postfix35/files/patch-src_tls_tls__certkey.c b/mail/postfix35/files/patch-src_tls_tls__certkey.c new file mode 100644 index 000000000000..b34b8efd2be6 --- /dev/null +++ b/mail/postfix35/files/patch-src_tls_tls__certkey.c @@ -0,0 +1,11 @@ +--- src/tls/tls_certkey.c.orig 2019-03-07 23:57:10 UTC ++++ src/tls/tls_certkey.c +@@ -144,7 +144,7 @@ static void init_pem_load_state(pem_load + + /* use_chain - load cert, key and chain into ctx or ssl */ + +-#if OPENSSL_VERSION_NUMBER >= 0x1010100fUL ++#if OPENSSL_VERSION_NUMBER >= 0x1010100fUL && !defined(LIBRESSL_VERSION_NUMBER) + static int use_chain(pem_load_state_t *st) + { + int ret; diff --git a/mail/postfix35/files/patch-src_tls_tls__server.c b/mail/postfix35/files/patch-src_tls_tls__server.c new file mode 100644 index 000000000000..92115aa16679 --- /dev/null +++ b/mail/postfix35/files/patch-src_tls_tls__server.c @@ -0,0 +1,12 @@ +--- src/tls/tls_server.c.orig 2019-02-18 23:03:54 UTC ++++ src/tls/tls_server.c +@@ -518,7 +518,9 @@ TLS_APPL_STATE *tls_server_init(const TL + * ticket decryption callback already (since 2.11) asks OpenSSL to + * avoid issuing new tickets when the presented ticket is re-usable. + */ ++#ifndef LIBRESSL_VERSION_NUMBER + SSL_CTX_set_num_tickets(server_ctx, 1); ++#endif + } + #endif + if (!ticketable) diff --git a/mail/postfix35/files/patch-src_util_sys__defs.h b/mail/postfix35/files/patch-src_util_sys__defs.h new file mode 100644 index 000000000000..a31dfd4c24d5 --- /dev/null +++ b/mail/postfix35/files/patch-src_util_sys__defs.h @@ -0,0 +1,12 @@ +--- src/util/sys_defs.h.orig 2019-10-13 15:32:18 UTC ++++ src/util/sys_defs.h +@@ -30,7 +30,8 @@ + #if defined(FREEBSD2) || defined(FREEBSD3) || defined(FREEBSD4) \ + || defined(FREEBSD5) || defined(FREEBSD6) || defined(FREEBSD7) \ + || defined(FREEBSD8) || defined(FREEBSD9) || defined(FREEBSD10) \ +- || defined(FREEBSD11) \ ++ || defined(FREEBSD11) || defined(FREEBSD12) || defined(FREEBSD13) \ ++ || defined(FREEBSD14) \ + || defined(BSDI2) || defined(BSDI3) || defined(BSDI4) \ + || defined(OPENBSD2) || defined(OPENBSD3) || defined(OPENBSD4) \ + || defined(OPENBSD5) || defined(OPENBSD6) \ diff --git a/mail/postfix35/files/pkg-install.in b/mail/postfix35/files/pkg-install.in new file mode 100644 index 000000000000..0b7e47cfe011 --- /dev/null +++ b/mail/postfix35/files/pkg-install.in @@ -0,0 +1,189 @@ +#!/bin/sh + +# If the POSTFIX_DEFAULT_MTA environment variable is set to YES, it +# will make the port/package use defaults which make postfix replace +# sendmail as much as possible. + +# allowed vars during package installation +BATCH=${BATCH:=no} +POSTFIX_DEFAULT_MTA=${POSTFIX_DEFAULT_MTA:=no} + +# fixed vars +PREFIX="%%PREFIX%%" +ETCDIR="%%ETCDIR%%" +DAEMONDIR="%%DAEMONDIR%%" +META_DIRECTORY="%%META_DIRECTORY%%" +READMEDIR="%%READMEDIR%%" +MC_TEMPLATE="%%DATADIR%%/mailer.conf.postfix" + +# FreeBSD <= 10.3 +MC_BASE="/etc/mail/mailer.conf" +# FreeBSD >= 10.3 (and current) +MC_LOCALBASE="%%LOCALBASE%%/etc/mail/mailer.conf" +USE_LOCALBASE_MAILER_CONF="%%USE_LOCALBASE_MAILER_CONF%%" + +if [ "${POSTFIX_DEFAULT_MTA}" = "no" ]; then + DEFAULT_REPLACE_MAILERCONF=n +else + DEFAULT_REPLACE_MAILERCONF=y +fi + +ask() { + local question default answer + + question=$1 + default=$2 + if [ -z "${PACKAGE_BUILDING}" -a "${BATCH}" = "no" ]; then + read -p "${question} [${default}]? " answer + fi + if [ -z "${answer}" ]; then + answer=${default} + fi + echo ${answer} +} + +yesno() { + local question default answer + + question=$1 + default=$2 + while :; do + answer=$(ask "${question}" "${default}") + case "${answer}" in + [Yy]*) return 0;; + [Nn]*) return 1;; + esac + echo "Please answer yes or no." + done +} + +# ============================================================================== +# Respect POSTFIX_DEFAULT_MTA, do not ask for confirmation! +# (This helps tools like salt, ansible or puppet on new installations) +# ============================================================================== +install_choise(){ + local mailerconf + mailerconf=$1 + + if [ "${DEFAULT_REPLACE_MAILERCONF}" = "y" ]; then + install_mailer_conf ${mailerconf} + elif [ "${DEFAULT_REPLACE_MAILERCONF}" = "n" -a -t 0 ]; then + if yesno "Would you like to activate Postfix in ${mailerconf}" ${DEFAULT_REPLACE_MAILERCONF:="n"}; then + install_mailer_conf ${mailerconf} + else + show_not_activated_msg ${mailerconf} + fi + else + show_not_activated_msg ${mailerconf} + fi +} + +show_not_activated_msg() { + local mailerconf + + mailerconf=$1 + echo + echo "===============================================================" + echo "Postfix was *not* activated in ${mailerconf}! " + echo + echo "To finish installation run the following commands:" + echo + if [ "${USE_LOCALBASE_MAILER_CONF}" = "yes" ]; then + echo " mkdir -p %%LOCALBASE%%/etc/mail" + else + echo " mv -f ${mailerconf} ${mailerconf}.old" + fi + echo " install -m 0644 ${MC_TEMPLATE} ${mailerconf}" + echo "===============================================================" + echo +} + +show_activated_msg() { + local mailerconf + + mailerconf=$1 + echo "===============================================================" + echo "Postfix already activated in ${mailerconf}" + echo "===============================================================" +} + +cmp_mailer() { + local mailerconf + + mailerconf=$1 + cmp -s ${mailerconf} ${MC_TEMPLATE} + return $? +} + +install_mailer_conf() { + local mailerconf + + mailerconf=$1 + echo "Activate Postfix in ${mailerconf}" + if [ "${USE_LOCALBASE_MAILER_CONF}" = "yes" ]; then + [ -d %%LOCALBASE%%/etc/mail ] || mkdir -p %%LOCALBASE%%/etc/mail + fi + [ -f ${mailerconf} ] && mv -f ${mailerconf} ${mailerconf}.old + install -m 644 ${MC_TEMPLATE} ${mailerconf} +} + +# ============================================================================== +# Run postfix reload +# This is a candidate for a dedicated pkg-post-upgrade script, but it seems +# this not fully implemented in pkg :(see upstream PR 941) +# ============================================================================== +try_reload(){ + ${PREFIX}/sbin/postfix status 2>/dev/null +if [ $? -eq 0 ]; then + ${PREFIX}/sbin/postfix reload +else + echo "postfix not running" +fi +} + +# ============================================================================== +# Run postfix post-install to fix permissions and new config values +# ============================================================================== +if [ "$2" = "POST-INSTALL" ]; then + /bin/sh ${DAEMONDIR}/post-install tempdir=/tmp \ + daemon_directory=${DAEMONDIR} \ + meta_directory=${META_DIRECTORY} \ + html_directory=${READMEDIR} \ + readme_directory=${READMEDIR} \ + upgrade-package +fi + +# ============================================================================== +# If FreeBSD <= 10.2 is deprecated check only LOCALBASE and remove BASE checks, +# regardless if installed in BASE or LOCALBASE +# Iff postfix is activated in BASE, also activate postfix in LOCALBASE! +# ============================================================================== +if [ "$2" = "POST-INSTALL" -a -z "${PACKAGE_BUILDING}" ]; then +if [ -f "${MC_BASE}" ]; then + if [ "${USE_LOCALBASE_MAILER_CONF}" = "yes" ]; then + cmp_mailer ${MC_BASE} + if [ $? -eq 0 ]; then + show_activated_msg ${MC_BASE} + cmp_mailer ${MC_LOCALBASE} || install_mailer_conf ${MC_LOCALBASE} + try_reload + else + cmp_mailer ${MC_LOCALBASE} || install_choise ${MC_LOCALBASE} + fi + else + cmp_mailer ${MC_BASE} + if [ $? -ne 0 ]; then + install_choise ${MC_BASE} + else + show_activated_msg ${MC_BASE} + try_reload + fi + fi + +else + if [ "${USE_LOCALBASE_MAILER_CONF}" = "yes" ]; then + show_not_activated_msg ${MC_LOCALBASE} + else + show_not_activated_msg ${MC_BASE} + fi +fi # -f "${MC_BASE}" +fi # "$2" = "POST-INSTALL" -a -z "${PACKAGE_BUILDING}" diff --git a/mail/postfix35/files/pkg-message.in b/mail/postfix35/files/pkg-message.in new file mode 100644 index 000000000000..44a62a9e6f4e --- /dev/null +++ b/mail/postfix35/files/pkg-message.in @@ -0,0 +1,44 @@ +[ +{ + type: install + message: <<EOM +To use postfix instead of sendmail: + - clear sendmail queue and stop the sendmail daemons + +Run the following commands to enable postfix during startup: + - sysrc postfix_enable="YES" + - sysrc sendmail_enable="NONE" + +If postfix is *not* already activated in %%MC_PREFIX%%/etc/mail/mailer.conf + - mv %%MC_PREFIX%%/etc/mail/mailer.conf %%MC_PREFIX%%/etc/mail/mailer.conf.old + - install -m 0644 %%DATADIR%%/mailer.conf.postfix %%MC_PREFIX%%/etc/mail/mailer.conf + +Disable sendmail(8) specific tasks, +add the following lines to /etc/periodic.conf(.local): + daily_clean_hoststat_enable="NO" + daily_status_mail_rejects_enable="NO" + daily_status_include_submit_mailq="NO" + daily_submit_queuerun="NO" + +If you are using SASL, you need to make sure that postfix has access to read +the sasldb file. This is accomplished by adding postfix to group mail and +making the %%PREFIX%%/etc/sasldb* file(s) readable by group mail (this should +be the default for new installs). +EOM +} +{ + type: upgrade + message: <<EOM +If you are upgrading from prior postfix version, please see the README +files for recommended changes to your configuration and additional +http://www.postfix.org/COMPATIBILITY_README.html +EOM +} +{ + type: remove + message: <<EOM +If you remove postfix permanent, adjust / remove the the following file: + - %%MC_PREFIX%%/etc/mail/mailer.conf +EOM +} +] diff --git a/mail/postfix35/files/postfix.in b/mail/postfix35/files/postfix.in new file mode 100644 index 000000000000..597da191fd16 --- /dev/null +++ b/mail/postfix35/files/postfix.in @@ -0,0 +1,50 @@ +#!/bin/sh + +# PROVIDE: postfix mail +# REQUIRE: %%REQUIRE%% +# KEYWORD: shutdown +# +# Add the following lines to /etc/rc.conf to enable postfix: +# postfix_enable (bool): Set it to "YES" to enable postfix. +# Default is "NO". +# postfix_pidfile (path): Set full path to master.pid. +# Default is "/var/spool/postfix/pid/master.pid". +# postfix_procname (command): Set command that start master. Used to verify if +# postfix is running. +# Default is "%%PREFIX%%/libexec/postfix/master". +# postfix_flags (str): Flags passed to postfix-script on startup. +# Default is "". +# + +. /etc/rc.subr + +name="postfix" +rcvar=postfix_enable + +load_rc_config $name + +: ${postfix_enable:="NO"} +: ${postfix_pidfile:="/var/spool/postfix/pid/master.pid"} +: ${postfix_procname:="%%PREFIX%%/libexec/postfix/master"} + +start_cmd=${name}_start +stop_cmd=${name}_stop +extra_commands="reload" +reload_cmd="${name}_reload" + +pidfile=${postfix_pidfile} +procname=${postfix_procname} + +postfix_start() { + %%PREFIX%%/sbin/postfix ${postfix_flags} start +} + +postfix_stop() { + %%PREFIX%%/sbin/postfix ${postfix_flags} stop +} + +postfix_reload() { + %%PREFIX%%/sbin/postfix ${postfix_flags} reload +} + +run_rc_command "$1" diff --git a/mail/postfix35/pkg-descr b/mail/postfix35/pkg-descr new file mode 100644 index 000000000000..c4bc19eff3ae --- /dev/null +++ b/mail/postfix35/pkg-descr @@ -0,0 +1,15 @@ +Postfix attempts to be fast, easy to administer, and secure, while at the same +time being sendmail compatible enough to not upset existing users. Thus, the +outside has a sendmail-ish flavor, but the inside is completely different. + +Some features: + +Connection cache for SMTP, DSN status notifications, IP version 6, Plug-in +support for multiple SASL implementations (Cyrus, Dovecot), TLS encryption and +authentication, Configurable status notification message text, Access control +per client/sender/recipient/etc, Content filter (built-in, external before +queue, external after queue), Berkeley DB database, LDAP database, MySQL +database, PostgreSQL database, Maildir and mailbox format, Virtual domains, +VERP envelope return addresses and others. + +WWW: http://www.postfix.org/ diff --git a/mail/postfix35/pkg-help b/mail/postfix35/pkg-help new file mode 100644 index 000000000000..f28015a0b496 --- /dev/null +++ b/mail/postfix35/pkg-help @@ -0,0 +1,15 @@ +Readme SASL: + +Dovecot uses its own daemon process for authentication. Because there is no +need to link extra libraries into Postfix, Dovecot SASL will be build into +Postfix by default. + +Cyrus SASL is optional and will be the default if build with SASL=on + +To find out what SASL implementations are compiled into Postfix, use the +following commands: + + % postconf -a (SASL support in the SMTP server) + % postconf -A (SASL support in the SMTP+LMTP client) + % postconf smtpd_sasl_type (show default SASL) + diff --git a/mail/postfix35/pkg-plist b/mail/postfix35/pkg-plist new file mode 100644 index 000000000000..09e304898f33 --- /dev/null +++ b/mail/postfix35/pkg-plist @@ -0,0 +1,190 @@ +bin/mailq +bin/newaliases +%%TEST%%bin/qmqp-sink +%%TEST%%bin/qmqp-source +bin/qshape +bin/rmail +%%TEST%%bin/smtp-sink +%%TEST%%bin/smtp-source +%%PFETC%%/LICENSE +%%PFETC%%/TLS_LICENSE +%%PFETC%%/bounce.cf.default +%%PFETC%%/main.cf.default +@sample %%PFETC%%/main.cf.sample +@sample %%PFETC%%/master.cf.sample +lib/postfix/libpostfix-dns.so +lib/postfix/libpostfix-global.so +lib/postfix/libpostfix-master.so +lib/postfix/libpostfix-tls.so +lib/postfix/libpostfix-util.so +%%CDB%%lib/postfix/postfix-cdb.so +%%LDAP%%lib/postfix/postfix-ldap.so +%%LMDB%%lib/postfix/postfix-lmdb.so +%%MYSQL%%lib/postfix/postfix-mysql.so +%%PCRE%%lib/postfix/postfix-pcre.so +%%PGSQL%%lib/postfix/postfix-pgsql.so +%%SQLITE%%lib/postfix/postfix-sqlite.so +libexec/postfix/anvil +libexec/postfix/bounce +libexec/postfix/cleanup +libexec/postfix/discard +libexec/postfix/dnsblog +libexec/postfix/dynamicmaps.cf +%%CDB%%libexec/postfix/dynamicmaps.cf.d/cdb.cf +%%LDAP%%libexec/postfix/dynamicmaps.cf.d/ldap.cf +%%LMDB%%libexec/postfix/dynamicmaps.cf.d/lmdb.cf +%%MYSQL%%libexec/postfix/dynamicmaps.cf.d/mysql.cf +%%PCRE%%libexec/postfix/dynamicmaps.cf.d/pcre.cf +%%PGSQL%%libexec/postfix/dynamicmaps.cf.d/pgsql.cf +%%SQLITE%%libexec/postfix/dynamicmaps.cf.d/sqlite.cf +libexec/postfix/error +libexec/postfix/flush +libexec/postfix/lmtp +libexec/postfix/local +libexec/postfix/main.cf.proto +libexec/postfix/makedefs.out +libexec/postfix/master +libexec/postfix/master.cf.proto +libexec/postfix/nqmgr +libexec/postfix/oqmgr +libexec/postfix/pickup +libexec/postfix/pipe +libexec/postfix/post-install +libexec/postfix/postfix-files +%%CDB%%libexec/postfix/postfix-files.d/cdb-files +%%LDAP%%libexec/postfix/postfix-files.d/ldap-files +%%LMDB%%libexec/postfix/postfix-files.d/lmdb-files +%%MYSQL%%libexec/postfix/postfix-files.d/mysql-files +%%PCRE%%libexec/postfix/postfix-files.d/pcre-files +%%PGSQL%%libexec/postfix/postfix-files.d/pgsql-files +%%SQLITE%%libexec/postfix/postfix-files.d/sqlite-files +libexec/postfix/postfix-script +libexec/postfix/postfix-tls-script +libexec/postfix/postfix-wrapper +libexec/postfix/postlogd +libexec/postfix/postmulti-script +libexec/postfix/postscreen +libexec/postfix/proxymap +libexec/postfix/qmgr +libexec/postfix/qmqpd +libexec/postfix/scache +libexec/postfix/showq +libexec/postfix/smtp +libexec/postfix/smtpd +libexec/postfix/spawn +libexec/postfix/tlsmgr +libexec/postfix/tlsproxy +libexec/postfix/trivial-rewrite +libexec/postfix/verify +libexec/postfix/virtual +%%BMAN%%man/man1/mailq.1.gz +%%BMAN%%man/man1/newaliases.1.gz +%%BMAN%%man/man1/postalias.1.gz +%%BMAN%%man/man1/postcat.1.gz +%%BMAN%%man/man1/postconf.1.gz +%%BMAN%%man/man1/postdrop.1.gz +%%BMAN%%man/man1/postfix-tls.1.gz +%%BMAN%%man/man1/postfix.1.gz +%%BMAN%%man/man1/postkick.1.gz +%%BMAN%%man/man1/postlock.1.gz +%%BMAN%%man/man1/postlog.1.gz +%%BMAN%%man/man1/postmap.1.gz +%%BMAN%%man/man1/postmulti.1.gz +%%BMAN%%man/man1/postqueue.1.gz +%%BMAN%%man/man1/postsuper.1.gz +%%BMAN%%man/man1/posttls-finger.1.gz +%%TEST%%%%BMAN%%man/man1/qmqp-sink.1.gz +%%TEST%%%%BMAN%%man/man1/qmqp-source.1.gz +%%BMAN%%man/man1/qshape.1.gz +%%BMAN%%man/man1/sendmail.1.gz +%%TEST%%%%BMAN%%man/man1/smtp-sink.1.gz +%%TEST%%%%BMAN%%man/man1/smtp-source.1.gz +%%BMAN%%man/man5/access.5.gz +%%BMAN%%man/man5/aliases.5.gz +%%BMAN%%man/man5/body_checks.5.gz +%%BMAN%%man/man5/bounce.5.gz +%%BMAN%%man/man5/canonical.5.gz +%%BMAN%%man/man5/cidr_table.5.gz +%%BMAN%%man/man5/generic.5.gz +%%BMAN%%man/man5/header_checks.5.gz +%%BMAN%%man/man5/ldap_table.5.gz +%%BMAN%%man/man5/lmdb_table.5.gz +%%BMAN%%man/man5/master.5.gz +%%BMAN%%man/man5/memcache_table.5.gz +%%BMAN%%man/man5/mysql_table.5.gz +%%BMAN%%man/man5/nisplus_table.5.gz +%%BMAN%%man/man5/pcre_table.5.gz +%%BMAN%%man/man5/pgsql_table.5.gz +%%BMAN%%man/man5/postconf.5.gz +%%BMAN%%man/man5/postfix-wrapper.5.gz +%%BMAN%%man/man5/regexp_table.5.gz +%%BMAN%%man/man5/relocated.5.gz +%%BMAN%%man/man5/socketmap_table.5.gz +%%BMAN%%man/man5/sqlite_table.5.gz +%%BMAN%%man/man5/tcp_table.5.gz +%%BMAN%%man/man5/transport.5.gz +%%BMAN%%man/man5/virtual.5.gz +%%BMAN%%man/man8/anvil.8.gz +%%BMAN%%man/man8/bounce.8.gz +%%BMAN%%man/man8/cleanup.8.gz +%%BMAN%%man/man8/defer.8.gz +%%BMAN%%man/man8/discard.8.gz +%%BMAN%%man/man8/dnsblog.8.gz +%%BMAN%%man/man8/error.8.gz +%%BMAN%%man/man8/flush.8.gz +%%BMAN%%man/man8/lmtp.8.gz +%%BMAN%%man/man8/local.8.gz +%%BMAN%%man/man8/master.8.gz +%%BMAN%%man/man8/oqmgr.8.gz +%%BMAN%%man/man8/pickup.8.gz +%%BMAN%%man/man8/pipe.8.gz +%%BMAN%%man/man8/postlogd.8.gz +%%BMAN%%man/man8/postscreen.8.gz +%%BMAN%%man/man8/proxymap.8.gz +%%BMAN%%man/man8/qmgr.8.gz +%%BMAN%%man/man8/qmqpd.8.gz +%%BMAN%%man/man8/scache.8.gz +%%BMAN%%man/man8/showq.8.gz +%%BMAN%%man/man8/smtp.8.gz +%%BMAN%%man/man8/smtpd.8.gz +%%BMAN%%man/man8/spawn.8.gz +%%BMAN%%man/man8/tlsmgr.8.gz +%%BMAN%%man/man8/tlsproxy.8.gz +%%BMAN%%man/man8/trace.8.gz +%%BMAN%%man/man8/trivial-rewrite.8.gz +%%BMAN%%man/man8/verify.8.gz +%%BMAN%%man/man8/virtual.8.gz +sbin/postalias +sbin/postcat +sbin/postconf +@(,maildrop,2755) sbin/postdrop +sbin/postfix +sbin/postkick +sbin/postlock +sbin/postlog +sbin/postmap +sbin/postmulti +@(,maildrop,2755) sbin/postqueue +sbin/postsuper +sbin/posttls-finger +sbin/sendmail +%%DATADIR%%/mailer.conf.postfix +@dir libexec/postfix/dynamicmaps.cf.d +@dir libexec/postfix/postfix-files.d +@dir %%PFETC%% +@dir(postfix,,700) /var/db/postfix +@dir(postfix,,700) /var/spool/postfix/active +@dir(postfix,,700) /var/spool/postfix/bounce +@dir(postfix,,700) /var/spool/postfix/corrupt +@dir(postfix,,700) /var/spool/postfix/defer +@dir(postfix,,700) /var/spool/postfix/deferred +@dir(postfix,,700) /var/spool/postfix/flush +@dir(postfix,,700) /var/spool/postfix/hold +@dir(postfix,,700) /var/spool/postfix/incoming +@dir(postfix,maildrop,730) /var/spool/postfix/maildrop +@dir(,postfix,755) /var/spool/postfix/pid +@dir(postfix,,700) /var/spool/postfix/private +@dir(postfix,maildrop,710) /var/spool/postfix/public +@dir(postfix,,700) /var/spool/postfix/saved +@dir(postfix,,700) /var/spool/postfix/trace +@dir(,,755) /var/spool/postfix |