vsftpd-3.0.5-150600.10.6.1<>,|h^Zp9|m^gkErT0"M`{*{~)E4y*IP{Q5 Wn`7י'`v!><2RYт{=sVf^0uE5Z CU'܃wp`qγky/>Io,?od   K )Jn  * G88 8 h8 H8 8 @8 888 P t8!T!"$J($8$59%p5:).5=`>`?`@`F`Ga8Ha8Ib8XbYc\cH8]d(8^fQbicidj=ejBfjEljGuj\8vk<wl8xm8ynp znnnnnnnoCvsftpd3.0.5150600.10.6.1Very Secure FTP Daemon - Written from ScratchVsftpd is an FTP server, or daemon. The "vs" stands for Very Secure. Obviously this is not a guarantee, but the entire codebase was written with security in mind, and carefully designed to be resilient to attack. Recent evidence suggests that vsftpd is also extremely fast (and this is before any explicit performance tuning!). In tests against wu-ftpd, vsftpd was always faster, supporting over twice as many users in some tests.h^ZnebbioloSUSE Linux Enterprise 15SUSE LLC SUSE-GPL-2.0-with-openssl-exceptionhttps://www.suse.com/Productivity/Networking/Ftp/Servershttps://security.appspot.com/vsftpd.htmllinuxppc64legetent passwd ftpsecure >/dev/null || useradd -r -g nobody -s /bin/false -c "Secure FTP User" -d /var/lib/empty ftpsecure 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 vsftpd.service vsftpd.socket ; 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 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 vsftpd.service vsftpd.socket ; 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 test -x /usr/bin/firewall-cmd && firewall-cmd --reload --quiet || : 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 vsftpd.service vsftpd.socket || : ( 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 vsftpd.service vsftpd.socket ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in vsftpd.service vsftpd.socket ; 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 vsftpd.service vsftpd.socket ) || : fi fimJ>hp6}5/pe2Q$p}6)Gp8,AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤h^Zh^Zh^Zh^Zh^Zh^Zh^Zh^Zh^Zh^Zh^Zh^ZGǿOraqGGGGGGGGGGGGGGh^ZGGGh^ZGGNah^ZGGǿJ`iJ`hGGGGGǿO|Gh^Zh^ZGGh^Zh^Z43cb24f9420d9ee73c22dafe29fd25616e4df55b38e450764fb1c5b8b0578003a56c55569c44f61aeee475344dce61f4ea18df08c26782a1013f78a0f14d9a0ba23879a7a2209d11324c392a6d6f1824b34872c972ac1cf60b11279a46c953b4ff59cefeded709da635c1212256e6d417d82fa456319f90e4db85ddb03f7d1a276ea0d69babf59d696c5bdf853b1a2a8a898c0ce177ad971b1742174de21bcee9fdbfd2ec0207170371ca3cf2b0ddca2dc2fe3d062e5792e0d3e51474c3198c96f5f21db930b9a8d89b56a6654780954bdc2a41d2bc9529c0b8efb3817c45ef191f8dc4eb030f0e9f1c57aa00854087707d033a38ffe32bc7b71c8676dd2ef447dedf833fb8a3bcfa96b48d309f3892b3ae3340d271e518ecd998750fe11a0b74690662cf0bbf289900b0ddb4c2e0cfc555dda870633440d852f7d4b1b783d61fb32f8176eda6b27a54a61d14165b03aeaeae8c6d81a4c995cb121ecabe2a8848b12b05b7d664e344d4d59a26c3f6b13c645f1b53ce6045780791350b278606b4326d89a39bea92a0dbcaaee0f658d7bf810c8f322688b6b1303f3b357a0971ffb26bd0055e5875fb2d1083326b272685de7b017da65000a21f99081c1a300156ed67ebc32ca688633732308ba23c7601a463df9a8f6d4d349cf1e0fc770c8f5ee162751cf714e1ab6b5894fd08b0a95e788a462311cf7da47988ee5fa55aa6247ffd29f468e22eb304a368bb987510fd44f0486894de293dc7dbd3d48e78f5c4935bc943f442e358d7a9c81f4ce2ae1ec098543e726868d423eac55beb91b7b87274257549cc60d5fd2d873326b22eb89a4d8199bb5841fed3bf6c82b5494f2519b63d63c4f1517a1e7cf3373f19df4c8a697d1823814f425340bbebf5fa8f17dad436bf918a2f81a540847a9a46946370c2d796ffd5bb5d98cb8a69b2e926e181e70be2fcc7d0dbf34f8626e2e026b10ee91108f84dea93670caac57b394c2182acb8b70a360dda945df11a1598cf493774f017db569a57f07447119bb0713c55f01df06b2d4ef2c26d0d679c6782a60331fcb0f3991d0015458820819893b60b8129dd74b2e4779f1ac8344127e47a7847584b8cd79eb36a055208ca553e3517941f8d5bbb5970cedbef05d0593cada2185557053b9574c11524841d80749041f854a654fc72e6d173d62da1907dd14d6f39d276b20e02b0b1ddca6f54b5b61de85b72629f20996b3124be21877871518388548636459df9ad6cb5a3e31ba1f0b372b2f63fc08f5e195f0d1e958dfed03c57d8868a3f90317bcb3125852289cf0afbf0552928f37cd4b068a2cc039f4200175d65dcead6701de158a17c95797d0cab32f477176059b7799b3f92c90136440aa84ee7c5005f0d964a311df66595fd71183207e0297b8ea5d1f0f2ad1681e16c1df530ac11844e7fa010e7d5490c4a70c9df7c3b090e7a1822f3bb0cdff5a559a4cdd58f98c9536f23c5f43ba47a2ac8924cec7a864d3482f2fdb9bbef552c8c0123b8647b6ccbfc2d3cf717c0662397b33b84f9827d238703e7ac36fa9f129fa227640956bbf87e0233cdd821ce6627358df144f933424c8b81c40d70729bed51f634c6205ac6b8da43eec413bc084f62d987705c810dc2512fd4eec4269ae5e1373c19b9b21e5e089f31e173f54cac8362cd97c646c8e034e4676c2a053660b033e2011fe24297e93e0a74ec9cf119e2f9dbcf187fb805ba5aded105db26a693803636fb7228c98460ffbf22225485a2ca5e00cafd96ecb4336cfd34dc6064ec16f560c1d7b26d213de6e81f5044553f0237c3ea3570baa910e6a31e3f6e2bd8cb9e244aefa89e9123e0d306477bf3ae7199ce5c0604dc83fb34b04de1f91f96929532c4918c32caaf94bbaservicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootvsftpd-3.0.5-150600.10.6.1.src.rpmconfig(vsftpd)ftp-servervsftpdvsftpd(ppc-64) @@@@@@@@@@@@@    /bin/sh/bin/sh/bin/sh/bin/shconfig(vsftpd)group(nobody)group(nobody)libc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.28)(64bit)libc.so.6(GLIBC_2.33)(64bit)libc.so.6(GLIBC_2.34)(64bit)libc.so.6(GLIBC_2.38)(64bit)libcap.so.2()(64bit)libcrypto.so.3()(64bit)libcrypto.so.3(OPENSSL_3.0.0)(64bit)libpam.so.0()(64bit)libpam.so.0(LIBPAM_1.0)(64bit)libssl.so.3()(64bit)libssl.so.3(OPENSSL_3.0.0)(64bit)logrotaterpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)shadowsystemdsystemdsystemdsystemduser(ftp)3.0.5-150600.10.6.13.0.4-14.6.0-14.0-15.2-14.14.3h^hIoedC@cc$e@cd@b>b a aՈ@a;H`Ȗ@`D_@_u@_=@]@]@]@[ @[4[+@Z@ZmZlZ1@Y4YA%@Y>@Y.@YtW@WWV@V3V3V@VaU@U@UUJ@U0U!#U@U@U@U@T!T@Tepsimons@suse.compsimons@suse.compmonreal@suse.compsimons@suse.comdavid.anes@suse.compsimons@suse.compsimons@suse.comschubi@suse.compsimons@suse.compsimons@suse.comjsegitz@suse.comfvogt@suse.compsimons@suse.compsimons@suse.comidonmez@suse.compsimons@suse.comdimstar@opensuse.orgjosef.moellers@suse.compsimons@suse.comdimstar@opensuse.orgsuse-beta@cboltz.depsimons@suse.compsimons@suse.compsimons@suse.compsimons@suse.comvcizek@suse.comtchvatal@suse.compsimons@suse.comtchvatal@suse.comdaniel.molkentin@suse.compsimons@suse.comkukuk@suse.depsimons@suse.comdimstar@opensuse.orgtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comjcejka@suse.comtchvatal@suse.comjoop.boonen@opensuse.orgtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comdimstar@opensuse.org- vsftpd-2.3.5-conf.patch adds a reference to our bug tracker to the installed vsftpd.conf. Updated that URL to point to the proper Bugzilla. [bsc#1182473]- Apply "terminate-peers-on-quit.patch" to introduce the new internal PRIV_SOCK_QUIT command which vsftpd sends to privileged parent processes to properly shut down the TLS connection in case we've received QUIT from the session client. This change avoids misleading error messages in the servers log file. [bsc#1199250]- Enable crypto-policies support: [bsc#1211301] * Add vsftpd-use-system-wide-crypto-policy.patch- Apply "0001-Fix-default-value-of-strict_ssl_read_eof-in-man-page.patch" to fix the documentation of the strict_ssl_read_eof option. The documentation says option would be disabled by default, but it is in fact enabled. [bsc#1200075]- Use valid separator for logrotate config file. [bsc#1192179]- systemd versions prior to 244 do not support the ProtectXYZ directives we use in our vsftpd.service file and log warnings every time the daemon starts, which confuses our users. We avoid this issue by removing the unsupported options from the service file when installing on a distribution that comes with such an older version of systemd. [bsc#1196918]- Apply "disable-tls13-to-support-older-openssl-versions.patch" when building on SLE-15. This is necessary, because openssl_1_1 on that codestream is version 1.1.0 rather than 1.1.1 and that older version has no TLSv1.3 support. [bsc#1187686]- When building on Tumbleweed, move logrotate files from user specific directory /etc/logrotate.d to vendor specific directory /usr/etc/logrotate.d. Builds on other codestreams still use the original location.- Use rpm conditional to build against the proper OpenSSL version on all distributions. This allows us to update vsftpd in all maintained SLE codestreams to the current Factory version and mitigate the newly discovered ALPACA attack. [jsc#SLE-24275, jsc#PM-3322, bsc#1187686]- Add "seccomp-fixes.patch" to fix the syscall architecture offset from 4 to 5, this change was documented in . - Add "vsftpd-openlog-force.patch" to a logic error in the way the force option for syslog's openlog() call was handled. - Add "vsftpd-seccomp-getrandom.patch" to fix a seccomp failure in FIPS mode when SSL was enabled. [bsc#1052900] - Add "vsftpd-seccomp-ssl.patch" to allow stat() to be called, which is required during SSL initialization by RAND_load_file(). - Add "vsftpd-seccomp-wait4.patch" to allow wait4() to be called so that the broker can wait for its child processes. [bsc#1021387] - Refresh patches to -p1 style so that we can use %autosetup: * vsftpd-2.0.4-dmapi.patch * vsftpd-2.0.4-enable-ssl.patch * vsftpd-2.0.5-enable-debuginfo.patch * vsftpd-2.0.5-utf8-log-names.patch * vsftpd-2.0.5-vuser.patch * vsftpd-2.3.5-conf.patch - Apply "revert-undocumented-config-file-format-changes.patch" to revert the "ssl_tlsv1_X"-style config file options back to their original spelling. The changes that dropped the underscore from the version numbers in release 3.0.4 breaks existing configurations and it was never documented anywhere -- not in the package's changelog and not in the packages's own man page. - Apply "use-system-wide-tls-cipher-policy.patch" so that vsftpd follows the system-wide TLS cipher policy "DEFAULT_SUSE" by default. Run the command "openssl ciphers -v DEFAULT_SUSE" to see which ciphers this includes. - Apply "vsftpd-allow-dev-log-socket.patch" to allow sendto() syscall when /dev/log support is enabled. [bnc#786024] - Apply "vsftpd-enable-sendto-for-prelogin-syslog.patch" to allow sendto() to be called from check_limits(), which is necessary for vsftpd to write to the system log.- Added hardening to systemd service(s) (bsc#1181400). Modified: * vsftpd.service- Update to version 3.0.5: * Fix ALPN callback to correctly select the 'ftp' string if present. Works with FileZilla-3.55.0. * Fix a couple of seccomp policy issues with Fedora 34.- Update to version 3.0.4. * Fix runtime SIGSYS crashes (seccomp sandbox policy tweaks). * Reject HTTP verbs pre-login. * Disable TLS prior to v1.2 by default. * Close the control connection after 10 unknown commands pre-login. * Reject any TLS ALPN advertisement that's not 'ftp'. * Add ssl_sni_hostname option to require a match on incoming SNI hostname. * The options "ssl_tlsv1_1", "ssl_tlsv1_2", and "ssl_tlsv1_3" have been renamed to "ssl_tlsv11", "ssl_tlsv12", and "ssl_tlsv13" respectively. Note that the man page has not been updated accordingly. - Upstream has a new GPG key (7B89011BCAE1CFEA). - "0001-Introduce-TLSv1.1-and-TLSv1.2-options.patch" is now obsolete. - "0001-Introduce-TLSv1.3-option.patch" is now obsolete. - "vsftpd-seccomp-syslog.patch" is now obsolete.- OpenSSL was updated to version 1.1.1 in SLE-15-SP2, adding support for the TLSv1.3 protocol. As a consequence, some SLE-15 applications that link OpenSSL for TLS support -- like vsftpd --, gained the ability to use the newer TLS protocol, which created interoperability problems with FTP clients in some cases. To remedy the situation, "0001-Introduce-TLSv1.3-option.patch" was applied in a forked SLE-15-SP2 version of vsftpd. The patch adds the configuration option "ssl_tlsv1_3" that system administrators can use to disable TLSv1.3 support on their servers. [bsc#1187188]- Add seccomp-fixes.patch to allow getdents64 syscall in seccomp sandbox, fixes bsc#1179553 Also in the same patch, fix the architecture offset from 4 to 5, this change was documented in https://lore.kernel.org/patchwork/patch/554803/- Apply "0001-Introduce-TLSv1.1-and-TLSv1.2-options.patch" and "0001-When-handling-FEAT-command-check-ssl_tlsv1_1-and-ssl.patch", which add the "ssl_tlsv1_1" and "ssl_tlsv1_2" options to the configuration file. Both options default to true. [SLE-4182]- Use %{_prefix}/lib instead of misused %{_libexecdir}.- Add pam_keyinit.so to PAM config file. [vsftpd.pam, bsc#1144062]- Apply "vsftpd-avoid-bogus-ssl-write.patch" to fix a segmentation fault that occurred while trying to write to an invalid TLS context. [bsc#1125951]- BuildRequire pkgconfig(systemd) instead of systemd: allow OBS to shortcut the build queues by allowing usage of systemd-mini- firewall-macros should be BuildRequires, not Requires(post) (the macro gets expanded during package build)- Extend "vsftpd-3.0.3-address_space_limit.patch" to mention the new 'address_space_limit' option in the installed vsftpd.conf(5) man page. [bsc#1075060]- Apply "vsftpd-support-dsa-only-setups.patch" to disable the problematic default setting for rsa_cert_file. Upstream initializes that value to "/usr/share/ssl/certs/vsftpd.pem" and vsftpd won't start up if that file does not exist (or if it does not contain an RSA certificate). Therefore, users who copy a DSA certificate into that location or properly configure a DSA certificate via dsa_cert_file without explicitly disabling the RSA certificate won't be able to start vsftpd. [bsc#975538]- Don't start/stop parameterized systemd units in pre/post actions. These units cannot be used without an explicit parameter and attempts to do so lead to a confusing "failed to try-restart" error message. [bsc#1093179, bsc#1010177]- vsftpd-enable-syscalls-needed-by-sle15.patch: Enable wait4(), sysinfo(), and shutdown() syscalls in seccomp sandbox. These are required for the daemon to work properly on SLE-15. [bsc#1089088, bsc#1180314]- Add firewalld service file (bsc#1083705)- Make sure to also require group nobody and user ftp bsc#1070653- Add "vsftpd-die-with-session.patch" to fix a bug in vsftpd that would cause SSL protocol errors, aborting the connection, whenever system errors occurred that were supposed to be non-fatal. [bsc#1044292] - Add "vsftpd-mdtm-in-utc.patch" to fix interoperability issue with various ftp clients that arose when vsftpd is configured with option "use_localtime=YES". Basically, it's fine to use local time stamps in directory listings, but responding to MDTM commands with any time zone other than UTC directly violates RFC3659 and leads FTP clients to misinterpret the file's time stamp. [bsc#1024961] - Add "vsftpd-append-seek-pipe.patch" to allow the FTP server to append to a file system pipe. [bsc#1048427] - Add "vsftpd-3.0.3-address_space_limit.patch" to create the new configuration option "address_space_limit", which determines the memory limit vsftpd configures for its own process (given in bytes). The previously hard-coded limit (100 MB) may not be sufficient for vsftpd servers running with certain PAM modules enabled, and in such cases administrators may wish to raise the limit to match their system's requirements. [bsc#1042137] - Don't rely on the vsf_findlibs.sh script to figure out the list of libraries the build needs to link. The script is wildly unreliable and it's hard to predict what results it will produce. Also, the results it *does* produce are invisble in the build log. We stumbled across this issue when vsftpd suddendly had build failures on i586 platforms because the script decided to try and link "-lnsl" even though the library was neither installed nor required. - Drop the explicit specification of the LDFLAGS and LINK variables from the call to make. The value of LDFLAGS we passed is the default anyway and giving LINK has no effect since it's not used anywhere in the Makefile.- Conditionally install xinetd service only on older releases * On current distributions we support the same functionality via systemd socket activation- Fix build against OpenSSL 1.1. Remove lock on 1.0.x libs adds vsftpd-3.0.3-build-with-openssl-1.1.patch (bsc#1042673)- Explicitly depend on OpenSSL version 1.0.x since vsftpd doesn't compile against the API provided by newer versions.- Adjust to new system user/group RPMs- Add vsftpd-3.0.2-fix-chown-uploads.patch to fix a bug in vsftpd where files uploaded by an anonymous user could not be chown()ed to the desired UID as specified in the daemon's configuration file. [bnc#996370]- Extend vsftpd-2.0.4-lib64.diff to also find libcap.so.* in /usr/lib64.- Do not bother with omc xml configs, useless nowdays- Require shadow and do not output the error out of useradd- Fix hang when using seccomp and syslog bnc#971784: * vsftpd-seccomp-syslog.patch- Fix user creation to not report error when user alredy exist bnc#972169- Fix bnc#970982 hanging on pam_exec in pam.d * Add patch vsftpd-3.0.2-wnohang.patch- Fix memory leaks in ls.c bnc#968138 * Add patch vsftpd-ls-memleak.patch * Update patch vsftpd-path-normalize.patch - Fix wildcard ? matching bnc#969411 * Update patch vsftpd-2.3.4-sqb.patch- Clean-up the init.d support to be bit more readable and add missing dep- Brought back additional systemv support so it also builds for SLES 10 and 11- Version bump to 3.0.3: * Increase VSFTP_AS_LIMIT to 200MB; various reports. * Make the PWD response more RFC compliant; report from Barry Kelly . * Remove the trailing period from EPSV response to work around BT Internet issues; report from Tim Bishop . * Fix syslog_enable issues vs. seccomp filtering. Report from Michal Vyskocil . At least, syslogging seems to work on my Fedora now. * Allow gettimeofday() in the seccomp sandbox. I can't repro failures, but I probably have a different distro / libc / etc. and there are multiple reports. * Some kernels support PR_SET_NO_NEW_PRIVS but not PR_SET_SECCOMP, so handle this case gracefully. Report from Vasily Averin . * List the TLS1.2 cipher AES128-GCM-SHA256 as first preference by default. * Make some compile-time SSL defaults (such as correct client shutdown handling) stricter. * Disable Nagle algorithm during SSL data connection shutdown, to avoid 200ms delays. From Tim Kosse . * Kill the FTP session if we see HTTP protocol commands, to avoid cross-protocol attacks. A report from Jann Horn . * Kill the FTP session if we see session re-use failure. A report from Tim Kosse . * Enable ECDHE, Tim Kosse . * Default cipher list is now just ECDHE-RSA-AES256-GCM-SHA384. * Minor SSL logging improvements. * Un-default tunable_strict_ssl_write_shutdown again. We still have tunable_strict_ssl_read_eof defaulted now, which is the important one to prove upload integrity. - Drop patch vsftpd-allow-dev-log-socket.patch should be included upstream, se above bullet with mvyskocil's email- Fix logrotate script to not fail when vsftpd is not running, bnc#935279- Fix hide_file option wrt bnc#927612: * vsftpd-path-normalize.patch- bnc#925963 stat is sometimes run on wrong path and results with ENOENT, ensure we sent both dir+file to filter verification: * vsftpd-path-normalize.patch- Update patch bit more for sanity checks. Done by rsassu@suse.de: * vsftpd-path-normalize.patch- Add back patch attempting to fix bnc#900326 bnc#915522 and bnc#922538: * vsftpd-path-normalize.patch- Reset filter patch to match fedora, my work will be restarted in one-off patch to make the changes stand out. Add rest of RH filtering patches: * vsftpd-2.2.0-wildchar.patch * vsftpd-2.3.4-sqb.patch * vsftpd-2.1.0-filter.patch- Work on the filter patch and split out the normalisation of the path to separate str function, currently commented out so I avoid huge diffing. * vsftpd-2.1.0-filter.patch- Add service calls for other unit files too - Udate filter patch to work as expected: * vsftpd-2.1.0-filter.patch- Try to fix deny_file parsing to do more what is expected. Taken from fedora. bnc#900326 bnc#915522 CVE-2015-1419 * vsftpd-2.1.0-filter.patch- No longer perform gpg validation; osc source_validator does it implicit: + Drop gpg-offline BuildRequires. + No longer execute gpg_verify./bin/sh/bin/sh/bin/sh/bin/shnebbiolo 1751014093  !"#$%&'()*+,-./0123456783.0.5-150600.10.6.13.0.5-150600.10.6.13.0.5-150600.10.6.1     vsftpdvsftpdvsftpd.conffirewalldservicesvsftpd.xmlvsftpd.servicevsftpd.socketvsftpd@.servicercvsftpdvsftpdvsftpdAUDITBUGSChangelogEXAMPLEINTERNET_SITEREADMEvsftpd.confvsftpd.xinetdINTERNET_SITE_NOINETDREADMEvsftpd.confPER_IP_CONFIGREADMEhosts.allowREADMEVIRTUAL_HOSTSREADMEVIRTUAL_USERSREADMElogins.txtvsftpd.confvsftpd.pamVIRTUAL_USERS_2READMEFAQREADMEREADME.SUSEREADME.securityREWARDSECURITYDESIGNIMPLEMENTATIONOVERVIEWTRUSTSIZESPEEDTODOTUNINGemptyvsftpdCOPYINGLICENSEvsftpd.conf.5.gzvsftpd.8.gz/etc/logrotate.d//etc/pam.d//etc//usr/lib//usr/lib/firewalld//usr/lib/firewalld/services//usr/lib/systemd/system//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/vsftpd//usr/share/doc/packages/vsftpd/EXAMPLE//usr/share/doc/packages/vsftpd/EXAMPLE/INTERNET_SITE//usr/share/doc/packages/vsftpd/EXAMPLE/INTERNET_SITE_NOINETD//usr/share/doc/packages/vsftpd/EXAMPLE/PER_IP_CONFIG//usr/share/doc/packages/vsftpd/EXAMPLE/VIRTUAL_HOSTS//usr/share/doc/packages/vsftpd/EXAMPLE/VIRTUAL_USERS//usr/share/doc/packages/vsftpd/EXAMPLE/VIRTUAL_USERS_2//usr/share/doc/packages/vsftpd/SECURITY//usr/share//usr/share/licenses//usr/share/licenses/vsftpd//usr/share/man/man5//usr/share/man/man8/-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:39455/SUSE_SLE-15-SP6_Update/4e0e72577984eeecc90e12db6c461e88-vsftpd.SUSE_SLE-15-SP6_Updatedrpmxz5ppc64le-suse-linuxASCII textdirectoryXML 1.0 document, ASCII textELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, BuildID[sha1]=cac8f5c869a5c09a59082a0fcd032725bd36f68c, for GNU/Linux 4.3.0, strippedISO-8859 texttroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix) RRR R R R RRRR RRR_KH* >.2systemd-sysvcompatutf-8c12079522e97c80d3236558f2eaaadd8a6af9a5c84f5a4058794d896d1a11919?p7zXZ !t/ˍ(=jYK6*THr\ JjU@ҿm7ϗXŌƙ~yiksxShǶ+Ι,R3"gҌs=NKOܹ.1&EDj~{׆"YBn 2mE\$ 46/1)^I ]UsBw->S7m2bVOJ Noa&8l$Xȣx/2j.K򲵾E[ _C0۹4r]YL{n񏊨rgL( EP-Ƽ`MZr!rV޷ðݠvW ×27X$5XI"X-ϱtKWH 3K/zYiG2K"@zqyBcˈ Gc]0Y f' iÞoLWeh(xvTzAn߫A7:Ȩ{KhB HXP׈S@ uw:)b<~[3پHن<ƛ$X}e= "d > d3ׂW^9wjҢ-ăJI4 5k韂Wn`Sh>ş- [350Ne<O Uma{3ٗi#V#۾S; I>:}> %;-zpI1(TCżadXGXgVNIEeSS 5(Y6pGFH@rt1n"jk 8ºRLmg3}S^ŇJ{ZͯXb~ӂw~1=\? ʞGyoh@v6/L69fD_MLh jv]ؖ&%韲md}:U_,Kma")HjŶ#1Gx} &+%I~㲾 Fl;Wv2Dtmli&MpܗvvN#i@Nڲe{7_ t_DX{;65E .O[#sexG_QN[ a`)"n- ;jvL@AX e 6f WlzEsӞ"V` .5rc &ZW6Qw=4Pg WMLu8zeXt?~H ôS2;ɇglyC]fK+ѥ#kqlV}G5hl!kB4r,Yp-.)Ϫeף8dߞ}O ?\O&MX  1L@J@] )좱4:5VAd V kt9 1n=#'ޖ!S_p/ޜ=i\`{"呲8ba9ȣǸ}U"c~<ICs{&\WH(E<-C-.Z)b0:{)DePd"O~u=yqMMf+_^5\'<4Lx2^¸µAK2B(5 Tk_.׶tiDڐ2r)9U_ժc:"?͝y?#A1: Hh6*b?dp]:rl'MZnnSǰu2huE ˓Xmp3(ֆVЎ{߉5Q'I*1EEbh6\M_=c786cň/zȗ !_ͅ@=܀ʋ9 leǽʪJx>G%^H|аq_ZNUtBe!0Jhm-7ht&0h1ۺm#a p xj Iewgm>Cq!DbH Xy/p [b2oMSP?>͑5$=,4_ V n֓ېDlo#;ADoͱn_ipaxi"֐,c$_t)VK kH MSʼ BKYd9كG f6_3a+]"$eZ.K-cCTPi}M͐Ý8Zfzli"R73Nbl6JFa' hynSfZҵO;f.B{Fzm~myOsk hVOM @YY 'KbKU}[FKXScOg*B$}Ӹw Hͫ޵b ..#/4)ht:J(@xN;}~`Gx\d~DBq2gI"#߬\ٲP )t6l~Z#AjƩ 9+oXmrSyկ0zء[7Y$zP(yT0@1¡XMYEtk }h.Ym@4z,n(iӮ(!29CDuq?f. mIHQ>Z w(ϥ x*_$NsjdU{$͗]y=Se70++1~IB|BQ>_1jEva‘ p}Nz&ÏD$b1Z LC)Ota"t/ @hMmdna\rE¦r2.8F?U J ЊNL&;-;kʽAH`ω3Cmɞ#"AW& k ]$ڴP.jSUm Z&)Vٞʦͳ6ux pCqtZB:TSǷ0K)L7G7\EД!{1RxϼLaє:Lے5ƺ1qQیY+D1ʃ%L+)Cș0\P8/r9I*+ {nbاx]s#JH}]*&5Sdgurm^qi' mc$k%iE5 dO3%o,~.FKj$|;˴y,%0LD4/U.Sq9nI+u;s lœ5nH+oލˍIP϶C$zC,FhΆ"{zE(ްXQYhvL85׫Q68\J > |&9Ejd&2O縼6q(}؞}|aP]ED`s15v]"p1 K ˦ *M/bPƾ̹et ok_^ʥx9&lat}NɧB}|W'rRԓ&+ ˣofboj"*2[L),Pv-]ϖ3zJq1!hvhnMT6{SUWM &+ksg*EPbUcFTlh rۇ?Ͻp.;!+FW(tN Ĭ`&vzf f_ Z1r4 [h9nDv7x :'W]eCAH&oRj#'3͐Wcj(XFD^b a9li#Skwq͟αKȐ}=⾀5yy 4w8vE,>9ÆQya Da$ PL;;FnDSP$'(ڽgss+nUCW2n%VTJ+/夺0}AUq8_ir?LOXpUEƝX2j\\\ܹdz|f7A9X`2ȁd݁GY#iA[gnKbJ3H'}9c_r1]5`C#STčK#T8ˣ {%:+~ 6yǟyfO3t:4 D ,J⨞@9*i+PMEȧݎ5sK9*X#!y G(sܴ<^rQy TMTsޘ5z&:kO;hAtwr\)%,xZ:EME un0e#[8-X1 1wOG]isdyG^Է0!Go չ+Ȣ؊ȝ؜Zh@1Aד5ftx!T@ۻ!@+!)SpOsuM 8g?wƱإR*1rCt>w ߔ@7K$)R2扙<Xy lgpI6|~M8%iu2 f&4k3u͠,I2P}{.a :;څ,PzH& <р^ha)";IB9?̂V(# F~}kw%!>Ċqs zDî/fzOJ?a>U15Kz<9\$ |wvQ(g?k^Ң$1\G8r_AYM謘KoG=]G:Y0c lDpS K_g2[@ -/]}:4"*% 렍.m,~R敲!.n% =M%E;C.7N973Aҍ"©I"-jI,*4CT :~j,>E5!YK#?+hNl TMHt g*MG5LMoZ86+nV!'y]KCwS^=Jቊ3y[H*GiPmgP ֢?>Emsf>xkx- KMP^Rn:C9Z[ 4[K̼/ה%ͫn%1UhC u[ -:qȞ}Gn}ŸkUVoj8*srVd}i~Q1Z iG4W:?Y3+{A}5Ւi [+#FO&Բa+ Jumf޺yRB6 r4B`f $W1甯oc!׿_#mգ:]m6gew MtrXmX$gNб㳭OlgQ2AyZ4Sq~nj4F(o)Jc0nTjncIn'rL ɺe~x5&7jێYg"I b& Od'T `w#(wwKc+ƞSe'4r FaF3VK(})t HBV@&SkQ>f݊ߥz~cahmMS y vF^^ al1i3Vߵ}Gc$mi<_^rWv{zаI YR QKاƶ Y L ^!{~:HߙrC= aS|`hiC*,"6vhvW=bFۯ.Z)MIa*ygO [%lc^a3ssbc _bSm!c6i TPp7>-i,Ma񨊟+- d1Q?P/ ϛ5}rX4B`nvp?(jf.Ot{W7XNҒh%*[eH!#Yѽ2sPwm7fuBV*eꉢ V0D JorL Qz9Ke7\ݕΉ`@]eRATޫf ]h4]D~FNU #vs4F<rOͪ)q*ˊ7cڗL5d"/pDx<,dDzfwM^;KҿĦKɋ ./g o!6ZGzk R8̘SY*HpKN*o_#NR#~h^zA_R؏b;p*_3X<;+/#,!YHGDV6&lvuK, 'O#52'N|р:f uD hM!i!*^w=zYboks1CVRU<@E\Jvќ/l= Q&QV}M$߉}64d=u5R]QS낧?&d!?Dl꯮{Ͷ̦8e]''Q ̭u'XI,=!oA S?q8'u|Ƶ$^:BĘ{KaFz\)69R$/x\˰b3Q#K 3z)M.8Y^sC>1p[hno?at|ukP4;[q ʋM Ϫ ` |o'E+Ͱ5Wgm@@!&v8$DqtZC+a@("W:y%oC?,y[xk*4N@=DƒT,B ,<BsGkdMA%b.';FD]NK>nUSb{$1V4 nfSDPw fjV|nO+-fq'qL\+)2V+#B=;֣2(y؍fMnetaI3ڭY *9@i'_"V24CImiE\%d잭9!s+ +Av1C6+X6[ֵZ7^C:kl[Ojȫؾ{ eq*@J`jG٬T}5@ A܉ED mk!c"{b02~7\jJf﫶jgϴ7G3[xrp0⩌/=DrQed_FioOȸg,]o^bxuR=.8RjG>+5|i!% ^A77q l$R&R{7Hv \o2_tbcF]vP; F~+ZC?z3.us6eh,MN=?Ia~矾zy1y-`N=lkzƳ |-Uٟ?evOЩJ 5?l(WWn1NR]_j2zޭqicͭ"{SZeZZiNZ65d`*xwh0'x^?g2,l-sn;>r $ȅ>M4Mz2_D(6e)/^YYek aZ>TxI6;W!N\z~MV7#HO+7}]J}dSwdB!8ް ݾ5WA }MQdPGjF`e#t2#/g ԩF;U1=óY-r߹HI=ċt˱=-`vah5|,dy&@d͙\+q+ϖ:AHQѕOJ!wJTpmҝ:!P5e"|QH;cyهYƺ|-8B_Hq@[Җ6UsRfBsvb&jS wĄ'D ka-L |\Bjsdo4KcX+ Ql4$6 ?\K*::\W&޴ң_TLZ-G` >#6Qh&kz8C$%xuΈ`1--.g6d,%: W{!琠چ7lkIୈ̮05=*Et&*E&m-A![ŷƉnr-q ?GRu ?ْ'Hm30}RRݚ9]AϔH5`V2/%hpzT4xl/og TH6 ?Z,V뙬h~ಭJ#ql\1e/%ZZh4|svxE{+^հ)Lx88+3|ɯ@+/5ʤوy0Pg IE|N?hj#8 Ax zݓ`rIGՄ)+vUv].% KF bUp.*H; Vp$5 jtǩ2@r¢NCPB{{_AQ{GxrPg,ң#PLh{{g͓6‹Ņh'hb[*!WWt_QVa쉧 dV+L|qGD7AcM B0Flg`"3EU;>|xV.My8ش. J݇ح7,0q"l O1nWPrF-~cF˸{ϛ M(%%ILpF¿$qڋcz6z25Ҟ/^Hj:r>\tDjrڂ,v, ZOY|Y=DN tM'E)&D&^.`OCkl:cl;L &3YeH@gòuADE24Bg{Caj[9R$hasxqREN`?%iUaHB4?%|`7--tR9)XJ{>!>dQ;%Dҡ~=aCː@1.q.m(};tHj6yCm:WJR#^ #w2q2/D{rcx , l4wRr`|[᥸lsy\#'Y_jer&{׽I^X=قpv8 +mTdP?q'ܞL!kq>\R8?8IK\D%T Ft WIq8nO|ѱiBoaUDr{W E||GillcZu3}guq+|-pܶX<*#PEc! DNd$N\V.:\sVsNhvDO#}w7Z[>{QV k%qs NY){y.΃P[j b9/F}6:JBH mgmؔ3!0Os |xn5%BjNPVR= Ԩ%_]HC0/F7`4a.͎̿*V2h4n Ci`KuEAʍCPg8Kybq3h% #ٶT|RM`H˃ޣB#2[d̒ Q ~Z;T i3nkhn hgr;:ɥ텅MpA9 W)ǂ.~TFrݪ^d{7Pꟁ6bGt/*z1DUh<{X>h%jw'*EߺƤw^O6mUlקb`g72k.,DeV=ώ$n,f8Ӂs?vچL:I oUYa` ۲Uo#1]!"OȞ'hd( -& }\lm7vv ȆBV^)r\D"d"ԖI@; 6$?VxQM>l2ep}T~V=tA'a~!*b_2+Nʡ`FXj/IXlсwK!CYJ|m34@QƼөN8(P&1ڭP}{ |D) UQ }}xNX& NUNZRa)|OӾq>~.0R]"g1U8K\d\;Sw2Ř"و!@,8hP *!?1o↛ B2'ρsǎeL[r`jGH-cޱ\XeK߅Bv܊aT]i I7t#g_ (S`3$41mA(ebL?kY2}s)#KAN!vR$( 6 ΤmtF]|B5%"!Ny 4[PKD?gܷYS༞bҙJ`UZsQd ۤk,NI`ALvڦ2mfX\}2_J1N[mZ,ZyV6{Q\BDRvI8̄U/eS+TM?D% x1 c8f~ccԪژ4.R jXz/| NVY9 n@*;?*[D47CB[9[i9zQ\lBBM[-yӦ(Y=_"MpL(\fWΞɞ6 kQcGKXe6ƼE2[ᛄFJۓKWVnr؈ԏHcjI_c($6Nٷ`ZUR #=ٕO-}e6rf/uò)ڲIa󳩮F]Q6,;݆$Mk?ÏʊI2ϣ!2ɇA":VN?3 7 |紃G"~7y3;g:$" 9?]i_If41lUX"WXJ0wQRpXq@$ 5:l)SgQD Ki,NqzR'QI|_(ϝmef @ >+j Ƚkn ѿBX)\,1m^fqUi{@G0g&@R*r .3gCκ& ɹtܹ0BC8/PuuDȢn@xwF\2S6 J_{\7]^Յϕ'gDO_%,`K n4!ܹWok,ޥ=55%![&m>]+P1Hf_3OE<_lɬg52JCBύ9ʌmCOlћ4ܝQYz{!Ge;r) [LFeG쾂V֢HC_t@F@K#k/2.:&S`hkhrHަ`Oԫ'ۻ "O*dO^m ]9hX߹Ԥ1c|tM  '>bTʕoЭ܈9${_~{ ].E,ZR{JWJkk[پ d[w՗;kcU)rRq^vT:|8I, d -#5=ZV|[N >_˛lyM庁tɸKcK{_5~ޮlI{ֳ"qF2k-G+ GM=hN\ZPKC˼[J[A qrNq^]GKV{+I݃+X5ݹr4z{)ZHå+w_Y?ʘ8nIגJҁ:Aqlvȃ7 S0.ʾfT~黚;Yz+fXŗuَC8׹xO@ c{O {g$ pW|Rg + zg-gJ[5;rOHmN:Uzwk@3!1 ?/ȷ7U5X@Jv(k1T9gy WW~/,D"BWO፤t`$4Um~J'"2"C6 $u$Ի+5RZd!Uv~62 7~_ǒ [3o۞A6g^FSwhA%dKmWW=R6f&"? ٗ/5*~8D #{toƄ6C,\4< 9qyUqq=6RNGLau,pMN*F'>wFŝ:{Y_~|&FWYQ`8sүu4ޗ˰V.Rb*E`LA{0G g~Q ۖMtpir//"FQi-P@1 0`-||QgJ%Q "f [{4wv^-מO{يiMDQ~4~-)P;V&A %f[͗}vؐgFa#nI$ca=: 5PlXo|]'j)_ALOBI^1#gAȫP&&ȈP^;N_NV~tVh`L8ZZE dWm%. !!"*\̲̬nE1>:S'wXwWzL\ĵN1l 01u`Rz|^ɄRn$^< )aꮚkr[BImr$)&%܎R(YC٣CݭP:߹5m{<lȰё?LDŽ;:7ڥY$\ prt+19+,hgB uT4{+jR,܃`(L9{`:E̗9~h7qkRsOh9 ׹-MR܈EJr̀4&Hqu>T$r}ۆ }_vDLB]Q0sTmLzG=7WO||rV j^:CUd݄7'e.Jw݋OJ.K.%?'>t:T0 }Nf吇JRP-+ "TAT]0G4Iڃ85a~fsO!!5S/t`(_ <h54hJ@y!o"2yF옙܇WEbk C \'q ztqt!tL_ϧI4irTF7hMdΩ#Kd [b-h9Dqrfsl'IJhr洉p֌ۨJ+yUޅvW)>Qn|)x}4Q>h{C.գT'MVz}5y^TDP,$LL|=DOg䓳};7AXdG,ux|y֤ h`(ΦPz/\ X'\;~l oa(gRm!ıΌDuE__- M28nf7#v4,PTl]!pziZ]vqu_sݮ/%Ps'}zQ|5lJp&ZbL3JW'%=u,wUO^?Uð )1٩Bk w'q~źuí֜E} gS!xPDQ_&g `m:(X);~-bmg At Ma8{N(hCݭ Joꤤ',: #.%[lDҤTOswrȽ[AJx'VO9:)rpoAyYq#5f\tZ$4(bhtRmÉwO,"5<6\0!GDe2lA|# ?H`)0V_Ex%t (%P&rQP-8 ?׶&4 5[y%W[ڑr{$50gn&TiT0C 6؞06 adRE Sx`qH5쉦@a}&71p>F4US\ܒM[j]lHb9bP^o=8HsV]/e: q)+` E#"dŢޚ^puTgps3V[%@cH}%mF(YJs2LwQVzD&{(SQNݽߝ%?b̸7&r20U^n&ox :uT>ބ[|J82?KOl#pdaz:/0T=03 NsUթ0 f`֎iνIR:{lX_wΝ~uM;&9)7ma Z%k]it<|: 1a{^?= w6INjKqd_-- 481R!UP@<౼M=zgf`%y|ܒT85)˔֯G&dj~2Cx-Pke϶8Xbx![ ,1+WZF6'H{Dܰ^IhKHy/gΣah&v9K(k_;I5F<6W겙-:l/5mSskR5/0q?XgoS=sSJY5XF1V@pP^*UiXYHɆ:Gp/KW{ PF%O^ڡ>iH/7AsP8Sm 1cP?u`f9CE5ܥh.2\iYL>apauU~mSg^-7c!^y=^,d sxObeQY~1}zKGAnU;553Az9R~VCLs#u ./a2`5i6;`'"Đ|?3_nrt ς"V;mw~?(%5_4ouճ I"9pu&I̿Lޢd(8E%{H]e pۑ1~4@ ϩ3$ɇի _zK{̘?@0] (LAgfI}/jn,:M5 jF*jU>)A?Ɛ 随wqfsqǑ>(B;R[~ R$[U;2O.2P|/U|~E:A5X5Bb XBqB.ߐw\f!O Ru@h(>O>~v/${S!/o#ʼzZ3g2ɫvr<;߾G?7-tR8_Ecx[_1vޞw7ph>Q0K̸98"lp=MAAZyUqlE V6 )G7cn3S%V3Nl:*ںܫ$@ViEaI6\8~_1hVAПi`ۣ%L"= 'kA>| pWe-kuϵ6<{qmP[q U`eԦ{<'=#gBRm 8"k|d7v l 8FVHU:pf5AĢrq/2,TunLc N^Aa1 U&2F{XTJ:xhUBt)rAln⿚šGŠmG++Kz*q {Aݞf2}WeGWd|kn33Cm܃"q+6LB~o_MK!:9 B xa>xfq `ujr5| ӍԳsVbJma7 ,?s{,pfϔ۞ps\gZkS_ERy;>g5WXO]'ХP4z6AjuԐh^ȢƏ}Vn^>P'YƤ0"AY _cp(zg{z%4#'-Th{^W-[;4h,ꄈs 0c![I kK낢W}7 _}e-\>QXq(m`VinYI\<󽎌u-x5P89t5SC FEmu s yiq?;c7y[Y AyeM`71-) K dܲa3e'#,Ao[KLG_=1i(mxVi^!>~lΑV>C_1Tp9WF\zٸa,*G?#DTZ)Z7}t{7/fn׋^L全Q%3 ):U[7*{*8m^e@X0Wڗ\K\\kȁMg V""9ᚽ ꀝ@;UAKC KqOO(>VBU>/2:kW%p>Xሸ " n b ̉Z8R9 lEgY_(vM[)q,9ϖc܉zi, 7źZ䡈]vp nUP3ك9[sU'mriQ4#dTq[B?e8WF;7!LR"f#JT7+3x*Ղ_vql; ^Dx#Yʻ-{ԡƵKpq;RoQ6 ]QWehA\F=VjB"6o7UװFw5[TQD;xl.MVlW#!]Kӂ`:h}y#vkJ0e|k8'B 1Q6{^ xÄbUFAAsՂH:EnTSmħtk5l6Oۚh8M`F2ʙP1^"xdݐҾח\c{`5«lt@481Fl#7HښY[&vڇV$wŽWK=hyۊYT?Or1l akĥ(QV?+|mC܀SOxW#Lz\ Y{]~ߛqF&@64kryw.4K^kk$\OJ3q9ę¡ 濋PpFo3߄9wN;jW.U8-'%Sa#T[b+LΡk刴r|5Z4K%o#I~CFH+>-hHjs{ةFHNt7$8w=9g1s)|H eL|25N 7IhWk0D~NuZՃE{`6˛o-Ƶb+4Jʮ2x:δGQ(L|Z4uWX(+&hlrup31tC&cA|q☻1/Xc8"ΟQbYT_ פ#P/x@5@aa(yXrZb 3nH?;5Uy8~ƪK|ѨN 1"*A0I "*Cj$n{e8#ǷM>!]T4fw)dPk ֟P;~ɹU Io p>q!0C]˸|:l~&7d 95䥈D,+j'Ր+a"M^ʪwv'N#xz5k6v抃#I"Zqjn䘘xfoVN\QSmU+\& v5nO!m~ᛠ/#{lQ)QZWhhb(څCj.]=_tN7bQ-t޸gszAs]HDi{e#Gg9Zljw%l<:.2 8QPB89J(jr4.$w0-.44![|-<ɹrVC.PҐ&/'4NqEbU,{=i-dwf :%&^6]Y^{$q:DHtmw9NLٿqrW=`gc 8ۻ63,ݗVuK€-P㹆y \{w,A$KOi-ZV?~g؍=u5@{lb'6 =zJjFQ1}50 D8F Q-v+6NipٝcXLZ Z @Oکx&y\3>D< %LBINFfY-1V1L06gֻSsehτԲ$g!]Z$GzPB- ǩDx㝡 1X rnM'blG}5^;h!< ~݌HN[S LF_Cݠ td]Jo{*~ihB9܊j9̋2,u9/Kl]8;_ٰUr8 EШ7(@/}@R؈Jx:rW4D Xw)`ݴiѱBFT!KZK\5;XMސƛGQ~I-kMX6YEܑt6t!䳪 0 m{R$WGDsG5 c6ats:'F ' =hTluB!u[[gIp"ܱqU($__v V2'ǜ 8µ }W2˄gͻiɿ +R lI)$^Ljg֟+"{K: dC:}}D^k{E¼Zi#df T,Kz JzdPz*T̀ ek-N_I~1KظSo VO0m/I\8Qu j 8嫫Km,yahзyejG6U"EG.~oJ$Kƞ|QB鹣lq4C\]b3d}DEqh*#;⅖u!gL9qI{ogBi!Ckuңi/QZ{#m41s^I>x1]hz3SBr`<^IUPD %聧`˺[R}jsѪcoX"g))OY֡mi nq6Iz%';-_$0lG7o4i{c8 ]6^=ٝ<i_]4ERU¡=.5Tf9%+{g4U4ͣݯp' $@h~AF/̀Ĭg1_Xnu?nDXUVNAW>G2hI0Ndʲʏh\1Y0*.;m9p8p`S~ne ?rb"xBP=/ n:ev J~X=wdgR3!ͺE(`cITOxo#-ctGjZy*ƠeP EvR53TQZUJCTwX;X3:P"6N_^C5Ez]L[ltGpdѭ6{? KssVQ!DAaMA-3M⏭}m/%/ɒRȑ9Q<,(+6562+\ _ f0(Ɣ+Q:4,ihP?]L kꖦɷV;~xGklEqۥ4Nzf6N/Z0JChR!xAMChmA]BD@ 6Ƿٲ6̄2ewNItQ䯭IM;8tGo0ĂaCzP'Ύ ַ/(Hx{e+4ЁZG|MdqJg$(}pD)ou_n-`m,mMF76'R9 PErE&ՎBGYlK+<1ˀ'L8~$^NJ> ߏd Vh:6iT\n ]hn`ߧzzzҼt·]a+Vuɝ㇈)CS/&@rHE93Mԣ_' VQ}#"xm}~,vhincWmL+BJe.@PU39w+%iw' xA8o>W$`L4a_ʣfІ6^K[L ŷ0]>r-We`^ϝqQFs۩J<}Q0]1{E)Z6B! 'Ȁ >q# "Jrb3]xvAP*vy{-fNIr8w@ܚ ``d@?R);^?&8jKUZ |r_ ^-Υu^ie)) {^6: bOTj, Zu* nvW!n(R=ax*Eh8H}JRj)Q܇|W;&moi>^(Ծ/%1Xwlc}΅JMNQ}^zW߲#KmDMtur 6{z1~n'0|ht(*V1pwtB:Ӗ7l0 ۵$Co]R1oH誕E:t5r%~2/[gɄI{|nP @SoܯxUN Ttgc i&c+dsUe/$U2\ ^lU8W9bUNg:+qji(C$fy3D|QW}b4eǃ Ⱦa4[=L&Y&\b(~ @Tw:VA34& MRoåȒFVX8:pB!Ѵ^UǛa⣓.['({$5Ly`|OϢ\z<ش`e|. t6s mj "\YRvw nOSwb=Ħ(T="?`䓓M o߽ (`\gZ$):k #;$Qgvb&Eβu7ᆙ@^1="v438n̫1Up|!v8JEL Cgz7 d4n> [Ь_3?Aˤ!oZog@φ\JWTqBM"y۞2KtF^ksPN/#UmuJ1DZ0ΚTz JSB*oM)!#f:6f.q"'.PZ"OEG]5'^M̜87nfbRl2PbC()!$K3l8"ҾD^Sٻc*?g:E.l^@gPH.b'6"or3լ#/burOї;ZL6QZGf18X8x)ƍ]c$yVE;7j5jV6A۞ާZdCQcث\+Yɑ8.|ݱVt9x1]Xs kt\J&!z.b@g-}MZ$s#܀"Q{ti"n|DXsf+MxXλCgf"[^5 (7l >Bqay a$1}Wεty?J# &OE[1j|'yq]q24=Sn(|އ1\>~%_nN\!`&5hGEƇ$ODlpj 1ZXDAzol}6#:h4F%5G ,4Hf[u߯pZ a:N@6UPJ=jnG̪#$}7Sx?B s|r[5~Hbp긭&xv 9L='9jS`\ @: C {u8O6rߒz3OJcVg[^6:iPs;OؠG) lMjRjbmU ~xlA|$}6u(̐rWSV& ) ?5w %Рu5MKx&FI?>iyM˧L3$n ǔ|}3YWvz eN}uPe bBlX0W)Wy:|B LJ3>H!vbAYa*JnٙLY:G=e Gg*{) '9?/F uU%Hm/.2"<3i-\=8m096cD|)(uF!NZJ^mb[G&C BԸ䞱9؀r+L3 R/o,DFtuK"7Q 2|N  3$CJׇqae eqE 16ꍨXPBI/a@ɑ*B[U23&[.[L$G_)M.SF ηAQ)@ej$^6a"QU:}`"Ábau6~0s0yKb5ʋZ[~`"MT[C]ίJ8;Y̙MaY~Y:H"b6h:YN[wX#PL5mluN&ll-T@| tzA Ǣݬ;qs@P+YLxdϓfDsrwG=S!pRWk\ |$=HViY'wYk|40~p@nTcӴl yMs8{P$K[duY-bLۤ]$(d.eC r6XUQHTOp3ӝeb`U,}ۗ*ǼM%(n@t_ųXޣ |/o#tH!NAߢ;]- VuXs! k/3$UH;ğSN7Bh?#QJ[u Dtej = ,MH>ǔZ"\l'!I ^sMﻸo Aayi/WtU eVV?&X}U \ˊ 5RUɭ+)h/'3SeP,ӹPiG{Gu W'vZ0y 5!})8Fާ6V~?Z\ (g$ bЋET]lL1WO~-/ <H37 3G:hDP\ڡP@R1bmmܿx2th*8c7m(r6w0G= 5'p$e[b`ձgo&dsLUYjdVs?7ԫ :_RKzkޒ'7%Y䐹[0@M+-+9%+M/|Zxי W4{WM^l%s-w{OV1&Co{q_꘸rQPˏ&MFT7ua0')=[r}|&ѽJeN*% T&!l0{ȔfR0H##|Yִ/yӐҘK40nwO|ƣXh4D_<[͊$bz;4qT9){x$.8ˁ[jWg5ptW0cZ2ek[Y/ϝ Xq=ơN¢,e۝]Ux[h'nq,vQ;ku!5Эnyy݆yPpjzcdEyYN)]j:KoWm;$+QRmȄ=ufE;7F9$`DYZ%V^؂V~>pû<1M'M{Kcr҉/+´Rه,j2-'`څp%kxJN1|j`xXŨn*.ezȎHv" rz 8&*JGvC<ħMr ƒSy3U1sS~;_e |Z/T"_郕 Gh=j+,/T<< NrecWW^^Z.)ЋG 6ขluӔ E=f~+'^Gvn"c-II$?7JNFђc<;f,?i*ڪISi&F)Hc+қS&mڂPIcO5S400AlPnG!hj:9~de0_952"+^Ԡ|kQ1AOyf$,&+wr ʣ͹ R c_\'OJ9V- `"r*7wi/7#S6F.iw`>J#ӝ>٨`26>c74@[d} b\"g}yŹ[=2&) \/[lYSj <4n0 >%SA E`ia)z %k.k Afu+ՉbEr"6WhxN/KAJ"/\8`oӖ߸` 6Sf|.;H<vco`jGg9V|#<-~ɵ@Q/F7 :+Ӂ&_ުjBla0-И߽+1všY^%[l3WFRKF(-SNۑVGiׯGCP\cDG Z=;H<> `0<\Wa|ICS)ڶ(FՒ75T(SC;p eWw( @G_g=oemyTM%ᆠUXϦsl ћ#V]p0ƼoH:O>gK :-ZgADjza) speH+6=*fNnX78Êh.K,W8݄#Ĝix硙3Ǩl+-3#^R>?=_EsW8c綫DH\" _vfYRl;y; rg5|~ p%40tPrH P*=x.Ex qgsxvgo10%hO]=4o;Φ$mW;Pl.M2ZC>A.JSQ@KEPnLAruaOgU:UÚDӾ DiQ[2i7zKX\3ȸi7-^t:GVq6] R Ā Vm6=WG>$OWeD0:jFtDY7T>.ob[Lf%t>xWXx T,|^7)żEؓ75QN"RF3o_с盶 ݌ίO1ΝS|T?&̮[qg#yDuՄV!n,7Z|*E]Rf5RnkcJTG@piNqUֱBzC' "+]QOc҇j|/~be-P#黷T w 8HPt R{k6g i~+v])ܙy: <%cF} B5N *Ol9izs.Vp=ܖt:vK+ uᔳ#:Ix[,f {)^DV>%8H!sm{*fs%f ʊ9O[ PѬV7 ˦|IUW Zr*.~h !E'7^нE]܆zFN ,`sd\vP,뫆mNE>-F?r 7&f3%s^ ֓3#2f9R>>aRN߱Vq2Nka( F߿)+@Ǽ"uA^=ѩB몂@] _X<p϶gA6:Q@%^*حų&rxE^kk\_V!Aȷ&Q!@Nd&Ϥ;Nꩥ#/!ǣJ'Dŷėdz%룘MC]I(ǮFYֺMAd2Y@ LmN:lfy=zUB٩u{vEBoq|s8dJ#y-XŠz_b LUĜpbF?:=acM2܊[;z m KOj|1|L;F̆JCv 2vLE|ʺDľ/%qٸ k-;&>&H7qSbşBpe 4 }s>l2mCN3V2Ye.c,}(S)ޭY"ђ%,_SR\AS2s%fEC8~paAdrZ) Z⢁gC`d[AO)R$#6)[FX~`EA?4utIIIJZĠXŚp%Չ"eWˍ}"Btfw5ie%9H=Vi>R!h2hB I~<I'{' d{JPf6r}*79u7G3}˟V&BY2e<{^EATV^e=׳Dxh"@jfğtg- mTè+n Kd];@XE(Ԃ@ t1H&!^1u~Of=ЪT͕W˦.tz$ÈirgnTU`h]' fN9( 7vEټ3 -*5.,ԻH۩%"ŨdD*q>NFVMK1[Z~Ic9QK }x먄3j[~~.'4Ԅasia*`شr:m|0VsLiqE:V|>T@/Z,,*сf/n * ۋ%R jCI5ƥ|25(< U YZ