# # spec file for package postfix # # Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?is_opensuse} ) %bcond_without lmdb %bcond_without libnsl %else %bcond_with lmdb %bcond_with libnsl %endif # # Some defines # %define pf_docdir %{_docdir}/%{name}-doc %define pf_config_directory %{_sysconfdir}/%{name} %define pf_daemon_directory /usr/lib/%{name}/bin/ %define _libexecdir /usr/lib %define pf_shlib_directory /usr/lib/%{name} %define pf_command_directory %{_prefix}/sbin %define pf_queue_directory var/spool/%{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 %define pf_sample_directory %{_docdir}/%{name}-doc/samples %define pf_data_directory %{_localstatedir}/lib/%{name} %define pf_uid 51 %define pf_gid 51 %define maildrop_gid 59 %define mail_group mail %define conf_backup_dir %{_localstatedir}/adm/backup/%{name} %define omc_pdir %{_datadir}/omc/ %define omc_dir %{_datadir}/omc/svcinfo.d/ # %define vmusr vmail %define vmgid 303 %define vmid 303 %define vmdir /srv/maildirs # # --------------------------------------------------------------------------- %if 0%{?suse_version} > 1220 %define _unitdir %{_libexecdir}/systemd %else %define _unitdir /lib/systemd %endif Name: postfix Version: 3.2.3 Release: 0 Summary: A fast, secure, and flexible mailer License: IPL-1.0 Group: Productivity/Networking/Email/Servers Url: http://www.postfix.org/ #Source: http://www.artfiles.org/postfix.org/postfix-release/official/postfix-%{version}.tar.gz Source: postfix-%{version}.tar.gz Source2: %{name}-SuSE.tar.gz Source3: %{name}-mysql.tar.bz2 Source10: %{name}-rpmlintrc Source11: check_mail_queue Patch1: %{name}-no-md5.patch Patch2: pointer_to_literals.patch Patch3: ipv6_disabled.patch Patch4: %{name}-main.cf.patch Patch5: %{name}-master.cf.patch Patch6: %{name}-linux45.patch Patch7: %{name}-ssl-release-buffers.patch Patch8: %{name}-vda-v14-3.0.3.patch Patch9: fix-postfix-script.patch BuildRequires: ca-certificates BuildRequires: cyrus-sasl-devel BuildRequires: db-devel BuildRequires: diffutils BuildRequires: libopenssl-devel %if %{with lmdb} BuildRequires: lmdb-devel %endif BuildRequires: libicu-devel %if %{with libnsl} BuildRequires: libnsl-devel %endif BuildRequires: mysql-devel BuildRequires: openldap2-devel BuildRequires: pcre-devel BuildRequires: pkgconfig BuildRequires: postgresql-devel BuildRequires: shadow Requires: iproute2 Requires(pre): permissions Requires(pre): %fillup_prereq Requires(pre): shadow Provides: smtp_daemon BuildRoot: %{_tmppath}/%{name}-%{version}-build Conflicts: sendmail exim %if 0%{?suse_version} > 1130 Requires(pre): sysvinit(network) Requires(pre): sysvinit(syslog) %endif %if 0%{?suse_version} >= 1100 BuildRequires: fdupes %endif %if 0%{?suse_version} >= 1330 Requires(pre): group(%{mail_group}) %endif %if 0%{?suse_version} > 1210 BuildRequires: systemd %{?systemd_requires} %else Requires(pre): %insserv_prereq Requires(pre): %{_bindir}/getent Requires(pre): pwdutils Requires(pre): /bin/awk Requires(pre): /bin/grep Requires(pre): /bin/sed Requires(pre): fileutils Requires(pre): netcfg Requires(pre): pcre Requires(pre): sh-utils Requires(pre): textutils %endif %description Postfix aims to be an alternative to the widely-used sendmail program. %package devel Summary: Development headers for the postfix package Group: Development/Libraries/C and C++ Requires(pre): %{name} = %{version} %description devel Postfix aims to be an alternative to the widely-used sendmail program. %package doc Summary: Documentations for the postfix package Group: Productivity/Networking/Email/Servers %if 0%{?suse_version} >= 1120 BuildArch: noarch %endif %description doc Postfix aims to be an alternative to the widely-used sendmail program. This package contains the documentation for %{name} %package mysql Summary: Postfix plugin to support MySQL maps Group: Productivity/Networking/Email/Servers Requires(pre): %{name} = %{version} Requires(pre): shadow %description mysql Postfix plugin to support MySQL maps. This library will be loaded by starting %{name} if you'll access a postmap which is stored in mysql. %package postgresql Summary: Postfix plugin to support PostgreSQL maps Group: Productivity/Networking/Email/Servers Requires(pre): %{name} = %{version} %description postgresql Postfix plugin to support PostgreSQL maps. This library will be loaded by starting %{name} if you'll access a postmap which is stored in PostgreSQL. %if %{with lmdb} %package lmdb Summary: Postfix plugin to support LMDB maps Group: Productivity/Networking/Email/Servers Requires(pre): %{name} = %{version} %description lmdb Postfix plugin to support LMDB maps. This library will be loaded by starting %{name} if you'll access a postmap which is stored in PostgreSQL. %endif %prep %setup -q -a 2 -a 3 %patch1 %patch2 %patch3 %patch4 %patch5 %patch6 %patch7 %patch8 %patch9 # --------------------------------------------------------------------------- %build unset AUXLIBS AUXLIBS_LDAP AUXLIBS_PCRE AUXLIBS_MYSQL AUXLIBS_PGSQL AUXLIBS_SQLITE AUXLIBS_CDB export CCARGS="${CCARGS} %{optflags} -Wno-comments -Wno-missing-braces -fPIC" %ifarch s390 s390x ppc export CCARGS="${CCARGS} -fsigned-char" %endif # if pkg-config openssl ; then export CCARGS="${CCARGS} -DUSE_TLS $(pkg-config --cflags openssl)" export AUXLIBS="$AUXLIBS $(pkg-config --libs openssl)" else export CCARGS="${CCARGS} -DUSE_TLS" export AUXLIBS="${AUXLIBS} -lssl -lcrypto" fi # export CCARGS="${CCARGS} -DHAS_LDAP -DLDAP_DEPRECATED=1 -DUSE_LDAP_SASL" export AUXLIBS_LDAP="-lldap -llber" # export CCARGS="${CCARGS} -DHAS_PCRE" export AUXLIBS_PCRE="-lpcre" # export CCARGS="${CCARGS} -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I%{_includedir}/sasl" if pkg-config libsasl2 ; then export AUXLIBS="$AUXLIBS $(pkg-config --libs libsasl2)" else export AUXLIBS="$AUXLIBS -lsasl2" fi # export CCARGS="${CCARGS} -DHAS_MYSQL $(mysql_config --cflags)" export AUXLIBS_MYSQL="$(mysql_config --libs)" # export CCARGS="${CCARGS} -DHAS_PGSQL -I$(pg_config --includedir)" export AUXLIBS_PGSQL="-lpq" # %if %{with lmdb} export CCARGS="${CCARGS} -DHAS_LMDB -I/usr/local/include" \ export AUXLIBS_LMDB="-llmdb" %endif # # TODO #export AUXLIBS_SQLITE #export AUXLIBS_CDB #export AUXLIBS_SDBM export PIE=-pie make makefiles pie=yes shared=yes dynamicmaps=yes \ shlib_directory=/usr/lib/postfix \ meta_directory=/usr/lib/postfix \ config_directory=/etc/postfix make # --------------------------------------------------------------------------- %install groupadd -g %{pf_gid} -o -r %{name} 2> /dev/null || : groupadd -g %{maildrop_gid} -o -r maildrop 2> /dev/null || : useradd -r -o -g %{name} -u %{pf_uid} -s /bin/false -c "Postfix Daemon" -d /%{pf_queue_directory} %{name} 2> /dev/null || : usermod -G %{maildrop_gid},%{mail_group} %{name} 2> /dev/null || : mkdir -p %{buildroot}/%{_libdir} mkdir -p %{buildroot}/etc/postfix cp conf/* %{buildroot}/etc/postfix/ # create our default postfix ssl DIR (/etc/postfix/ssl) mkdir -p %{buildroot}/etc/postfix/ssl/certs # link cacerts to /etc/ssl/certs ln -sf ../../ssl/certs %{buildroot}/etc/postfix/ssl/cacerts cp lib/libpostfix-* %{buildroot}/%{_libdir} export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{buildroot}/%{_libdir} sh postfix-install -non-interactive \ install_root=%{buildroot} \ config_directory=%{pf_config_directory} \ daemon_directory=%{pf_daemon_directory} \ command_directory=%{pf_command_directory} \ queue_directory=/%{pf_queue_directory} \ sendmail_path=%{pf_sendmail_path} \ newaliases_path=%{pf_newaliases_path} \ mailq_path=%{pf_mailq_path} \ manpage_directory=%{_mandir} \ setgid_group=%{pf_setgid_group} \ readme_directory=%{pf_readme_directory} \ data_directory=%{pf_data_directory} ln -sf ../sbin/sendmail %{buildroot}%{_libexecdir}/sendmail for i in qmqp-source smtp-sink smtp-source; do install -m 755 bin/$i %{buildroot}%{_sbindir}/$i done %if 0%{?suse_version} < 1210 mkdir -p %{buildroot}%{_sysconfdir}/init.d %endif mkdir -p %{buildroot}/sbin/conf.d mkdir -p %{buildroot}%{_sysconfdir}/permissions.d mkdir -p %{buildroot}/%{_libdir}/sasl2 mkdir -p %{buildroot}%{_prefix}/sbin mkdir -p %{buildroot}/%{conf_backup_dir} mkdir -p %{buildroot}/%{pf_sample_directory} mkdir -p %{buildroot}/%{pf_html_directory} mkdir -p %{buildroot}%{_includedir}/%{name} mkdir -p %{buildroot}%{_sysconfdir}/pam.d install -m 644 %{name}-SuSE/smtp %{buildroot}%{_sysconfdir}/pam.d/smtp #mkdir samples mkdir -p %{buildroot}%{_localstatedir}/adm/fillup-templates rm -f %{buildroot}%{_localstatedir}/adm/fillup-templates/sysconfig.%{name} sed -e 's;@lib@;%{_lib};g' %{name}-SuSE/sysconfig.%{name} > %{buildroot}%{_localstatedir}/adm/fillup-templates/sysconfig.%{name} install -m 644 %{name}-SuSE/sysconfig.mail-%{name} %{buildroot}%{_localstatedir}/adm/fillup-templates/sysconfig.mail-%{name} sed -e 's;@lib@;%{_lib};g' \ -e 's;@conf_backup_dir@;%{conf_backup_dir};' \ -e 's;@daemon_directory@;%{pf_daemon_directory};' \ -e 's;@readme_directory@;%{pf_readme_directory};' \ -e 's;@html_directory@;%{pf_html_directory};' \ -e 's;@sendmail_path@;%{pf_sendmail_path};' \ -e 's;@setgid_group@;%{pf_setgid_group};' \ -e 's;@manpage_directory@;%{_mandir};' \ -e 's;@newaliases_path@;%{pf_newaliases_path};' \ -e 's;@sample_directory@;%{pf_sample_directory};' \ -e 's;@mailq_path@;%{pf_mailq_path};' %{name}-SuSE/config.%{name} > %{buildroot}%{_sbindir}/config.%{name} chmod 755 %{buildroot}%{_sbindir}/config.%{name} install -m 644 %{name}-SuSE/dynamicmaps.cf %{buildroot}%{_sysconfdir}/%{name}/dynamicmaps.cf install -m 644 %{name}-SuSE/ldap_aliases.cf %{buildroot}%{_sysconfdir}/%{name}/ldap_aliases.cf install -m 644 %{name}-SuSE/helo_access %{buildroot}%{_sysconfdir}/postfix/helo_access install -m 644 %{name}-SuSE/permissions %{buildroot}%{_sysconfdir}/permissions.d/%{name} install -m 644 %{name}-SuSE/sender_canonical %{buildroot}%{_sysconfdir}/%{name}/sender_canonical install -m 644 %{name}-SuSE/relay %{buildroot}%{_sysconfdir}/postfix/relay install -m 644 %{name}-SuSE/relay_ccerts %{buildroot}%{_sysconfdir}/%{name}/relay_ccerts install -m 600 %{name}-SuSE/sasl_passwd %{buildroot}%{_sysconfdir}/%{name}/sasl_passwd mkdir -p %{buildroot}%{_sysconfdir}/sasl2 install -m 600 %{name}-SuSE/smtpd.conf %{buildroot}%{_sysconfdir}/sasl2/smtpd.conf install -m 644 %{name}-SuSE/openssl_%{name}.conf.in %{buildroot}%{_sysconfdir}/%{name}/openssl_%{name}.conf.in install -m 755 %{name}-SuSE/mk%{name}cert %{buildroot}%{_sbindir}/mk%{name}cert mkdir -p %{buildroot}/%{omc_dir} install -m 644 %{name}-SuSE/%{name}.xml %{buildroot}/%{omc_dir} mkdir -p %{buildroot}%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/ install -m 644 %{name}-SuSE/%{name}-fw %{buildroot}%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/smtp { cat< %{buildroot}%{_sysconfdir}/%{name}/main.cf %{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}" \ "daemon_directory = %{pf_daemon_directory}" \ "smtpd_helo_required = yes" \ "smtpd_delay_reject = yes" \ "disable_vrfy_command = yes" \ 'smtpd_banner = $myhostname ESMTP' #Set Permissions install -m 644 %{name}-SuSE/%{name}-files %{buildroot}%{pf_shlib_directory}/postfix-files # postfix-mysql install -m 644 %{name}-mysql/main.cf-mysql %{buildroot}%{_sysconfdir}/%{name}/main.cf-mysql install -m 640 %{name}-mysql/*_maps.cf %{buildroot}%{_sysconfdir}/%{name}/ # create paranoid permissions file printf '%%-38s %%-18s %%s\n' %{_sbindir}/postdrop "root.%{pf_setgid_group}" "0755" >> %{buildroot}%{_sysconfdir}/permissions.d/%{name}.paranoid printf '%%-38s %%-18s %%s\n' %{_sbindir}/postqueue "root.%{pf_setgid_group}" "0755" >> %{buildroot}%{_sysconfdir}/permissions.d/%{name}.paranoid install -m 644 include/*.h %{buildroot}%{_includedir}/%{name}/ # some rpmlint stuff # remove unneeded examples/chroot-setup for example in AIX42 BSDI* F* HPUX* IRIX* NETBSD1 NEXTSTEP3 OPENSTEP4 OSF1 Solaris*; do rm examples/chroot-setup/${example} done cp -a examples/* %{buildroot}%{pf_sample_directory} cp -a html/* %{buildroot}%{pf_html_directory} cp -a auxiliary/ %{buildroot}%{pf_docdir}/ %if 0%{?suse_version} >= 1210 mkdir -p %{buildroot}%{_unitdir}/system mkdir -p %{buildroot}%{_sysconfdir}/postfix/system install -m 0644 %{name}-SuSE/postfix.service %{buildroot}%{_unitdir}/system/postfix.service install -m 0755 %{name}-SuSE/config_postfix.systemd %{buildroot}%{_sysconfdir}/postfix/system/config_postfix install -m 0755 %{name}-SuSE/update_chroot.systemd %{buildroot}%{_sysconfdir}/postfix/system/update_chroot install -m 0755 %{name}-SuSE/update_postmaps.systemd %{buildroot}%{_sysconfdir}/postfix/system/update_postmaps install -m 0755 %{name}-SuSE/wait_qmgr.systemd %{buildroot}%{_sysconfdir}/postfix/system/wait_qmgr install -m 0755 %{name}-SuSE/cond_slp.systemd %{buildroot}%{_sysconfdir}/postfix/system/cond_slp ln -sv %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name} %else install -m 755 %{name}-SuSE/rc.%{name} %{buildroot}%{_initddir}/%{name} ln -s -f %{_initddir}/%{name} %{buildroot}%{_sbindir}/rc%{name} %endif %if 0%{?suse_version} >= 1100 %fdupes %{buildroot}%{pf_docdir} %fdupes %{buildroot}%{_mandir} %endif for path in %{buildroot}%{pf_shlib_directory}/libpostfix-*.so do test -e "$path" || continue name=${path##*/} cmp "$path" %{buildroot}%{_libdir}/$name || continue rm -vf $path ln -sf %{_libdir}/$name $path done # --------------------------------------------------------------------------- install -m 755 %{SOURCE11} %{buildroot}%{_sbindir}/ %pre %if 0%{?suse_version} > 1210 %service_add_pre %{name}.service %endif VERSIONTEST=$(test -x usr/sbin/postconf && usr/sbin/postconf proxy_read_maps 2>/dev/null || :) if [ -z "$VERSIONTEST" -a -f %{pf_queue_directory}/pid/master.pid ]; then if checkproc -p %{pf_queue_directory}/pid/master.pid usr/lib/%{name}/master; then echo "%{name} is still running. You have to stop %{name} in order to" echo "install a newer version." exit 1 fi fi getent group %{name} >/dev/null || groupadd -g %{pf_gid} -o -r %{name} getent group maildrop >/dev/null || groupadd -g %{maildrop_gid} -o -r maildrop getent passwd %{name} >/dev/null || useradd -r -o -g %{name} -u %{pf_uid} -s /bin/false -c "Postfix Daemon" -d /%{pf_queue_directory} %{name} usermod -G %{maildrop_gid},%{mail_group} %{name} # --------------------------------------------------------------------------- %pre mysql #echo "PARAM_pre: "$1 # on `rpm -ivh` PARAM is 1 # on `rpm -Uvh` PARAM is 2 if [ "$1" = "1" ]; then echo "Adding %{vmusr} user" if [ -z "`getent group %{vmusr} 2>/dev/null`" ]; then groupadd -r -g %{vmgid} %{vmusr} fi if [ -z "`getent passwd %{vmusr} 2>/dev/null`" ]; then useradd -c "maildirs chef" -d %{vmdir} -g %{vmusr} -u %{vmid} -r -s /bin/false %{vmusr} fi fi # --------------------------------------------------------------------------- %preun %stop_on_removal %{name} %if 0%{?suse_version} > 1210 %service_del_preun %{name}.service %endif # --------------------------------------------------------------------------- %preun mysql #echo "PARAM_preun: "$1 # on `rpm -e` PARAM is 0 if [ "$1" = "0" ]; then FILE=etc/%{name}/dynamicmaps.cf if [ -e "$FILE" ] ; then if grep -q "^mysql[[:space:]]" ${FILE}; then echo "Removing mysql map entry from ${FILE}" sed "/^mysql[[:space:]]/d" ${FILE} > ${FILE}.$$ && \ cp --remove-destination ${FILE}.$$ ${FILE} && \ rm ${FILE}.$$ fi else echo "Can not find \"$FILE\". Not updating the file." >&2 fi fi # --------------------------------------------------------------------------- %preun postgresql if [ "$1" = 0 ] ; then FILE=etc/%{name}/dynamicmaps.cf if [ -e "$FILE" ] ; then if grep -q "^pgsql[[:space:]]" ${FILE}; then echo "Removing pgsql map entry from ${FILE}" sed "/^pgsql[[:space:]]/d" ${FILE} > ${FILE}.$$ && \ cp --remove-destination ${FILE}.$$ ${FILE} && \ rm ${FILE}.$$ fi else echo "Can not find \"$FILE\". Not updating the file." >&2 fi fi # --------------------------------------------------------------------------- %post # We never have to run suseconfig for postfix after installation # We only start postfix own upgrade-configuration by update if [ ${1:-0} -gt 1 ]; then touch %{_localstatedir}/adm/postfix.configured # Check if main.cf and master.cf was changed manualy MAINCH=0 if [ -e %{_localstatedir}/adm/SuSEconfig/md5%{_sysconfdir}/postfix/main.cf ]; then MD5SUM1=$( cat %{_localstatedir}/adm/SuSEconfig/md5%{_sysconfdir}/postfix/main.cf ) MD5SUM2=$( grep -v "^#" %{_sysconfdir}/postfix/main.cf | md5sum ) if [ "$MD5SUM1" != "$MD5SUM2" ]; then MAINCH=1 fi fi MASTERCH=0 if [ -e %{_localstatedir}/adm/SuSEconfig/md5%{_sysconfdir}/postfix/master.cf ]; then MD5SUM1=$( cat %{_localstatedir}/adm/SuSEconfig/md5%{_sysconfdir}/postfix/master.cf ) MD5SUM2=$( grep -v "^#" %{_sysconfdir}/postfix/master.cf | md5sum ) if [ "$MD5SUM1" != "$MD5SUM2" ]; then MASTERCH=1 fi fi echo "Executing upgrade-configuration." %{_sbindir}/postfix set-permissions upgrade-configuration setgid_group=%{pf_setgid_group} || : if [ "$(/usr/sbin/postconf -h daemon_directory)" != "%{pf_daemon_directory}" ]; then /usr/sbin/postconf daemon_directory=%{pf_daemon_directory} fi if [ $MASTERCH -eq 0 ]; then test -e %{_localstatedir}/adm/SuSEconfig/md5%{_sysconfdir}/postfix/master.cf && grep -v "^#" %{_sysconfdir}/postfix/master.cf | md5sum > %{_localstatedir}/adm/SuSEconfig/md5%{_sysconfdir}/postfix/master.cf fi if [ $MAINCH -eq 0 ]; then test -e %{_localstatedir}/adm/SuSEconfig/md5%{_sysconfdir}/postfix/main.cf && grep -v "^#" %{_sysconfdir}/postfix/main.cf | md5sum > %{_localstatedir}/adm/SuSEconfig/md5%{_sysconfdir}/postfix/main.cf fi fi %if 0%{?suse_version} > 1210 %service_add_post %{name}.service %set_permissions %{_sbindir}/postqueue %set_permissions %{_sbindir}/postdrop %set_permissions %{_sysconfdir}/%{name}/sasl_passwd %set_permissions %{_sbindir}/sendmail %{fillup_only -y postfix} %else %{fillup_and_insserv -y postfix} %endif %{fillup_only -an mail} /sbin/ldconfig %if 0%{?suse_version} > 1210 %verifyscript %verify_permissions -e %{_sbindir}/postqueue %verify_permissions -e %{_sbindir}/postdrop %verify_permissions -e %{_sysconfdir}/%{name}/sasl_passwd %verify_permissions -e %{_sbindir}/sendmail %{fillup_only postfix} %else %{fillup_and_insserv -y postfix} %endif # --------------------------------------------------------------------------- %postun %if 0%{?suse_version} > 1210 %service_del_postun %{name}.service %else %restart_on_update %{name} %insserv_cleanup %endif /sbin/ldconfig # --------------------------------------------------------------------------- %post postgresql FILE=etc/%{name}/dynamicmaps.cf if ! grep -q "^pgsql[[:space:]]" ${FILE}; then echo "Adding pgsql map entry to ${FILE}" echo "pgsql %{pf_shlib_directory}/dict_pgsql.so dict_pgsql_open" >> ${FILE} fi # --------------------------------------------------------------------------- %post mysql FILE=etc/%{name}/dynamicmaps.cf if ! grep -q "^mysql[[:space:]]" ${FILE}; then echo "Adding mysql map entry to ${FILE}" echo "mysql %{pf_shlib_directory}/dict_mysql.so dict_mysql_open" >> ${FILE} fi # --------------------------------------------------------------------------- %files %defattr(-,root,root) %doc LICENSE %config %{_sysconfdir}/pam.d/* %{_localstatedir}/adm/fillup-templates/sysconfig.%{name} %{_localstatedir}/adm/fillup-templates/sysconfig.mail-%{name} %{_sbindir}/config.%{name} %config(noreplace) %{omc_dir}/%{name}.xml %dir %{_sysconfdir}/%{name} %config %{_sysconfdir}/%{name}/main.cf.default %config(noreplace) %{_sysconfdir}/%{name}/[^mysql]*[^mysql] %config(noreplace) %{_sysconfdir}/%{name}/access %config(noreplace) %{_sysconfdir}/%{name}/aliases %config(noreplace) %{_sysconfdir}/%{name}/canonical %config(noreplace) %{_sysconfdir}/%{name}/header_checks %config(noreplace) %{_sysconfdir}/%{name}/helo_access %config(noreplace) %{_sysconfdir}/%{name}/ldap_aliases.cf %config(noreplace) %{_sysconfdir}/%{name}/main.cf %config(noreplace) %{_sysconfdir}/%{name}/master.cf %config(noreplace) %{_sysconfdir}/%{name}/post-install %config(noreplace) %{_sysconfdir}/%{name}/postfix-files %config(noreplace) %{_sysconfdir}/%{name}/relay %config(noreplace) %{_sysconfdir}/%{name}/relay_ccerts %config(noreplace) %{_sysconfdir}/%{name}/sasl_passwd %config(noreplace) %{_sysconfdir}/%{name}/sender_canonical %config(noreplace) %{_sysconfdir}/%{name}/virtual %config %{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/smtp %dir %{_sysconfdir}/sasl2/ %config(noreplace) %{_sysconfdir}/sasl2/smtpd.conf %config %{_sysconfdir}/%{name}/LICENSE %config %{_sysconfdir}/%{name}/TLS_LICENSE %config %{_sysconfdir}/permissions.d/%{name} %config %{_sysconfdir}/permissions.d/%{name}.paranoid %attr(0644, root, root) %config %{_sysconfdir}/%{name}/makedefs.out %{pf_shlib_directory}/%{name}-files # create our default postfix ssl DIR (/etc/postfix/ssl) %dir %{_sysconfdir}/postfix/ssl %dir %{_sysconfdir}/postfix/ssl/certs %{_sysconfdir}/postfix/ssl/cacerts %if 0%{?suse_version} >= 1210 %dir %{_sysconfdir}/postfix/system %config %attr(0755,root,root) %{_sysconfdir}/postfix/system/* %config %{_unitdir}/system/postfix.service %else %config %attr(0755,root,root) %{_initddir}/%{name} %endif %verify(not mode) %attr(2755,root,%{pf_setgid_group}) %{_sbindir}/postdrop %verify(not mode) %attr(2755,root,%{pf_setgid_group}) %{_sbindir}/postqueue %{_bindir}/mailq %{_bindir}/newaliases %attr(0755,root,root) %{_sbindir}/sendmail %attr(0755,root,root) %{_sbindir}/postalias %attr(0755,root,root) %{_sbindir}/postcat %attr(0755,root,root) %{_sbindir}/postconf %attr(0755,root,root) %{_sbindir}/postfix %attr(0755,root,root) %{_sbindir}/postkick %attr(0755,root,root) %{_sbindir}/postlock %attr(0755,root,root) %{_sbindir}/postlog %attr(0755,root,root) %{_sbindir}/postmap %attr(0755,root,root) %{_sbindir}/postmulti %attr(0755,root,root) %{_sbindir}/postsuper %attr(0755,root,root) %{_sbindir}/qmqp-source %attr(0755,root,root) %{_sbindir}/smtp-sink %attr(0755,root,root) %{_sbindir}/smtp-source %attr(0755,root,root) %{_sbindir}/mkpostfixcert %attr(0755,root,root) %{_sbindir}/check_mail_queue %attr(0755,root,root) %{_sbindir}/config.postfix %{_sbindir}/rc%{name} %{_libdir}/lib* %{_libexecdir}/sendmail %dir %{pf_shlib_directory} %{pf_shlib_directory}/*[^.so] %{pf_shlib_directory}/postfix-ldap.so %{pf_shlib_directory}/postfix-pcre.so %{pf_shlib_directory}/libpostfix-dns.so %{pf_shlib_directory}/libpostfix-global.so %{pf_shlib_directory}/libpostfix-master.so %{pf_shlib_directory}/libpostfix-tls.so %{pf_shlib_directory}/libpostfix-util.so %{pf_shlib_directory}/main.cf.proto %{pf_shlib_directory}/master.cf.proto %{conf_backup_dir} %dir %attr(0700,%{name},root) %{pf_data_directory} %{_mandir}/man?/*.gz %dir %attr(0755,root,root) /%{pf_queue_directory} %dir %attr(0700,%{name},root) /%{pf_queue_directory}/active %dir %attr(0700,%{name},root) /%{pf_queue_directory}/bounce %dir %attr(0700,%{name},root) /%{pf_queue_directory}/corrupt %dir %attr(0700,%{name},root) /%{pf_queue_directory}/defer %dir %attr(0700,%{name},root) /%{pf_queue_directory}/deferred %dir %attr(0700,%{name},root) /%{pf_queue_directory}/flush %dir %attr(0700,%{name},root) /%{pf_queue_directory}/hold %dir %attr(0700,%{name},root) /%{pf_queue_directory}/incoming %dir %attr(0700,%{name},root) /%{pf_queue_directory}/private %dir %attr(0700,%{name},root) /%{pf_queue_directory}/saved %dir %attr(0700,%{name},root) /%{pf_queue_directory}/trace %dir %attr(0730,%{name},maildrop) /%{pf_queue_directory}/maildrop %dir %attr(0710,%{name},maildrop) /%{pf_queue_directory}/public %files devel %defattr(-,root,root) %{_includedir}/%{name}/ %files doc %defattr(0644,root,root,0755) %{pf_docdir}/ %files mysql %defattr(-,root,root) %doc %{name}-mysql/%{name}-mysql.sql %config(noreplace) %attr(640, root, %{name}) %{_sysconfdir}/%{name}/*_maps.cf %config(noreplace) %{_sysconfdir}/%{name}/main.cf-mysql %{pf_shlib_directory}/postfix-mysql.so %files postgresql %defattr(-,root,root) %{pf_shlib_directory}/postfix-pgsql.so %if %{with lmdb} %files lmdb %defattr(-,root,root) %{pf_shlib_directory}/postfix-lmdb.so %endif %changelog