postfix-bdb-3.7.3-150500.3.14.3<>,shf4p9|Vp oH_j?bl>CH7O^V?E&kȏN\Ʈ(~Rnz(.DuŔG= SNuƯkb.'[+Y{*a@~2^>qô(RЗA`:ZiZOFn@_G`*dR88P+-4 Wz[MRA%mha/ Sؘzͫ 9Uu?rBXrY\ 71q" Qa69>Q0? d " F =TZ`7D  "< # '4 S U|X]aRa|d e=f=kc=kkk(k7l8mp9o:{=4><?D@LCTF\GpHIX Y \\]^b|c%defluv8wx8yۈzCpostfix-bdb3.7.3150500.3.14.3A fast, secure, and flexible mailerPostfix aims to be an alternative to the widely-used sendmail program with bdb supportf4s390zp389SUSE Linux Enterprise 15SUSE LLC IPL-1.0 OR EPL-2.0https://www.suse.com/Productivity/Networking/Email/Servershttp://www.postfix.orglinuxs390x if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : for service in postfix.service ; do sysv_service=${service%.*} if [ ! -e /usr/lib/systemd/system/$service ] && [ ! -e /etc/init.d/$sysv_service ]; then mkdir -p /run/systemd/rpm/needs-preset touch /run/systemd/rpm/needs-preset/$service elif [ -e /etc/init.d/$sysv_service ] && [ ! -e /var/lib/systemd/migrated/$sysv_service ]; then /usr/sbin/systemd-sysv-convert --save $sysv_service || : mkdir -p /run/systemd/rpm/needs-sysv-convert touch /run/systemd/rpm/needs-sysv-convert/$service fi done fi VERSIONTEST=$(test -x usr/sbin/postconf && usr/sbin/postconf proxy_read_maps 2>/dev/null || :) if [ -z "$VERSIONTEST" -a -f var/spool/postfix/pid/master.pid ]; then if checkproc -p var/spool/postfix/pid/master.pid usr/lib/postfix/master; then echo "postfix is still running. You have to stop postfix in order to" echo "install a newer version." exit 1 fi fi # --------------------------------------------------------------------------- /usr/sbin/sysusers2shadow postfix-user.conf <<"EOF" || [ -f /.buildenv ] g postfix 51 - - g maildrop 59 - - u postfix 51 "Postfix Daemon" /var/spool/postfix m postfix maildrop m postfix mail EOF # 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 /var/adm/postfix.configured echo "Executing upgrade-configuration." /usr/sbin/postfix set-permissions upgrade-configuration setgid_group=maildrop || : if [ "$(/usr/sbin/postconf -h daemon_directory)" != "/usr/lib/postfix/bin/" ]; then /usr/sbin/postconf daemon_directory=/usr/lib/postfix/bin/ fi fi if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$YAST_IS_RUNNING" != "instsys" ]; then /usr/bin/systemctl daemon-reload || : fi for service in postfix.service ; do sysv_service=${service%.*} if [ -e /run/systemd/rpm/needs-preset/$service ]; then /usr/bin/systemctl preset $service || : rm "/run/systemd/rpm/needs-preset/$service" || : elif [ -e /run/systemd/rpm/needs-sysv-convert/$service ]; then /usr/sbin/systemd-sysv-convert --apply $sysv_service || : rm "/run/systemd/rpm/needs-sysv-convert/$service" || : touch /var/lib/systemd/migrated/$sysv_service || : fi done fi if [ -x /usr/bin/chkstat ]; then /usr/bin/chkstat -n --set --system /usr/sbin/postdrop fi if [ -x /usr/bin/chkstat ]; then /usr/bin/chkstat -n --set --system /usr/sbin/postlog fi if [ -x /usr/bin/chkstat ]; then /usr/bin/chkstat -n --set --system /usr/sbin/postqueue fi if [ -x /usr/bin/chkstat ]; then /usr/bin/chkstat -n --set --system /etc/postfix/sasl_passwd fi if [ -x /usr/bin/chkstat ]; then /usr/bin/chkstat -n --set --system /usr/sbin/sendmail fi PNAME=postfix-bdb SUBPNAME= SYSC_TEMPLATE=/usr/share/fillup-templates/sysconfig.$PNAME$SUBPNAME # If template not in new /usr/share/fillup-templates, fallback to old TEMPLATE_DIR if [ ! -f $SYSC_TEMPLATE ] ; then TEMPLATE_DIR=/var/adm/fillup-templates SYSC_TEMPLATE=$TEMPLATE_DIR/sysconfig.$PNAME$SUBPNAME fi SD_NAME="" if [ -x /bin/fillup ] ; then if [ -f $SYSC_TEMPLATE ] ; then echo "Updating /etc/sysconfig/$SD_NAME$PNAME ..." mkdir -p /etc/sysconfig/$SD_NAME touch /etc/sysconfig/$SD_NAME$PNAME /bin/fillup -q /etc/sysconfig/$SD_NAME$PNAME $SYSC_TEMPLATE fi else echo "ERROR: fillup not found. This should not happen. Please compare" echo "/etc/sysconfig/$PNAME and $TEMPLATE_DIR/sysconfig.$PNAME and" echo "update by hand." fi PNAME=mail SUBPNAME=-postfix-bdb SYSC_TEMPLATE=/usr/share/fillup-templates/sysconfig.$PNAME$SUBPNAME # If template not in new /usr/share/fillup-templates, fallback to old TEMPLATE_DIR if [ ! -f $SYSC_TEMPLATE ] ; then TEMPLATE_DIR=/var/adm/fillup-templates SYSC_TEMPLATE=$TEMPLATE_DIR/sysconfig.$PNAME$SUBPNAME fi SD_NAME="" if [ -x /bin/fillup ] ; then if [ -f $SYSC_TEMPLATE ] ; then echo "Updating /etc/sysconfig/$SD_NAME$PNAME ..." mkdir -p /etc/sysconfig/$SD_NAME touch /etc/sysconfig/$SD_NAME$PNAME /bin/fillup -q /etc/sysconfig/$SD_NAME$PNAME $SYSC_TEMPLATE fi else echo "ERROR: fillup not found. This should not happen. Please compare" echo "/etc/sysconfig/$PNAME and $TEMPLATE_DIR/sysconfig.$PNAME and" echo "update by hand." fi /sbin/ldconfig test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ "$FIRST_ARG" -eq 0 -a -x /usr/bin/systemctl ]; then # Package removal, not upgrade /usr/bin/systemctl --no-reload disable postfix || : ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_STOP_ON_REMOVAL" && . /etc/sysconfig/services test "$DISABLE_STOP_ON_REMOVAL" = yes -o \ "$DISABLE_STOP_ON_REMOVAL" = 1 && exit 0 /usr/bin/systemctl stop postfix ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ "$FIRST_ARG" -eq 0 -a -x /usr/bin/systemctl ]; then # Package removal, not upgrade /usr/bin/systemctl --no-reload disable postfix.service || : ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_STOP_ON_REMOVAL" && . /etc/sysconfig/services test "$DISABLE_STOP_ON_REMOVAL" = yes -o \ "$DISABLE_STOP_ON_REMOVAL" = 1 && exit 0 /usr/bin/systemctl stop postfix.service ) || : fi # --------------------------------------------------------------------------- test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in postfix.service ; do sysv_service="${service%.*}" rm -f "/var/lib/systemd/migrated/$sysv_service" || : done fi if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi if [ "$FIRST_ARG" -ge 1 ]; then # Package upgrade, not uninstall if [ -x /usr/bin/systemctl ]; then ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_RESTART_ON_UPDATE" && . /etc/sysconfig/services test "$DISABLE_RESTART_ON_UPDATE" = yes -o \ "$DISABLE_RESTART_ON_UPDATE" = 1 && exit 0 /usr/bin/systemctl try-restart postfix.service ) || : fi fi /sbin/ldconfig # ---------------------------------------------------------------------------~g}]Rw) 3(\{}D!tVQ*nI$N%461H@9'(@'HHyPP8@@H@Ypt*nI(@$NXX`8@h@8@8yM(@Y(@H@@ z! GX^RDLx(WH(8H`8@'7(WyPX@hHxphAg}](( J A;9 & -  vH 1 z  ~ &q $ `|T 6 *6Z d& `A큤聤聤AA큤A큀AA큤AAAA큤A큤AAAAAAAAAAAAAAAAf4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4c@ff4f4f4ZeXf4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f42a578b63978d4658a4982a6cd6cdc8b123eb297be639937a6febed1ab696868d6233f37dc93ae05d476bbeb03ffa6de4d006893a9d5c91d38afb66506d224e9dd5e51380e7ec868a42d336c868fc012ab95cac771d95361504cc6040b8d86221c00a478a7c120c4ef2ad0851c0fbd50d3cba2739d5ecb1be16e6bc4c75792d56d7c000b62ab236b5c5c4db8ad7edec232b2afe95d85c8e064a5c9f6d5308620f7fdf5c3b79ba13d9c264e20742b88ec15b3b9ca7abf400e24691fefddcf54fec84c8bf2d0d78923734d713667ccbb34b703da09da9bfb4bc1ee1930e29252e530346aaf4bc296be09477b038c780641b4b074c9bafa94b3b556cdc3f77c17f17e3fe120264875113f86595e8310867a188e65f52c3f039c4e2c3554910e4562fd1f8ccc0f7e3d745cf87893b9d1feec45b6e806db6b67180be55e3bf269a399b1a1282cd3e245ea1bc32c901f715dc8f0c0b3392a9263dacf39fb65badb85932e523e826b0192c39b42d71597caa8b3e5e166d1e6af98528f046f1ebe67279257987a8bb5574dc385076dc07254f804116424358cc8bdb9a9b53a15a83735def45e3888f80a3af34a76d6ee1fe55dd4ef3eede5508212b7f77a47cef12165e9439118ed6f4d372a0f4c61c0427279801a48775dca0c5d2d035738c3e3d23b4e2b60f7e2acf6f435ec7dd9b20f83313716489ac11807f0675b233e0a35fbcf6d094dde5b8abc9797efaaea2dbc51a30ff96cc55e2df5507258db5330e8c1db23842fac085b0a420236276365e4f84728f8a970d6fb5b22ded860610d0612a52ac7b2f8f9147b41c7e47df9b97c22831afb23be7141818614ec2370210e460c9d10509447bf9ca833a515dff2d47d65daeca2956d102d1b1d1ef107f753bc10d7dd1952b04ea66793de883a61045da9d3665f409812fc6578090deaabe864a695f245cf3a00a723f8d359243ae47b3bfcd3b8d5b2fc922066041aab756a5e885d58eb8534a7cc6a2ea42c5b4be1c455279de3a10fe62a9a86b2f6e752331a873e16308e79a80563130e95d899567daf677329fd128b07339cecfadd6ad48d1cae5399c61c8aa9b4928006339bd1dbebd59081f7ea0bf20381936d55bcfcad72642fdf3be782f4cce5b80154b8c0973317c625378b858dc436fa13d058a683b575daf1bc2712e7b9014e9d3d5f0d879c477ce63e3daac584259f7e38205e93330c7ed12c4a05ddf1e305d7155fd9a68b5c948290c05538aedf58e88ddac2a7488aecd6ff7ab94a92159da177b67105cee1625528dbfc9787b25479a83f205e783d0bfa404aea7145bd715d44008f4e95b3cef31c4509f7afd6391012b05c459f6d767138c521369d4d94649ec525a797e103cf5f5a37840e8aee86cc6be717c1b476617c2faa6edec2450a9cfe004b09f3c37a2ccb4cd6fd2cb945bb95790f963752c6b687343c41b118127b69444a0bab4183685f3e6ba08eaa44103f62da7237d8482a4070282433a58f96f972519b2c1f933538af871e2310af243cd624896b98e813d45f009fe621e2562fbf8cd30784be8545dd16535cef9fe643a455672ab6d4efd8e1aa9ce2bd15070ba0001a440aa3b65cc49f02701f5617f0bf533050623307e685f1654a182e569bfc00e1041a76ea6544cd6714e40836107d73a0733d84bf414f2e3df0e093447846f7be9d24007828e610acb0c04ac26ff180ac3b98ce12c4cf35ae8f3d6406f1f75e0c40c1800f71afc52414d48329d09d913e7648a0864022a92ff138705548027e07fc095c5ac7bfc26fe5815078bd89dbd1ccafd621ccf111b6d7f3b6ad0aaf37d70cc04b1e7aa4378d7a4ae6826e2556ce35c9a8ead998b1c9849f97b54176d08e7d22d517bbd9c5140aea8fa5e1b1c8eaba7e1b9203921225e60809793c25844b7f5912f810864e70d92df45ea2e83bff975684855a31a3f604241ecdf6807905377b6089f96a21326daa2018fe9aab53ee154110c3eabc39ba8c29464c305d4095f77f5b0404b442db7ab3c0ee5ff540c871cf95e536644cbe93d1e8b64cdfd610328e3edea913514af03e3d4749fe212b77b2f8f9147b41c7e47df9b97c22831afb23be7141818614ec2370210e460c9d1d1952b04ea66793de883a61045da9d3665f409812fc6578090deaabe864a695f245cf3a00a723f8d359243ae47b3bfcd3b8d5b2fc922066041aab756a5e885d58eb8534a7cc6a2ea42c5b4be1c455279de3a10fe62a9a86b2f6e752331a873e1cfd07d0d230f68952e9a26a880b1d6cc9f79da73a0a22c264858ed8d16600f336308e79a80563130e95d899567daf677329fd128b07339cecfadd6ad48d1cae5b5c5d4e8efe3775898be0824e35c5ddb9a8cf4f3a2e741445d32d7b9509a633fef27c1d00ef554c9eb0f391a69154d78c30cc27c6a696b22e738fb9b49f1b051e1b9203921225e60809793c25844b7f5912f810864e70d92df45ea2e83bff9758261067fc766e66e877e4a75b177a8b0ec7c8f259ea2f202db2d3cbf1891c05084b73dad4e9071fb8ebf30c229b6f06e1eea5334c00860df1cbc7923cf9f8ffb8ea1ef4a85182ec525f2ecbac967eee64efc4c1afbfeb1f8299a486a617a20c78a0864022a92ff138705548027e07fc095c5ac7bfc26fe5815078bd89dbd1ccabd81d603b407adb63a19c335d61da4b1cc3e37a4ac92b09d8f47e491e10972dba4c2ef622b674ec6dfff3fe73178d339e0fa33cdd58ef8b9af7c09a371dd0479025d99eb66be495819c99bfb956f8de8781b2a79d49444493a13d72585ca9824c7100d7f0c273b536b3d1fe4c571a6a41e0452c9c566a6a0dcea38a57ba0057b6fc40866382135bab90e00d951398e770c5fab1d5d5a8d5f59ba4afeea6041691f66ccd12dac99a22c2c05495ee1fe7c4187a4c0dd7f01269dcc11ad9bac2ae3c6233aa52168497f007d0dca487b6dcf55058534dfa13f8eb577300dc4f896ea41a6b9cacd3e22c49310814f117f11e39d70232d0d4041e4a4193678819164ffb71cd60e8b16d28b3f5615ce72ba8d6575ab2b17c62486e253b586dd7cbe457bf9709474388c11c675d99fd626e56b86e4f9ead06adbf934b562f7ed7e4b1cc294dde5b8abc9797efaaea2dbc51a30ff96cc55e2df5507258db5330e8c1db238e90c1827f029ffd9ebf7dd02e6ed11b6638148b902d43298359b0ba0745369c23457b6c2326d648fe090aede37d2f1564a89d21409803e315fe29b63262c351b89020c1ea194e7b3b5593f895c17826a054df54aa2b05ed2a27fe25e39950ee85acd39bc6ab523fc65209ca3eb9b9ba0aa262ac4126165e92f7e50d4b1828e8e629ecacfee9b825e544e77664b580fd3a4b79683a569522ba9664678d1ea909e307d0c83a162dff424bc75945b5efaa07ca932206f34ca914d118a8eef97814f6d9961cfc75d9f200710be2c198fe66dac6fe7d2204377f9e073b52a488616ec2bae481f01213bfeeaf6f5c71250d752e1e6b7484598d634e8f34becbddaea77948fc901134b90a69d20bef55e0ded2fcf96c688f6a931141bb9557014aa8174b5f37844923550ce5322cc48f09acb8dc851adff70c17413ba55cbf6918d2997bbb9d5a3a796ecb75393ca5b318a9656b57e0f35809dbee95bd5244518729a2cabf9e21a50c67de1b9b7674b24b4f15c29e67c3100e072f213c92810b3c647b0869bf0c210f5fb5398324a3061b04ec876c26a5810bcd2f828bf9ffeef4252363d2c8f34732d9f3536b97ad9c07fcdd5813ca04e127e08dcaa8eee7e7667f8755d07ce83280dbfd59c64fff72dd8e9b1b7c9befe7824f010f9fd8372c1467b797bd40ea2b6712f04f86224fe054d15d029ba83452a3a538ef864576e956d6f78d1c96dd1a5566d34d280012af856ab10a74114a48c1efc15e016b6f8ca91005db1c87593ac90e28dfffa8e8f23fdaf6c45eb6dee710789c12c8b808278c01a4a24de0f2ba3bf1ca1c34dbd5e93c3bdf67e94e3a4a5943f85a2870510905108ecbf7a527b4c389728e42dbf6ab30bc0a2f0e70a4220d37435bc47af8737a5f578724d47d5b6e004ac1c350f0d19a5df7f04223d70e4fe570b424938767e7f2d99010a82b9000df9e64648b318c9f9550ec2e0341c6606040c65d90998192855268cbb0bcc5f536642a4cd74e8ec96e7ff2ff97eadeb20e58fdd000f6c579ce51180bfbe5ae51425b7a3bf25006a183010995f1dfde3b72e3a5f3dd2816f2fa4d41f221673397de658b374eb50e8fc0fb0dbf0081d0c01555c2d208c381c60b732ee9e0b0e9ad450a8307652eba9f20cfed32d8406ad7100fd18081e93e2e4de80b906b16a847d569e716a976813038a16a0389130eb67f954c41d9f77a147ca39f20d855dac0efa6b2a745909a21e32158b0cc610490b673b8c6605bfece2d4711d0cb24c89f7844bb21000f0aeadeddf0355c714d024817ec72febe294f6db67f0094b89073c45bd81a624bde4ada51732cbc4c2f522825fb38f6ce7e52c29cc784d89118de29bd9bf8eea6de54319011db52aa144466f3e229307b87cc6914edc8c4df973d69372874d855f1e96d35e998b9965b1c84238d51648748bf47e439cab26156336033b096cef070db1f10b37d1e0a60bb6756c676007e2c2ff9206dc52bd3ebc52fd8bce4f5bdbbd6a0dc40db295d8205194f536cab893caf1ff8271e1bf3bb15fa706ad0043403f7cfa3ddcf18c0fda1819510b3eed675626f93c9e8f419f25f0f53e6bfed867bb7bcbeb8ae50fd6c066623751c197814061d4a2c00a478a7c120c4ef2ad0851c0fbd50d3cba2739d5ecb1be16e6bc4c75792d56d7c000b62ab236b5c5c4db8ad7edec232b2afe95d85c8e064a5c9f6d5308620fcf9ff922f5df74332d8bff719d3aa03ecdf3eec02db5dc4ea6760379fda5dae5cf9ff922f5df74332d8bff719d3aa03ecdf3eec02db5dc4ea6760379fda5dae506c7369d042f41d4b180606e671693360b5039d5adbc66ce7023f8fca51fe77c12c0a752512a2fa449962c8ad6485bcf18b77b25d1ca510f617d22acd541bd3676a9757ad897490efcbb2930e4df2c4825e357fd837b0b4edb593dbfb929c890c0a551e468e51ab954609f7cba8d90a690592424021dd4172b6d503f61f16f2a09fa295334c7eb61a38611d79572e3b9807351a1ace2187be7122a535c513628380c5a203fc8c25ce60ac2e886c59c3feda42bbfd5d8ea5ab43aa8e81be546ff50ea672e2974dfb23a0ba943c154b168d873da4fe620a591b7dd1bca4b50e680add3e1d9b2ecf4ef4719a9375251264af81ac483191bb175bb6cc2e1531864463d8cbf8c98a56846f982e39fab33e36f5f25721f9abb6bcb6cc27aa0e30c270f3631915eae3490f530f777479e38e575bd1c47af45e5b4fc705f6e2cbb27172f2ad9e16472f2fd41d9b935a51124bd23255942bb31b87baa5032abaea63464b68324a8668d30666cbcaca4d0cf14c848038ce428ec52c7e794b8b1595c58aa633f44dd6a18a2642f15dbfa4bbd9996afcf754ee21f219cfecd9769b10165e815302e6af00d997abd1c007293c1c5dd39394f2d26646cefd3daa55d03baee41680615045b43a6f34d23521e5ca1dcbc98d96417a751822c79b88cb8cc439fe6b11c5c3e6b854f094f1d2adfefe2c9d2954299844543544d619e3d71365f20592b579aaa2cd24c8086d371fa5c1dd21aabf5a38581a43048414c49f9f1f7b442e64ed17e39efb4a8119815dff22e6d0c0ad06d759a86b1ccb8c500dbc2fb0b3edba89bf354cde01ee2fb2aef1f7a42fc208e9dc394dfc29c5ddb81070ff23342f6a143cda859d6f9009818f2b2d35e63598a4cd89ca3465f9a13ee8c36cde0df3d8dcc538be9ca147cdefe2a8aebc2fc112206782be0463bc7b56b59f25e0e03103c128651d6800935396d82ea8d9ba8fbdcc21fbcb2143b53f137396e1c3cbe0de9bcfa5cd19bd9c7efa18b4881572e613c971c7ebb4a5c4f02c8d16d7994624295e9a149ba17b04192f87ca8f461a7341279d6d29a0c34a416132ee9809885539e952420b13295663dcddbca6542a3b15c466d07b06c4c1d4bcb3193e25c95f1b1af69aad541f2834dda291f048adf0ef41b6028ec991db25a3d346880d61678f45391d1d1ee69e5ae310cf4884cd065ce44fbd25053ad3a0ce8f22bf6dc5b0d615119b8ff1b7e2aaf71c62ff67847d3c8a8f477521b749c4e07f9a7bbb478b7320f0a928861874ce74bf40110506f38932d282de80232385015f0843dca9e56973a903a028483a52502c3421baf32b2bf06df249be5c07ec6169cfcf5e9e059b52718c89b2a31f7067eb143d505d7de1bf9325ed759018eb9f78de3c03a8b78fbfbcbc0f9cc6ff1a2608a5cfd2361e19bfbb42d470ab38205b89f1a492cc3949e080a63a9abc97ce080a0a43c3a2706f4a4b0a45a7ccfd782962e230511068e48f019236073cd43b84ba5191117707b2ffe29d5662f1a3db751fd3d202beba42b578b55eea83dc321c35719751be2d4a9c206731ef4c4e9a5ae0ca1933bcbafb23436e690ddba82f337aa0e605fa2e9602a48920dc557838f611467178c2da9473b18cb2dd09bba11700177c4c1f78d050403e9b6ae3a3afea5e5c3e8aa40f08fee2e03fc6b368c57fed43874ca64dd0d3ea495c1be3968adb5f355ce2ac4a2e65c7c6e3b910b3fa131f12565b9bb1b200a0491a74e09a50a169b4ce8cb46cf1ee17f559410830a74bcda186e544e50aad24d52353072ba67d3744e87a5da9ba8e978995d78535f862b96ba2d46576a8ef0f9fedf761c1a3cc98f365e76e647bff739951fd551d2826dc6cad3bfbb767db18c4b80feb1c8cf5eecd16f4d03e183072bfc4b441c6355b69dc7200436daf39be2d3e01d8957a3206a5781a6cce023203dfed04846ed6cb2dd23b7f8dd879084c267e9b3f9aec297c69c11bf56086088e06d4dda57bd3ff3408d7cee78fb9ba89c273f6647013b3801039f5cc0fa06aabdc85825ed9d073031c5ce8a1cc44a2ab7d0463d2cd3c0f4478040801bd5de8903f4452cae0ba5c70c22c8f6bdd6c589f63bd7a904e7869db9cc8ce162eca1bf811f96179634a94f7a2e855206161bfeb34718ed81e00af747d86afdfa5be3a04377a06261211b9526160f29621a4d98efd74aad74c8673267d6bbed65bd73c9501197d9f714ef980c3dcafd5d367e29ac91a087cfbcbeb58f1bf778a7f92d01dddc97d4ba465ef1e1c6a5fcc502fefb58bb0d9b130588a0d983946130636461074eab17a8248b5392791c54e752097c91a40d5506cf436124471e622aa36b1a54dc7d363ee6f158e7674ecf53f1acc71f759a420397820e7a07e914c1f7bca267ec2a3f11ff73810482162a4b096b9fb57dce4ecb1a5c88414eb44c42b122287b5b0d119a4c8e1e0c31b2d2067e8cfce481dab413b8114adeedb4d2e6a3655713755ac205b888a8047eb1e04e06a72505b27d86e904911767c59b13dea117a6a25b1afa1307e6e0d7973fc52e3000daec9a7e781557f9db61180d5944d45560dde55dbf3c676a278d0a8fe4a28364a85484fef68df290b7b52334d55e3bfe8e770f2abf3cd7772d1ab298b73efbe9e92b2cb03380aadc0f1798749cea8d68282df5de4adde2de334f568a7514e3b32fa4467212bde04c41790afe9b82a20fb78466dd4192adfdcdaaad9507244ff791c67f2107ce3dadd8c546cc672c0ae65c7c6e3b910b3fa131f12565b9bb1b200a0491a74e09a50a169b4ce8cb46cf360308d57a23d8e3159088bd528c14d2231870549d27e28ef814a6bbccd890cfc75ee98d76e7ba9b49b2941e5db0c9655b261deed9e6215bf43851a54dd8feb9399fa1d276d9b336bf42890d530aacc70dbefcc9a3f6c1c098df056cc8f8f841../../ssl/certs../sbin/sendmail../sbin/sendmail../../lib64/libpostfix-dns.so../../lib64/libpostfix-global.so../../lib64/libpostfix-master.so../../lib64/libpostfix-tls.so../../lib64/libpostfix-util.so../sbin/sendmailservicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpostfixrootpostfixpostfixpostfixpostfixpostfixpostfixpostfixpostfixpostfixpostfixpostfixpostfixpostfixrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootmaildroprootrootrootmaildroprootrootmaildroprootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootmaildroprootmaildroprootrootpostfix-bdb-3.7.3-150500.3.14.3.src.rpmconfig(postfix-bdb)group(maildrop)group(postfix)libpostfix-dns.so()(64bit)libpostfix-global.so()(64bit)libpostfix-master.so()(64bit)libpostfix-tls.so()(64bit)libpostfix-util.so()(64bit)postfix-bdbpostfix-bdb(s390-64)smtp_daemonuser(postfix)@ !@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@      /bin/bash/bin/sh/bin/sh/bin/sh/bin/sh/bin/sh/bin/shconfig(postfix-bdb)coreutilsdiffutilsededededfillupgrepgroup(mail)iproute2libc.so.6()(64bit)libc.so.6(GLIBC_2.11)(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.2)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.2)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.7)(64bit)libcrypto.so.1.1()(64bit)libcrypto.so.1.1(OPENSSL_1_1_0)(64bit)libcrypto.so.1.1(OPENSSL_1_1_1b)(64bit)libdb-4.8.so()(64bit)libdl.so.2()(64bit)libdl.so.2(GLIBC_2.2)(64bit)libicuuc.so.suse65.1()(64bit)libnsl.so.2()(64bit)libnsl.so.2(LIBNSL_1.0)(64bit)libpcre2-8.so.0()(64bit)libpostfix-dns.so()(64bit)libpostfix-global.so()(64bit)libpostfix-master.so()(64bit)libpostfix-tls.so()(64bit)libpostfix-util.so()(64bit)libresolv.so.2()(64bit)libresolv.so.2(GLIBC_2.2)(64bit)libsasl2.so.3()(64bit)libssl.so.1.1()(64bit)libssl.so.1.1(OPENSSL_1_1_0)(64bit)libssl.so.1.1(OPENSSL_1_1_1)(64bit)perlperlperlperlpermissionspermissionsrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)sysuser-shadowuser(nobody)3.7.3-150500.3.14.33.0.4-14.6.0-14.0.4-14.0-15.2-13.2eximpostfixsendmail4.14.3 /usr/bin/chkstat -n --warn --system -e /usr/sbin/postdrop 1>&2 /usr/bin/chkstat -n --warn --system -e /usr/sbin/postlog 1>&2 /usr/bin/chkstat -n --warn --system -e /usr/sbin/postqueue 1>&2 /usr/bin/chkstat -n --warn --system -e /etc/postfix/sasl_passwd 1>&2 /usr/bin/chkstat -n --warn --system -e /usr/sbin/sendmail 1>&2f3@e(e;dܺ@d@bbbzSbq@bobf@b]RbJbBb4t@b/.@baa@araraqV@a^@a'@a$@a ``R@``E`"@`̊`D``r`!@`t6@`H`B@`3@`U`__@_@_@__j___L@_D@_?@_/@_p@_A@^^^b^'@^>@^=@^ku^=Q@^:@^8 @]e@]@]b@]m]M`@]:@]9]4S]]^@]@\@\\\@\~d\}@\zp@\y\\\LK\I[[=@[ͻ[[[[ZZUZZkZ@Z)-@Z@ZY@Y@YMY@Y@YY@YyYC@XQ@Xh@XX@XO@XO@X7@XM@Xv@Xk@X9y@X)@X lW1@W WPWJWDB@WDB@WVVVV@VhVU5@U@U@UUlI@UXU6;U3Tء@TOT@TTT@To)@TeTN3TD@varkoly@suse.comvarkoly@suse.comvarkoly@suse.comvarkoly@suse.comvarkoly@suse.comchris@computersalat.dechris@computersalat.dechris@computersalat.dechris@computersalat.dedimstar@opensuse.orgmrueckert@suse.demichael@stroeder.comvarkoly@suse.comilya@ilya.cfmichael@stroeder.comvarkoly@suse.comvarkoly@suse.commichael@stroeder.commichael@stroeder.comopensuse@dstoecker.dejsegitz@suse.comjsegitz@suse.comvarkoly@suse.comvarkoly@suse.comvarkoly@suse.comchris@computersalat.devarkoly@suse.commichael@stroeder.comvarkoly@suse.comchris@computersalat.dechris@computersalat.degmbr3@opensuse.orgmichael@stroeder.comchris@computersalat.demrueckert@suse.devarkoly@suse.commichael@stroeder.comvarkoly@suse.comvarkoly@suse.comvarkoly@suse.comvarkoly@suse.cominfo@paolostivanin.comsuse+build@de-korte.orgvarkoly@suse.comsuse+build@de-korte.orgsuse+build@de-korte.orgsuse+build@de-korte.orgvarkoly@suse.comvarkoly@suse.commichael@stroeder.commichael@stroeder.comkukuk@suse.comkukuk@suse.comsuse+build@de-korte.orgmichael@stroeder.comsuse+build@de-korte.orgkukuk@suse.commichael@stroeder.commichael@stroeder.commichael@stroeder.comsuse+build@de-korte.orgmichael@stroeder.commichael@stroeder.comvarkoly@suse.comvarkoly@suse.commichael@stroeder.commichael@stroeder.commliska@suse.czmichael@stroeder.comvarkoly@suse.comchris@computersalat.devarkoly@suse.commatthias.gerstner@suse.comchris@computersalat.demichael@stroeder.comvarkoly@suse.comdimstar@opensuse.orgtchvatal@suse.comvarkoly@suse.commichael@stroeder.comvarkoly@suse.comjslaby@suse.commrueckert@suse.demichael@stroeder.commax@suse.comchris@computersalat.dechris@computersalat.demalte.kraus@suse.commichael@stroeder.comchris@computersalat.dechris@computersalat.devarkoly@suse.comtchvatal@suse.comvarkoly@suse.commichael@stroeder.comlnussel@suse.deadam.majer@suse.devarkoly@suse.comilya@ilya.pp.uavarkoly@suse.comdimstar@opensuse.orgrbrown@suse.comkukuk@suse.demichael@stroeder.comvarkoly@suse.comchris@computersalat.devarkoly@suse.comvarkoly@suse.commichael@stroeder.comkukuk@suse.devarkoly@suse.commichael@stroeder.comchris@computersalat.dewerner@suse.dechris@computersalat.dekukuk@suse.demrueckert@suse.dewr@rosenauer.orgkukuk@suse.comchris@computersalat.devarkoly@suse.comvarkoly@suse.comchris@computersalat.dechris@computersalat.dechris@computersalat.demichael@stroeder.commichael@stroeder.comschwab@suse.dechris@computersalat.devarkoly@suse.comvarkoly@suse.comopensuse@dstoecker.demrueckert@suse.demrueckert@suse.demrueckert@suse.devarkoly@suse.comvarkoly@suse.commichael@stroeder.comjkeil@suse.demeissner@suse.commeissner@suse.commichael@stroeder.comcrrodriguez@opensuse.orgmpluskal@suse.commrueckert@suse.demrueckert@suse.demichael@stroeder.comvarkoly@suse.comvarkoly@suse.commpluskal@suse.comvarkoly@suse.comvarkoly@suse.comtchvatal@suse.comdimstar@opensuse.orgdmueller@suse.commichael@stroeder.com- Set inet_interfaces to loopback-only instead of localhost as proposed in man 5 postconf. (bsc#1223264)- (bsc#1218304) VUL-0: postfix: new SMTP smuggling attack (bsc#1218314) SMTP Smuggling - Spoofing E-Mails Worldwide Apply patch containing the feature smtpd_forbid_unauth_pipelining as default yes. add patch: postfix-3.7-patch06 - Security: the Postfix SMTP server optionally disconnects remote SMTP clients that violate RFC 2920 (or 5321) command pipelining constraints. The server replies with "554 5.5.0 Error: SMTP protocol synchronization" and logs the unexpected remote SMTP client input. Specify "smtpd_forbid_unauth_pipelining = yes" to enable. - Workaround to limit collateral damage from OS distributions that crank up security to 11, increasing the number of plaintext email deliveries. This introduces basic OpenSSL configuration file support, with two new parameters "tls_config_file" and "tls_config_name". Details are in the postconf(5) manpage under "tls_config_file" and "tls_config_name".- postfix: config.postfix causes too tight permission on main.cf (bsc#1215372)- CVE-2023-32182: postfix: config_postfix SUSE specific script potentially bad /tmp file usage (bsc#1211196) Use temp file created by mktemp- update to 3.7.3 postfix 3.7.2 - messages with many recipients are declared corrupt with warning: Unexpected record type 'X' at offset (bsc#1213515) This fixes a bug where some messages were not delivered after "warning: Unexpected record type 'X' The new version contains only the required patch- use correct source signature file (gpg2)- update to 3.7.2 https://de.postfix.org/ftpmirror/official/postfix-3.7.2.RELEASE_NOTES - rebase patches * pointer_to_literals.patch * postfix-linux45.patch * postfix-main.cf.patch * postfix-master.cf.patch * postfix-no-md5.patch * postfix-ssl-release-buffers.patch * postfix-vda-v14-3.0.3.patch * set-default-db-type.patch - build against libpcre2- remove *.swp from postfix-SUSE.tar.gz- fix config.postfix 'hash' leftover with relay_recipients - update postfix-main.cf.patch about * smtp_tls_security_level (obsoletes smtp_use_tls, smtp_enforce_tls) * smtpd_tls_security_level (obsoletes smtpd_use_tls, smtpd_enforce_tls) - rebase/refresh patches * harden_postfix.service.patch * postfix-avoid-infinit-loop-if-no-permission.patch * postfix-master.cf.patch * postfix-vda-v14-3.0.3.patch * set-default-db-type.patch- Change ed requires to /usr/bin/ed: allow busybox-ed to be used inside containers.- add missing requires for config.postfix and the postfix postinstall script: perl and ed- update to 3.6.6 * (problem introduced: Postfix 2.7) The milter_header_checks maps are now opened before the cleanup(8) server enters the chroot jail. * In an internal client module, "host or service not found" was a fatal error, causing the milter_default_action setting to be ignored. It is now a non-fatal error, just like a failure to connect. * The proxy_read_maps default value was missing up to 27 parameter names. The corresponding lookup tables were not automatically authorized for use with the proxymap(8) service. The parameter names were ending in _checks, _reply_footer, _reply_filter, _command_filter, and _delivery_status_filter. * (problem introduced: Postfix 3.0) With dynamic map loading enabled, an attempt to create a map with "postmap regexp:path" would result in a bogus error message "Is the postfix-regexp package installed?" instead of "unsupported map type for this operation". This happened with all non-dynamic map types (static, cidr, etc.) that have no 'bulk create' support.- config.postfix fails to set smtp_tls_security_level (bsc#1192314)- Refreshed spec-file via spec-cleaner and manual optimizated. * Added -p flag to all install commands. * Removed -f flag from all ln commands. - Changed file harden_postfix.service.patch (boo#1191988).- update to 3.6.5 * Glibc 2.34 implements closefrom(). This was causing a conflict with Postfix's implementation for systems that have no closefrom() implementation. * Support for Berkeley DB version 18. - removed obsolete postfix-3.6.2-glibc-234-build-fix.patch- Postfix on start don't run postalias /etc/postfix/aliases (error open database /etc/postfix/aliases.lmdb). (bsc#1197041) Apply proposed patch- config.postfix can't handle symlink'd /etc/resolv.cof (bsc#1195019) Adapt proposed change: using "cp -afL" by copying.- Update to 3.6.4 * Bug introduced in bugfix 20210708: duplicate bounce_notice_recipient entries in postconf output. This was caused by an incomplete fix to send SMTP session transcripts to $bounce_notice_recipient. * Bug introduced in Postfix 3.0: the proxymap daemon did not automatically authorize proxied maps inside pipemap (example: pipemap:{proxy:maptype:mapname, ...}) or inside unionmap. * Bug introduced in Postfix 2.5: off-by-one error while writing a string terminator. This code passed all memory corruption tests, presumably because it wrote over an alignment padding byte, or over an adjacent character byte that was never read. * The proxymap daemon did not automatically authorize map features added after Postfix 3.3, caused by missing *_maps parameter names in the proxy_read_maps default value. Found during code maintenance.- Update to 3.6.3 * (problem introduced in Postfix 2.4, released in 2007): queue file corruption after a Milter (for example, MIMEDefang) made a request to replace the message body with a copy of that message body plus additional text (for example, a SpamAssassin report). * (problem introduced in Postfix 2.10, released in 2012): The postconf "-x" option could produce incorrect output, because multiple functions were implicitly sharing a buffer for intermediate results. Problem report by raf, root cause analysis by Viktor Dukhovni. * (problem introduced in Postfix 2.11, released in 2013): The check_ccert_access feature worked as expected, but produced a spurious warning when Postfix was built without SASL support. Fix by Brad Barden. * Fix for a compiler warning due to a missing 'const' qualifier when compiling Postfix with OpenSSL 3. Depending on compiler settings this could cause the build to fail. * The known_tcp_ports settings had no effect. It also wasn't fully implemented. Problem report by Peter. * Fix for missing space between a hostname and warning text.- Ensure postfix can write to home directory or server side filtering wont work (sieve)- Ensure service can write to /etc/postfix- Added hardening to systemd service (bsc#1181400). Added harden_postfix.service.patch- config.postfix not updatet after lmdb switch (bsc#1190945) Adapt config.postfix- postfix master.cf: to include "submissions" service (bsc#1189684) Adapt master.cf patch- postfix fails with glibc 2.34 Define HAS_CLOSEFROM (bsc#1189101) add patch - postfix-3.6.2-glibc-234-build-fix.patch- fix config.postfix (follow up of bsc#1188477)- Syntax error in config.postfix (bsc#1188477)- Update to 3.6.2 * In Postfix 3.6, fixed a false "Result too large" (ERANGE) fatal error in the compatibility_level parser, because there was no 'errno = 0' statement before an strtol() call. * (problem introduced in Postfix 3.3) "Null pointer read" error in the cleanup daemon when "header_from_format = standard" (the default as of Postfix 3.3), and email was submitted with /usr/sbin/sendmail without From: header, and an all-space full name was specified in 1) the password file, 2) with "sendmail - F", or 3) with the NAME environment variable. Found by Renaud Metrich. * (problem introduced in Postfix 2.4) False "too many reverse jump" warnings in the showq daemon, because loop detection code was comparing memory addresses instead of queue file names. Reported by Mehmet Avcioglu. * (problem introduced in 1999) The Postfix SMTP server was sending all session transcripts to the error_notice_recipient (default: postmaster), instead of sending transcripts of bounced mail to the bounce_notice_recipient (default: postmaster). Reported by Hans van Zijst. * The texthash: map implementation broke tls_server_sni_maps, because it did not support multi-file inputs. Reported by Christopher Gurnee, who also found an instance of the missing code in the "postmap -F" source code. File: util/dict_thash.c.- spamd wants to start before mail-transfer-agent.target, but that target doesn't exist (bsc#1066854)- postfix-SUSE * rework sysconfig.postfix, add - POSTFIX_WITH_DKIM - POSTFIX_DKIM_CONN * rework config.postfix for main.cf - with_dkim - update postfix-main.cf.patch * add OpenDKIM settings- postfix-mysql * add mysql_relay_recipient_maps.cf - postfix-SUSE * rework sysconfig.postfix, add - POSTFIX_RELAY_RECIPIENTS - POSTFIX_BACKUPMX * add relay_recipients * rework config.postfix for main.cf - is_backupmx - relay_recipient_maps- Add now working CONFIG parameter to sysusers generator - Remove unnecessary group line from postfix-vmail-user.conf- Update to 3.6.1 * Bugfix (introduced: Postfix 2.11): the command "postmap lmdb:/file/name" (create LMDB database from textfile) handled duplicate input keys ungracefully, discarding entries stored up to and including the duplicate key, and causing a double free() call with lmdb versions 0.9.17 and later. Reported by Adi Prasaja; double free() root cause analysis by Howard Chu. * Typo (introduced: Postfix 3.4): silent_discard should be silent-discard in BDAT_README.- fix postfix-master.cf.patch * set correct indentation (again) for options of - submission (needs 3 spaces) - smtps (needs 4 spaces) to make config.postfix work nicely again- Update to 3.6.0 - Major changes - internal protocol identification Internal protocols have changed. You need to "postfix stop" before updating, or before backing out to an earlier release, otherwise long-running daemons (pickup, qmgr, verify, tlsproxy, postscreen) may fail to communicate with the rest of Postfix, causing mail delivery delays until Postfix is restarted. For more see /usr/share/doc/packages/postfix/RELEASE_NOTES - refreshed patches to apply cleanly again: fix-postfix-script.patch ipv6_disabled.patch pointer_to_literals.patch postfix-linux45.patch postfix-main.cf.patch postfix-master.cf.patch postfix-no-md5.patch postfix-ssl-release-buffers.patch postfix-vda-v14-3.0.3.patch set-default-db-type.patch- (bsc#1186669) - postfix.service has "Requires=var-run.mount" Remove bad requirements- Update to 3.5.10 with security fixes: * Missing null pointer checks (introduced in Postfix 3.4) after an internal I/O error during the smtp(8) to tlsproxy(8) handshake. Found by Coverity, reported by Jaroslav Skarvada. Based on a fix by Viktor Dukhovni. * Null pointer bug (introduced in Postfix 3.0) and memory leak (introduced in Postfix 3.4) after an inline: table syntax error in main.cf or master.cf. Found by Coverity, reported by Jaroslav Skarvada. Based on a fix by Viktor Dukhovni. * Incomplete null pointer check (introduced: Postfix 2.10) after truncated HaProxy version 1 handshake message. Found by Coverity, reported by Jaroslav Skarvada. Fix by Viktor Dukhovni. * Missing null pointer check (introduced: Postfix alpha) after null argv[0] value.- (bsc#1183305) - config.postfix uses db as suffix for postmaps Depending on DEF_DB_TYPE uses lmdb or db- (bsc#1182833) - /usr/share/fillup-templates/sysconfig.postfix still refers to /etc/services Use getent to detect if smtps is already defined.- (bsc#1180473) [Build 20201230] postfix has invalid default config (bsc#1181381) [Build 130.3] openQA test fails in mta, mutt - postfix broken: "queue file write error" and "error: unsupported dictionary type: hash" Export DEF_DB_TYPE before starting the perl script.- bsc#1180473 - [Build 20201230] postfix has invalid default config Fixing config.postfix and sysconfig.postfix- Update to 3.5.9 * improves the reporting of DNSSEC problems that may affect DANE security- Only do the conversion from the hash/btree databases to lmdb when the default database type changes from hash to lmdb and do not stop and start the service (the old compiled databases can live together with the new ones) - convert-bdb-to-lmdb.sh - Clean up the specfile * Remove < 1330 conditional builds * Use generated postfix-files instead of the obsolete one from postfix-SUSE.tar.gz * Use dynamicmaps.cf.d instead of modifying dynamicmaps.cf upon (de)installation of optional mysql, pgsql and ldap subpackages * Use default location for post-install, postfix-tls-script, postfix-wrapper and postmulti-script- Set lmdb to be the default db. - Convert btree tables to lmdb too. Stop postfix before converting from bdb to lmdb - This package is without bdb support. That's why convert must be done without any suse release condition. o remove patch postfix-no-btree.patch o add set-default-db-type.patch- Set database type for address_verify_map and postscreen_cache_map to lmdb (btree requires Berkeley DB) o add postfix-no-btree.patch- Set default database type to lmdb and fix update_postmaps script- Use variable substition instead of sed to remove .db suffix and substitute hash: for lmdb: in /etc/postfix/master.cf as well. Check before substitution if there is something to do (to keep rpmcheck happy).- bsc#1176650 L3: What is regularly triggering the "fillup" command and changing modify-time of /etc/sysconfig/postfix? o Remove miss placed fillup_only call from %verifyscript- Remove Berkeley DB dependency (JIRA#SLE-12191) The pacakges postfix is build without Berkely DB support. lmdb will be used instead of BDB. The pacakges postfix-bdb is build with Berkely DB support. o add patch for main.cf for postfix-bdb package postfix-bdb-main.cf.patch- Update to 3.5.8 * The Postfix SMTP client inserted into message headers longer than $line_length_limit (default: 2048), causing all subsequent header content to become message body content. * The postscreen daemon did not save a copy of the postscreen_dnsbl_reply_map lookup result. This has no effect when the recommended texthash: look table is used, but it could result in stale data with other lookup tables. * After deleting a recipient with a Milter, the Postfix recipient duplicate filter was not updated; the filter suppressed requests to add the recipient back. * Memory leak: the static: maps did not free their casefolding buffer. * With "smtpd_tls_wrappermode = yes", the smtps service was waiting for a TLS handshake, after processing an XCLIENT command. * The smtp_sasl_mechanism_filter implementation ignored table lookup errors, treating them as 'not found'. * The code that looks for Delivered-To: headers ignored headers longer than $line_length_limit (default: 2048).- Update to 3.5.7 * Fixed random certificate verification failures with "smtp_tls_connection_reuse = yes", because tlsproxy(8) was using the wrong global TLS context for connections that use DANE or non-DANE trust anchors.- Move ldap into an own sub-package like all other databases - Move manual pages to correct sub-package- Use sysusers.d to create system accounts - Remove wrong %config for systemd directory content- Use the correct signature file for source verification - Rename postfix-3.5.6.tar.gz.sig to postfix-3.5.6.tar.gz.asc (to prevent confusion, as the signature file from upstream with .sig extension is incompatible with the build service)- Update to 3.5.6 with following fixes: * Workaround for unexpected TLS interoperability problems when Postfix runs on OS distributions with system-wide OpenSSL configurations. * Memory leaks in the Postfix TLS library, the largest one involving multiple kBytes per peer certificate.- Add source verification (add postfix.keyring)- Use systemd_ordering instead of systemd_require. - Move /etc/postfix/system to /usr/lib/postfix/systemd [bsc#1173688] - Drop /var/adm/SuSEconfig from %post, it does nothing. - Rename postfix-SuSE to postfix-SUSE - Delete postfix-SUSE/README.SuSE, company name spelled wrong, completly outdated and not used. - Delete postfix-SUSE/SPAMASSASSIN+POSTFIX.SuSE, company name spelled wrong, outdated and not used. - sysconfig.mail-postfix: Fix description of MAIL_CREATE_CONFIG, SuSEconfig is gone since ages. - update_chroot.systemd: Remove advice to run SuSEconfig. - Remove rc.postfix, not used, outdated. - mkpostfixcert: Remove advice to run SuSEconfig.- Update to 3.5.4: * The connection_reuse attribute in smtp_tls_policy_maps always resulted in an "invalid attribute name" error. * SMTP over TLS connection reuse always failed for Postfix SMTP client configurations that specify explicit trust anchors (remote SMTP server certificates or public keys). * The Postfix SMTP client's DANE implementation would always send an SNI option with the name in a destination's MX record, even if the MX record pointed to a CNAME record. MX records that point to CNAME records are not conformant with RFC5321, and so are rare. Based on the DANE survey of ~2 million hosts it was found that with the corrected SMTP client behavior, sending SNI with the CNAME-expanded name, the SMTP server would not send a different certificate. This fix should therefore be safe.- Update to 3.5.3: * TLS handshake failure in the Postfix SMTP server during SNI processing, after the server-side TLS engine sent a TLSv1.3 HelloRetryRequest (HRR) to a remote SMTP client. * The command "postfix tls deploy-server-cert" did not handle a missing optional argument. This bug was introduced in Postfix 3.1.- Update to 3.5.2: * A TLS error for a database client caused a false 'lost connection' error for an SMTP over TLS session in the same Postfix process. This bug was introduced with Postfix 2.2. * The same bug existed in the tlsproxy(8) daemon, where a TLS error for one TLS session could cause a false 'lost connection' error for a concurrent TLS session in the same process. This bug was introduced with Postfix 2.8. * The Postfix build now disables DANE support on Linux systems with libc-musl such as Alpine, because libc-musl provides no indication whether DNS responses are authentic. This broke DANE support without a clear explanation. * Due to implementation changes in the ICU library, some Postfix daemons reported file access errrors (U_FILE_ACCESS_ERROR) after chroot(). This was fixed by initializing the ICU library before making the chroot() call. * Minor code changes to silence a compiler that special-cases string literals. * Segfault (null pointer) in the tlsproxy(8) client role when the server role was disabled. This typically happened on systems that do not receive mail, after configuring connection reuse for outbound SMTP over TLS. * The date portion of the maillog_file_rotate_suffix default value used the minute (%M) instead of the month (%m).- boo#1106004 fix incorrect locations for files in postfix-files- Dropped deprecated-RES_INSECURE1.patch to make DNSSEC-secured lookups and DANE mail transport work again - Update to 3.5.1: * Support for the haproxy v2 protocol. The Postfix implementation supports TCP over IPv4 and IPv6, as well as non-proxied connections; the latter are typically used for heartbeat tests. * Support to force-expire email messages. This introduces new postsuper(1) command-line options to request expiration, and additional information in mailq(1) or postqueue(1) output. * The Postfix SMTP and LMTP client support a list of nexthop destinations separated by comma or whitespace. These destinations will be tried in the specified order. * Incompatible changes: * Logging: Postfix daemon processes now log the from= and to= addresses in external (quoted) form in non-debug logging (info, warning, etc.). This means that when an address localpart contains spaces or other special characters, the localpart will be quoted, for example: from=<"name with spaces"@example.com> Specify "info_log_address_format = internal" for backwards compatibility. * Postfix now normalizes IP addresses received with XCLIENT, XFORWARD, or with the HaProxy protocol, for consistency with direct connections to Postfix. This may change the appearance of logging, and the way that check_client_access will match subnets of an IPv6 address.- Update to 3.4.10: * Bug (introduced: Postfix 2.3): Postfix Milter client state was not properly reset after one Milter in a multi-Milter configuration failed during MAIL FROM, resulting in a Postfix Milter client panic during the next MAIL FROM command in the same SMTP session.- bsc#1162891 server:mail/postfix: cond_slp bug on TW after moving /etc/services to /usr/etc/services- bsc#1160413 postfix fails with -fno-common- Update to 3.4.9: * Bug (introduced: Postfix 3.1): smtp_dns_resolver_options were broken while adding support for negative DNS response caching in postscreen. Postfix was inadvertently changed to call res_query() instead of res_search(). * Bug (introduced: Postfix 2.5): Postfix ignored the CONNECT macro overrides from a Milter application. Postfix now evaluates the Milter macros for an SMTP CONNECT event after the Postfix-to-Milter connection is negotiated. * Bug (introduced: Postfix 3.0): sanitize (remote) server responses before storing them in the verify database, to avoid Postfix warnings about malformed UTF8. Found during code maintenance.- Update to 3.4.8: * Fix for an Exim interoperability problem when postscreen after-220 checks are enabled. Bug introduced in Postfix 3.4: the code that detected "PIPELINING after BDAT" looked at the wrong variable. The warning now says "BDAT without valid RCPT", and the error is no longer treated as a command PIPELINING error, thus allowing mail to be delivered. Meanwhile, Exim has been fixed to stop sending BDAT commands when postscreen rejects all RCPT commands. * Usability bug, introduced in Postfix 3.4: the parser for key/certificate chain files rejected inputs that contain an EC PARAMETERS object. While this is technically correct (the documentation says what types are allowed) this is surprising behavior because the legacy cert/key parameters will accept such inputs. For now, the parser skips object types that it does not know about for usability, and logs a warning because ignoring inputs is not kosher. * Bug introduced in Postfix 2.8: don't gratuitously enable all after-220 tests when only one such test is enabled. This made selective tests impossible with 'good' clients. This will be fixed in older Postfix versions at some later time.- Backport deprecated-RES_INSECURE1.patch in order to fix boo#1149705.- Update to 3.4.7: * Robustness: the tlsproxy(8) daemon could go into a loop, logging a flood of error messages. Problem reported by Andreas Schulze after enabling SMTP/TLS connection reuse. * Workaround: OpenSSL changed an SSL_Shutdown() non-error result value into an error result value, causing logfile noise. * Configuration: the new 'TLS fast shutdown' parameter name was implemented incorrectly. The documentation said "tls_fast_shutdown_enable", but the code said "tls_fast_shutdown". This was fixed by changing the code, because no-one is expected to override the default. * Performance: workaround for poor TCP loopback performance on LINUX, where getsockopt(..., TCP_MAXSEG, ...) reports a bogus TCP maximal segment size that is 1/2 to 1/3 of the real MSS. To avoid client-side Nagle delays or server-side delayed ACKs caused by multiple smaller-than-MSS writes, Postfix chooses a VSTREAM buffer size that is a small multiple of the reported bogus MSS. This workaround increases the multiplier from 2x to 4x. * Robustness: the Postfix Dovecot client could segfault (null pointer read) or cause an SMTP server assertion to fail when talking to a fake Dovecot server. The Postfix Dovecot client now logs a proper error instead.- bsc#1120757 L3: File Permissions->Paranoid can cause a system hang Break loop if postfix has no permission in spool directory. - add postfix-avoid-infinit-loop-if-no-permission.patch- fix for boo#1144946 mydestination - missing default localhost * update config.postfix- bsc#1142881 - mkpostfixcert from Postfix still uses md- removal of SuSEfirewall2 service, since SuSEfirewall2 has been replaced by firewalld, see [1]. [1]: https://lists.opensuse.org/opensuse-factory/2019-01/msg00490.html- update example POSTFIX_BASIC_SPAM_PREVENTION: permit_mynetworks for * POSTFIX_SMTPD_HELO_RESTRICTIONS * POSTFIX_SMTPD_RECIPIENT_RESTRICTIONS - fix for: Can't connect to local MySQL server through socket '/run/mysql/mysql.sock' * update config.postfix * update update_chroot.systemd- Update to 3.4.6: * Workaround for implementations that hang Postfix while shutting down a TLS session, until Postfix times out. With "tls_fast_shutdown_enable = yes" (the default), Postfix no longer waits for the TLS peer to respond to a TLS 'close' request. This is recommended with TLSv1.0 and later. * Fixed a too-strict censoring filter that broke multiline Milter responses for header/body events. Problem report by Andreas Thienemann. * The code to reset Postfix SMTP server command counts was not called after a HaProxy handshake failure, causing stale numbers to be reported. Problem report by Joseph Ward. * postconf(5) documentation: tlsext_padding is not a tls_ssl_options feature. * smtp(8) documentation: updated the BUGS section text about Postfix support to reuse open TLS connections. * Portability: added "#undef sun" to util/unix_dgram_connect.c.- Ensure that postfix is member of all groups as before.- BuildRequire pkgconfig(systemd) instead of systemd: allow OBS to shortcut the build queues by allowing usage of systemd-mini- Drop the omc config fate#301838: * it is obsolete since SLE11- bsc#1104543 config.postfix does not start tlsmgr in master.cf when using POSTFIX_SMTP_TLS_CLIENT="must". Applyed the proposed patch.- Update to 3.4.5: Bugfix (introduced: Postfix 3.0): LMTP connections over UNIX-domain sockets were cached but not reused, due to a cache lookup key mismatch. Therefore, idle cached connections could exhaust LMTP server resources, resulting in two-second pauses between email deliveries. This problem was investigated by Juliana Rodrigueiro. File: smtp/smtp_connect.c.- Update to 3.4.4 o Incompatible changes - The Postfix SMTP server announces CHUNKING (BDAT command) by default. In the unlikely case that this breaks some important remote SMTP client, disable the feature as follows: /etc/postfix/main.cf: [#] The logging alternative: smtpd_discard_ehlo_keywords = chunking [#] The non-logging alternative: smtpd_discard_ehlo_keywords = chunking, silent_discard - This introduces a new master.cf service 'postlog' with type 'unix-dgram' that is used by the new postlogd(8) daemon. Before backing out to an older Postfix version, edit the master.cf file and remove the postlog entry. - Postfix 3.4 drops support for OpenSSL 1.0.1 - To avoid performance loss under load, the tlsproxy(8) daemon now requires a zero process limit in master.cf (this setting is provided with the default master.cf file). By default, a tlsproxy(8) process will retire after several hours. - To set the tlsproxy process limit to zero: postconf -F tlsproxy/unix/process_limit=0 postfix reload o Major changes - Postfix SMTP server support for RFC 3030 CHUNKING (the BDAT command) without BINARYMIME, in both smtpd(8) and postscreen(8). This has no effect on Milters, smtpd_mumble_restrictions, and smtpd_proxy_filter. See BDAT_README for more. - Support for logging to file or stdout, instead of using syslog. - Logging to file solves a usability problem for MacOS, and eliminates multiple problems with systemd-based systems. - Logging to stdout is useful when Postfix runs in a container, as it eliminates a syslogd dependency. - Better handling of undocumented(!) Linux behavior whether or not signals are delivered to a PID=1 process. - Support for (key, list of filenames) in map source text. Currently, this feature is used only by tls_server_sni_maps. - Automatic retirement: dnsblog(8) and tlsproxy(8) process will now voluntarily retire after after max_idle*max_use, or some sane limit if either limit is disabled. Without this, a process could stay busy for days or more. - Postfix SMTP client support for multiple deliveries per TLS-encrypted connection. This is primarily to improve mail delivery performance for destinations that throttle clients when they don't combine deliveries. This feature is enabled with "smtp_tls_connection_reuse=yes" in main.cf, or with "tls_connection_reuse=yes" in smtp_tls_policy_maps. It supports all Postfix TLS security levels including dane and dane-only. - SNI support in the Postfix SMTP server, the Postfix SMTP client, and in the tlsproxy(8) daemon (both server and client roles). See the postconf(5) documentation for the new tls_server_sni_maps and smtp_tls_servername parameters. - Support for files that contain multiple (key, certificate, trust chain) instances. This was required to implement server-side SNI table lookups, but it also eliminates the need for separate cert/key files for RSA, DSA, Elliptic Curve, and so on. - Support for smtpd_reject_footer_maps (as well as the postscreen variant postscreen_reject_footer_maps) for more informative reject messages. This is indexed with the Postfix SMTP server response text, and overrides the footer specified with smtpd_reject_footer. One will want to use a pcre: or regexp: map with this. o Bugfixes - Andreas Schulze discovered that reject_multi_recipient_bounce was producing false rejects with BDAT commands. This problem already existed with Postfix 2.2 smtpd_end_of_data_restrictons. Postfix 3.4.4 fixes both.- postfix-linux45.patch: support also newer kernels -- pretend we are still at kernel 3. Note that there are no conditionals for LINUX3 or LINUX4. And LINUX5 was generated, but not tested in the code which caused build failures.- skip set -x and fix version update changes entry- Update to 3.3.3 * When the master daemon runs with PID=1 (init mode), it will now reap child processes from non-Postfix code running in the same container, instead of terminating with a panic. * Bugfix (introduced: postfix-2.11): with posttls-finger, connections to unix-domain servers always resulted in "Failed to establish session" even after a connection was established. Jaroslav Skarva. File: posttls-finger/posttls-finger.c. * Bugfix (introduced: Postfix 3.0): with smtputf8_enable=yes, table lookups could casefold the search string when searching a lookup table that does not use fixed-string keys (regexp, pcre, tcp, etc.). Historically, Postfix would not case-fold the search string with such tables. File: util/dict_utf8.c.- PostrgeSQL's pg_config is meant for linking server extensions, use libpq's pkg-config instead, if available. This is needed to fix build with PostgreSQL 11.- rework config.postfix * disable commenting of smtpd_sasl_path/smtpd_sasl_type no need to comment, cause it is set to default anyway and 'uncommenting' would place it at end of file then which is not wanted- rework postfix-main.cf.patch * disable virtual_alias_domains cause (default: $virtual_alias_maps) - rework config.postfix * disable PCONF of virtual_alias_domains virtual_alias_maps will be set anyway to the correct value * extend virtual_alias_maps with - mysql_virtual_alias_domain_maps.cf - mysql_virtual_alias_domain_catchall_maps.cf - rework postfix-mysql, added * mysql_virtual_alias_domain_maps.cf * mysql_virtual_alias_domain_catchall_maps.cf needed for reject_unverified_recipient- binary hardening: link with full RELRO- Update to 3.3.2 * Support for OpenSSL 1.1.1 and TLSv1.3. * Bugfixes: - smtpd_discard_ehlo_keywords could not disable "SMTPUTF8", because some lookup table was using "EHLO_MASK_SMTPUTF8" instead. - minor memory leak in DANE support when minting issuer certs. - The Postfix build did not abort if the m4 command was not installed, resulting in a broken postconf command.- add POSTFIX_RELAY_DOMAINS * more flexibility to add to relay_domains without breaking config.postfix * rework restriction examples in sysconf.postfix based on postfix-buch.com (2. edtion by Hildebrandt, Koetter) - disable weak cipher: RC4 after check with https://ssl-tools.net/mailservers- update config.postfix * don't reject mail from authenticated users even if reject_unknown_client_hostname would match, add permit_sasl_authenticated to all restrictions requires smtpd_delay_reject = yes - update postfix-main.cf.patch * recover removed setting smtpd_sasl_path and smtpd_sasl_type, set to default value config.postfix will not 'enable' (remove #) var, but place modified (enabled) var at end of file, far away from place where it should be - rebase patches * fix-postfix-script.patch * postfix-vda-v14-3.0.3.patch * postfix-linux45.patch * postfix-master.cf.patch * pointer_to_literals.patch * postfix-no-md5.patch- bsc#1092939 - Postfixes postconf gives a lot of LDAP related warnings o add m4 as buildrequires, as proposed.- Add zlib-devel as buildrequires, previously included from openssl-devel- bsc#1087471 Unreleased Postfix update breaks SUSE Manager o Removing setting smtpd_sasl_path and smtpd_sasl_type to empty- Update to 3.3.1 * Postfix did not support running as a PID=1 process, which complicated Postfix deployment in containers. The "postfix start-fg" command will now run the Postfix master daemon as a PID=1 process if possible. Thanks for inputs from Andreas Schulze, Eray Aslan, and Viktor Dukhovni. * Segfault in the postconf(1) command after it could not open a Postfix database configuration file due to a file permission error (dereferencing a null pointer). Reported by Andreas Hasenack, fixed by Viktor Dukhovni. * The luser_relay feature became a black hole, when the luser_relay parameter was set to a non-existent local address (i.e. mail disappeared silently). Reported by J?rgen Thomsen. * Missing error propagation in the tlsproxy(8) daemon could result in a segfault after TLS handshake error (dereferencing a 0xffff...ffff pointer). This daemon handles the TLS protocol when a non-whitelisted client sends a STARTTLS command to postscreen(8).- remove pre-requirements on sysvinit(network) and sysvinit(syslog). There seems to be no good reason for that other than blowing up the dependencies (bsc#1092408).- bsc#1071807 postfix-SuSE/config.postfix: only reload postfix if the actual service is running. This prevents spurious and irrelevant error messages in system logs.- bsc#1082514 autoyast: postfix gets not set myhostname properly - set to localhost- Refresh spec-file via spec-cleaner and manual optinizations. * Add %license macro. * Set license to IPL-1.0 OR EPL-2.0. - Update to 3.3.0 * http://cdn.postfix.johnriley.me/mirrors/postfix-release/official/postfix-3.3.0.RELEASE_NOTES * Dual license: in addition to the historical IBM Public License 1.0, Postfix is now also distributed with the more recent Eclipse Public License 2.0. Recipients can choose to take the software under the license of their choice. Those who are more comfortable with the IPL can continue with that license. * The postconf command now warns about unknown parameter names in a Postfix database configuration file. As with other unknown parameter names, these warnings can help to find typos early. * Container support: Postfix 3.3 will run in the foreground with "postfix start-fg". This requires that Postfix multi-instance support is disabled (the default). To collect Postfix syslog information on the container's host, mount the host's /dev/log socket into the container, for example with "docker run -v /dev/log:/dev/log ...other options...", and specify a distinct Postfix syslog_name setting in the container (for example with "postconf syslog_name=the-name-here"). * Milter support: applications can now send RET and ENVID parameters in SMFIR_CHGFROM (change envelope sender) requests. * Postfix-generated From: headers with 'full name' information are now formatted as "From: name
" by default. Specify "header_from_format = obsolete" to get the earlier form "From: address (name)". * Interoperability: when Postfix IPv6 and IPv4 support are both enabled, the Postfix SMTP client will now relax MX preferences and attempt to schedule similar numbers of IPv4 and IPv6 addresses. This works around mail delivery problems when a destination announces lots of primary MX addresses on IPv6, but is reachable only over IPv4 (or vice versa). The new behavior is controlled with the smtp_balance_mx_inet_protocols parameter. * Compatibility safety net: with compatibility_level < 1, the Postfix SMTP server now warns for mail that would be blocked by the Postfix 2.10 smtpd_relay_restrictions feature, without blocking that mail. There still is a steady trickle of sites that upgrade from an earlier Postfix version.- bsc#1065411 Package postfix should require package system-user-nobody - bsc#1080772 postfix smtpd throttle getting "hello" if no sasl auth was configured- Fix usage of fillup_only:-y is not a valid option to this macro.- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468)- Don't mark postfix.service as config file, this is no config file. - Some of the Requires(pre) are needed for post-install and at runtime, fix the requires.- update to 3.2.4 * DANE interoperability. Postfix builds with OpenSSL 1.0.0 or 1.0.1 failed to send email to some sites with "TLSA 2 X X" DNS records associated with an intermediate CA certificate. Problem report and initial fix by Erwan Legrand. * Missing dynamicmaps support in the Postfix sendmail command. This broke authorized_submit_users settings that use a dynamically-loaded map type. Problem reported by Ulrich Zehl.- bnc#1059512 L3: Postfix Problem The applied changes breaks existing postfix configurations because daemon_directory was not adapted to the new value.- fix build for SLE * nothing provides libnsl-devel * add bcond_with libnsl- bnc#1059512 L3: Postfix Problem To manage multiple Postfix instances on a single host requires that daemon_directory and shlib_directory is different to avoid use of the shared directories also as per-instance directories. For this reason daemon_directory was set to /usr/lib/postfix/bin/. shlib_directory stands /usr/lib/postfix/.- bnc#1016491 postfix raported to log "warning: group or other writable:" on each symlink in config. * Add fix-postfix-script.patch- update to 3.2.3 * Extension propagation was broken with "recipient_delimiter = .". This change reverts a change that was trying to be too clever. * The postqueue command would abort with a panic message after it experienced an output write error while listing the mail queue. This change restores a write error check that was lost with the Postfix 3.2 rewrite of the vbuf_print formatter. * Restored sanity checks for dynamically-specified width and precision in format strings (%*, %.*, and %*.*). These checks were lost with the Postfix 3.2 rewrite of the vbuf_print formatter.- Add libnsl-devel build requires for glibc obsoleting libnsl- bnc#1045264 L3: postmap problem * Applying proposed patch of leen.meyer@ziggo.nl in bnc#771811- update to 3.2.2 * Security: Berkeley DB versions 2 and later try to read settings from a file DB_CONFIG in the current directory. This undocumented feature may introduce undisclosed vulnerabilities resulting in privilege escalation with Postfix set-gid programs (postdrop, postqueue) before they chdir to the Postfix queue directory, and with the postmap and postalias commands depending on whether the user's current directory is writable by other users. This fix does not change Postfix behavior for Berkeley DB versions < 3, but it does reduce postmap and postalias 'create' performance with Berkeley DB versions 3.0 .. 4.6. * The SMTP server receive_override_options were not restored at the end of an SMTP session, after the options were modified by an smtpd_milter_maps setting of "DISABLE". Milter support remained disabled for the life time of the smtpd process. * After the Postfix 3.2 address/domain table lookup overhaul, the check_sender_access and check_recipient_access features ignored a non-default parent_domain_matches_subdomains setting.- revert changes of postfix-main.cf.patch from rev=261 * config.postfix will not 'enable' (remove #) var, but place modified (enabled) var at end of file, far away from place where it should be * keep vars enabled but empty- Some cleanups * Fix SUSE postfix-files to avoid chown errors (anyway this file seems to be obsolete) * Avoid installing shared libraries twice * Refresh patch postfix-linux45.patch- update postfix-master.cf.patch * recover lost (with 3.2.0 update) submission, smtps sections * merge with upstream update - update config.postfix * update master.cf generation for submission - rebase patches against 3.2.0 * pointer_to_literals.patch * postfix-no-md5.patch * postfix-ssl-release-buffers.patch * postfix-vda-v14-3.0.3.patch- Require system group mail - Use mail group name instead of GID- update to 3.2.0 - [Feature 20170128] Postfix 3.2 fixes the handling of address extensions with email addresses that contain spaces. For example, the virtual_alias_maps, canonical_maps, and smtp_generic_maps features now correctly propagate an address extension from "aa bb+ext"@example.com to "cc dd+ext"@other.example, instead of producing broken output. - [Feature 20161008] "PASS" and "STRIP" actions in header/body_checks. "STRIP" is similar to "IGNORE" but also logs the action, and "PASS" disables header, body, and Milter inspection for the remainder of the message content. Contributed by Hobbit. - [Feature 20160330] The collate.pl script by Viktor Dukhovni for grouping Postfix logfile records into "sessions" based on queue ID and process ID information. It's in the auxiliary/collate directory of the Postfix source tree. - [Feature 20160527] Postfix 3.2 cidr tables support if/endif and negation (by prepending ! to a pattern), just like regexp and pcre tables. The primarily purpose is to improve readability of complex tables. See the cidr_table(5) manpage for syntax details. - [Incompat 20160925] In the Postfix MySQL database client, the default option_group value has changed to "client", to enable reading of "client" option group settings in the MySQL options file. This fixes a "not found" problem with Postfix queries that contain UTF8-encoded non-ASCII text. Specify an empty option_group value (option_group =) to get backwards-compatible behavior. - [Feature 20161217] Stored-procedure support for MySQL databases. Contributed by John Fawcett. See mysql_table(5) for instructions. - [Feature 20170128] The postmap command, and the inline: and texthash: maps now support spaces in left-hand field of the lookup table "source text". Use double quotes (") around a left-hand field that contains spaces, and use backslash (\) to protect embedded quotes in a left-hand field. There is no change in the processing of the right-hand field. - [Feature 20160611] The Postfix SMTP server local IP address and port are available in the policy delegation protocol (attribute names: server_address, server_port), in the Milter protocol (macro names: {daemon_addr}, {daemon_port}), and in the XCLIENT protocol (attribute names: DESTADDR, DESTPORT). - [Feature 20161024] smtpd_milter_maps support for per-client Milter configuration that overrides smtpd_milters, and that has the same syntax. A lookup result of "DISABLE" turns off Milter support. See MILTER_README.html for details. - [Feature 20160611] The Postfix SMTP server local IP address and port are available in the policy delegation protocol (attribute names: server_address, server_port), in the Milter protocol (macro names: {daemon_addr}, {daemon_port}), and in the XCLIENT protocol (attribute names: DESTADDR, DESTPORT). - [Incompat 20170129] The postqueue command no longer forces all message arrival times to be reported in UTC. To get the old behavior, set TZ=UTC in main.cf:import_environment (this override is not recommended, as it affects all Postfix utities and daemons). - [Incompat 20161227] For safety reasons, the sendmail -C option must specify an authorized directory: the default configuration directory, a directory that is listed in the default main.cf file with alternate_config_directories or multi_instance_directories, or the command must be invoked with root privileges (UID 0 and EUID 0). This mitigates a recurring problem with the PHP mail() function. - [Feature 20160625] The Postfix SMTP server now passes remote client and local server network address and port information to the Cyrus SASL library. Build with ``make makefiles "CCARGS=$CCARGS -DNO_IP_CYRUS_SASL_AUTH"'' for backwards compatibility. - [Feature 20161103] Postfix 3.2 disables the 'transitional' compatibility between the IDNA2003 and IDNA2008 standards for internationalized domain names (domain names beyond the limits of US-ASCII). This change makes Postfix behavior consistent with contemporary web browsers. It affects the handling of some corner cases such as German sz and Greek zeta. See http://unicode.org/cldr/utility/idna.jsp for more examples. Specify "enable_idna2003_compatibility = yes" to restore historical behavior (but keep in mind that the rest of the world may not make that same choice). - [Feature 20160828] Fixes for deprecated OpenSSL 1.1.0 API features, so that Postfix will build without depending on backwards-compatibility support. [Incompat 20161204] Postfix 3.2 removes tentative features that were implemented before the DANE spec was finalized: - Support for certificate usage PKIX-EE(1), - The ability to disable digest agility (Postfix now behaves as if "tls_dane_digest_agility = on"), and - The ability to disable support for "TLSA 2 [01] [12]" records that specify the digest of a trust anchor (Postfix now behaves as if "tls_dane_trust_anchor_digest_enable = yes). - [Feature 20161217] Postfix 3.2 enables elliptic curve negotiation with OpenSSL >= 1.0.2. This changes the default smtpd_tls_eecdh_grade setting to "auto", and introduces a new parameter tls_eecdh_auto_curves with the names of curves that may be negotiated. The default tls_eecdh_auto_curves setting is determined at compile time, and depends on the Postfix and OpenSSL versions. At runtime, Postfix will skip curve names that aren't supported by the OpenSSL library. - [Feature 20160611] The Postfix SMTP server local IP address and port are available in the policy delegation protocol (attribute names: server_address, server_port), in the Milter protocol (macro names: {daemon_addr}, {daemon_port}), and in the XCLIENT protocol (attribute names: DESTADDR, DESTPORT). - refresh postfix-master.cf.patch- make sure that system users can be created in %pre- Fix requires: - shadow is needed for postfix-mysql pre-install section - insserv is not needed if systemd is used- update postfix-mysql * update mysql_*.cf files * update postfix-mysql.sql (INNODB, utf8) - update postfix-main.cf.patch * uncomment smtpd_sasl_path, smtpd_sasl_type can be changed via POSTFIX_SMTP_AUTH_SERVICE=(cyrus,dovecot) * add option for smtp_tls_policy_maps (commented) - update postfix-master.cf.patch * fix indentation of submission, smtps options for correct enabling via config.postfix - update config.postfix * fix sync of CA certificates * fix master.cf generation for submission, smtps - rebase postfix-vda-v14-3.0.3.patch- FATE#322322 Update postfix to version 3.X Merging changes with SLES12-SP2 Removeved patches: add_missed_library.patch bnc#947707.diff dynamic_maps.patch postfix-db6.diff postfix-opensslconfig.patch bnc#947519.diff dynamic_maps_pie.patch postfix-post-install.patch These are included in the new version of postfix - Remove references to SuSEconfig.postfix from sysconfig docs. (bsc#871575) - bnc#947519 SuSEconfig.postfix should enforce umask 022 - bnc#947707 mail generated by Amavis being prevented from being re-adressed by /etc/postfix/virtual - bnc#972346 /usr/sbin/SuSEconfig.postfix is wrong - postfix-linux45.patch: handle Linux 4.x and Linux 5.x (used by aarch64) (bsc#940289)- update to 3.1.4 * The postscreen daemon did not merge the client test status information for concurrent sessions from the same IP address. * The Postfix SMTP server falsely rejected a sender address when validating a sender address with "smtpd_reject_unlisted_recipient = yes" or with "reject_unlisted_sender". Cause: the address validation code did not query sender_canonical_maps. * The virtual delivery agent did not detect failure to skip to the end of a mailbox file, so that mail would be delivered to the beginning of the file. This could happen when a mailbox file was already larger than the virtual mailbox size limit. * The postsuper logged an incorrect rename operation count after creating a missing directory. * The Postfix SMTP server falsely rejected mail when a sender-dependent "error" transport was configured. Cause: the SMTP server address validation code was not updated when the sender_dependent_default_transport_maps feature was introduced. * The Postfix SMTP server falsely rejected an SMTPUTF8 sender address, when "smtpd_delay_reject = no". * The "postfix tls deploy-server-cert" command used the wrong certificate and key file. This was caused by a cut-and-paste error in the postfix-tls-script file.- improve config.postfix * improve SASL stuff * add POSTFIX_SMTP_AUTH_SERVICE=(cyrus|dovecot)- improve config.postfix * improve with MySQL stuff- update vda patch to latest available * remove postfix-vda-v13-3.10.0.patch * add postfix-vda-v14-3.0.3.patch - rebase patches (and to be p0) * pointer_to_literals.patch * postfix-main.cf.patch * postfix-master.cf.patch * postfix-no-md5.patch * postfix-ssl-release-buffers.patch - add /etc/postfix/ssl as default DIR for SSL stuff * cacerts -> ../../ssl/certs/ * certs/ - revert POSTFIX_SSL_PATH from '/etc/ssl' to '/etc/postfix/ssl' - improve config.postfix * revert smtpd_tls_CApath to POSTFIX_SSL_PATH/cacerts which is a symlink to /etc/ssl/certs Without reverting, 'gen_CA' would create files which would then be on the previous defined 'sslpath(/etc/ssl)/certs' (smtpd_tls_CApath) Cert reqs would be placed in 'sslpath(/etc/ssl)/certs/postfixreq.pem' which is not a good idea. * mkchroot: sync '/etc/postfix/ssl' to chroot * improve PCONF for smtp{,d}_tls_{cert,key}_file, adding/removing from main.cf, show warning if enabled and file is missing- update to 3.1.3: * The Postfix SMTP server did not reset a previous session's failed/total command counts before rejecting a client that exceeds request or concurrency rates. This resulted in incorrect failed/total command counts being logged at the end of the rejected session. * The unionmap multi-table interface did not propagate table lookup errors, resulting in false "user unknown" responses. * The documentation was updated with a workaround for false "not found" errors with MySQL map queries that contain UTF8-encoded text. The workaround is to specify "option_group = client" in Postfix MySQL configuration files. This will be the default setting with Postfix 3.2 and later.- update to 3.1.2: * Changes to make Postfix build with OpenSSL 1.1.0. * The makedefs script ignored readme_directory=pathname overrides. Fix by Todd C. Olson. * The tls_session_ticket_cipher documentation says that the default cipher for TLS session tickets is aes-256-cbc, but the implemented default was aes-128-cbc. Note that TLS session ticket keys are rotated after 1/2 hour, to limit the impact of attacks on session ticket keys.- postfix-post-install.patch: remove empty patch- fix Changelog cause of Factory decline- Fix typo in config.postfix- bnc#981097 config.postfix creates broken main.cf for tls client configuration - bnc#981099 /etc/sysconfig/postfix: POSTFIX_SMTP_TLS_CLIENT incomplete - update to 3.1.1: - The new address_verify_pending_request_limit parameter introduces a safety limit for the number of address verification probes in the active queue. The default limit is 1/4 of the active queue maximum size. The queue manager enforces the limit by tempfailing probe messages that exceed the limit. This design avoids dependencies on global counters that get out of sync after a process or system crash. - Machine-readable, JSON-formatted queue listing with "postqueue -j" (no "mailq" equivalent). - The milter_macro_defaults feature provides an optional list of macro name=value pairs. These specify default values for Milter macros when no value is available from the SMTP session context. - Support to enforce a destination-independent delay between email deliveries. The following example inserts 20 seconds of delay between all deliveries with the SMTP transport, limiting the delivery rate to at most three messages per minute. smtp_transport_rate_delay = 20s - Historically, the default setting "postscreen_dnsbl_ttl = 1h" assumes that a "not found" result from a DNSBL server will be valid for one hour. This may have been adequate five years ago when postscreen was first implemented, but nowadays, that one hour can result in missed opportunities to block new spambots. To address this, postscreen now respects the TTL of DNSBL "not found" replies, as well as the TTL of DNSWL replies (both "found" and "not found"). The TTL for a "not found" reply is determined according to RFC 2308 (the TTL of an SOA record in the reply). Support for DNSBL or DNSWL reply TTL values is controlled by two configuration parameters: postscreen_dnsbl_min_ttl (default: 60 seconds). postscreen_dnsbl_max_ttl (default: $postscreen_dnsbl_ttl or 1 hour) The postscreen_dnsbl_ttl parameter is now obsolete, and has become the default value for the new postscreen_dnsbl_max_ttl parameter. - New "smtpd_client_auth_rate_limit" feature, to enforce an optional rate limit on AUTH commands per SMTP client IP address. Similar to other smtpd_client_*_rate_limit features, this enforces a limit on the number of requests per $anvil_rate_time_unit. - New SMTPD policy service attribute "policy_context", with a corresponding "smtpd_policy_service_policy_context" configuration parameter. Originally, this was implemented to share the same SMTPD policy service endpoint among multiple check_policy_service clients. - A new "postfix tls" command to quickly enable opportunistic TLS in the Postfix SMTP client or server, and to manage SMTP server keys and certificates, including certificate signing requests and TLSA DNS records for DANE.- build with working support for SMTPUTF8- fix build on sle11 by pointing _libexecdir to /usr/lib all the time.- some distros did not pull pkgconfig indirectly. pull it directly.- fix building the dynamic maps: the old build had postgresql e.g. with missing symbols. - convert to AUXLIBS_* instead of plain AUXLIBS which is needed for proper dynamic maps. - reordered the CCARGS and AUXLIBS* lines to group by feature - use pkgconfig or *_config tools where possible - picked up signed char from fedora spec file - enable lmdb support: new BR lmdb-devel, new subpackage postfix-lmdb. - don't delete vmail user/groups- update to 3.1.0 - Since version 3.0 postfix supports dynamic loading of cdb:, ldap:, lmdb:, mysql:, pcre:, pgsql:, sdbm:, and sqlite: database clients. Thats why the patches dynamic_maps.patch and dynamic_maps_pie.patch could be removed. - Adapting all the patches to postfix 3.1.0 - remove obsolete patches * add_missed_library.patch * postfix-opensslconfig.patch - update vda patch * remove postfix-vda-v13-2.10.0.patch * add postfix-vda-v13-3.10.0.patch - The patch postfix-db6.diff is not more neccessary - Backwards-compatibility safety net. With NEW Postfix installs, you MUST install a main.cf file with the setting "compatibility_level = 2". See conf/main.cf for an example. With UPGRADES of existing Postfix systems, you MUST NOT change the main.cf compatibility_level setting, nor add this setting if it does not exist. Several Postfix default settings have changed with Postfix 3.0. To avoid massive frustration with existing Postfix installations, Postfix 3.0 comes with a safety net that forces Postfix to keep running with backwards-compatible main.cf and master.cf default settings. This safety net depends on the main.cf compatibility_level setting (default: 0). Details are in COMPATIBILITY_README. - Major changes - tls * [Feature 20160207] A new "postfix tls" command to quickly enable opportunistic TLS in the Postfix SMTP client or server, and to manage SMTP server keys and certificates, including certificate signing requests and TLSA DNS records for DANE. * As of the middle of 2015, all supported Postfix releases no longer nable "export" grade ciphers for opportunistic TLS, and no longer use the deprecated SSLv2 and SSLv3 protocols for mandatory or opportunistic TLS. * [Incompat 20150719] The default Diffie-Hellman non-export prime was updated from 1024 to 2048 bits, because SMTP clients are starting to reject TLS handshakes with primes smaller than 2048 bits. * [Feature 20160103] The Postfix SMTP client by default enables DANE policies when an MX host has a (DNSSEC) secure TLSA DNS record, even if the MX DNS record was obtained with insecure lookups. The existence of a secure TLSA record implies that the host wants to talk TLS and not plaintext. For details see the smtp_tls_dane_insecure_mx_policy configuration parameter. - Major changes - default settings [Incompat 20141009] The default settings have changed for relay_domains (new: empty, old: $mydestination) and mynetworks_style (new: host, old: subnet). However the backwards-compatibility safety net will prevent these changes from taking effect, giving the system administrator the option to make an old default setting permanent in main.cf or to adopt the new default setting, before turning off backwards compatibility. See COMPATIBILITY_README for details. [Incompat 20141001] A new backwards-compatibility safety net forces Postfix to run with backwards-compatible main.cf and master.cf default settings after an upgrade to a newer but incompatible Postfix version. See COMPATIBILITY_README for details. While the backwards-compatible default settings are in effect, Postfix logs what services or what email would be affected by the incompatible change. Based on this the administrator can make some backwards-compatibility settings permanent in main.cf or master.cf, before turning off backwards compatibility. - Major changes - address verification safety [Feature 20151227] The new address_verify_pending_request_limit parameter introduces a safety limit for the number of address verification probes in the active queue. The default limit is 1/4 of the active queue maximum size. The queue manager enforces the limit by tempfailing probe messages that exceed the limit. This design avoids dependencies on global counters that get out of sync after a process or system crash. Tempfailing verify requests is not as bad as one might think. The Postfix verify cache proactively updates active addresses weeks before they expire. The address_verify_pending_request_limit affects only unknown addresses, and inactive addresses that have expired from the address verify cache (by default, after 31 days). - Major changes - json support [Feature 20151129] Machine-readable, JSON-formatted queue listing with "postqueue -j" (no "mailq" equivalent). The output is a stream of JSON objects, one per queue file. To simplify parsing, each JSON object is formatted as one text line followed by one newline character. See the postqueue(1) manpage for a detailed description of the output format. - Major changes - milter support [Feature 20150523] The milter_macro_defaults feature provides an optional list of macro name=value pairs. These specify default values for Milter macros when no value is available from the SMTP session context. For example, with "milter_macro_defaults = auth_type=TLS", the Postfix SMTP server will send an auth_type of "TLS" to a Milter, unless the remote client authenticates with SASL. This feature was originally implemented for a submission service that may authenticate clients with a TLS certificate, without having to make changes to the code that implements TLS support. - Major changes - output rate control [Feature 20150710] Destination-independent delivery rate delay Support to enforce a destination-independent delay between email deliveries. The following example inserts 20 seconds of delay between all deliveries with the SMTP transport, limiting the delivery rate to at most three messages per minute. /etc/postfix/main.cf: smtp_transport_rate_delay = 20s For details, see the description of default_transport_rate_delay and transport_transport_rate_delay in the postconf(5) manpage. - Major changes - postscreen dnsbl [Feature 20150710] postscreen support for the TTL of DNSBL and DNSWL lookup results Historically, the default setting "postscreen_dnsbl_ttl = 1h" assumes that a "not found" result from a DNSBL server will be valid for one hour. This may have been adequate five years ago when postscreen was first implemented, but nowadays, that one hour can result in missed opportunities to block new spambots. To address this, postscreen now respects the TTL of DNSBL "not found" replies, as well as the TTL of DNSWL replies (both "found" and "not found"). The TTL for a "not found" reply is determined according to RFC 2308 (the TTL of an SOA record in the reply). Support for DNSBL or DNSWL reply TTL values is controlled by two configuration parameters: postscreen_dnsbl_min_ttl (default: 60 seconds). This parameter specifies a minimum for the amount of time that a DNSBL or DNSWL result will be cached in the postscreen_cache_map. This prevents an excessive number of postscreen cache updates when a DNSBL or DNSWL server specifies a very small reply TTL. postscreen_dnsbl_max_ttl (default: $postscreen_dnsbl_ttl or 1 hour) This parameter specifies a maximum for the amount of time that a DNSBL or DNSWL result will be cached in the postscreen_cache_map. This prevents cache pollution when a DNSBL or DNSWL server specifies a very large reply TTL. The postscreen_dnsbl_ttl parameter is now obsolete, and has become the default value for the new postscreen_dnsbl_max_ttl parameter. - Major changes - sasl auth safety [Feature 20151031] New "smtpd_client_auth_rate_limit" feature, to enforce an optional rate limit on AUTH commands per SMTP client IP address. Similar to other smtpd_client_*_rate_limit features, this enforces a limit on the number of requests per $anvil_rate_time_unit. - Major changes - smtpd policy [Feature 20150913] New SMTPD policy service attribute "policy_context", with a corresponding "smtpd_policy_service_policy_context" configuration parameter. Originally, this was implemented to share the same SMTPD policy service endpoint among multiple check_policy_service clients.- bnc#958329 postfix fails to start when openslp is not installed- upstream update postfix 2.11.7: * The Postfix Milter client aborted with a panic while adding a message header, after adding a short message header with the header_checks PREPEND action. Fixed by invoking the header output function while PREPENDing a message header. * False alarms while scanning the Postfix queue. Fixed by resetting errno before calling readdir(). This defect was introduced 19970309. * The postmulti command produced an incorrect error message. * The postmulti command now refuses to create a new MTA instance when the template main.cf or master.cf file are missing. This is a common problem on Debian-like systems. * Turning on Postfix SMTP server HAProxy support broke TLS wrappermode. Fixed by temporarily using a 1-byte VSTREAM buffer to read the HAProxy connection hand-off information. * The xtext_unquote() function did not propagate error reports from xtext_unquote_append(), causing the decoder to return partial output, instead of rejecting malformed input. The Postfix SMTP server uses this function to parse input for the ENVID and ORCPT parameters, and for XFORWARD and XCLIENT command parameters.- boo#934060: Remove quirky hostname logic from config.postfix * /etc/hostname doesn't contain anything useful * linux.local is no good either * postfix will use `hostname`.localdomain as fallback- postfix-no-md5.patch: replace fingerprint defaults by sha1. bsc#928885- %verifyscript is a new section, move it out of the %ifdef so the fillups are run afterwards.- upstream update postfix 2.11.6: Default settings have been updated so that they no longer enable export-grade ciphers, and no longer enable the SSLv2 and SSLv3 protocols. - removed postfix-2.11.5_linux4.patch because it's obsolete - Bugfix (introduced: Postfix 2.11): with connection caching enabled (the default), recipients could be given to the wrong mail server. (bsc#944722)- postfix-SuSE.tar.gz/postfix.service: None of nss-lookup.target network.target local-fs.target time-sync.target should be Wanted or Required except by the services the implement the relevant functionality i.e network.target is wanted/required by networkmanager, wicked, systemd-network. other software must be ordered After them, see systemd.special(7)- Fix library symlink generation (boo#928662)- added postfix-2.11.5_linux4.patch: Allow building on kernel 4. Patch taken from: https://groups.google.com/forum/#!topic/mailing.postfix.users/fufS22sMGWY- update to postfix 2.11.5 - Bugfix (introduced: Postfix 2.6): sender_dependent_relayhost_maps ignored the relayhost setting in the case of a DUNNO lookup result. It would use the recipient domain instead. Viktor Dukhovni. Wietse took the pieces of code that enforce the precedence of a sender-dependent relayhost, the global relayhost, and the recipient domain, and put that code together in once place so that it is easier to maintain. File: trivial-rewrite/resolve.c. - Bitrot: prepare for future changes in OpenSSL API. Viktor Dukhovni. File: tls_dane.c. - Incompatibility: specifying "make makefiles" with "CC=command" will no longer override the default WARN setting.- upstream update postfix 2.11.4: Postfix 2.11.4 only: * Fix a core dump when smtp_policy_maps specifies an invalid TLS level. * Fix a missing " in \%s\", in postconf(1) fatal error messages, which violated the C language spec. Reported by Iain Hibbert. All supported releases: * Stop excessive recursion in the cleanup server while recovering from a virtual alias expansion loop. Problem found at Two Sigma. * Stop exponential memory allocation with virtual alias expansion loops. This came to light after fixing the previous problem.- correct pf_daemon_directory in spec. This must be /usr/lib/- bnc#914086 syntax error in config.postfix - Adapt config.postfix to be able to run on SLE11 too.- Don't install sysvinit script when systemd is used - Make explicit PreReq dependencies conditional only for older systems - Don't try to set explicit attributes to symlinks - Cleanup spec file vith spec-cleaner- bnc#912594 config.postfix creates config based on old options- bnc#911806 config.postfix does not set up correct saslauthd socket directory for chroot - bnc#910265 config.postfix does not upgrade the chroot - bnc#908003 wrong access rights on /usr/sbin/postdrop causes permission denied when trying to send a mail as non root user - bnc#729154 wrong permissions for some postfix components- Remove keyring and things as it is md5 based one no longer accepted by gpg 2.1- No longer perform gpg validation; osc source_validator does it implicit: + Drop gpg-offline BuildRequires. + No longer execute gpg_verify.- restore previously lost fix: Fri Oct 11 13:32:32 UTC 2013 - matz@suse.de - Ignore errors in %pre/%post.- postfix 2.11.3: * Fix for configurations that prepend message headers with Postfix access maps, policy servers or Milter applications. Postfix now hides its own Received: header from Milters and exposes prepended headers to Milters, regardless of the mechanism used to prepend a header. This fix reverts a partial solution that was released on October 13, 2014, and replaces it with a complete solution. * Portability fix for MacOS X 10.7.x (Darwin 11.x) build procedure. - postfix 2.11.2: * Fix for DMARC implementations based on SPF policy plus DKIM Milter. The PREPEND access/policy action added headers ABOVE Postfix's own Received: header, exposing Postfix's own Received: header to Milters (protocol violation) and hiding the PREPENDed header from Milters. PREPENDed headers are now added BELOW Postfix's own Received: header and remain visible to Milters. * The Postfix SMTP server logged an incorrect client name in reject messages for check_reverse_client_hostname_access and check_reverse_client_hostname_{mx,ns}_access. They replied with the verified client name, instead of the name that was rejected. * The qmqpd daemon crashed with null pointer bug when logging a lost connection while not in a mail transaction./bin/sh/bin/sh/bin/sh/bin/sh/bin/shs390zp38 1714723552  !"#$%&'()*+,-./0123456789:;<=>?@ABCD9FGH6JKLMNOPQRSTUVWXYZ[\]^`bdfhjklmnopqrsuvwxyz{|}~3.7.3-150500.3.14.33.7.3-150500.3.14.33.7.3-150500.3.14.3   smtppostfixpostfix.paranoidpostfixLICENSETLS_LICENSEaccessaliasesbounce.cf.defaultcanonicaldynamicmaps.cfgenericheader_checkshelo_accessmain.cfmain.cf.defaultmakedefs.outmaster.cfopenssl_postfix.conf.inpost-installpostfix-filespostfix-scriptpostfix-tls-scriptpostfix-wrapperpostmulti-scriptrelayrelay_ccertsrelocatedsasl_passwdsender_canonicalsslcacertscertstransportvirtualsasl2smtpd.confmailqnewaliasespostfixbinanvilbouncecleanupdiscarddnsblogerrorflushlmtplocalmasternqmgroqmgrpickuppipepost-installpostfix-scriptpostfix-tls-scriptpostfix-wrapperpostlogdpostmulti-scriptpostscreenproxymapqmgrqmqpdscacheshowqsmtpsmtpdspawntlsmgrtlsproxytrivial-rewriteverifyvirtualdynamicmaps.cfdynamicmaps.cf.dlibpostfix-dns.solibpostfix-global.solibpostfix-master.solibpostfix-tls.solibpostfix-util.somain.cf.protomakedefs.outmaster.cf.protopostfix-filespostfix-files.dpostfix-pcre.sosystemdcond_slpconfig_postfixupdate_chrootupdate_postmapswait_qmgrsendmailpostfix.servicepostfix-user.conflibpostfix-dns.solibpostfix-global.solibpostfix-master.solibpostfix-tls.solibpostfix-util.socheck_mail_queueconfig.postfixmkpostfixcertpostaliaspostcatpostconfpostdroppostfixpostkickpostlockpostlogpostmappostmultipostqueuepostsuperqmqp-sourcercpostfixsendmailsmtp-sinksmtp-sourcepostfix-bdbRELEASE_NOTESsysconfig.mail-postfixsysconfig.postfixpostfix-bdbLICENSETLS_LICENSEmailq.1.gznewaliases.1.gzpostalias.1.gzpostcat.1.gzpostconf.1.gzpostdrop.1.gzpostfix-tls.1.gzpostfix.1.gzpostkick.1.gzpostlock.1.gzpostlog.1.gzpostmap.1.gzpostmulti.1.gzpostqueue.1.gzpostsuper.1.gzsendmail.1.gzaccess.5.gzaliases.5.gzbody_checks.5.gzbounce.5.gzcanonical.5.gzcidr_table.5.gzgeneric.5.gzheader_checks.5.gzmaster.5.gzmemcache_table.5.gznisplus_table.5.gzpcre_table.5.gzpostconf.5.gzpostfix-wrapper.5.gzregexp_table.5.gzrelocated.5.gzsocketmap_table.5.gzsqlite_table.5.gztcp_table.5.gztransport.5.gzvirtual.5.gzanvil.8.gzbounce.8.gzcleanup.8.gzdefer.8.gzdiscard.8.gzdnsblog.8.gzerror.8.gzflush.8.gzlmtp.8.gzlocal.8.gzmaster.8.gzoqmgr.8.gzpickup.8.gzpipe.8.gzpostlogd.8.gzpostscreen.8.gzproxymap.8.gzqmgr.8.gzqmqpd.8.gzscache.8.gzshowq.8.gzsmtp.8.gzsmtpd.8.gzspawn.8.gztlsmgr.8.gztlsproxy.8.gztrace.8.gztrivial-rewrite.8.gzverify.8.gzvirtual.8.gzpostfixpostfixpostfixactivebouncecorruptdeferdeferredflushholdincomingmaildropprivatepublicsavedtrace/etc/pam.d//etc/permissions.d//etc//etc/postfix//etc/postfix/ssl//etc/sasl2//usr/bin//usr/lib//usr/lib/postfix//usr/lib/postfix/bin//usr/lib/postfix/systemd//usr/lib/systemd/system//usr/lib/sysusers.d//usr/lib64//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/postfix-bdb//usr/share/fillup-templates//usr/share/licenses//usr/share/licenses/postfix-bdb//usr/share/man/man1//usr/share/man/man5//usr/share/man/man8//var/adm/backup//var/lib//var/spool//var/spool/postfix/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:33621/SUSE_SLE-15-SP5_Update/2a2ed052cba280aeb71307ebd932aa27-postfix-bdb.SUSE_SLE-15-SP5_Updatedrpmxz5s390x-suse-linux   !!!!!"#$%&!!!'()*+,-./01234567777777777777777777777777777777777777777777777777777777777777777777ASCII textdirectoryASCII text, with very long linesPOSIX shell script, ASCII text executableELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=b0a8c1b81d243077ce9ce124e4eb2838f6b3ec38, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=05c0a52848f03b3decd4131579cca1c786299f04, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=9161a75d57c6b88edde4fe01794dfa07c6eee7b9, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=58ff3627f1589efbe7b9b8b3decdc27967da1da0, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=3964937766da9708a42eda81b0f2e73740bfdd89, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=a881ad5e3b4efcb4c9add1f0fa412667062ce0be, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=7f3c6c4362e9d468e6c6b01fd02fc5cbf5a84994, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=3afa31013105f60ad4fe0dc524c3b6685915f647, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=8536037b4c6c7256ea5f18bc61b394e7ec6f36c5, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=957b0f4453064dec2859668700a4c268610de34f, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=b99b831cdbdb4136bb83db5eb38ba5b008a95bd6, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=13b9cabc1a6e0ecdb48ecb101d3f930f78634c89, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=e0bfd696e762b36b6b2eca408b005e8418a2e1fc, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=dc0f8ba5f7906835fb00dd86d451ea7691219fa1, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=feb6e5a98354a78db899d23af5c37efb71708ac2, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=1a8aa49170c8993d0c0cc2cc8f57ca2395895e19, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=89938628a0d5707b2e6c36b4c8c3d8f160b75b64, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=186a97f4d24f130c3039b9f350024b6c3a3cdc43, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=86067e17bbc44cd8c5a99cd7f19b7f7d330cecce, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=a4aa7f6ca78926d10476b583d46f4d55f8db6e16, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=5409e7d6152ccda01e0929c5ba9db69fdfb486f7, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=83e7031f9a24af13892925b837e5b0a0611a60d0, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=48eae4a9e6c0577b7c77995e31d155fe55acc3b1, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=37f435cd80908cd1458aaf6d6608808cb3b40af5, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=8b664b187ccfcacd0ed05b7a982f17888af9ee4b, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=0ae26037da1f0b1f2a9af0d5b475724b51ff9eb8, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=3921e80620d40055367a70fad3e46aab7979af5b, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, BuildID[sha1]=fd65600c8592ca2ab47665e7349f0b390dafbe47, strippedBourne-Again shell script, ASCII text executableELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, BuildID[sha1]=55e81445d8e83138b8bae6c3528a7063b4c7a6fc, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, BuildID[sha1]=e496c01a1255ebec2eb65e7faeea8ca918adcea6, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, BuildID[sha1]=d346e298e1310f934bbf9d737fa182a4ac36069d, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, BuildID[sha1]=85a880fd229b0a1fe2f507b845637b7e1837830c, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, BuildID[sha1]=160ca6c8cb3c0fd3591179b8c317d45e166c2ffc, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=739148071b332a80d8aedf03adfb8fe98f79dcc3, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=5c92274c8df05a7cf2e963e63f4d87252fa82910, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=403a3b09802c9d1afcb8ed0ad0eaf3646376ef76, for GNU/Linux 3.2.0, strippedsetgid ELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=cf54c32a364ff1cc29038a09aa055ff205ce3ae5, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=a20b2d768ff4f0beedf45e53fb73d1125efc42ab, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=5de3662e95bf343e178043d95dd28388d648ffb2, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=0f61ad91eacc24e2db5879b30c37b1fe3f971937, for GNU/Linux 3.2.0, strippedsetgid ELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=88b630e21a6538c35a6090557cabb7d9b3a0affe, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=6d332690ac4e44c62066b50a551b91ac9d9032a4, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=d9b7acae893121323b9fd67f694815186497c3da, for GNU/Linux 3.2.0, strippedsetgid ELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=2081837b1379c6019a7686f859c1c1084eebf1cc, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=a5a113471441f2038caaf626bdd4296308b961db, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=b569792ccd68359371802fb3b460a36b7ee82512, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=270d4a019f2f020d7b1b0c37eed7c274a176c17b, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=02ab3db590574033856e5b61ea0f49a22a261e34, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=97fa19a94cbf0ae58dc78fc94707c151f0e8375f, for GNU/Linux 3.2.0, strippedtroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)#)0?FLT\bhijklrs|#$%&+2<@DHLPV\bgmsy     RRR'R&R)RRRRRR'R&R)RRRRRR'R&R)RRRR'R&R)RRRR%R'R&R)RRRR'R&R)RRRRR'R&R)RRRRRRRRR'R(R%R&R)RR,RRRRR'R&R)RRRRR&R)RRRRRR'R&R)RRRRRR'R&R)RRRR'R&R)RRRR'R&R)RRRRRRRR'R&R)RRRRRR'R(R%R&R)RRRR'R&R)RRRRRR'R&R)RRRRR'R&R)RRRR'R&R)RRRR'R&R)RRRRRRRRR'R(R%R&R)RR,RRRRRRR'R(R%R&R)R,RRR'R&R)RRRRR'R(R%R&R)RRRR.RRR'R(R%R&R)R-RRRR'R&R)RRRR'R&R)RRRRRR'R&R)RRRRR$RRRRRRPPP PPR+RRRR*RPRRRRRRRPRRRRPRRRRRR/R.R-RRPR R#RRRRRRRRRR"RR!RRRRRRR&R)RRRRRR&R)RRRRRR(R%R&R)R,RRR&R)RRR&R)RRR&R)RRR&R)RRR&R)RRRRR&R)RRRRR&R)RRRRR&R)RRRR&R)RRRRR&R)RRRRR&R)RRRRR&R)RRRRRR&R)R9HTg8jsystemdsystemdsystemd-sysvcompatutf-8312999fad080d23f531f61af8918f4a159ddc0e0e9434fc02eeb2ac529a0e753?7zXZ !t/r]"k%IŇ/r0kv202$v_%oGIjwr3xؗ9ecgbA vŀǸ_Ҧm*wGoLI6f:4a}JR<'CZϵ|$Rv'KRCK2-U\h+ BS {2W*=~1 _ Cd AQ{7 'K)Am/Y8x"y=!N̦] z$b'eϛ'e鵰Ƅpo]'GbX83V\!3 UF'y- $L;m.?C$ "HsO94RS];mY.!s4$'ifD`f!2[v=X*d@eeT:7˨{c'ѪC~? HWdDI[bD3Ci;'k>W%DrtwNQHxLFV>.LH^W>p=ʊvKB٬y5KAy`0e{+8azp(Ԥښ&0G_HpE }KHACh/`*NӿFBD$AoS(M%~f8*(#Ka1ÚTݗU;S.qiE#^ganX^' H³d׈*֛i&isE)%^=ŕK9il Z>AfMu;/ UDH`'t/Rhsւ1ƯMU\yL; Rkr 5\̢< / " N0_æBGQS*pxpb寚H4*'3@m?l[ϑ$(]4 vK5]o0C䐰EY.LiJGVIjwN"NKr7sCӳy@= ]f-)0<5S-R8Jh:Ӟe^fgB~'o,YP9\ԩr})p"i+!Z=K7ܗMj`F&~_ EȇO^=ּ~W'SAwm{xJe'WildŃS{7Ni1!@A# ҧ6 *:"]XIV4J? &#Ҿ!)A6NHT ['h;%e$A%~F%`5|;^0Jׅ#r3z %ڋ:tͨS LMisOmp. 1op $Z`,}bBO LcggTZ"ؒy Q*eGЛ _F5uFM:Ofp_3/:#\1iHjGC'(WIȫ_K.,pL\ID4"7}ux_$PUۇ1B<gŹ2a'H•%FT2V20TEn:u88t@c[ZmoKwC-]$"g.VDJ>ߩ>瀮 &\S!#Ϗ z>e,^r[ҙDQD5)vmOSʤI.T $}V1.% TTh^^Η"4Fc>pv9ڷbF\|Z?L(%@T1XM/$Ey+cn%.PuYKGuN|O]A514 RY66l/dqE>#;Q/ y"nJ*͑k-tOlt"U=KMZknd]SX߇ٍbTb3D[OIId)AhAڵ0C@tA էdn~23=1O83N XSmR6y8h:< =63C#ʥ:v0NW)&y`4WX ;^lj[X`. J0Mx)xKf.Bƭ}<ߨvDc[+}/?{[LOp53n1A'ql[=϶(z1_XN\M:9yLHhin:j:K r>@QtzS<'eq&S (Tv#8m%? V&yd'ASىШ{\6z#Zс:pCĖ RXK}PuKa =JpR_v+: qR^@ jIxasT}J,qA?M1`}*֪S;+HEʼn2XOEŌ'RxQt2PivԲ= U6h{˳)PmEo`T0mh`8Oץ#(o@\ZMJ.3 b[TAHbu~U딚/[Xsx 8Fn_@|2U'ǶDb-ݵX!k!!<͸QT6|@(̅h wSk'_mDb7yxFxHhɃ'ث:QqJLpF$@+9 tggbM"A& J @P' wioI3B-dVO$BfJHW}jؿ$ԛJAzu1χD%t O:h4٧ɭ$552I-"*$ d6YW}4ACf^it LaoBLF}ְ\02[S h.x >I#8Tv#? j[u%=畞 TJhq]Mk?~CWz+0xq#6`7o诊+#@{&og׈nf!yO hLfI!iBWS$rRD!i-P.1쟣e<$AU%'0"~2L[4E'V]Z7\9V] `MJ_a Ylk $ڵWlUAm޿!uORc@c抄/#҃o|K. S2y;5sN!K+Y#+ס"Dѷ><S!G{aҐ wMFEA|}xcN*ВXv7CMǛtv$06}Җ| oťH y[\9?GFքটϺ+?td+\ۋ"x~U|ا/aŶ6/&ShLԅgTgo/$kǠPcxF}8OM]x]Su&y?H,j2YO015 0iyHurO0 ?X%'Z,F-a6ѷC5( |LS\TQ]z ,;ܓM:6C[qb>h.݃w s^%{[ENlùKba4X,<٤ll]K0M+Sm |aԅsQJyU… 6Ěv|RȨ1*6]VA12S[\:gJ9_HrMunL!}B+V?5/SlZj@{tPW%gjɲyr?^EZ°,֛Wu֨Ix 7s7{[ Ϛ=@E<{P?+F1Ii:5/UeŒC|M2:`V@YKYGd[8Y//<}v⼾.J) Ȳmjbۨ5dg9ƠSwrb /aڪ^4T|W7AAM.0YPb|>N0V5S=˝'#1 Vq΄v6ss3&+|<tpicUV%c(] >?Qj djyG*k v˖4b* V ?qd?\e1;3hw2ߔ21t:^T=+FḠ%kMćV0-9d<`6ƪқ&!~$G!Y"u,52?e0S|rk?$4#jw ½z"I:FFN| _=Ë:h)7 VjB mѻh8Ļ>:A[@8"_ 9LH66`hUAuhjIxbѫ:E{R$ʦ@\[L WHm߬wS%XtQ'ǕrM3 `S SkddEg^RH5 V.;1E.?KE0 3;}?:Qev 9k B:K+dwubFA*\fh Ʃlp kI :άdn%@S(ryDpE{€ǯf[nc~P򘷦L@sse"OԅVi|2Job!)"rf;v(Y?jmUP8Z!ujg勄_{ףriozO`)f6BB4dÁ=>_G">b4O?wv. =ݭ8/VuBg A2"u>[ IcG :i.6N|CLGgkt;Ul &ޯC8 ȫP"4l3 knmiz0+q Fka"93l\ 1A$fabw+zT3gc2M6Ǔ9|["zeCLx h=K36f 6JíVȾv5-HpT^BHB0au{"B>qvDEt`2Lϐd NwwEz(oA]axӣ jA`5 H6%$NI^7J+8§řzTKܔs~UҕEMQyLTKYc@J1FV-,GByk%Ųoh1TSdmn vxWҜH-/8eTASw$ݒfX_ x9N$,ɷ&:,sw Vy,~ CXbpڄQa̶p8X*;{x"ݵvE ysYaEI"lꄽGQ*Hx&%?kE GYcCP (=O [K;g4ȫ6su1Q|WFmZ &vAI;MlH]Pu r 0RgM^z| z.y3otfa[ -^Fop(ō,K۬h,~ȝsqciM\ q}7ܖIKhFޝxs7{. F:Ͻ$?=ۄg-K1nt-(f/)AbH<.^28<>,,,ƥB&K 4t[uūwe- QقK/at&FƗw mN|>l%dsQQ\FUev߬fΆ lKH!ŧeI7ȟ;{O9â<) cx< R`Ә5 [7=$xRѸS4Lq7p`@ٹMp%nOz9̆:M)l Aw!Z#D6`'a-:72;^pЁ"Ft1r8xr'J$' >(wc{eyNI"к=ᾏh**t/?ʂYO=p >-)u,]|k[[mOg&6c|ZP9 [KY" "e:j+:ڱ)z0sz ֘#(z pIHq=H661ɥ~gr2p#P]xC+Hbϐ}ـٯ`6vZ˾ z$%,PCKszg)Y@TGoSSa-$*5D 'Hk>Sַbcd>p3ձj%r1 RH楋A_ϩ{F@?yʕ톘t:Q8(5PՒ{ +m ~+7pe x-qfv#uMn&ЀPʇ%yLu;x % b"X"k/u 4<7/|vtu ˙n:-stU D(^v.ԘILƠY -vdq#P+gT3HqAA Ŝ4D;r}cIuyp5{iB5[U;V =FE &zfAJWۤ]c2n-qtbҌ$wMdz﷌2%9ڡF&)$ }(+*b*ުCIPgb(\ gZ[r)h-OO¨J~Sh@ru ꖏ 343N!)R/Xkrf\*P3zj^WSg2GW]b5R9q>K2 #rMl6gJ|ta=N &mx ^ m+8[iߜ'=4'Fkg[6)7)YJiITg?VOc|]T"9Yz\RYW#0:IO @z"Jf~%p auS!_':c},my}f9`@{(!mf֘!'+ 9ohz``%DŽχ\5N㊻=648h&aT$1Qs!%0&e`VBakC?n}/`Mr]6_sl4|AN?U^xĆ[Y,A2Ċ {;^8KA,J|^prMt6C9')Fbgg!~ hP{.뿷 O;!Wԏu 圞>e ΆPM`:ў_n .cL7Ȁ@&ebuGq5^6\O_(ᓪ0sY2Fbʔ9='b-^ܒPN )6_.K+9**<%ߴU\OTcQJ,OL'\5>Dkr{N;br$h:ml8G%,ʓiQhB߰e+h@9ӫ\9Qh,1i XubD4Hur ;jrp;CsZ cHd^^1I^xMŋSSGb_NeV}~WBK Թe #PDOV|ֺD'K'¿b`n:K-hQͳdjd},NJx>72U\DQ2Jsiѭ`͎{0RO|$B{Iף̨=&Wfbܗ㨖,aKNp bEEǁ~8mz!ʇeRR4 ,q;Nq{W ߮촗?_;#Dp V@K~7쳘Nj bX񍔣A1~]ͩ+SWOYO3ɝno lAiK=@V'*#ފ"뾌J{ݎWN-GZhw,jpɗ &XI q% +\wp ecE3o\.7o7=V`!CCk>{+iߔKkzN&,gnrE<7b\fqхNt-4f4tٴ,U_hX)l (~=$3.<&yU/*{j,e57]\nj|.L ^]< 棞qN5[m5 "\MeՌG1F/H=k1󸡴͟Ϙg*xw0Ӵi$[GXeC>dzC4X[24Ki5^:ůthtQ P.RqMv~;['T^uQY {a!b4(~FC,Rw.YwH_+9<K]}~P)FfD0yP(!9msij,~+:h"?kI7Z!:uy7Q|O3&J؝V`B+ؠXO$q&Bm`=^UzƄUtF^f7ɟq;2~M{D)Y!'v|Y DWwwxd47H07r| S ƇMA2Q栬鴳zw#}PW%B3NܣR:.ԥSen `Hzsr>-bR}C":aDJa,7vBKd{-|Nq+ԾXE F!UWyZtt 5mkyhuCI eWPd"".YE?46K^[|2&ܧrx,|cMEއ)c_1g4b;!tvpMshU:wYm$q՞EeT&|WzJhVׁm) "-*o J 'Aab֩,Nuck[CMN37w2tJdfM}xb*nH-NRʜ?6TTwAP=QSnI=[#it_731%敦2/"혟a|OeEɗȀ {sKșp)(1}W B jkVmxG}kW+BY_Ϻfk8OWtDMZ/g>.2}d y:KtŁ"GN0K?Ӣ|U 5{l~4G"o637^=D>Q;ۿNA*7Њ4!'!6p[GYbA\|ðA-{jk~Er@+Cc+sߺ:ݿs"ߧemW=4 @zėIo5Љ2tϠMc1@i"Dc^"IaaZucd^{;)s[TG~ɏQ/vk¶M+6TQ¾GÓLBez+H 0!14";\?Ë0.h2z,3* ,gU{% 6 ̑pZIÒWA? r:eL=GdTu'h :z9"4)Ypi?3ryi:X N|(9wf;?D*/Vc6G99\ 8\,rmm[1;]Iڙm>B(hq">yUo.iI&be@4ʦgNJ'F=1S%%{i5sϗvMql5. ghMP7 mg,Rh*#ZT.p\ږϛDWuCG.gHIvvuO߽Zc҃z@nFֆܓ]|je[v#dmmgI}`xw{M.6hC%=³2IT,\0=ӆ>D/=|;XDu!aˊJ.k DE_j3L d&3/?=1+ Wk!k4&PbCk&"<\=8 J ,:zt5%VY;>ER(#ON5:?֡J[;? ā]L%A>.|bݣ0I:=^z(2.7[}A3oZ DupɪKYykjLxهHHU+hCe"_CkXY7Z!?$FJvZދdĥ1CLShޗDh$$N,;|zwQN{FtjxHoDnN`Ghkaf{T97; '¦fVf98BU9hYKMry L|[~/-;IP!՟vz&c*2 7~k*s\ZEԉS|XqXu-`Tl+u`^S_+U׬M ȂTԽH}pxf%ܰ'+,*d30JOח"!|:P_gMdWήU(w9a\,@p/皟 P;:fHnªtA MHx{AZ2us9n6)-sEH^}@Ez t/m|k,,{?q)s~g:kIh:^U[kkK0 D?#F 쩃|5k/5(Ke. sAru+y\EebG,<>?Tԉ3-#{mGYk]&0'6 ]mGU34,Ӆ!Auɝrm̔.u*=B↛/j2*t^]<Fmޜ/=QSsժK%ݏ ։;Fɀ2 #>nw /U}+s X.'kTE573Սbun-wmzo&ۛϵ՗F$xK~:xl5JlF%ޠ4tXWܧ5٧<2@ 9mUxrMY'[DBUG^M`5TF;_~c^3r 0Af迬j~ٲ: < O:\00+E,S`SfK$`?gcV PߴX8%x$hٙ,hi1݋p?p)+hFEf~.]eħpwצ^x4lTY:NPJ M9o}7%(=nVdרqNNxcT]BFQ?g!'jϋaOy⩛l":?~,%lTF_Zu?BCP x.]?{?ܘl./A(Dm H\%eŖPJQw~>C`Yh@j=^!x3zTxB`~Du2Ŷf@3eθDJL*Ǒ["Fpcg˩}};uY_tY7C'sucp'f}FmUFؙ.^& }ҶːA$"FUӬ|?XEu$k02*ou-}]/A.ڃ{$@&:}eR!!#ҹ<(NA VL~l lg=?+㊌ ؅tƌnF+Fy#\3 oBVɢ~q!t9ßLE6ͳ=a=B2A]˥cUm>Th`.%WOyz]ΤkГ4y"y`<)`i76>n`]5-ۼh3iͬ rY)Gr}"k'%hZT TA5NHSCU{ŋG[YG5˗z v U }l l>m> 89;fz@ &m)'$>k#[b vK- 2~ڃ)VH=]𥮯y}H/l.-团:;S\fѡHɮ0ÎUMr2SEKB, ~(^Z*IzȈiPPŒW7BJv[\Փh>SmF}#V]bm\(2۱t8@@bjNŐW[)"q~f23A\=Au1ѥu%.tCKg):-$Z}y$@2!NZȫncu;`P&sj~c<0!7Liw_#ʄ{lm \9Zb'͵X6]@zO㬝 "?yt5MRUC.m-gt\ hXOǙϺO .hAz^7T6G#'ώQl> xxѰd]v(@rZ/ H $kQjn+A uVUhQ@bD|)fFJڹqKB:øƟO1xH8;s]],UatvGX!{h_ii2f^R |7+/Պ޴kQAS_~ exГx(0o6vRznL}Q%Ϧ&9Fɣ~Sj<."+DN2շFwr ؐ0M'Lr||$[{pqghWl蜵hX2f f^clQz=ѧ9y}J0 %|kQy/f#Ej0DgAvLj)?7=]$ -bDc ­{ A٫4ikSx uRf~$C/G5=LSAߞQXizP.q1UDL6G_+JsmK2A6Eo`iʯE؉"zzz_4#qɨvYxI铖yg:A+3 |> GIi.c 0&&_?\cs g+ Jiԫ\ȫBͷg}?]Um⮶rUxTs9O5>#eiQ鍑k‹Ì3nЈ c3uȥA%9`W@ʚ_>ښ;QF2zepg˓;OD%XYes=,`iYCr (#,/{.U͆ U"O6*Ls+Hy:q|Zy[POD,c S׵?($0 La^ӻ rxY|AubzjLgy4H;CMG;V:e&`@xlm>*& 7_&Z j>KDen TԮ*{婬k|& FW/X(,re~4񕦿e9:ʷ-tYwtMs^[O53t vdӡb@3WXH 풴;J67i촵g3&"ȑ/VW!4 BO~YU(^$GkW@5wH_e}J߮62Bbfp_.2..Nm#H9[Ӫu۹fQrJ+6 hهNޠaIвC% ةͰZL:#hZ1 ,p@gRb-U1^ӫzvMcRIjfNJoS&R'J/<NWp;6ցСD\]@KK@_vF{bTt#XCWJGY2-]'EJ93`b?)y]AĎ߄]T\BL”8\_hl :W.0BoXltNAuR1lRTP*!a]fU kz#'y  ˉ&>zw5/оhM&ڣwWdHbwX>aR:@$xDɯ'cJ_.JK Z|mT XJ2EEZ'hW~NYp9'W˿1[o/IvF`3!Hnu0ngPnކWew 4 kDUa N5?D#Ř "E-4fZIE7HO?@_V.Sȅ@Dz˺P$:PŒv u ݰSL 蚼*>w@"gݻDX0QJ8bZȨ4F5!JQ;]7˧F$ C҅[/6+\}6q(%dNWIumW :t@@xD~nFqbA2QwtB{ϡ޾9HE0~ elXbn#mS 1e/&r$\xdO1uB#0{rE2hB1K*i-ANtIZBbq+m-4Z953j `owEkxtǠ0P?o6@ ; L`r(oTRoC$" hDWɀ! QQijtFw'>.4$̎fkSZ) s\kb-'B|ۆF)nƳl_&nB:_83!q{\Deln "Ijb8bw i7512\i'ݼ+EG,m?=|&v8TC<%M:9'2_T[G{ TZmŐ23$9:(D VVT& /pc3x 2;r3:b9F˅ M< \aN߄RýWh>8Bvq؂؄FDx޺g$y{S6Ry4x5 i{oh،Ro]RK.v(ȸJ<{ȇ ̜mZ@y1)Alz!6YśI} fADM4T~M?~f4%lJLG+H l#dm\Kd'̜/۩;ՃQ3ט\>Π`*@FP0b&fZVF41{ڂd5 4lg ܩF(,q[\\#TttpRgs*H8yHerT٨Y2_)杤 K}:W:He/ܿr bcv H.$_QL=AP;yk^W0w~O4d??qE`So"h|h$Yj;&2_5+7ur_Hx7ڻ1Nv̀`?ՠl |{ ޒk kKaK31 >Ytglp>e#: L'ͬ VJX#/?h\rϡl7 "UeY&D,ee<G>#X:1Tsb2"tA{ޠ=#M9l6`mi˝鏤R<.L#.&- 񭌥d7.d5oRrV'C3L- ڐa`5i.dOe@_5Oh/L_t*uUR)fy;̙5FLpƙ EQ@j[䭾H^!Q>Ix~Wb?t9瘸+-kA4q40S.ZCwXc290?WOTcXBK q2zrQO`B2:1Tؿ&`ʗ(к]#p}vEqʼP7ՠAL_h§Bz /dAq9J_8UkUjixκ ga3=&k:ŖT_>OqD]@ `۔V1"S3׹]N#߇^ Y^wͦI2SEzG>[ d!+JoEE2O23':{`ZPSr&)Px4܊NJcevS $H'Eo“qUⴚpvs ,+kؼ^Dw}.,kAQRQ\!66 _qnqᏵS/'s"P>G1gQ"2Z}$:1"]5Iq"lm[izWK@N8i!OiSh:ȹ{`kF'Jꅍs2,faQ$@vA CL`[Wc O2 펿|;nm DX‎=þ:G~u~ ejVy^`y<6]\6zBFe>fDHq3qc|MQMpoNS1*( 8{d=PL6i/ݒQ 2;D%GsMo-FHRCbH}GPj~g9/_Y -O#*. r?D cc1|qȊ?h9Gށ7rźy`(slmXıH`FC"H;1 x]UtsrV޺k+|;5E6e4`vks|zhk9b!HYq v%u9X8:',v0c] l@!iؼ?s@ '@v}j}bڗ!|bQ%xu$@J ų?#T5_FGgà8fb4+ S6 >K5>N[1p[D*Pi| W7j%i,\98|4]/BFZPxVoL7(+1Nh x 5yשL36жвm9,$ 1L{$ n+e@NSBmV&pZ&*߆k?/) 3VLDT%#!l,zTHpL.P+V-}'f:nBOJ T ȖlHŅ l'zZEbfg0J&k9}{#xNO"m%R@ +ǝj!XmC>9YWb߀൱ߊ,S{ L?K[qBV!0vDZD]X]kX$.6Z^!"gWyR]t$>/X[ 'NӜςKH5МɅ_5}R ءd,C1Tw]yՃypޞ;9!~2xWU_qE^vAwoXb\> %&OJoUMKdm,ky$Cבm(~zq "6Am?p8|؉ g/p o’qU*a\TI8>!a 7 Gݥdh@Mh9ϖ|b!7dQ"I{ڷrCM7b|/@wXNjYF÷WS;weOTgQSn;:rQ" }7g :;+mƐUPD0 vֻ,K&=GɘoLD;_]2Xؖ9$?~ qYTwϡ12W(YN+= uC=*>g\NM80R/tiwQbƬ8ZX,؋P^!NoJW]O(gGҞdC̴{yX UɈ& }nAwѯΌ p8ȩovÔ|NUЋ^chAfR6ѭFMaXWtbE&eWxTľa AQalcL5^:$SfRLdBЛo=|مmaAa[@1$1w]\@ͲqF"$nL}Y`1JBtV[`t\pj+}(/h.Ƅw ȊEtsԲhŮJXei#KlBp yHʮ51-(`}sq99=3ll B*&o`k<DŽnϠ2+ɚ\<0ޕ]yf'LkvY-mu?XAx MYQ װJ\$z1 Y6zҀ_~cirMj?at_GS]H.ҷx+{Ϩ= p՗(!)5xbuE`BZg ;d`!`Į/ 'lDn\7Kod ~m9CFB`נ ?*$M>ؒ{q }yjϮgl>v8LG=]k$ճw#/_Cʪ_DBZ٘<'?O_Ci0`/7<&uE1O:sȌB|B$xiPk_dSS֙CVK7P7$KWl88x=~n[x{® 75k (bnXqcc.lboSt [uֱwTt8*7 Ā[B)􀜲`n݌_J1Klͳ/9 :7L#>IFe%}zMˬ& y~@gC$stXo|="4ɉc.tYzL& 5KXi(w'&M.: O%ezO ;%Ϛ(:c{'8it-2xTP%NN,:cr*~bcO㉧SUB2xiwLNfv1SmwXOe2yh9,1opev\&D?(*17ݎAܽjKdXnzխ^utTҺP|vQ)1 M*03{9&f8<'}lpݠME89d 򹆬cį26 cDȍ/ǧQӣݨRꂥTiZUU_) /usTX|s3prk'S It8½yQYu%iXP2MmEm,9 f6,Gu\a$1:håXeJ 4=TyNbT-K^َbKUq̽F!aX؊G>]- BC>H# aDw§#|Rc{rP]X Mmyi_eNIg>NYExGr֪.ҌD~/t&ykf? R[ئ"A9zP`I  "@6WdW"y'[uu?{N;?Jtc dB:v`'hX5xYeB ,f~^8BGVR'|)'v0x # C{鑇ܙosUUŶe`g:!l5+ـF 0%8`fD] <#p~xjgERL2vx9 u8M|p)n. dAUoB~ѿ3hMy*^X|f}XTmeh4l` {a|{}D}_̱?=Xe_M@sy IopÝYNWM62t r( P95mL69dgc 9X(Aƶ{hv@竟$Pe.~,٬ScKLg#o{ڽfc['̂rfCсxn쮴G6\8BL#{ϗJa3yTVF̘)o%v=qǙ͇!@ٳtQ5F9hªDs㈭7yF>Z%\or,Yany.sQWI65|=;YHJӺebd4`ܚ b8T V+ + ҜȐ`v 6B}&ZYC@5#-zu{NwCqM BjocpZ\;SzM᦮)8V hG#i$XEk[ T3MQyhxӒ ST+wd=?dl?(8Q .Ӡ$O1b@hxb ?O\]nkNTC#K`Hwb+#x.Pp,FkXMN~'5"&;y&`@dy兡ÒUR(OE -PB0cw%s}M&Z/*ӎ-si~Rt:מH/z rz2ф ؓEOɌ;>~]&jO^ Z9,>;ho F}Vv89X9O\R/'&Xq.Amp,q-H BG2?:5C`ECBs8.ϣ݆*k(զ"9PCimAg2 =q%}H.{H)FC=Y |1KZ1IK!κݸNs"ڣqoVfH}5U,w.͉*ٗKIU(^01lyO*4.=b<`i,E_ g 5>Sߡ<2ꓹK"!ю Q~)Y#: 7Fj>ug9]$r]d]zyiLC̙Q4۷l\8Bm'4'>h"E-L$"+m~ԷԔcR}dE{/<Pͭ?B`h}R}aeAWTLt?}/LuEgZg](_/uQ m{-Ch4J[SrQxW%u\e*3x+rDiȷx*2rTvKeIҤ 9Nqiy|3 a://^.t4TN%Hc=U&wQ2RTqURC>/4jVUQjecdP\E`cx|\6~6'?:};fa9!½ NQs/PuHY@|2WԀm#2왨/ E>\( 0Mmri|(UW~q~E"k sAe ytCOFY0}~ZG%< ̕`MZdܵ"BUh4:ab Fj)}2huyxpNKc -钰REm!4s+ g.wF>7@D#x$J83S|[Ab,Kqu;2|:_#ϻZ!DG̳!q:zPو\ ΑJUH3+Q)~J}|p_iޏ RتXIKq~U,Ϻ/xb"tJo!Lz{<>6հ >J2̛Hg ]zQaE=XwCPwESBe_W3PGdյ hTte:G~z(6i,1HYĿIIU~6 x MHxyїc/͜Yڙ^CįǼ_*pjaZuچ{XJ1C}qaE*IJd>Al)jΔ|J S hulWVEbx1.)CP7,rڊ5ꗹr}-˲Gg3 c٫@,'u!N =m+z |lf]o-XWҕ6D$JaYFp>CGZp}wH%`C}lҮ0)B;{!9-n' r~js XAL`J;XkPi <*6tNgQq<*8OqyΒ'O,9 c]NW.Ȑ I& Vʳi=LSh#b4x_rIu 9/ғF| ]ޟ;=GOz yÙ_:wf՚WZkZ(EV3 GN DP2dwt/+'ᚅz,<塳&DLuxgKCG6# 3~J;5xD8Ldl?RmFS@OPur$bdI(tFx)etso2ym\ȁ!9F&(j0??bY͹&3z͗YZ"YQ ݆1Q G?_aa;ͳ3`lZz^A6PAL3튟;rbn$1E\rd5rYlӫ43_ yWÚG/曼@%V_h{8NBKT_?4"ڳ/d` ">)iQ=*5izo\i*etg*LP .xm,P+#߅.F~Vzk2r+™su.!iǨAQ%#قH`ۓ 7j\m Mg^jrlK%Z/yh ҉Tj!72CG](ÛGMBu 52kbì*Y2 Y:,ULQ~ @l[Y|s)hM54,&1Vt[:ׯ ju\йIӥsGʉvā*~{3ieeSous5& CjNe$m>d8FlY<)KT_B-xr<Ç߷׎db=n(%}A"cJ$X|XYC Y?}RgǂCQ3g ugzzRCpXOpSOqtWy`}"}OM,ji6J,jб޻Gc<++ ^f%U+Mm@p =\ΥbG;.êPe1LC0j_-M+ajKݮdUa^  80BRкCJX@^VT~Wol.|p6].)6mE+(ŷ=z%0z8?4~? 䀿*̩{l`+0=o˼og9a^~z"LwB7Lm#^PD.1}xf$^u>Q)4yOݯR>vFcG‹nѪՍ~nHWb,쌱Dϊj 5J5c쾛_R|$Af4XaȐIaMj{03ڹKH!,_-~x#IB+mi7HM- Mkz 2\0ý*xv-]o~ތ4V<|:~pXUJUĂzY:)SqlſItC"RU]'O49;/E#43Z(YSFWXpFy#Ju`q?p̈AhlM0ⳜnŠgNQ}.'48BOړQka 8tM㲎$ֈ!Փ 9ߝ$~\Dw7/ņ8.)pV#~s$`w |yK @ŔGN?O*|=X_I&L97D;"Wɤ峭L ]@7[(!ٵf]nu6x@~ƷCE#~,%Tft@V359_E{i]mܮm^2Q#(߀o6W3WQHNYېz 挵gb}ȯiZK]&uv'7zNÜ+/]ԩ♜(TJtr|b߭r*^dP)ѹd '͘Dt;Ԗq ] .Tϥmg1ngOϽ߂E$s7(BgZbl=20 kx{Q?d]:܎v::dC{;oc}:ޅRGN@c.tm1-hMO%[ s=5&,mPlZ-Fa)*֟EgUڭ^ 'OQ \uyB|rA0@x݂7;g$ 8Z9RH' 3b7Y Ş\}"j+~m^9xsч?/bNڴy9\"x:?f=z&PDNOk_y ic۰լ^<ˈѧ~i/f sږ* v@ǃ瀨 =ؿ1+ 3\FxBG4^q46M=PbHxsv \X:D`r㨨ߟ${ {. dQt}[~j'4ntg?N7h Hlk3?5ZeÀmJ81..8@@`O *l^̃k'ZI^ruNV^ an({ שVS0G> :lmE ڃd/,W(ĩ<嚢x @W#72y*QЌGp,#؂=PoFQԬw@ˍ/~i=YZv($n Nцv3f{[,l=_~FaqTFqWj%val]D=TCZqIv:!~c yj { R?HiH|;UV QF.@O}*i[.}%9h~r%֫6N=Uh\'k}>ί c*hDqs?xjFs<^xd-#`l1N7LfvZm.~]dG]LAG}k su 7130X02HF_Z߰P.{#)jCN#j3=8PW @21ctEb( @N*5bA 1ͦD~fEsb, 6bϊWUs=1\S*wcd}׵bűs]$$( X#`5qhG p-͏$6e@\n X{oڊy^Zsj'ۛ;PaǞE.xoi|=U8CYpU0Z y5pm v ˣ8͵Z42Lz *x`C `g'! =jpK3&^ W褂@~  W;sV@ɘT͈}I5aRjiRI plpĦG;khT)S𑛊 G;%S% '#7j_F2'X_[;myDoP?̬b̍L%xxaF$o(E]bSQ;:K9v)^&(x H%V+||*~ خzM"+PٞyU5 qکXF]\SܘLsdIC~ DcGr"㧠xPܩ Y7uO*Zw"v -'-QY~{f MmU nPx -/CqЀ1жϹ|t(@T$<< 5ٞm xuPmqtkcg*]+1s]@G,`T2b,d=ή')Pr-$w_U5 f& $A.BzgXRQ7`ѷr5$'Q}^ HXbtfmγ ϶9G3%Szb /!l (?7HxaawWoR&tc+Xp?(j?9ù0tC_psNz},Kr2g FI0tc8eޚc y巡RRgU e%t14χ,_g^^RnvO  Ax  YZ