vsftpd-3.0.5-150600.10.6.1<>,h^Zp9|wIԮ`OB7֚)N^'Z֛- i%?B _|0XɼIջ_B) /ƴmi5 }#VR 3.m>ԩ +>WJmY-о.@YxHNCIG2ҡ423:;@6S,bf*:J8(V:#!'xJl<> >Io?oxd   K )Jn  * G88 8 h8 H8 8 @8 888 P t8!T!!" !$!($8$59%5:)5=a#>a+?a3@a;FaCGa\8Hb<8Ic8XcTYcd\c8]d8^fbiocjdjejfjljuj8vkwm8xm8ynzoooo'o(o,o2otCvsftpd3.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^Zh02-armsrv1SUSE Linux Enterprise 15SUSE LLC SUSE-GPL-2.0-with-openssl-exceptionhttps://www.suse.com/Productivity/Networking/Ftp/Servershttps://security.appspot.com/vsftpd.htmllinuxaarch64getent 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^Z43cb24f9420d9ee73c22dafe29fd25616e4df55b38e450764fb1c5b8b0578003a56c55569c44f61aeee475344dce61f4ea18df08c26782a1013f78a0f14d9a0ba23879a7a2209d11324c392a6d6f1824b34872c972ac1cf60b11279a46c953b4ff59cefeded709da635c1212256e6d417d82fa456319f90e4db85ddb03f7d1a276ea0d69babf59d696c5bdf853b1a2a8a898c0ce177ad971b1742174de21bcee9fdbfd2ec0207170371ca3cf2b0ddca2dc2fe3d062e5792e0d3e51474c3198c96f5f21db930b9a8d89b56a6654780954bdc2a41d2bc9529c0b8efb3817c45ef1650dbd9f643219809821707ff4e84106f7de75f5b9644c467020c498eb4320f27dedf833fb8a3bcfa96b48d309f3892b3ae3340d271e518ecd998750fe11a0b74690662cf0bbf289900b0ddb4c2e0cfc555dda870633440d852f7d4b1b783d61fb32f8176eda6b27a54a61d14165b03aeaeae8c6d81a4c995cb121ecabe2a8848b12b05b7d664e344d4d59a26c3f6b13c645f1b53ce6045780791350b278606b4326d89a39bea92a0dbcaaee0f658d7bf810c8f322688b6b1303f3b357a0971ffb26bd0055e5875fb2d1083326b272685de7b017da65000a21f99081c1a300156ed67ebc32ca688633732308ba23c7601a463df9a8f6d4d349cf1e0fc770c8f5ee162751cf714e1ab6b5894fd08b0a95e788a462311cf7da47988ee5fa55aa6247ffd29f468e22eb304a368bb987510fd44f0486894de293dc7dbd3d48e78f5c4935bc943f442e358d7a9c81f4ce2ae1ec098543e726868d423eac55beb91b7b87274257549cc60d5fd2d873326b22eb89a4d8199bb5841fed3bf6c82b5494f2519b63d63c4f1517a1e7cf3373f19df4c8a697d1823814f425340bbebf5fa8f17dad436bf918a2f81a540847a9a46946370c2d796ffd5bb5d98cb8a69b2e926e181e70be2fcc7d0dbf34f8626e2e026b10ee91108f84dea93670caac57b394c2182acb8b70a360dda945df11a1598cf493774f017db569a57f07447119bb0713c55f01df06b2d4ef2c26d0d679c6782a60331fcb0f3991d0015458820819893b60b8129dd74b2e4779f1ac8344127e47a7847584b8cd79eb36a055208ca553e3517941f8d5bbb5970cedbef05d0593cada2185557053b9574c11524841d80749041f854a654fc72e6d173d62da1907dd14d6f39d276b20e02b0b1ddca6f54b5b61de85b72629f20996b3124be21877871518388548636459df9ad6cb5a3e31ba1f0b372b2f63fc08f5e195f0d1e958dfed03c57d8868a3f90317bcb3125852289cf0afbf0552928f37cd4b068a2cc039f4200175d65dcead6701de158a17c95797d0cab32f477176059b7799b3f92c90136440aa84ee7c5005f0d964a311df66595fd71183207e0297b8ea5d1f0f2ad1681e16c1df530ac11844e7fa010e7d5490c4a70c9df7c3b090e7a1822f3bb0cdff5a559a4cdd58f98c9536f23c5f43ba47a2ac8924cec7a864d3482f2fdb9bbef552c8c0123b8647b6ccbfc2d3cf717c0662397b33b84f9827d238703e7ac36fa9f129fa227640956bbf87e0233cdd821ce6627358df144f933424c8b81c40d70729bed51f634c6205ac6b8da43eec413bc084f62d987705c810dc2512fd4eec4269ae5e1373c19b9b21e5e089f31e173f54cac8362cd97c646c8e034e4676c2a053660b033e2011fe24297e93e0a74ec9cf119e2f9dbcf187fb805ba5aded105db26a693803636fb7228c98460ffbf22225485a2ca5e00cafd96ecb4336cfd34dc6064ec16f560c1d7b26d213de6e81f5044553f0237c3ea3570baa910e6a31e3f6e2bd8cb9e244aefa89e9123e0d306477bf3ae7199ce5c0604dc83fb34b04de1f91f96929532c4918c32caaf94bbaservicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootvsftpd-3.0.5-150600.10.6.1.src.rpmconfig(vsftpd)ftp-servervsftpdvsftpd(aarch-64) @@@@@@@@@@@@@@@    /bin/sh/bin/sh/bin/sh/bin/shconfig(vsftpd)group(nobody)group(nobody)ld-linux-aarch64.so.1()(64bit)ld-linux-aarch64.so.1(GLIBC_2.17)(64bit)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/shh02-armsrv1 1751014066  !"#$%&'()*+,-./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_Updatedrpmxz5aarch64-suse-linuxASCII textdirectoryXML 1.0 document, ASCII textELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 4.3.0, BuildID[sha1]=47ffdf98412b858d77a33fb7db7659b21782954d, strippedISO-8859 texttroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)RRRRR R R R RRRRRR R?LU:O \.K%systemd-sysvcompatutf-8308a1c697cfe896fb358d53610b73eb52d8410d6334fdc16bb489f41f2aeabc9?p7zXZ !t/4q]"k%w0j(}A㜦"{3-^:7vYE Ͱ{nTbIvZ.cpHYisDuSȊkN4氹]Hɤ QdY>bE ԉnz#D/K>GPUrV .ڃqPw]2CQ+\MH%t]K$69>CM/UHN6m91QRx~ѓvo*iWܝ n=SNoچ=&Uđd6>ÔJr}٤q4[: vPDajD@^fF8j2s&C[,8,M&e/skȰ?XiyIdE4%]L>-Id7UklmvNדzH2xd=H㇣V ըpJ_y@ a?m/e*TY3jcӃ-.| >l.'d&tT$7X7Rp[ vG4/t?҇,oâߐUẅ́pD >Y"yƸ+-о]h\JƋv쑁!(FT|ȊAzOn 9Y^R+ 30UV@j9Ehj"ϼ4FyFF-20% K7u-g{<$⃀Ēj[tTBwqQeGSGÐHH j:oTm9&eW]XߠZ|RSNEez>vA tRzy/:׸9d&*\J jEUˤwn v\wd=+2X|t[{ki{^4{G< Il rS(Fp3-{WCS QcYLPV=luc\ob,Yq]OzPYcȺ:-4 o ɻ8m:C6\<$w^??9*L8h7DW؈emz>֑!{Sϊ>ߘI3"'yj[踻 1CYF92K9y.V 1uB@5dQĐ*zEa6N<CY2.wUCLN@* '5W 侽HSҫJ)ZUad:##"rW9-M>H ?0=t׻Ԗµb9T2);*Ydܗ1%\<-a1' 1߶42`z5ep_:ߓT:91a.$Q5Q)p(SDC{1X2XXJw ~Ajrwpn0Pޅen\& h6R 2ro  Rr{=By8^¦T{&tF"M W았\9F_/tr ř,ՖBDcUV¬0h{R^  r3w~D?%6)& R^ W~PIAl J煡CmP)lprOyr&qpXק6I22b3|׊J~k&<2  /b9Q 3'MlJGJLj`|zEp2K@TNe"(*QւYp̀{lZyM29B\ h+Ø&e1E9lVTn8pH2p|"hypģC9ސ2`Du3,FYC"myJ~@sExB, ~3U )jx[(cĿ"#6j,dSla`h6Kox=;~${%GvLh AjYD4˂2t.R8j _(xhp&D;z6i8Tq>oŽ\G#Jc3?DU]lb5*\9Uz'ppm)ɆtVoa>p1&%C̫;ozs1p1j_ŀek?LTOU6BTpּ"0׺)pWMsT<-8$Lf¡Q,٦ʱ@WM:qNk"ܧ"GzU|wB]1ޖ+OZmWn@7E`lTJN1\:tdz㽦o1Ιsbdcz8Ag)IIwqLl6raf #l^kL3׾k}Y!zsx9 ~QϽ5%J ABhz0DHv̤Y Óɑ.YIY/ 0,kɿwTs+ݏߗ LR5l18,Wa}҆Do).s-8AH@]8u}Q¸Y~\LP2+es3rYXnhR88!BɦOB}7Ԡ^=\uXECƶt7( Q$ qϠr~g> RS0U nA܆iGaFR YRvC: :MTj+gy5@p,Mbe+Tb<8KҾ듸kxӀM*kbzD-ڒ+L6fLh|/TPOoԳ茰H8='H` ?z4i8%?HGwPab$J Ƒ=vTUp1UԵ C"9Hf9O-*c=cbA,6gxƿ>F}S<%)XBߣrx!H+6k|Qŀ exjͼ P0LÈJlJ5r;mSl"~N(>pZ/}KpDMްC=c ݴ؄rcS&aqo $CPԹXQDk/r]x= ^]?LϷꥵQz;5:^`yz^¸cɆ/)R $-`u㻾 _^U`N''w#fs` "GmAaT"rڸҠ}`y)#KR2階 $+fN(O|+j)( wB8y3@[t$Fz%jB)*NhQyXkSd3 Pe I%Ԃ$oʨNR"=ֲ+,Z)B!WG#v[T!.3%Zd~a`"bDL1xuJv#Fى|cOjl q5* 'n)C/n9-T[~8Vpt53O@'/Hj[$? xXm =4͡~(Iu~r}F'3kK-JEҞL.@ >`;s Nc!=sFmT{G tF@c4x(iP.^MYY"V=M7FGdBO5:Yu"# .PЖv([@Fo/%ǙꡍŢG*>v\QZt\4VuksL.y}8F6P5/ʇef> qCyt~-tp st}@dI¯Ҵ{|/: )$*;>휳b Ji,c˚g]w'҆3ֻ(R3;:sCE~j)c;ͷR8P g~,dTE 7|8Md-rR ުއnfiSÿCu`13v(c oV&Pi_㞡yy rR9Ʈ mIelZV?4c9D݈oX`_ P<-Yp? h6[‰R:vn=ܹ׶G`XZZ&{$DfKN ?;47V4:QݕDɻ:qـKTʘXC#a:dS~Xd1 :%c06*Nފ/]F3gf%ISI|-o#R qSɩ+]Rhƕjqę5!L*QO[ZIJǕj\㧞_4Љ<)h(3G;y}͞QWwiiMUi+e>sy?{IeRfTjwV$~&ˍ@~!+olt`|I`Oۛ.bm%W<7hWқx8Q dԴ*^5 _@2n>-n5o\L~cD1 >$ËgXSq"? 7kyrŪ/eQ8syG? UϧҨQ<(}F#!]bv0%!irPBĪVǖuV~,X򑯖mjY䃎gTq28Q󥙎{sNO4WHL QռZH(]-D\7(TrΓ_HX{̝siJaa k.,$}ىiq#H"M)T=TO {wg(T(VG 75 c=JU%&⢵C2(>jLFk"sF*M7aX^)@m9gRm"ir=Eu퓊X4BeH_R( Ic2TUr.P9 `/Z]1l|~|x#J%/nnZtG1$hn|"DW.{` ;~He+w%v/N:@fuKXmt(q0uѧ(mLuY>\d~4!ԌdO"bd1ǔ+һZ _ywsOr!j_ 1 ]tt9dʴ"h yUMP%CK8|I[1h+e0%d5D_睇8kƽZJF;8?/Kb7NlM?ʅ9yy2_֎+u!T];& {wbub=A h^uSkۯP@i љcn 5sQ@9\S&+^dG\ԄQB!|y"3FcQJssZ:=A-68qҷ]#j t=ɵ^?\}Lku aG)J>qp=b^.Ki6bt<W-[aP)رDFh'-]Ï5u0+KV怱_S:_ZvPmܴ1/ >e8y&Sv,Q1SMs0:^x m9ي1fHW镁w*0=E,bk'"wՂ#r3ۜ^3h OTbu(el>lLQ9 le$%Ԩws09y^ SZ3&gh@3u:?N24 {a>Uz~ßD~^XJlY49 Aw.R .D 6f=&϶PZ?m= SkGlSfŽ|1IzB__l m"#rJ) `"V{6? ~B=h9q*Ȑ=:BDZ{LˣW" =c61 !^<ؘҭZ0Ku`B"΂1wf_Py$$NY+fK0eL]YG<+kWe]h&jOB,v弸,TF^+d==K|d_BzRI߲2F{"vfbƿ(\^hAGߟKJs_M5{:4[E ǬF|/E y(`~;( V_&>M?$LKwwX $432iv2YLmI!W7wcSy ʾq'Y^ǜNJOr;_-1lr+" Ud7bn򆔘h#8s\BnPaѓ8"X'TK 1%?eS~ 8+Z}?HU-X %YD,+0jS_α랎ߏ%n@*vNl;~uT蘍hM&n34-yt׭NkQDBMi6)OUDl^zcUͱ+ЏikQR|ȹa_p3WtO>#B3FBlu q VbНI|;}Q`y!\PUK9{ =QlЂB^yROjgن2_Jm騈cL9;L5DuwLYr% %kud$Y+Md>G?a#%!J `0G(e\߉cSϘQ:UwU-Gg4s-Ы6RXo yqPqqi/yGj;= h-8{l1sæjB&ـ *W$7Gם| +}\z=1dDw#duO?ɕ9i-07hƦˣYC[t[jъlVu Jݢm%q"A&=L(o+{ Z )1wtaxeQrBba}A&@H0#_!8;>W~! T*eYK. (q _q"磰e(o':mW-DeMKg6ASu:f'gV{gsb{Ɔ|Rzi.!&q[TI/{%r߮&8U=#cQzPl;O;S]*v%X(ƶmW8I&:hZNh|PiiDž}=K 6:< H +K1b嗡ߛ ҧ /ʰB2>Uau~_~KڤV"iE0<][#f۫$$Ӎ:;9?e ;7AW@eIewwJtꇓ.!c8*򊋁@95ɌnżfT,\xCx$<P1bդtyL?L.,FћIVZg3?LFQ7bI#w.=s=U( \ȡ::VUgN؉2oYZ׳G \*BiN9]'&EqgkX&dvb\4"ԁթ^[#qSW9LzpV}gJN$lN&aYIR[!GEb VV4+0W 'v9YCg .,yt[.hW\\ha تw"=A〘!cw'H9\t+{uNSaE3&v!7¬ dǡAͻj2SYV6L4 {H`%uM+:uqZ$XXt(h!Ioŵyף7hȮpUkU$"{U0k`=[|q0P?[Mʜ󏹵y=[444d!Cħn{ aecj䗢UĀU~UrⱲwU!+@.#ZV]SCJ7pxiƙ-u %cO 5.=O˃t n4= ]:3G?{B )ͯR hũ`n2,]. l'2I/˟]<lʛ䩩eY=s֓MQn?n30ք^§7Ml)Ǻ &:p27,zy ~zMu0= KZ/{+B-Ƴ@~>O8ғ!ő$BJ cF~1=gh/b;zQ/#o=򝤊u wݨȫbgfWɖq h'{v Ubͣvjz;Կ[B [v estQtpy z\uOxۙ_:=f "H46vt^1rg(W$ 6{49 4N1MFfX ZaAf^m}QoD͐!7+,Yuak*SRвqpx(hk3rfh e57ܦle/O- N`_fc}*ߏCw?et'//QCQbx򰁉Y1{~_Mcr.Ḭ )ER AA:gE.)I_Uok=@)2)q~1DYc4XOs7*&8rXy]ލaZce̮#r3~Yں B]"Ye؆uIG2hM~.{ X' n!;V*> }UoewotjD/0MĠDn% Ogu{'l&gyzk0-ݺiC6nH\`Q5 Dٖq$7"Y!ǢF^_kNUS;Uh"%j; ҉Ic?gmH.rG*>pך}_9l} bWBU| p:–]o/_}ߤ~>4^87,!G'!oyE>/\dl#=| |#+H~hC:wg3Kk"7{hUa39[)?E ".J$kheJ):Zj"eX'E ,%&Xcde7GmzO7O+q$ѪZP+RIpaק@xEo7D1w-DU{u[0>Nu0IqȎ)[O&Xm>cMhRVh kإ/͋u%f-v GCն'ӏ2wm[y㑿_t牰kK>%%Ժ& V5zc0y=+8 .{G*<&Y,\MAT#pЁn/ҩ˖WP;y8!̷N!yi h'r P` 톎nQDn NwU/` pw#H0`ӿy*`t9^)@q u;F'xgpah,S΀+4|l$;ERY p55mA0R場^îԣfctp1~Ur=oO?-o>`'bgaArh)9[1 VeWkN<1պ s8 H ^ޜs'L˪:ANqե<fUlx1tyR؞WVQ\}EX|p~O p-t2b&dAN>hZa][cɌ žR<@(2jMl vkK6wn 82R'l\Q7;hgm]Qfe拚kY"ACi[B'iG HsWOH"}gy锳ݠQFk>QZѷMkjЯ/:N80h~{JPӧf\s <!3ME΀Nw~ WXUgk>4-IڱVz.~5ھ'Ǡ i2H$8!vgD2 mmpq}~ObHO*ryQ=O؏ݎ}HKߡ(1B' *&4y̳YlZLf)^q#W9ߴ,EIÀeJXc<[$KJWw䅩ws|]<9\H$C >e?$ zպj 1a\ClVt7}˳~9m3x0+=y:#ѻLN)ٟ Plx258xokx clYRLʲhl|fn.:Ua0pk@=T&3Tèv_EۚBYf""R ]pRg$ve7VZᘷՃߔN*> ρ> `z^Pm kz'Mgׄ7p{ۭ؍;\W:g_4=֛15*Nf9)sDgQτtJɥ\ڷ/h,H֩. iE5?w}f̮y9É8` *I%[z"yN<  e2tz櫸 (xg D_`Q ڢ`j|rYҺ7Kqs;ǥ]֗(vLvLՀ)۝$^T"NS=8Wz>r 2'7AM"Zu$Q힉A}y>y w5ݰw),"1<:m==T6: ~ M %szS`Ŗ &i^tj UEB!lo[FV |GtRBaFupU{xh|V>eǑ$=P?nݷJړ V#vВCxpi_at`xHK/u5>=4dsao}Mj٩d(ʇB刹8mň\öNz_LgZuDoC6{cNڒs.[>ǜ :'9 ̞bLw(*&͔u6&%OJׂ`}cMy F)t bl°`rt1'̜j +#]ק!`TՆ8 xQR'AT`bZ*MNLrX"ch=5_XrqR@ymX+a9mV"{)ձc@xfiDñ+,t*qڞ4&a拸pP&⬗~yHVw;&zlD0v%UU!x ouO-z.uF"`}D#[)`K'/A]7k8O.|Z"\wAju˛u7Ylx{<v3%[ g#`(@ O} o :5t*ge 71AߖEE^ު@i<Г&d *ȎH |[)n7mh*Syq*KEl{Ӈ0Py]QA X"mR͘9$%N1/:ڻPMđkw_?-Hy ?ַՔ3R47v&)pJM[]hE0cֵ;"Q,܆z?fElBj(Upn,> ? aFQè׏tAޢkoF~=z@A內\iv7hcߝ; ̾vʦ¿r笿gFW:  ZjnN3/&qÚJK_, qf@T*Fuj$ns/^ !ʩs :"9ZA ?4 f;MBBɡرו8I{ډNy^15OZK{K>w5sU6ު3gdn."@DBpe!6PX޽΋YWӦ`ùSt,\KhR1Ќ_훿PF,}OT zpJrpǻpVZ4.f 檎Eh8e+<]pOPy5.l[u@'[k1筆W5Xmf6ʪz100~1wtopl1x]cn 6rImV(g&x)zz"P O #e{Rd?yytrζѫvn`W{d6(EzfПF-6;kh Xl &OmĦE6.B\wUZ͒/9~ ѳU3J]ݻ T5&CFҬ[;,!0'[G"a[kN T3Xuqݢq- ޯ[e#ʬs@%YNZ.sJ:ӣOM&n2"C5q{!"{zӏ RǽK3!b_^COm*}3 6j,ZBGhis;آk8GN,,%5mE~ *?.uǤ`.gxB?t&$ /p#W 5ݶJq#Aҝ#Qڻ6RтD w8 [ )(c@Ϻ/ ie;H;>)b'$k6`uˆp E1%9*υתރh& y"0iܘTZ/HÆj { lS,QD~k *蠵_HK}Pdc0q7uoxOɀt+a=ej'c%>jrtasf&M*4 !?w4Ռ }ۄ_mz1E8ɬhz\k (!ASTvZ9g\W{5V,8[f ˻;)mŲ=h6ld~7si iDGR]RD{wD/!0,{Irҭ6 D|L?gڥcAw,,q3BbTør_z@]0L@~Aa7'ߨ2:R\0bX3p\)D&whR-UegLwi c45AJKjKdwx7DBH%L{kT_J=1BHzWYvG Uz!'P˕*q%nײ0i}7?Ѝo?8ScM>CKb},o:s75L/@/Xϯh,0rH?7NXb[Y ;j_=Q)KY~sS1=!孇*Fg3Mb"^/MC+DxDqOF(̄HvtWaSI]iBxKHNjkT *{Su*HV/ 7ޭޞBCLK3ץq!_զ% (rp)2Mvڶ'u]&sɉD_7t0D> 345N3IrP> 夨o-sI/ TrR9<(nh:WfQF+pF)8B qqWTh[gэVkáYgVd8@#d/fsEyO}gvcSC@@mN_a!WAKn=/{>,,lil~6Xsk8WSǶް( Lb#)5δicsȞB@`7tꖏҰxюf^H ]Pج_GTDðʞJ`}V{Pi>܂;zFJ~&+/4r΀bHמss͘ﻮARG:jyv >9¦!T؆=yLoXbp2KT"1ڹ:tYi | QS6DQ"op~ou-4j|tL$؆z=k.|Z -*N#1b'_$2<ɟAzJY?ԟ &OmKk޵& T]x*~ o4c:lU?Gwlce HiH֦Wij/RhDI rHJҎ-)'! z5Did4K<<8^rT\8jd;M?Bau L5F=PA5~p )҇wm6B~p@V\(|7;|P\0dziwMA&ԃ79g"RXh} ;yg"~xBsr3} _MIb|"PZFy$4 3Ƶze p۫myF]9(Ȓ*ofN՝e윐/`.=g:bbLBHr$r0p#Iv0n5.+la"&T?3?Y(E/E]$C΂#y>\p7P=;+;o/TaQ]"وX .[*B8(=rA,k.h?{ZO4Φ *꺖Uwxl znڢHc^;~}Inu|.X Wp KA.Pe84/7s('a٭Vn,챤ߒ8ÇO7lVn@}!VOlLdj_8AŌccPњ)1DLI4]]۷DΜWĦiƔo2cѿfKޚC^=WwӫI$RX[F-I-p/YL\>6GEzZ3jreeB(U5 .zR2 Uq.6xNǥ9?/n-_}⍄Aǘ.y!RĚ8rE6hk gn^p"h8@^ jvBI/U8^XsĠzG2槩KΎGETSDTw^NYh"Z`3ӭk\iD)K*\Xۇ0BR;lEc@z&'i2T~m 8 *~:݃<# 8G&6AFЅ?>,1b6Jx|/I8"%]̹$nJ6+*SB̅(?.]ŬYYRč҇OǾ b[%0/<|͕"REs0"0prW>8k.WK".ܨY-{e  BRRgq0᥶K]rS~lN7.D/ q[Px{9䌓VE$P%ឹ 5/Х]RړNM0rk4 㻼O(Z0f8!P/orΜ/ަ$ˆa&̵(IȆ#фDˑp=I,2h܇0ѸJ9`- T>x級>b%`Mv*K/b'V^مgpRëΟxN7t@nMב-=L^7Ɇ$;Qeɡ4qbE8-h YäVv[92L[Pѵ&qzWbK÷DmgT+=>/Tc?;«=PŪoܫo<9q<;Kag X$Q.dI1vuHC^N8۔DD1ڭX !pd Cs΋`hv/";cՔ ++f,/y$(3S'ZY1!ߤ؆e(dfUD q݊l<-U3f,]P~,v4>B[9n8\H&_!q PӾ.ּypBxim@wF2 g٤hLYiВҬn\Hcέ 0bVcL[)>f#SX62u \2ޤ!V,A\qPA 3D0G)bSea0ӄS)*#c*IRMys|f~#Br_#T`gU72=~pʃU'i[G)ow%wڋZ9/2 3AgoMm+<0fT&ח D^_>-G4,9>d eIWM@j z6Z2oͨ,%+u/l'x0[IEY^7 jr(em.VZrX:dY/=jj?2nxyl`~-:c~ao)gu'rpЊH\}wZR|ܱ )#O 4H%dpXmR)'EG5Gޕ "kX$Ea?vw0lUxEUeb)W'B-s3jJ' z3&tb (BY9Y\i7dmƄ;O^:ߝI-i!Eȕ{ @Ӌөsԟ-Y( @r` R^B;:尗*ìKE  DGC"b1;َ.piI=p;^ Xa)GhPqSRUW2%0P[B> nmfB =Ywš÷6xq`"Ru-e?uŏ6)71PZ\DK/X}-vQ grO8OOǖ{9Ú} Z8U(iI\wM[ Ȫ'*&tIĆ#̒A34,((}&ه !{t(&DbCIeׯ]eםWvIMߴ g+5| h<[lT#&0vidjM#A\ܥNBa<Ͷp\xA5JҴTg1F03iH$ɲVax[aFO|-JmFE:_'Ǚu'7_fސX çW<ҙRv㚗{L֭vj v˜ޖ r"t{&Pw$">tt1a}ADGw2Mŀ<t.yHSU 1c׎hp,;X!?{j3]*5R:0Fd*?4\,ZEh #U&L \e'e#CTԳ2cFB&>]X΅AKD =JxE'AʬQYtuN{s(|U@I5# tFY .!i~8y1JgTh:v (CTU,p:RSU4َ\{V kW]j8,60y k]=!W!薲'u{$Y!#T^?Ir*zdh2A s4qGj q[OoԞEMm 7H@Eɢ1~Bjd }=/B|ˆI#; @!xѨ}ۭ/P*osI#$}C +dC f@֔bbTF9EN%TMܸ#poX$9@/irHNHW~k%y:`duO!i '&,fto˜T7}ep,ѐĩ]K)02:=&O~EE۾XBKs0yX{=hiF'wG>zK?oL\6\{2T@46@.4*JV[jvDzw; bΉ)nMIAqpI}IvCXPU=.7{IKvIAfF'Oz"2MbXKa|+JY0)zj!4!6mؘX)sIt#";T#kYC4CՑa43rs9j*-){'Rf2 P^KrEiFd*EeUg3%@7A!Έ39~T5RO2ӳরm&HFl}+`&%y"J͢8DO7;lz`L/'!dڱZIUo.qDEQ0(#frD20.˶1!~Cg'hn^z~W 8rW Us칆н_L&+7?YA&u0P\̡Dh )Dp[ye>)_,/vBzfO@+{1kwQ'3.fbӉ{0nQS,aY4*)`#`vXS;*PluK:Auca[L-j ln+O&sv[w^  6CR~i)L-$t6 'tTX|ppCR YBst[9Emc ZRa1;0ĵp$d4SB- n]\ Q͡J٢3Œ|D|t zDCD^Mroݎ2ԳWMX1lqDH"o9-ܭvI#<2D<Jݙ6͹S+aǪZ`|HlnByɽlj(XL>|^WFHkxr}4^޻Gf}7nAVYqxoaɔuEΠq٭ 0J6QMuO>L+ bQD\ nR|&8?[T2? hJ-d05r\&bZY(?{He85:&,09D yls B[mQ WtQbSE}NA @>#g}K| kIXrSIaf-[Ja!\na68^ 2e w oyeLoV'|;xxrbHKOҊ)j8TMn97-9$ښ{Ee.95O7mRV,Dj̾%K/Y_`>@ȹ-328a[7z9S„-(px-GM(yq@9&[LԲė.H>GMq; *>^9"A48pj/;,JU#T"Fe͊dؿ2Xe8P1w2L6 rz?ZI# /*$V"JR^4+*$VLusBOf{aH!UTTup#K503]'lw&W(=w攍&:V<c[C v51x-:ϯ0o)|pw(7|Ø M|A, 8prV`P߿qd/ +g Ͼ襨moTHDžXJ7u;zs,-`zV]}v:झKEp*Yc&;`e O:P—Of[ȤT7{8$|5ֈXoL$n#1蟭`l :*dzq#:=5A9Sai=; 5燥Hb͌FFMwAg4dbTӆbgޙL3u Y6d#%N9ƜE`3M{Ѥ&4-<қKc+S3!ש_;O3Ky+0ny%ǣΛ#!PxCIZ˞d"Y{LFj=H{ⶇ;gz1'0jkOl:r)mPw笪$5%*J^'ƥE;$Ϋ\y,PUv<hWk&'E3KtmI.%4CfTh`|'~+\`{!5%zV@Srf=C+* szsp M _$w) #ҠdA`TTL8C,^e-ROw{RTc-\(\edIb8GzgBHIp Djjn:m1PmI4:'%\,yžpv&: ۛv&ۆmu):KS  <\QBqDEcQMȓ쩗~'!92t2u a2>?C]U͠nLFKt E,徉3MI h'JPR_]d^v#qPw3-;uMda׎MqCtGF9 S݋]| '޻69xa[]6h  r8YfxIBǐmiɨ6c Dg(fywm 󟽮y]i*4iVGׇ:B;07\W'&H-A H' "BtOCu )jrHf9Q7}1Kh?7.-x&өC棰Xq y2~snU?%mc pL^X$ZŢAYk3 E\ŜkE ׾\H8-_kosF" E-PĨ#;yQmʋC9yQqBVY8'^Ns|lQKM7bNP]o(&&_:zhn5~`whL=0DMy+qB~r )ƄE쉵?Q T59i[cӌ6pWe~ǵ tL_ڳ~8uIGbwq{'P~A`*ya[/ݩxۀ$|c'328`4p"2%[fcwPW=X8 =CiXXl':#zs0fvZ[3X1{Iݪe^ip2ZER0T@ښ|Wf2G^`3w[EbrqC ~rʆA Kkiqu@*y3\qٕuвqVhn%mC!JZ* o_掗3GTl(=c#SM . ZƳvÉgWYy[ gPU$8@#=̯[!~!tI0+avI(!Ll RllcXnUQ˨lh 0mnU 7u""9O=0sJ3SF?YlSk6aˌ/Hƹ g!xŪ"7IH0 _a뀈u pEήOCNۖiQ{ XE 'S,Pl1t-6=<$8iqj؄׃D^!%yq%xϙyPGK)"E\ħ﷽֡nDŽKC ݚREzbj96^[yVvoV6p␳og}U>X4晌9Q[j QM$|vux6nfz mzX~D/ϲ@J^)u|[[Sd}SݰOrzy'9 fy~aT@`K gx?$֯cyq* cAP5髀kaXwNAt hTu4EBWF ,)' w'}0ҤG-QRPXPE:yvu.M * 6خ} 48œ`iD^gJsz:a#+I~ )=˱%wH:+͚(]?77TFB+U} nyT0>FDиIJ,1+k MVla';-V Q%b4]d=hM-i晒CCTazS<^?lϖKHWc% !\u<`}r*ҙ/ى&`Fp.=BJ5 +;U:դ.2v%ˊ?'I՟|lʋ OW(vfjŷׅ(EAac4+s YPljTkG/ {v錂[ eU99VIT x˾8JhgtݕҪ@==Q̨Un3ji:{MNyk;,|Lوr4Os%?KsS W ,V˯6 j>H.҂^6_~jBK((uo@?=%v핚၂Dۘz}:fJܚ\4Cc^mNAk2p4FȉP9d:U nx`BpKk.?4 |94hM~ j7Gч;߲KT Nfqɡuj a Ϯ6k77K#Yw=#t%qjWPUS `[i>]J\Xe~3vPyu ,sOo1F{ȂC:A4#FMb3wS+!916sq|y!`+ƏbsKVѤ3C2۵kA%VivH`LIİxpOJ)m`b簯>*5nz5-+/.d#o[rnA6(p1 o{/9Kqj`D7BItLy54M>96ZB4wwDr:7xed3C5NA ~М;g#I#*<\9;%;|ķ1qAUȱ~9P7 Uzr%zo(o3Q b KCt6s;)HZ;m?I4WonO/QUɅOM*@ۛ ֎B7 YOs(S2BsvPֈ!f{(*;\ʀ}`$L+ru"b^K)MJd"=8c&ple9W *:Y[AK*ET 6reaNiɌ))_fR4rYAQm\gvz3`_0C,'K,h3lg)R"園.bW5n?=$䲷`Vzm-DSE?F6 ءpt#U~W&9Ι8]o/)ec;[ R/ߊLe|&5T0JA復b[1i4 S WZ'3_)έ &v8R H#L+ YZ