Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package postfix for openSUSE:Factory checked in at 2026-08-22 21:34:34 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/postfix (Old) and /work/SRC/openSUSE:Factory/.postfix.new.1258 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "postfix" Sat Aug 22 21:34:34 2026 rev:277 rq:1372779 version:3.11.6 Changes: -------- +++ only whitespace diff in changes, re-diffing --- /work/SRC/openSUSE:Factory/postfix/postfix.changes 2026-08-19 17:55:16.158422519 +0200 +++ /work/SRC/openSUSE:Factory/.postfix.new.1258/postfix.changes 2026-08-22 21:35:37.494088064 +0200 @@ -70,0 +71,18 @@ +Mon Aug 10 16:19:52 UTC 2026 - [email protected] + +- Add %bcond_with config + * brings back sysconfig.postfix and config.postfix + * add postfix-config.tar.gz + * add postfix-main.cf.patch + * add postfix-master.cf.patch +- rebase patches + * avoid-inherited-file-descriptor.patch + * fix-postfix-script.patch + * ipv6_disabled.patch + * postfix-linux45.patch + * postfix-no-md5.patch + * postfix-ssl-release-buffers.patch + * postfix-vda-v14-3.0.3.patch + * set-default-db-type.patch + +------------------------------------------------------------------- New: ---- postfix-config.tar.gz postfix-main.cf.patch postfix-master.cf.patch ----------(New B)---------- New:/work/SRC/openSUSE:Factory/.postfix.new.1258/postfix-bdb.changes- * postfix-master.cf.patch /work/SRC/openSUSE:Factory/.postfix.new.1258/postfix-bdb.changes: * postfix-main.cf.patch /work/SRC/openSUSE:Factory/.postfix.new.1258/postfix-bdb.changes- * postfix-bdb-main.cf.patch -- /work/SRC/openSUSE:Factory/.postfix.new.1258/postfix.changes- * add postfix-config.tar.gz /work/SRC/openSUSE:Factory/.postfix.new.1258/postfix.changes: * add postfix-main.cf.patch /work/SRC/openSUSE:Factory/.postfix.new.1258/postfix.changes- * add postfix-master.cf.patch New:/work/SRC/openSUSE:Factory/.postfix.new.1258/postfix-bdb.changes- o Remove patches: /work/SRC/openSUSE:Factory/.postfix.new.1258/postfix-bdb.changes: * postfix-master.cf.patch /work/SRC/openSUSE:Factory/.postfix.new.1258/postfix-bdb.changes- * postfix-main.cf.patch -- /work/SRC/openSUSE:Factory/.postfix.new.1258/postfix.changes- * add postfix-main.cf.patch /work/SRC/openSUSE:Factory/.postfix.new.1258/postfix.changes: * add postfix-master.cf.patch /work/SRC/openSUSE:Factory/.postfix.new.1258/postfix.changes-- rebase patches ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ postfix.spec ++++++ --- /var/tmp/diff_new_pack.FY8tVU/_old 2026-08-22 21:35:38.753132958 +0200 +++ /var/tmp/diff_new_pack.FY8tVU/_new 2026-08-22 21:35:38.756133065 +0200 @@ -16,23 +16,26 @@ # +%define _libexecdir %{_prefix}/lib %define pf_docdir %{_docdir}/%{name}-doc +# %define pf_config_directory %{_sysconfdir}/%{name} -%define pf_daemon_directory %{_prefix}/lib/%{name}/bin/ -%define _libexecdir %{_prefix}/lib -%define pf_shlib_directory %{_prefix}/lib/%{name} -%define pf_meta_directory %{_prefix}/lib/%{name} -%define pf_systemd_directory %{_prefix}/lib/%{name}/systemd -%define pf_command_directory %{_sbindir} %define pf_queue_directory var/spool/%{name} +%define pf_command_directory %{_sbindir} +%define pf_daemon_directory %{_prefix}/lib/%{name}/bin/ +%define pf_data_directory %{_localstatedir}/lib/%{name} %define pf_sendmail_path %{_sbindir}/sendmail %define pf_newaliases_path %{_bindir}/newaliases %define pf_mailq_path %{_bindir}/mailq %define pf_setgid_group maildrop -%define pf_readme_directory %{_docdir}/%{name}-doc/README_FILES %define pf_html_directory %{_docdir}/%{name}-doc/html +# manpage_directory %define pf_sample_directory %{_docdir}/%{name}-doc/samples -%define pf_data_directory %{_localstatedir}/lib/%{name} +%define pf_readme_directory %{_docdir}/%{name}-doc/README_FILES +%define pf_shlib_directory %{_prefix}/lib/%{name} +%define pf_meta_directory %{_prefix}/lib/%{name} +# +%define pf_systemd_directory %{_prefix}/lib/%{name}/systemd %if 0%{?suse_version} >= 1600 %define pf_permissions_dir %{_datadir}/permissions/permissions.d %define pf_permissions_dir_config %nil @@ -42,11 +45,22 @@ %endif %define mail_group mail %define unitdir %{_prefix}/lib/systemd +# postfix-config +%define unitdir_over %{_sysconfdir}/systemd/system/%{name}.service.d +%define conf_backup_dir %{_localstatedir}/adm/backup/%{name} +#Compat macro for new _fillupdir macro introduced in Nov 2017 +%if ! %{defined _fillupdir} + %define _fillupdir %{_localstatedir}/adm/fillup-templates +%endif +# %if 0%{?suse_version} < 1599 %bcond_without libnsl %else %bcond_with libnsl %endif +# postfix-config +%bcond_with config +# %bcond_without ldap Name: postfix Version: 3.11.6 @@ -60,6 +74,9 @@ Source2: %{name}-SUSE.tar.gz Source3: %{name}-mysql.tar.bz2 Source4: postfix.keyring +# postfix-config +Source5: %{name}-config.tar.gz +# Source10: postfix-rpmlintrc Source11: check_mail_queue Source12: postfix-user.conf @@ -68,6 +85,10 @@ Patch1: %{name}-no-md5.patch Patch2: pointer_to_literals.patch Patch3: ipv6_disabled.patch +%if %{with config} +Patch4: %{name}-main.cf.patch +Patch5: %{name}-master.cf.patch +%endif Patch6: %{name}-linux45.patch Patch7: %{name}-ssl-release-buffers.patch Patch8: %{name}-vda-v14-3.0.3.patch @@ -120,6 +141,14 @@ Requires(preun): /usr/bin/ed Requires(post): /usr/bin/ed Requires(postun): /usr/bin/ed +%if %{with config} +Requires(pre): %fillup_prereq +# postfix-config - /usr/sbin/config.postfix needs perl +Requires(pre): perl +Requires(preun): perl +Requires(post): perl +Requires(postun): perl +%endif %description Postfix aims to be an alternative to the widely-used sendmail program. @@ -127,8 +156,8 @@ %package devel Summary: Development headers for the %{name} package Group: Development/Libraries/C and C++ -Requires(pre): %{name} = %{version} BuildArch: noarch +Requires(pre): %{name} = %{version} %description devel Postfix aims to be an alternative to the widely-used sendmail program. @@ -177,13 +206,17 @@ %endif %prep +%if %{with config} +%setup -q -a 2 -a 3 -a 5 +%else %setup -q -a 2 -a 3 +%endif %autopatch -p0 # --------------------------------------------------------------------------- %build -unset AUXLIBS AUXLIBS_LDAP AUXLIBS_PCRE AUXLIBS_MYSQL AUXLIBS_PGSQL AUXLIBS_SQLITE AUXLIBS_CDB +unset AUXLIBS AUXLIBS_LDAP AUXLIBS_PCRE AUXLIBS_MYSQL AUXLIBS_PGSQL AUXLIBS_SQLITE AUXLIBS_CDB AUXLIBS_LMDB export CCARGS="${CCARGS} %{optflags} -fcommon -Wno-comments -Wno-missing-braces -fPIC" @@ -241,24 +274,26 @@ export PIE=-pie # using SHLIB_RPATH to specify unrelated linker flags, because LDFLAGS is # ignored -export default_database_type=lmdb export default_cache_db_type=lmdb +export default_database_type=lmdb %make_build makefiles pie=yes shared=yes dynamicmaps=yes \ - daemon_directory=%{pf_daemon_directory} \ - shlib_directory=%{_prefix}/lib/%{name} \ - meta_directory=%{_prefix}/lib/%{name} \ config_directory=%{pf_config_directory} \ - command_directory=%{pf_command_directory} \ queue_directory=/%{pf_queue_directory} \ + command_directory=%{pf_command_directory} \ + daemon_directory=%{pf_daemon_directory} \ + data_directory=%{pf_data_directory} \ sendmail_path=%{pf_sendmail_path} \ newaliases_path=%{pf_newaliases_path} \ mailq_path=%{pf_mailq_path} \ - manpage_directory=%{_mandir} \ setgid_group=%{pf_setgid_group} \ + html_directory=%{pf_html_directory} \ + manpage_directory=%{_mandir} \ + sample_directory=%{pf_sample_directory} \ readme_directory=%{pf_readme_directory} \ - data_directory=%{pf_data_directory} \ - default_database_type=lmdb \ + shlib_directory=%{_prefix}/lib/%{name} \ + meta_directory=%{_prefix}/lib/%{name} \ default_cache_db_type=lmdb \ + default_database_type=lmdb \ SHLIB_RPATH="-Wl,-rpath,%{pf_shlib_directory} -Wl,-z,relro,-z,now" %make_build # Create postfix user @@ -269,23 +304,32 @@ %install mkdir -p %{buildroot}/%{_libdir} mkdir -p %{buildroot}%{_sysconfdir}/%{name} +%if %{with config} +# create our default postfix ssl DIR (/etc/postfix/ssl) +mkdir -p %{buildroot}%{_sysconfdir}/%{name}/ssl/certs +# link cacerts to /etc/ssl/certs +ln -s ../../ssl/certs %{buildroot}%{_sysconfdir}/%{name}/ssl/cacerts +%endif cp lib/lib%{name}-* %{buildroot}/%{_libdir} export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{buildroot}/%{_libdir} sh postfix-install -non-interactive \ install_root=%{buildroot} \ - shlib_directory=%{_prefix}/lib/%{name} \ - meta_directory=%{_prefix}/lib/%{name} \ config_directory=%{pf_config_directory} \ - daemon_directory=%{pf_daemon_directory} \ - command_directory=%{pf_command_directory} \ queue_directory=/%{pf_queue_directory} \ + command_directory=%{pf_command_directory} \ + daemon_directory=%{pf_daemon_directory} \ + data_directory=%{pf_data_directory} \ sendmail_path=%{pf_sendmail_path} \ newaliases_path=%{pf_newaliases_path} \ mailq_path=%{pf_mailq_path} \ - manpage_directory=%{_mandir} \ setgid_group=%{pf_setgid_group} \ + html_directory=%{pf_html_directory} \ + manpage_directory=%{_mandir} \ + sample_directory==%{pf_sample_directory} \ readme_directory=%{pf_readme_directory} \ - data_directory=%{pf_data_directory} + shlib_directory=%{_prefix}/lib/%{name} \ + meta_directory=%{_prefix}/lib/%{name} + ln -s ../sbin/sendmail %{buildroot}%{_libexecdir}/sendmail for i in qmqp-source smtp-sink smtp-source; do install -pm 0755 bin/$i %{buildroot}%{_sbindir}/$i @@ -294,6 +338,9 @@ mkdir -p %{buildroot}%{pf_permissions_dir} mkdir -p %{buildroot}/%{_libdir}/sasl2 mkdir -p %{buildroot}%{_sbindir} +%if %{with config} +mkdir -p %{buildroot}/%{conf_backup_dir} +%endif mkdir -p %{buildroot}/%{pf_sample_directory} mkdir -p %{buildroot}/%{pf_html_directory} mkdir -p %{buildroot}%{_includedir}/%{name} @@ -307,20 +354,70 @@ mkdir -p %{buildroot}/%{pf_queue_directory} mkdir -p %{buildroot}%{_sysconfdir}/sasl2 install -pm 0600 %{name}-SUSE/smtpd.conf %{buildroot}%{_sysconfdir}/sasl2/smtpd.conf -%{buildroot}%{_sbindir}/postconf -c %{buildroot}%{_sysconfdir}/%{name} \ - -e "manpage_directory = %{_mandir}" \ - "setgid_group = %{pf_setgid_group}" \ - "mailq_path = %{pf_mailq_path}" \ - "newaliases_path = %{pf_newaliases_path}" \ - "sendmail_path = %{pf_sendmail_path}" \ - "readme_directory = %{pf_readme_directory}" \ - "html_directory = %{pf_html_directory}" \ - "sample_directory = %{pf_sample_directory}" \ +%if %{with config} +mkdir -p %{buildroot}%{_fillupdir} +sed -e 's;@lib@;%{_lib};g' %{name}-config/sysconfig.%{name} > %{buildroot}%{_fillupdir}/sysconfig.%{name} +sed -e 's;@lib@;%{_lib};g' \ + -e 's;@config_directory@;%{pf_config_directory};' \ + -e 's;@queue_directory@;/%{pf_queue_directory};' \ + -e 's;@command_directory@;%{pf_command_directory};' \ + -e 's;@daemon_directory@;%{pf_daemon_directory};' \ + -e 's;@data_directory@;%{pf_data_directory};' \ + -e 's;@sendmail_path@;%{pf_sendmail_path};' \ + -e 's;@newaliases_path@;%{pf_newaliases_path};' \ + -e 's;@mailq_path@;%{pf_mailq_path};' \ + -e 's;@setgid_group@;%{pf_setgid_group};' \ + -e 's;@html_directory@;%{pf_html_directory};' \ + -e 's;@manpage_directory@;%{_mandir};' \ + -e 's;@sample_directory@;%{pf_sample_directory};' \ + -e 's;@readme_directory@;%{pf_readme_directory};' \ + -e 's;@shlib_directory@;%{_prefix}/lib/%{name};' \ + -e 's;@meta_directory@;%{_prefix}/lib/%{name};' \ + -e 's;@conf_backup_dir@;%{conf_backup_dir};' \ + %{name}-config/config.%{name} > %{buildroot}%{_sbindir}/config.%{name} +chmod 0755 %{buildroot}%{_sbindir}/config.%{name} +install -pm 0644 %{name}-config/helo_access %{buildroot}%{_sysconfdir}/%{name}/helo_access +install -pm 0644 %{name}-config/ldap_aliases.cf %{buildroot}%{_sysconfdir}/%{name}/ldap_aliases.cf +install -pm 0644 %{name}-config/relay %{buildroot}%{_sysconfdir}/%{name}/relay +install -pm 0644 %{name}-config/relay_ccerts %{buildroot}%{_sysconfdir}/%{name}/relay_ccerts +install -pm 0644 %{name}-config/relay_recipients %{buildroot}%{_sysconfdir}/%{name}/relay_recipients +install -pm 0600 %{name}-config/sasl_passwd %{buildroot}%{_sysconfdir}/%{name}/sasl_passwd +install -pm 0644 %{name}-config/sender_canonical %{buildroot}%{_sysconfdir}/%{name}/sender_canonical +{ +cat<<EOF +# +# ----------------------------------------------------------------------- +# NOTE: Many parameters have already been added to the end of this file +# by config.postfix. So take care that you don't uncomment +# and set a parameter without checking whether it has been added +# to the end of this file. +# ----------------------------------------------------------------------- +# +EOF +cat conf/main.cf +} > %{buildroot}%{_sysconfdir}/%{name}/main.cf +%endif +%{buildroot}%{_sbindir}/postconf -c %{buildroot}%{_sysconfdir}/%{name} -e\ + "queue_directory = /%{pf_queue_directory}" \ + "command_directory = %{pf_command_directory}" \ "daemon_directory = %{pf_daemon_directory}" \ - "smtpd_helo_required = yes" \ - "smtpd_delay_reject = yes" \ - "disable_vrfy_command = yes" \ + "data_directory = %{pf_data_directory}" \ + "sendmail_path = %{pf_sendmail_path}"\ + "newaliases_path = %{pf_newaliases_path}"\ + "mailq_path = %{pf_mailq_path}"\ + "setgid_group = %{pf_setgid_group}"\ + "html_directory = %{pf_html_directory}"\ + "manpage_directory = %{_mandir}"\ + "sample_directory = %{pf_sample_directory}"\ + "readme_directory = %{pf_readme_directory}"\ + "shlib_directory = %{pf_shlib_directory}"\ + "meta_directory = %{pf_meta_directory}"\ + "smtpd_helo_required = yes"\ + "smtpd_delay_reject = yes"\ + "disable_vrfy_command = yes"\ 'smtpd_banner = $myhostname ESMTP' +# +# "config_directory = %{pf_config_directory}" \ #Set Permissions install -pm 0644 %{name}-SUSE/permissions %{buildroot}%{pf_permissions_dir}/%{name} install -pm 0644 %{name}-SUSE/permissions.paranoid %{buildroot}%{pf_permissions_dir}/%{name}.paranoid @@ -355,6 +452,14 @@ mkdir -p %{buildroot}%{pf_systemd_directory} install -pm 0644 %{name}-SUSE/%{name}.service %{buildroot}%{_unitdir}/%{name}.service install -pm 0755 %{name}-SUSE/wait_qmgr.systemd %{buildroot}%{pf_systemd_directory}/wait_qmgr +%if %{with config} +install -D -pm 0644 %{name}-config/%{name}.service %{buildroot}%{unitdir_over}/override.conf +install -pm 0755 %{name}-config/config_%{name}.systemd %{buildroot}%{pf_shlib_directory}/systemd/config_%{name} +install -pm 0755 %{name}-config/update_chroot.systemd %{buildroot}%{pf_shlib_directory}/systemd/update_chroot +install -pm 0755 %{name}-config/update_postmaps.systemd %{buildroot}%{pf_shlib_directory}/systemd/update_postmaps +install -pm 0755 %{name}-config/cond_slp.systemd %{buildroot}%{pf_shlib_directory}/systemd/cond_slp +ln -sv %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name} +%endif %if 0%{?suse_version} < 1599 ln -sv %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name} %endif @@ -400,6 +505,9 @@ %post %tmpfiles_create %{_tmpfilesdir}/postfix.conf +%if %{with config} +%{fillup_only postfix} +%endif %service_add_post %{name}.service %set_permissions %{_sbindir}/postdrop %set_permissions %{_sbindir}/postlog @@ -435,6 +543,17 @@ %exclude %{_mandir}/man5/ldap_table.5* %exclude %{_mandir}/man5/mysql_table.5* %exclude %{_mandir}/man5/pgsql_table.5* +%if %{with config} +%dir %{unitdir_over} +%config(noreplace) %{unitdir_over}/override.conf +%attr(0755,root,root) %{_sbindir}/config.%{name} +%{_sbindir}/rc%{name} +%{_fillupdir}/sysconfig.%{name} +%attr(0755,root,root) %{pf_shlib_directory}/systemd/cond_slp +%attr(0755,root,root) %{pf_shlib_directory}/systemd/config_postfix +%attr(0755,root,root) %{pf_shlib_directory}/systemd/update_chroot +%attr(0755,root,root) %{pf_shlib_directory}/systemd/update_postmaps +%endif %if 0%{?suse_version} >= 1600 %{_pam_vendordir}/smtp %else @@ -442,8 +561,8 @@ %endif %dir %{_sysconfdir}/%{name} %config(noreplace) %{_sysconfdir}/%{name}/* -%ghost %attr(0644,root,root) %{_sysconfdir}/%{name}/*.lmdb %ghost %attr(0644,root,root) %{_sysconfdir}/aliases.lmdb +%ghost %attr(0644,root,root) %{_sysconfdir}/%{name}/*.lmdb %dir %{_sysconfdir}/sasl2 %config(noreplace) %{_sysconfdir}/sasl2/smtpd.conf %pf_permissions_dir_config %{pf_permissions_dir}/%{name} ++++++ avoid-inherited-file-descriptor.patch ++++++ --- /var/tmp/diff_new_pack.FY8tVU/_old 2026-08-22 21:35:38.805134813 +0200 +++ /var/tmp/diff_new_pack.FY8tVU/_new 2026-08-22 21:35:38.809134955 +0200 @@ -1,5 +1,7 @@ ---- src/util/slmdb.c.orig 2026-04-21 17:40:10.113564729 +0200 -+++ src/util/slmdb.c 2026-04-21 17:45:12.880250346 +0200 +Index: src/util/slmdb.c +=================================================================== +--- src/util/slmdb.c.orig ++++ src/util/slmdb.c @@ -929,6 +929,11 @@ int slmdb_open(SLMDB *slmdb, const c slmdb->cb_context = 0; slmdb->txn = txn; ++++++ fix-postfix-script.patch ++++++ --- /var/tmp/diff_new_pack.FY8tVU/_old 2026-08-22 21:35:38.839136025 +0200 +++ /var/tmp/diff_new_pack.FY8tVU/_new 2026-08-22 21:35:38.842136132 +0200 @@ -2,7 +2,7 @@ =================================================================== --- conf/postfix-script.orig +++ conf/postfix-script -@@ -324,10 +324,17 @@ check-warn) +@@ -355,10 +355,17 @@ check-warn) } todo=`echo "$todo" | tr ' ' '\12' | sort -u` ++++++ ipv6_disabled.patch ++++++ --- /var/tmp/diff_new_pack.FY8tVU/_old 2026-08-22 21:35:38.857136667 +0200 +++ /var/tmp/diff_new_pack.FY8tVU/_new 2026-08-22 21:35:38.861136809 +0200 @@ -2,7 +2,7 @@ =================================================================== --- src/util/inet_proto.c.orig +++ src/util/inet_proto.c -@@ -200,7 +200,6 @@ const INET_PROTO_INFO *inet_proto_init(c +@@ -202,7 +202,6 @@ const INET_PROTO_INFO *inet_proto_init(c if ((sock = socket(PF_INET6, SOCK_STREAM, 0)) >= 0) { close(sock); } else if (errno == EAFNOSUPPORT || errno == EPROTONOSUPPORT) { ++++++ postfix-linux45.patch ++++++ --- /var/tmp/diff_new_pack.FY8tVU/_old 2026-08-22 21:35:38.907138450 +0200 +++ /var/tmp/diff_new_pack.FY8tVU/_new 2026-08-22 21:35:38.911138592 +0200 @@ -6,7 +6,7 @@ =================================================================== --- makedefs.orig +++ makedefs -@@ -639,8 +639,8 @@ EOF +@@ -685,8 +685,8 @@ EOF : ${SHLIB_ENV="LD_LIBRARY_PATH=`pwd`/lib"} : ${PLUGIN_LD="${CC-gcc} -shared"} ;; ++++++ postfix-main.cf.patch ++++++ Index: conf/main.cf =================================================================== --- conf/main.cf.orig +++ conf/main.cf @@ -285,7 +285,7 @@ unknown_local_recipient_reject_code = 55 # #mynetworks = 168.100.3.0/28, 127.0.0.0/8 #mynetworks = $config_directory/mynetworks -#mynetworks = hash:/etc/postfix/network_table +#mynetworks = lmdb:/etc/postfix/network_table # The relay_domains parameter restricts what destinations this system will # relay mail to. See the smtpd_relay_restrictions and @@ -352,7 +352,7 @@ unknown_local_recipient_reject_code = 55 # In the left-hand side, specify an @domain.tld wild-card, or specify # a [email protected] address. # -#relay_recipient_maps = hash:/etc/postfix/relay_recipients +#relay_recipient_maps = lmdb:/etc/postfix/relay_recipients # INPUT RATE CONTROL # @@ -407,8 +407,8 @@ unknown_local_recipient_reject_code = 55 # "postfix reload" to eliminate the delay. # #alias_maps = dbm:/etc/aliases -#alias_maps = hash:/etc/aliases -#alias_maps = hash:/etc/aliases, nis:mail.aliases +#alias_maps = lmdb:/etc/aliases +#alias_maps = lmdb:/etc/aliases, nis:mail.aliases #alias_maps = netinfo:/aliases # The alias_database parameter specifies the alias database(s) that @@ -418,8 +418,8 @@ unknown_local_recipient_reject_code = 55 # #alias_database = dbm:/etc/aliases #alias_database = dbm:/etc/mail/aliases -#alias_database = hash:/etc/aliases -#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases +#alias_database = lmdb:/etc/aliases +#alias_database = lmdb:/etc/aliases, lmdb:/opt/majordomo/aliases # ADDRESS EXTENSIONS (e.g., user+foo) # @@ -576,6 +576,7 @@ unknown_local_recipient_reject_code = 55 # #smtpd_banner = $myhostname ESMTP $mail_name #smtpd_banner = $myhostname ESMTP $mail_name ($mail_version) +smtpd_banner = $myhostname ESMTP # PARALLEL DELIVERY TO THE SAME DESTINATION # @@ -689,6 +690,163 @@ shlib_directory = # meta_directory: The location of non-executable files that are shared # between multiple Postfix instances. -meta_directory = /etc/postfix +meta_directory = +############################################################ +# +# before changing values manually consider editing +# /etc/sysconfig/postfix +# and run +# config.postfix +# +# if you miss a feature of config.postfix then just send a +# mail to [email protected] +# patches for new feature(s) are also welcome :) +# +############################################################ + +biff = no +content_filter = +delay_warning_time = 0h +disable_mime_output_conversion = no +disable_vrfy_command = yes +inet_interfaces = all inet_protocols = ipv4 +masquerade_classes = envelope_sender, header_sender, header_recipient +masquerade_domains = +masquerade_exceptions = +#myhostname = +mydestination = $myhostname, localhost.$mydomain, localhost +mynetworks_style = subnet +#mynetworks = +relayhost = + +alias_maps = +canonical_maps = +relocated_maps = +sender_canonical_maps = +transport_maps = +mail_spool_directory = /var/mail +message_strip_characters = +defer_transports = +mailbox_command = +mailbox_transport = +mailbox_size_limit = 0 +message_size_limit = 0 +strict_8bitmime = no +strict_rfc821_envelopes = no +smtp_dns_support_level = enabled +smtpd_delay_reject = yes +smtpd_helo_required = no + +smtpd_client_restrictions = + +smtpd_helo_restrictions = + +smtpd_sender_restrictions = + +smtpd_recipient_restrictions = + + +###################################################################### +# SMTP Smuggling (CVE-2023-51764) +# no: allows SMTP smuggling +# yes / normalize : +# but allow local clients with non-standard SMTP implementations +# such as netcat, fax machines, or load balancer health checks. +# reject: +# rejects a command or message that contains a bare newline +###################################################################### +smtpd_forbid_bare_newline = normalize +smtpd_forbid_bare_newline_exclusions = $mynetworks +#smtpd_forbid_bare_newline_reject_code = 521 + +############################################################ +# SASL stuff +############################################################ +smtp_sasl_auth_enable = no +smtp_sasl_security_options = +smtp_sasl_password_maps = +smtpd_sasl_auth_enable = no +# cyrus : smtpd_sasl_type = cyrus +# smtpd_sasl_path = smtpd +# dovecot : smtpd_sasl_type = dovecot +# smtpd_sasl_path = private/auth +smtpd_sasl_type = cyrus +smtpd_sasl_path = smtpd +############################################################ +# TLS stuff +############################################################ +#tls_append_default_CA = no +relay_clientcerts = +#tls_random_source = dev:/dev/urandom + +#smtp_tls_loglevel = 0 +smtp_tls_security_level = +smtp_tls_CAfile = +smtp_tls_CApath = +smtp_tls_cert_file = +smtp_tls_key_file = +#smtp_tls_policy_maps = lmdb:/etc/postfix/tls_policy +#smtp_tls_session_cache_timeout = 3600s +smtp_tls_session_cache_database = + +#smtpd_tls_loglevel = 0 +smtpd_tls_security_level = +smtpd_tls_CAfile = +smtpd_tls_CApath = +smtpd_tls_cert_file = +smtpd_tls_key_file = +smtpd_tls_ask_ccert = no +smtpd_tls_exclude_ciphers = RC4 +smtpd_tls_received_header = no +############################################################ +# OpenDKIM +############################################################ +#smtpd_milters = unix:/run/opendkim/opendkim.sock +#non_smtpd_milters = $smtpd_milters +#milter_default_action = accept +#milter_protocol = 2 +############################################################ +# Start MySQL from postfixwiki.org +############################################################ +relay_domains = $mydestination, lmdb:/etc/postfix/relay +#relay_recipient_maps = lmdb:/etc/postfix/relay_recipients +#virtual_alias_domains = +#virtual_alias_maps = lmdb:/etc/postfix/virtual +#virtual_uid_maps = static:303 +#virtual_gid_maps = static:303 +#virtual_minimum_uid = 303 +#virtual_mailbox_base = /srv/maildirs +#virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf +#virtual_mailbox_limit = 0 +#virtual_mailbox_limit_inbox = no +#virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf +## For dovecot LMTP replace 'virtual' with 'lmtp:unix:private/lmtp-dovecot' +#virtual_transport = virtual +## Additional for quota support +#virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf +#virtual_mailbox_limit_override = yes +### Needs Maildir++ compatible IMAP servers, like Courier-IMAP +#virtual_maildir_filter = yes +#virtual_maildir_filter_maps = lmdb:/etc/postfix/vfilter +#virtual_maildir_limit_message = Sorry, the user's maildir has overdrawn his diskspace quota, please try again later. +#virtual_maildir_limit_message_maps = lmdb:/etc/postfix/vmsg +#virtual_overquota_bounce = yes +#virtual_trash_count = yes +#virtual_trash_name = ".Trash" +############################################################ +# End MySQL from postfixwiki.org +############################################################ +# Rewrite reject codes +############################################################ +#unknown_address_reject_code = 550 +#unknown_client_reject_code = 550 +#unknown_hostname_reject_code = 550 +#unverified_recipient_reject_code = 550 +#unverified_sender_reject_code = 550 +#soft_bounce = yes +############################################################ +#debug_peer_list = example.com +#debug_peer_level = 3 + ++++++ postfix-master.cf.patch ++++++ Index: conf/master.cf =================================================================== --- conf/master.cf.orig +++ conf/master.cf @@ -10,6 +10,11 @@ # (yes) (yes) (no) (never) (100) # ========================================================================== smtp inet n - n - - smtpd +#amavis unix - - n - 4 smtp +# -o smtp_data_done_timeout=1200 +# -o smtp_send_xforward_command=yes +# -o smtp_dns_support_level=disabled +# -o max_use=20 #smtp inet n - n - 1 postscreen #smtpd pass - - n - - smtpd #dnsblog unix - - n - 0 dnsblog @@ -17,34 +22,36 @@ smtp inet n - n # Choose one: enable submission for loopback clients only, or for any client. #127.0.0.1:submission inet n - n - - smtpd #submission inet n - n - - smtpd -# -o syslog_name=postfix/submission -# -o smtpd_forbid_unauth_pipelining=no -# -o smtpd_tls_security_level=encrypt -# -o smtpd_sasl_auth_enable=yes -# -o smtpd_tls_auth_only=yes -# -o local_header_rewrite_clients=static:all -# -o smtpd_hide_client_session=yes -# -o smtpd_reject_unlisted_recipient=no +# -o syslog_name=postfix/submission +# -o smtpd_forbid_unauth_pipelining=no +# -o smtpd_tls_security_level=encrypt +# -o content_filter=smtp:[127.0.0.1]:10024 +# -o smtpd_sasl_auth_enable=yes +# -o smtpd_tls_auth_only=yes +# -o local_header_rewrite_clients=static:all +# -o smtpd_hide_client_session=yes +# -o smtpd_reject_unlisted_recipient=no # Instead of specifying complex smtpd_<xxx>_restrictions here, # specify "smtpd_<xxx>_restrictions=$mua_<xxx>_restrictions" # here, and specify mua_<xxx>_restrictions in main.cf (where # "<xxx>" is "client", "helo", "sender", "relay", or "recipient"). -# -o smtpd_client_restrictions= -# -o smtpd_helo_restrictions= -# -o smtpd_sender_restrictions= -# -o smtpd_relay_restrictions= -# -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject -# -o milter_macro_daemon_name=ORIGINATING +# -o smtpd_client_restrictions=$mua_client_restrictions +# -o smtpd_helo_restrictions=$mua_helo_restrictions +# -o smtpd_sender_restrictions=$mua_sender_restrictions +# -o smtpd_recipient_restrictions= +# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject +# -o milter_macro_daemon_name=ORIGINATING # Choose one: enable submissions for loopback clients only, or for any client. #127.0.0.1:submissions inet n - n - - smtpd #submissions inet n - n - - smtpd -# -o syslog_name=postfix/submissions -# -o smtpd_forbid_unauth_pipelining=no -# -o smtpd_tls_wrappermode=yes -# -o smtpd_sasl_auth_enable=yes -# -o local_header_rewrite_clients=static:all -# -o smtpd_hide_client_session=yes -# -o smtpd_reject_unlisted_recipient=no +# -o syslog_name=postfix/submissions +# -o smtpd_forbid_unauth_pipelining=no +# -o smtpd_tls_wrappermode=yes +# -o content_filter=smtp:[127.0.0.1]:10024 +# -o smtpd_sasl_auth_enable=yes +# -o local_header_rewrite_clients=static:all +# -o smtpd_hide_client_session=yes +# -o smtpd_reject_unlisted_recipient=no # Instead of specifying complex smtpd_<xxx>_restrictions here, # specify "smtpd_<xxx>_restrictions=$mua_<xxx>_restrictions" # here, and specify mua_<xxx>_restrictions in main.cf (where @@ -83,6 +90,26 @@ lmtp unix - - n anvil unix - - n - 1 anvil scache unix - - n - 1 scache postlog unix-dgram n - n - 1 postlogd +#localhost:10025 inet n - n - - smtpd +# -o content_filter= +# -o smtpd_delay_reject=no +# -o smtpd_client_restrictions=permit_mynetworks,reject +# -o smtpd_helo_restrictions= +# -o smtpd_sender_restrictions= +# -o smtpd_recipient_restrictions=permit_mynetworks,reject +# -o smtpd_data_restrictions=reject_unauth_pipelining +# -o smtpd_end_of_data_restrictions= +# -o smtpd_restriction_classes= +# -o mynetworks=127.0.0.0/8 +# -o smtpd_error_sleep_time=0 +# -o smtpd_soft_error_limit=1001 +# -o smtpd_hard_error_limit=1000 +# -o smtpd_client_connection_count_limit=0 +# -o smtpd_client_connection_rate_limit=0 +# -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks,no_address_mappings +# -o local_header_rewrite_clients= +# -o local_recipient_maps= +# -o relay_recipient_maps= # # ==================================================================== # Interfaces to non-Postfix software. Be sure to examine the manual @@ -116,7 +143,7 @@ postlog unix-dgram n - n # Also specify in main.cf: cyrus_destination_recipient_limit=1 # #cyrus unix - n n - - pipe -# flags=DRX user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user} +# flags=DRX user=cyrus argv=/usr/lib/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user} # # ==================================================================== # @@ -149,3 +176,10 @@ postlog unix-dgram n - n #mailman unix - n n - - pipe # flags=FRX user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py # ${nexthop} ${user} +# +#procmail unix - n n - - pipe +# flags=R user=nobody argv=/usr/bin/procmail -t -m /etc/procmailrc ${sender} ${recipient} +# +#dovecot unix - n n - - pipe +# flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -d ${recipient} +# ++++++ postfix-no-md5.patch ++++++ --- /var/tmp/diff_new_pack.FY8tVU/_old 2026-08-22 21:35:38.952140054 +0200 +++ /var/tmp/diff_new_pack.FY8tVU/_new 2026-08-22 21:35:38.954140126 +0200 @@ -2,7 +2,7 @@ =================================================================== --- src/global/mail_params.h.orig +++ src/global/mail_params.h -@@ -1391,7 +1391,7 @@ extern char *var_smtpd_tls_mand_excl; +@@ -1422,7 +1422,7 @@ extern char *var_smtpd_tls_mand_excl; #define VAR_SMTPD_TLS_FPT_DGST "smtpd_tls_fingerprint_digest" #define DEF_SMTPD_TLS_FPT_DGST "${{$compatibility_level} <level {3.6} ? " \ @@ -11,7 +11,7 @@ extern char *var_smtpd_tls_fpt_dgst; #define VAR_SMTPD_TLS_512_FILE "smtpd_tls_dh512_param_file" -@@ -1553,10 +1553,10 @@ extern char *var_smtp_tls_mand_excl; +@@ -1590,10 +1590,10 @@ extern char *var_smtp_tls_mand_excl; #define VAR_SMTP_TLS_FPT_DGST "smtp_tls_fingerprint_digest" #define DEF_SMTP_TLS_FPT_DGST "${{$compatibility_level} <level {3.6} ? " \ ++++++ postfix-ssl-release-buffers.patch ++++++ --- /var/tmp/diff_new_pack.FY8tVU/_old 2026-08-22 21:35:38.983141160 +0200 +++ /var/tmp/diff_new_pack.FY8tVU/_new 2026-08-22 21:35:38.986141267 +0200 @@ -2,7 +2,7 @@ =================================================================== --- src/tls/tls_client.c.orig +++ src/tls/tls_client.c -@@ -751,6 +751,11 @@ TLS_APPL_STATE *tls_client_init(const TL +@@ -766,6 +766,11 @@ TLS_APPL_STATE *tls_client_init(const TL SSL_CTX_set_security_level(client_ctx, 0); #endif ++++++ postfix-vda-v14-3.0.3.patch ++++++ --- /var/tmp/diff_new_pack.FY8tVU/_old 2026-08-22 21:35:39.016142337 +0200 +++ /var/tmp/diff_new_pack.FY8tVU/_new 2026-08-22 21:35:39.020142479 +0200 @@ -19,7 +19,7 @@ =================================================================== --- src/global/mail_params.h.orig +++ src/global/mail_params.h -@@ -2677,6 +2677,54 @@ extern char *var_virt_uid_maps; +@@ -2742,6 +2742,54 @@ extern char *var_virt_uid_maps; #define DEF_VIRT_GID_MAPS "" extern char *var_virt_gid_maps; ++++++ set-default-db-type.patch ++++++ --- /var/tmp/diff_new_pack.FY8tVU/_old 2026-08-22 21:35:39.073144369 +0200 +++ /var/tmp/diff_new_pack.FY8tVU/_new 2026-08-22 21:35:39.079144583 +0200 @@ -2,7 +2,7 @@ =================================================================== --- src/util/sys_defs.h.orig +++ src/util/sys_defs.h -@@ -53,7 +53,7 @@ +@@ -54,7 +54,7 @@ #define HAS_FSYNC #define HAS_DB #define HAS_SA_LEN @@ -11,7 +11,7 @@ #if (defined(__NetBSD_Version__) && __NetBSD_Version__ >= 104250000) #define ALIAS_DB_MAP "$default_database_type:/etc/mail/aliases" /* sendmail 8.10 */ #endif -@@ -234,7 +234,7 @@ +@@ -235,7 +235,7 @@ #define HAS_FSYNC #define HAS_DB #define HAS_SA_LEN @@ -20,7 +20,7 @@ #define ALIAS_DB_MAP "$default_database_type:/etc/aliases" #define GETTIMEOFDAY(t) gettimeofday(t,(struct timezone *) 0) #define ROOT_PATH "/bin:/usr/bin:/sbin:/usr/sbin" -@@ -291,7 +291,7 @@ +@@ -292,7 +292,7 @@ #define HAS_FSYNC /* might be set by makedef */ #ifdef HAS_DB @@ -29,7 +29,7 @@ #define ALIAS_DB_MAP "$default_database_type:/etc/aliases" #else #define HAS_DBM -@@ -775,7 +775,7 @@ extern int initgroups(const char *, int) +@@ -776,7 +776,7 @@ extern int initgroups(const char *, int) #define DEF_MAILBOX_LOCK "fcntl, dotlock" /* RedHat >= 4.x */ #define HAS_FSYNC #define HAS_DB @@ -38,7 +38,7 @@ #define ALIAS_DB_MAP "$default_database_type:/etc/aliases" #ifndef NO_NIS #define HAS_NIS -@@ -851,7 +851,7 @@ extern int initgroups(const char *, int) +@@ -850,7 +850,7 @@ extern int initgroups(const char *, int) #define DEF_MAILBOX_LOCK "dotlock" /* verified RedHat 3.03 */ #define HAS_FSYNC #define HAS_DB @@ -47,7 +47,7 @@ #define ALIAS_DB_MAP "$default_database_type:/etc/aliases" #ifndef NO_NIS #define HAS_NIS -@@ -884,7 +884,7 @@ extern int initgroups(const char *, int) +@@ -883,7 +883,7 @@ extern int initgroups(const char *, int) #define DEF_MAILBOX_LOCK "fcntl, dotlock" /* RedHat >= 4.x */ #define HAS_FSYNC #define HAS_DB @@ -56,7 +56,7 @@ #define ALIAS_DB_MAP "$default_database_type:/etc/aliases" #ifndef NO_NIS #define HAS_NIS -@@ -1209,7 +1209,7 @@ extern int opterr; /* XXX use <getopt. +@@ -1208,7 +1208,7 @@ extern int opterr; /* XXX use <getopt. #define INTERNAL_LOCK MYFLOCK_STYLE_FCNTL #define DEF_MAILBOX_LOCK "fcntl, dotlock" #define HAS_FSYNC @@ -78,7 +78,7 @@ earlier versions, the lookup key is folded even with tables where a lookup field can match both upper and lower case text, such as regexp: and pcre:. This resulted in loss of -@@ -215,9 +215,9 @@ the "\fBpostconf \-m\fR" command. +@@ -225,9 +225,9 @@ The default value for this parameter dep The \fBpostmap\fR(1) command can query any supported file type, but it can create only the following file types: .RS @@ -91,7 +91,7 @@ .IP \fBcdb\fR The output consists of one file, named \fIfile_name\fB.cdb\fR. This is available on systems with support for \fBcdb\fR databases. -@@ -229,9 +229,6 @@ This is available on systems with suppor +@@ -239,9 +239,6 @@ This is available on systems with suppor A table that reliably fails all requests. The lookup table name is used for logging only. This table exists to simplify Postfix error tests. @@ -101,7 +101,7 @@ .IP \fBlmdb\fR The output is a btree\-based file, named \fIfile_name\fB.lmdb\fR. \fBlmdb\fR supports concurrent writes and reads from different -@@ -277,12 +274,6 @@ The following \fBmain.cf\fR parameters a +@@ -283,12 +280,6 @@ The following \fBmain.cf\fR parameters a this program. The text below provides only a parameter summary. See \fBpostconf\fR(5) for more details including examples. @@ -127,7 +127,7 @@ earlier versions, the lookup key is folded even with tables where a lookup field can match both upper and lower case text, such as regexp: and pcre:. This resulted in loss of -@@ -122,9 +122,9 @@ the "\fBpostconf \-m\fR" command. +@@ -132,9 +132,9 @@ The default value for this parameter dep The \fBpostalias\fR(1) command can query any supported file type, but it can create only the following file types: .RS @@ -140,7 +140,7 @@ .IP \fBcdb\fR The output is one file named \fIfile_name\fB.cdb\fR. This is available on systems with support for \fBcdb\fR databases. -@@ -136,9 +136,6 @@ This is available on systems with suppor +@@ -146,9 +146,6 @@ This is available on systems with suppor A table that reliably fails all requests. The lookup table name is used for logging only. This table exists to simplify Postfix error tests. @@ -150,7 +150,7 @@ .IP \fBlmdb\fR The output is a btree\-based file, named \fIfile_name\fB.lmdb\fR. \fBlmdb\fR supports concurrent writes and reads from different -@@ -192,12 +189,6 @@ The alias databases for \fBlocal\fR(8) d +@@ -197,12 +194,6 @@ The alias databases for \fBlocal\fR(8) d .IP "\fBconfig_directory (see 'postconf -d' output)\fR" The default location of the Postfix main.cf and master.cf configuration files.
