nfs-ganesha-3.3+git0.39e0cf712-bp154.1.50 >  A b|b!M@eeeG\C OWkHgJ4%˂a9G%,|qxẗ3?vEOd̪F#Zb+ pJ͕ք*kg(J@ ؿIR'[߹Wj֭LPrUEb\W~hw`,YĨڋmUKr "㊪mF QؔR MGCK]~xF /(=Ug.e0ac047e9a36cf3342a5ea0b56d847ee1c35d98da2104af18cd19e9193b315a20927a382fa0731e18647633ce3ae7d584e85f060b|b!M@eee[3@^V59.ta17jy|vT!j>RF7w;d `a0 Ӹ!1,K~j9R8ξDL;u`qqmڥ nϤ^zz B/yUy0H69SNY8l4f<Y0>pLy?yd! , PX\lp #)1U ++ + D+ + [+ +4+ + !+!!"\#($18$8F9%PF:+F=m>m?m@mFmGm+Hn+Io,+XoXYod\o+]pl+^s bt7ctduMeuRfuUluWuul+vvww+xx+yy<zyXyhylytyxy|yyyyyCnfs-ganesha3.3+git0.39e0cf712bp154.1.50An NFS server running in user spaceNFS-Ganesha is an NFS server running in userspace. It comes with various back-end modules (called File System Abstraction Layers - FSALs) for different file systems and name-spaces (notably the Ceph "file" and "object" back-ends - CephFS and RGW, respectively).b|aobs-power9-07=XSUSE Linux Enterprise 15 SP4openSUSEGPL-3.0-or-later AND LGPL-3.0-or-laterhttps://bugs.opensuse.orgProductivity/Networking/NFShttps://github.com/nfs-ganesha/nfs-ganesha/wikilinuxppc64le 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 nfs-ganesha.service nfs-ganesha-lock.service nfs-ganesha-config.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 getent group ganesha > /dev/null || groupadd -r ganesha getent passwd ganesha > /dev/null || useradd -r -g ganesha -d /var/run/ganesha -s /sbin/nologin -c "NFS-Ganesha Daemon" ganesha exit 0 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 nfs-ganesha.service nfs-ganesha-lock.service nfs-ganesha-config.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 PNAME=ganesha 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 pgrep dbus-daemon >/dev/null 2>&1 && killall -SIGHUP dbus-daemon >/dev/null 2>&1 || : 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 nfs-ganesha-lock.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 nfs-ganesha-lock.service ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in nfs-ganesha-lock.service ; do sysv_service="${service%.*}" rm "/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 nfs-ganesha-lock.service ) || : fi fi &rh5WSIHR" &A6xr03-k&4 YA큤A$$$AA큤A큤Ab|ab|ab|ab|ab|ab|ab|ab|ab|ab|ab|ab|ab|ab|a^F`^F`^F`^F`^F`^F`^F`^F`^F`^F`^F`^F`^F`^F`^F`^F`^F`^F`^F`^F`^F`^F`b|ab|adb|adb|aeb|aeb|aeb|aa0ae4c2156edb328987be04e689b994dfc05258dd33aad7338c64674ec8dd0b573b3ba2287d9cab3c09dd2f78e8d72134a9008d3c09bac28551e3a8ee3ea2013be66e154562cba1b49b6e005382160828e9b6e08f6c16da08c5c11043e015d6848306cb936321a1797d875fe0a0bcd76b7f271c7ac6baf504785ab9ae1a860d2c22312852d66aae9a88b45977a4f04e032014ed036d2a54791f389f7cb9d7dcb085176a87bbdc404c35b3a484dc3914c3e0c2ca158632e851fde6785ac59e36d05f7e9b687b4d85ee950e59d16668482ba96f62bdadb05c7701b1a2db0282191eb60b010968b0b668c799c39624079dad9cdd687a56c7e749d54a68fc20cd71cda7eabb7bafdf7d3ae5e9f223aa5bdc1eece45ac569dc21b3b037520b4464768f251c62a842a033bc1bc40cd8089ab330202b45adcb279c4675afca4aae7a798593e811431837fc39db826b6996109887119f8f0e1130175b33a3a1685ca5e19a248c78622f1233e9dfc2ab60122da51c14efcafa6f905a6ff7fcde9fd842ba021901d1f161002f731717fa926c1959370d5fa5deeecf1cb295ecccede569d03677ea319a23867d4e05d63d80a94cac161beb818af9a82f39fa660d6ed71297f73b3ba2287d9cab3c09dd2f78e8d72134a9008d3c09bac28551e3a8ee3ea2013da070ff9cc7f5975dbfa63dc1b5dec7d01d8a33663aa0b7e9ea639af127f23b70bb96599359d4ecf9231e1b450d0fce1e142ed7a853f075620bfc1d1e1f64b3ae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85591a08a00a9d36194b1bf5dbbb76b0bfde327828b95ee3e26ebe59ec0d610f079f84c39e29cc8fb5c05c74d5095bb9a8d42148fbb4ff8a5d20a9bd3898cb0595309f062ff20e7e92da04eaf50038e5fa3c88b23a0a68e3168b3b36308ed3f84772f5d1055665b2979b5b9107e80276f9019495ed448a3f728c819c8aa00c89aaadbb084a2b12253de727721e8d17c7cc8d0becb3f64d020ade4ebac057340f713be66e154562cba1b49b6e005382160828e9b6e08f6c16da08c5c11043e015d686b3aad8fc4e780ee032cdd4f1efe66fb4f69d72ebeafa1b46a84077654cf6239e1da0733ef40c545c85c3f1f31fab01d9743715d23c9d345e08f0d33a25edbfc748a8e085623d94316c464464ed728d324483e6e243ee6e861d00bf48f32cf52664c45fb11265f39739429561787db9bba654a5d8dedc145761394808a899dfaa7f95e122b43f75fa006c8c0fbd755b4dd1a7c155067c11f9ad733a6cb1b883c2cb789b374d7e9f91f123e22cd4c3af6d86f07d00d53e4ebbe45709c257d5e103e4a08a65a579f57b5c40856e10fdac8cf43108258883f7d62d65c59af2d8426253df0daa5c38be4817c9962d32d5cf879668f186893059c6179aa98935bb3b929b3b6ceb91d343a734262b3b883afe3f9b0f91914474a429a974b66f0c79c5b8d7939ec0fbc162def5ecf29f0eb17e2791bc79d86f4658e6e311b9d1b8fd0075ab2c447dbaf7f03cc9d41c22e6cc2a21c46ac3d9795b2968435ed4aa79dd39667547643e3e99427d79f3f48b3418d366e7e82ae0cbee79187d31abe3517ba64d5058810870f9905549d1f972a57408ee4dcdf2b99b0696cf8af7f6afcfda1c4rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootganesharootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootganeshanfs-ganesha-3.3+git0.39e0cf712-bp154.1.50.src.rpmconfig(nfs-ganesha)nfs-ganeshanfs-ganesha(ppc-64) @ @@@@@@    /bin/sh/bin/sh/bin/sh/bin/sh/bin/shconfig(nfs-ganesha)coreutilsdbus-1diffutilsfillupgreplibc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.28)(64bit)libganesha_nfsd.so.3.3()(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.17)(64bit)nfs-utilsprocpsrpcbindrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.3+git0.39e0cf712-bp154.1.503.0.4-14.6.0-14.0-15.2-14.14.3a`@`3@__^0^Nt^^^,^,]f@]7@]@]߶]@]Ik\\@\@\@\@\7\v{\o@\f\eX@\b@\b@[@[_Z@ZqZhu@Z7Z[@YYKY@Y^&@YMY:Y5GY5GY$$@Y@X-Xx@X$a@X$a@X$a@X$a@X$a@X#W֘W@WW@W@W@W@W@W@W@W@W@W@W@W@W@W@Michael Fritch Patrick Seidensal Nathan Cutler Supriti Singh Supriti Singh Martin Liška Anthony Iliopoulos Denis Kondratenko dkondratenko@suse.comDavid Disseldorp Martin Liška dkondratenko@suse.comdkondratenko@suse.comdkondratenko@suse.comDenis Kondratenko Denis Kondratenko Stefan Brüns Nathan Cutler Nathan Cutler Jan Engelhardt ncutler@suse.comncutler@suse.comBernhard Wiedemann ncutler@suse.comJan Engelhardt ncutler@suse.comncutler@suse.comrdias@suse.comsupriti.singh@suse.comsupriti.singh@suse.comsupriti.singh@suse.comsupriti.singh@suse.comastieger@suse.comsupriti.singh@suse.comholgi@suse.comsupriti.singh@suse.comncutler@suse.comsupriti.singh@suse.comsupriti.singh@suse.comsupriti.singh@suse.comsupriti.singh@suse.comricardo.dias@suse.comricardo.dias@suse.comsupriti.singh@suse.comalekshmanan@suse.comsupriti.singh@suse.comsupriti.singh@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.com- Add patch to fix getopt return value on aarch64 (bsc#1192367) * Add getopt_aarch64.patch - Disable build of the XFS FSAL + https://github.com/nfs-ganesha/nfs-ganesha/issues/533- Enable FSAL_RGW again, as it turned out to be compatible with Ceph 16.x, but needs patching from upstream. Backport upstream patch to fix version comparison. * Add fix-compilation--faulty-version-comparison.patch- Disable FSAL_RGW which is incompatible with Ceph 16.1.0- Remove -fcommon from spec file * Reverting changes made to fix boo#1164548.- dropped fix-compilation-errors-on-xfs-ioctl-syscall-structs.patch which is a part of upstream 3.3 - Update to version 3.3+git0.39e0cf712: * V3.3 * FSAL_CEPH: Fix size of handle * FSAL_CEPH: Always use the large handle size * FSAL_CEPH: clarify the User_Id setting in the sample config * FSAL_CEPH: set ino_release_cb on mount * RADOS_URLS: restore rados_urls watch on new configuration * RADOS_URLS: when built with rados_urls, don't error if lib not installed * Fix accessing object handle after feering its last state * Fix get_state_obj_export_owner_refs() fail case * Fix responding with NFS version mismatch * core: multiple definitions of 'common' data compiling with gcc-10 * Fixes in stats module * Throttle the health warning * Fix seg fault when NFSv4 compound op fails for regular files- Add -fcommon in order to fix boo#1164548.- Backported patch that fixes compilation errors with xfsprogs >= v5.3.0 * added fix-compilation-errors-on-xfs-ioctl-syscall-structs.patch- Rename systemd cofig file for nfs-ganesha service to support upstream service configuration script- Update to version 3.2+git0.8d07e25a7: * V3.2 * Move async callback to svc_req and give it its own wpe * Crash under duplicate request "being processed" * nfs3_FhandleToExportId returns an int (not a short) * Stats for all ops by a client - Update spec to support 3.2 and remove Obsoletes- Drop -DCMAKE_BUILD_TYPE=Release in favour of %cmake macro default.- Use %cmake macros for build in order to respect $optflags.- Update to version 3.1+git0.4de09d665: * V3.1 * Pullup ntirpc to 3.1- Update to version 3.0.3+git0.0c2a4da66: * V3.0.3 * NFS uio setup calloc size incorrect * cmake: Add support for Open Build Server + remove sle_build_detect.patch as changes upstreamed * RADOS - Log a message when requested backend isn't available * Handle RPCSEC_GSS negotiation or wrong cred messages * Protocol: add config option to force utf8 string scan * Clean up UTF-8 checking in preparation for config option- Update to version V3.0.2+git0.eae6d6d35: * V3.0.2 * ganesha_stats option rename * cmake: LizardFS doesn't need to be a STRICT_PACKAGE * Add fsal_test_access to exported symbols. * doc: utf8 characters in ganesha-config.rsh * V3.0.1 * Adding trace in FSAL_GLUSTER * call set_current_entry only after checking state_lock * avoid mem leak * Avoid twice free.- Changing service file to build from upstream git - Adding patch to correctly detect SLE during the build * added sle_build_detect.patch - removing add-missing-CheckSymbolExists-include.patch * already in sources- Update nfs-ganesha to V3.0 + libntirpc + Use non-blocking writes when we send RPC responses or make RPC callbacks + Continued improvements of readdir cache + Use of gss_iov for GSS integrity and privacy encode and decode to save buffer copies. + Change xdr encode of attributes to work from struct attrlist and other changes to save a data copy when returning attributes for NFS v3. + Implement xdr_putbuffs to save buffer copies for READ and READDIR responses which also has the benefit of more completely filling the maximum READDIR response size for fewer READDIR roundtrips to read a large directory. + Add LizardFS FSAL + Completed audit of string buffer handling (strncpy, snprintf and such) to prevent overflows. Also make utf8str always NUL terminated including on XDR decode. + Make python scripts compatible with Python 3 + Python script enhancements and cleanup + Enhancements to stats collection + Numerous Coverity issues fixed as well as other bug fixes - remove CMake patch, as it is already in V3.0- Fix build with CMake 3.15.1, https://github.com/nfs-ganesha/nfs-ganesha/issues/454 + add-missing-CheckSymbolExists-include.patch- Version 2.8.dev.29+git.1557746732.251ace12d: + FSAL_CEPH: fix length calculation in reclaim_reset (bsc#1134302)- Version 2.8.dev.29+git.1557398426.e91b5c34d: + FSAL_CEPH: use a unique uuid string per export (bsc#1134302) + Note to reviewer: compared to 2.8.dev.16, this version drops the "nfs-ganesha-devel" subpackage (replaced by libntirpc-devel)- spec: + Reduce scriptlets' hard dependency on systemd + Add missing Requires from devel->library- spec: split off NTIRPC and NFSD shared libraries into subpackages- Version 2.8.dev.27+git.1554731117.4db414992: + FSAL_CEPH: don't abort the connection if we're deleting the export https://github.com/nfs-ganesha/nfs-ganesha/commit/0d62e92920730972351ab897e1ff2ed2f39fbf54 + spec: * drop install command for ganesha-rados-grace as it is now installed by cmake * build: ganesha_nfsd as a DSO, i.e. libganesha_nfsd.so * build in UTF-8 environment- Do a Release build to not include build host name (boo#1084909)- Version 2.8.dev.16+git.1550844464.79f319b6b: + spec, cmake: fix packaging of config_samples directory- spec: update RPM groups and descriptions- spec: + drop with_systemd macro and rip out non-systemd conditional blocks + use %_docdir instead of %_defaultdocdir and list documentation files explicitly + stop building nfs-ganesha-utils (no longer needed; requires Python 2) + use "BuildRequires: distribution-release" to avoid exposure to rebuilds triggered by sles-release and openSUSE-release (credits to dimstar for this improvement) + drop "BuildRequires: systemd" for SUSE, since this is already covered by pkgconfig(systemd) (credits to dimstar for this improvement)- spec: + use less obnoxious "NFS-Ganesha" form of software name + use less acronyms in the descriptions (Reviewer note: the only FSALs actually built are the ones for Ceph (CephFS and RGW) and XFS, so we don't care about the others) + fix the Group lines- Version 2.8.dev.16 + spec: add liburcu-devel build dependency - from upstream commit message: cmake: always build in liburcu There is some infrastructure in liburcu for handling things locklessly that could be of great use to ganesha. That library is available on both Linux and FreeBSD, so there should be no reason we can't use it with ganesha. Change cmake to always search for liburcu and fail to configure if it isn't present.- Version 2.7.1 + Spec file: fix ganesha-rados package installation- Version 2.7.1 + Upgrade to ntirpc version 1.7.1 + FSAL_CEPH: open file as root for COMMIT purposes + FSAL_CEPH: add an fallocate operation + FSAL_CEPH: enable the readdir_plus boolean + FSAL_CEPH: use ceph_ll_sync_inode to handle COMMIT call when available + FSAL_CEPH: abort the connection before shutdown if server will be restarting + FSAL_CEPH: rename onto non+empty directory should return NFS4ERR_EXIST + RADOS_URLS: enable them by default + RADOS_URLS: permit pool and object names containing '.' + FSAL_RGW: support directory object as an export + Doc: Man page for ganesha+rados+tool and ganesha+cluster+design + CMake: Add support to build with libasan + specfile: Allow packagers to remove dependency on rpcbind + specfile: move ganesha+raods+grace into a separate package + Async/vector API for read and write + Improvments in RecoveryBackend support + Code cleanup and refactoring + SAL: don't revoke delegations on export release + NLM_Share code fixes + gtest support + nfsd: handle rpcbind registration errors more gracefully + Avoid ABBA kind deadlock while IP release in grace period + Use temporary fd instead of global fd for getattr/setattr/LOCKT + Flex layout: Encode ff_layout4 and ff_device_addr4 + ganesha_stats: event log for statistics activity + FSAL_MDCACHE: always lookup newname from uncached + Disallow client to create dirents with an empty name + Coverity fixes + Fix default config IPv6 connections + Log improvments- Version 2.6.1 + Spec file: use ntirpc version 1.6.2 + Avoid double free of subhandle in mdcache_new_entry + Reorder initialization sequence in nfs_Init + Updated man page for RADOS_KV + Fix fsid comparison to include fsid type + Better debug print for FSAL module refcounting + Don't double stack MDCACHE on FSAL_PSEUDO exports + Fix leakage in netconfig entities + Fix copyrights on FSAL_MEM + NFS: fix delegation conflict check to open4_ex + Fix dbus release + RADOS_KV: do copy in rados_kv_get before releasing read op + Libntirpc module: set the cmake module path correctly + Make code python2 and 3 compatiable- Version 2.6-rc4 + Spec file: use %_fillupdir macro + DRC code cleanup + NFSv3: Fix file descriptor leak + Fix log level for FSAL cookie + Fix new warning for gcc 7.2 + ntirpc pullup- drop rpmlintrc file, no longer required, bsc#997880- Version 2.6-dev22 + Modularized recovery backend based on rados kv store + New config option "rados_kv" + NFSv4 delegation support + Explicitly mount specified bucket in librgw + New Reaper_Work_Per_Lane option + NFSv4: Allow '.' and '..' as target path in symlink creation + Fix root squashing for NFSv3 + RADOS_URL: load nfs-ganesha config from generic URL + Stripped out FSAL ZFS + Allow configuration of NFSv4 minor versions + Ceph: wire up delegation requests and callbacks + Gtest for FSAL lookup latency microbenchmark + DBus interface to extract FSAL performance stats + DBUS interface for purging idmapper cache + Removal of support_ex + Use 'v6disabled' flag to know if IPv6 is disabled + FSAL_CEPH: no need to set credentials- Add BuildRequires: libnsl-devel - bsc#1069819- Version 2.5.2.0 + Add python-pyparsing for nfs-ganesha-utils- Version 2.5.2.0 + update to upstream version 2.5.2- Version 2.5.1.1 + Add license GPL-3.0+ + bsc#997880: + DBus: allow root users only + rgw: implement compute_readdir_cookie and dirent_cmp + Fixes in hastable + MDCACHE: Fix rename/getattrs deadlock + Export: skip export entries that init_export_root fail + MDCACHE: Debug mdcache enabled by default- Version 2.5.025 + RGW: Minor modification in config example and man page. + Fix closing at termination and non-supported services + MDCACHE: abort unlink on real error from the sub-FSAL. + MDCACHE: Don't update attributes when they're invalid + Let upcall events wait for initialization of general_fridge + Dirent/chunk LRU memory management- Version 2.5.024 + Man page: Updated spec file for man page. + NFS4: Add result to OP tracepoint + bsc#102471: + ceph-common required by nfs-ganesha-ceph and nfs-ganesha-rgw- Version 2.5.023 - Upgrade to upstream version 2.5-final - Parital fix bsc#1031444 + Build with man page - Enable nfs-ganesha-utils package build - Disable gui_utils from nfs-ganesha-utils package- Disabled gui_utils from nfs-ganesha-utils package- Enabled nfs-ganesha-utils package build- Version 2.5.022 + New config sample: rgw_bucket.conf + Logs are now stored at /var/log/ganesha/ + Use "nfs-ganesha" instead of "ganesha" as service file.- Merge upstream v2.5-rc2 - nfs-ganesha.spec: don't build fsal_mem- Merge upstream V2.5-dev-20: + Add ganesha config editor + CMake: build against luminous librgw - Fix bsc#1024711 + config_samples: Fix unknown parameters + Use ceph.conf as default ganesha.conf- Merge upstream V2.5-dev-7 + CephFS: add support to export subdirectories + CephFS: config option for user credentials- nfs-ganesha.spec: fix libntirpc.so version number- nfs-ganesha.spec: disable PANFS VSAL- nfs-ganesha.spec: backport upstream changes that occurred between V2.3 and V2.4.1- nfs-ganesha.spec: add ExclusiveArch for SLE and openSUSE, to match what we have in ceph.spec- Merge upstream V2.4.1 - CMakeLists.txt: handle openSUSE- Update to version 2.3.3+git.1478706663.6f1c7a4: + RGW: failing to bind to librados should be caught- Fix bsc#997879 + nfs-ganesha.spec: fix license string/identifier + nfs-ganesha.spec: install and package LICENSE.txt + nfs-ganesha-rpmlintrc: drop setBadness('invalid-license', 0)- add standard copyright header to spec file - Update to version 2.3.3+git.1472466979.bb9cf0a: + nfs: Use option grace_period to determine grace timeout + fsal_gluster: eliminate duplicate code in gluster2fsal_error() + FSAL_GLUSTER : adding logrotate file for ganesha-gfapi.log + [FSAL_GPFS] prevent negative values to be interpreted as read amount. + RPCSEC_GSS: When using kerberos validate principals but not handles + FSAL_GLUSTER: set default errno to EINVAL + Avoid setting socket max buffers + [nfs4_clientid.c] remove stale client_id reference from client_record + Handle clientid and client record decoupling in nfs_release_v4_client() + Stop MOUNT/NLM as additional services in NFSv4 only environments + [fridgethr.c] Prevent infinite loop for timed out sync. + FSAL_GLUSTER : symlink operation fails when acl is enabled + Remove duplicate definition of posix2fsal_attributes + NFSv3 SETATTR should NOT set ATTR_SPACEUSED when ATTR_SIZE is set + Add ATTR_FSID to NFS v3 attributes + [state_misc.c] Remove assert() for invalid owner type. + Explicitly set privilegedport to false in default PseudoFS export + FSAL_GLUSTER/Upcall: Change poll interval to 10us + Chomp tailing slash from pseudopath + Rescan /etc/mtab in GPFS and VFS FSALs one more time if claim_posix_filesystems fails. Added init_complete variable to avoid rescanning at start up time. + This patch is to fix the bug that changes the owner always to root when all_squash is turned on. The fix is to not change the owner if anon_uid is 0. + Clean up log setting functions + Add COMPONENT_TIRPC for tracing libntirpc + RGW: look for librgw.so in either lib or lib64 + idmapping: add only_numeric_owners option (off by default) + Fix spurious compiler warning on some systems + rgw: add 3 new config options + Enables permission checks even when state is already present to prevent READ and WRITE operation using stolen stateid + find_package implementation for CEPH FSALs + Tweak FindCephFS.cmake and FindRGW.cmake + build: Fedora _hardened_build, fix compile errors + 32-bit: fix warnings/errors w/ old compilers, e.g. RHEL6 32-bit + Version V2.3.3- nfs-ganesha.spec: drop explicit ceph, rgw runtime dependencies- Update to version 2.3.2+git.1470139165.7aca631: + _service: migrate to SUSE/nfs-ganesha fork + regenerate tarball- nfs-ganesha-rpmlintrc: + fix conditional in %post script + add Requires(post): procps for pgrep- nfs-ganesha-rpmlintrc: disable invalid-license badness just to get a testing build in IBS- nfs-ganesha.spec: move ntirpc headers to a separate devel package- nfs-ganesha-rpmlintrc: new file (to reduce badness) - nfs-ganesha.spec: refrain from packaging /var/run/ganesha (and cut badness by another 10000)- nfs-ganesha.spec: install sysconfig using %fillup_only (thereby reducing RPMLINT badness by 10000)- nfs-ganesha.spec: make %post script idempotent (check for dbus-daemon processes before running killall on them)- nfs-ganesha.spec: + install systemd service files with 444 permissions + add %pre scriptlet to fix %post failure in OBS /usr/sbin/systemd-sysv-convert: line 62: /var/lib/systemd/sysv-convert/database: No such file or directory- nfs-ganesha.spec: Requires(post): psmisc for killall- nfs-ganesha.spec: + fix systemd-related build and runtime dependencies + make /usr/lib64/ganesha be owned by a package- Update to version 2.3.2+git.1470139165.7aca631: + Revert "CMakeLists.txt: source /etc/os-release to get NAME" + CMakeLists.txt: source /etc/os-release to get NAME + CMakeLists.txt: handle openSUSE - _service: build from smithfarm/nfs-ganesha fork (ses4 branch) - nfs-ganesha.spec: + BuildRequires: openSUSE-release on openSUSE, sles-release on SLES + enable ceph, rgw build + use libcephfs-devel instead of deprecated ceph-devel + use librgw-devel instead of deprecated rgw-devel + install documentation properly- nfs-ganesha.spec: enable ceph, RGW build - nfs-ganesha.spec: create and package a documentation directory- nfs-ganesha.spec: hack to get build to start - _service: hack to get build to start- Initial submission based on upstream V2.3.2 tag/bin/sh/bin/sh/bin/sh/bin/shobs-power9-07 1652318652  !"#$%&'()*+3.3+git0.39e0cf712-bp154.1.503.3+git0.39e0cf712-bp154.1.503.3+git0.39e0cf712-bp154.1.50 org.ganesha.nfsd.confganeshaganesha.confganeshaganesha.nfsdganeshanfs-ganesha-config.shnfs-ganesha-config.servicenfs-ganesha-lock.servicenfs-ganesha.serviceganeshaganeshaLICENSE.txtconfig_samplesREADMEceph.confconfig.txtds.confexport.txtganesha.conf.examplegluster.confgpfs.confgpfs.ganesha.exports.confgpfs.ganesha.log.confgpfs.ganesha.main.confgpfs.ganesha.nfsd.conflogging.txtlogrotate_fsal_glusterlogrotate_ganeshalustre.confmem.confproxy.confrgw.confrgw_bucket.confvfs.confxfs.confsysconfig.ganeshaganesha-cache-config.8.gzganesha-config.8.gzganesha-core-config.8.gzganesha-export-config.8.gzganesha-log-config.8.gzganesha/etc/dbus-1/system.d//etc//etc/ganesha//etc/logrotate.d//usr/bin//usr/lib//usr/lib/ganesha//usr/lib/systemd/system//usr/lib64//usr/share/doc/packages//usr/share/doc/packages/ganesha//usr/share/doc/packages/ganesha/config_samples//usr/share/fillup-templates//usr/share/man/man8//var/log/-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.opensuse.org/openSUSE:Backports:SLE-15-SP4/standard/33ecf7200cd17b57d9acbe335116d3ab-nfs-ganeshacpioxz5ppc64le-suse-linuxXML 1.0 document, ASCII textdirectoryASCII textELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, BuildID[sha1]=ebbc1e81aa402428353a85b41f1e91401c299f4b, for GNU/Linux 3.10.0, strippedPOSIX shell script, ASCII text executableBSD makefile script text with ".include", ASCII textemptytroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)RR R RRR RKg~q#؅QYLY ^K9{ &Tn'3bzi|i<:XrqV\3YSG ւ! l+:gTWg'~04h=&" makQE|݌nL+7maHFKi|nF]LWuӨ2raFGf:+G-Fu-&+Xs9AY?]Ӗ7ׯ5{F3eΔ/VY8'^w+?C y6WGy\/F1of4y XoUݗkna'xy>\~n#yRê\YLq3 R *@'"H)G`~fkZߤUNl5`O!Ӷ~{[xv>QQۢ-kGMTrfCQcuwds#| s~ZFAJl$Ȑ0SĦUCOCj1^[,8 9SO"SjPWUG n!(E|S!(3^BH:^O΍ʝJQ+/Nʓp޵s@gJy <8c\[x1Mxz|Y|G-0b2d Fŗ4 ]ұAPG?$oʸM- iu7P-}bycG{ ;KCQ7TsQ%J\DP>ړRL&M Թvҹ>b&ji E"3QVMI#~沨V 9[X9$6oĥWA<ճ#Tqr1x:TZfR$*.Q:L0ZƭehJ[H^ש7ڰfeN7`w[K9R۲޾%Xgp;8pbǞ&dz 4A*P~\q{Xkr)ǘ\|GL\fGmK|H)dspCxpAIu'/I&b0QlHZOBKb$Xg]2v=N3\;/'w}3W`q>'fY#mNRb$rUpLS\@˭2~[>D ċѨq*M0t|m7$ lS9^.uMk4ݾٟIZ_t͙U66ꨨ|5* ^`{m$@wN{j 5iWQIHb6 kN IO?yKz9̝7q;Y./Ng4;,iE?SVo#)SN3< [+bmWQ gM)RKAV_Pf錻$n8 cP2vJ.#Pyf6tf$S'1o'Y"КcLr KSR+Gu:SJ값$Tcq-Ob\ِ㴭b1*'E"+t{?V} wR!")a$sO[v ^%Gt5EfѫްO8-Ζ ^ʇ93hg~vgZEQ>jp3˶ÍghD;!) {C1Ccixyp|납YFN6[W;v५Q`wnhx֠ Koo*il{}44ZO\bFY>-E <9C^0%!ٛ{.bOȎ@vQJWHFlWJmb= "#)-@?﯀HtzX!5Ahؗeگ'^ad2]ءc2FK%;Vx?^͡dS<^^*fuw1_|׾ށ 8Cǚl߯Wĥ 玁jn֠4FW[Ș9X\-rzm*6*]Bd#I̖H'Cz#%\Ih~M>*du_yr99]Yde:Y[]CX.U-}4J7R!OwUR)IglPJ"DJ^o Qh6.;=6|]EpcyRؘ4$Nbs.ێ\nƤv-\-= w ⒎[J 97,i.ƚ{}+QWWF?8R;=I).Y``Dѫy _05JA x yj_NvH7Hb*k 1ʴ5rtkznO$R Txeg6#u6ﱤp:`~.2'u˂ǘX@ΐ[+`llVr] Zؐ^-3,`~k0bhG)@=7~{;.ŘEdCE .zܨq+MpV<&^M]*D7@T_JbusZ=D tvKZ'nR 爟8z/Jv:B;؂o1{b/G/dꄷwMAHe f)G׎ybOɬdp±e\.(9R3Ö"meLl34رz7d}U1$VWN<&&x;O 2A2o"ӷXxTj$uIm617ً\^CBufsB7 &] 佫<-XPČr ^" hRG&U-3)(L`dr) 6ST )uX+o[Tʥx{?6> rkܙ,iy|6/O]%) Op7Qs7CV>udb7mԌ[,7/ pBU?XKiSQ2te )c-(Ξ$[^cc ~'HHL\ysAzl~'j^6lf6Jie~.(c\C1j:҄@*2TeGϘ4T`v԰noZܶBuZT#TbКUZ?!{67^=4nm ׋ CF`;X. &}0&j+5Cאw/pJ2vD6׼jijZ{2l0^DzN۪ywY'WC|lO9c)n >d F0ƔG}oV⑻?@.|RMٹEm=xL~H&ޣܨϟmL((Øvzuw6AIO3a5~wxO\ou4A8}&)wmwl\(v(w?Z"Dc=8s$lXNHԞ}Y\ 8GҲ[QNҗ֬q4FѪ3G$CV-KA wRv|OTK݈sO)6Gvgtͻqej2Xnb؝n%٠8p{w}WM4,MKe  i 2,O:3ɃX5RY 1lHɹt#Eri^G0zTt`s,TI$ 9? +!;}}e%cvnnBK5擀fkFbX}Ƒ`qt#A쟘%@;Y/m1fiGO`]ee9nN EgG˶TUܐbzYx%c+J9SO`v o-A|O@Bg F`asJ8~=` í}L4B5#ݖP 2ہzJ,p熙) pZa^Rg1ײK])r$msLd1 TmHe."8wJ>ߞWq& O %x^|-EѯqWƐ~P;e6S#<'b(#dqPZ"'8n7'yhT;n\Dξq>%w4UW*̬s0[68YХ^pZ."_pqb5\ü5h̲:#/^DmVFyJQ>UdvbM Z) @ 9'[-BOby" 78jSM`WAˮiha7T{,S%PC(8>#\㙖6_sqoQҦ-# *%3_ lDּXRKmJ!d.|T'+YNh| AI@M1y"1E|bؖDA*a^G'"/'I4޵8CN˘1!EK"6[8Hj Ȫ>'Q G1PؑnDdOo 3k$'.)Y+=,z~,;H$B/tQBufn9Ou*Qۜ5'=4 GŚX#azh.=HAiي=/emљ0D~tE- ["x2w`&zY{ph=~gZ?GDe;y21;)~f%\bKݙpW)йK7Կ=đX S7"/*.E/}=^?p7*y6Φ*q$[fOT#uKb<9+ػ^Q")ȩ7\p@v12p}{Gu} ER_F)mJN(c=&),ArPiFdfI P#Gҿa /vRFNdr;0r=d1j-֊}UH]GT1x/&WEs Ԍ"p]IB]*| ,R tU ԳR!&`4$9J .vMlz/ЋO&T<xQc)jjhCgߜ) Tyzp-zc/8Vrq4^fN֟mvU dhX]C=!K#.--VHh{eO,sA:;V+ qfj1qRWe+> fO  vl̄"S&^L@]\P2~ 'Ue'-TvtLM PROֻU%kL|Q|0 GNǵDNbLJ5+؄w׎6p) <PCa4aRuT̰! W^v2`KӺW_3u =ݼ?Rhڤnnquin a1 ,@LՂHF2WfzU}uAN?5s$fZEˡ05|'־faɭL3>?}jSF*sUE-*V"M\_'ؿȩEnQ̚gL;|CV,x<)+{&l?TH OM:eROjrRvͧOKrMR rk=m^y'Ņ0a m]FН/wAC>.ix܌3'Dsrsʇ=miH{0who6N:a5cs#p,;+ANiDžPVm_ۓt-u`7'1zvwjz\dͽ۟4ae}tΛq2٠3NjGz:,KECo:JCCIfcv o3nOx)ZMGF&E0fUxv)ȽamtIQZOsM$Ks..: D(n:F,e'TDNHm #>׷'Y]R~˛EҌ]Cvr*)hdczWA{sEٽfVWFŊmЩ1(|rBB2PK*W$bSh|\!+@jy+h{v[Ϣ%)tn gg]k㗞>$Y5E!LO'wu۱2j0:rzYMQ#Q3KGmhsr!Թ퓕h5q{թ{X_cr]pq~ナMqWt(ًxjҒTӗue.Ԏ$wIQJy@1[ Y*Om3ƫ ]g+S0*{kچE胇] ,[~fs^5ڍ낄n_Ur JMZ*":";ZOvm-K&3PoT% LQkq t,bTvc'"ٺOw'k:Z$ʷ1$w[˓@>%Sa}߶aᮣ/ CFxʺ # Z3i6'C4oR>h脢:EsFٸ<:Zd|HZwx "Ơ-ګ$7)D>3UZu̕h<@ D(D0FqL'IL`_WE֘:: 5 y9Pi :I<1 ~<6$ʖcMrLRhZ_# 5@~ؽ\+`ZpC Dn44K glT+vgw|^";;uyG{ah)u&!7n0о;U!|@VJP])E6X+`q@ր㻊EbʹLamk5N<r^7&U~hM1<sx4fal4Y:v*nbs) :!,&&4x1w[{j?\VN!>t7J!ڔ+[:JqaE1,r3Rw6>C$[O?7A*G4FIA> KIܬo4CczŸΰHe*NM0XV1-ժfN7B& )$f@81> w.!6)E˗BbFi2PTLԶSDD U85T!i թ*W= Ņ+&G>хZx#͢8M\҄x3[Ϣkielso[ nB^E/Mds7i!9wлZqL'H~N1~N#Uk(&cn3䥜^8 e__{Q/;I}@^RAE8pa-s0jMä1;Tsɡ"t?8cr{:'08R6j l?4pdcW*-ߖ=,]ϒ$ =%ə&-IGr*uʳfQB%Xb:8ylm 3#%&Q2! $#mÝmXƆ \ZTVk\r4U2Gٕ5kL)3Kc~(qMORH^T:FkNv"1>y 'mi ӑ.%#bG^j6؁!18f%v,/q) ,8ZބΊ $@UȠh 1(VAAcgNO,xv/ⴂ/0Qxmߠ. vӶmye>ae ~ISaƓHykw.g.2=PAU׸lky[[$IεVF~w|tΰB p_\ ^7t-:uN*Xy…ehXTUnѕl"w?/SlTpܚ q7S& 9X.95Qmfhn+k@%?>rl@oO-:N&3AvXZUma&`N$x֧[Ji*e6V{MH;0/ cz8%^`o\커%ўhcp$M%}R. &̯ 7)H /ĥ׹- I7gm7r-WN$$s}*?7~@U߿ޯNFEdX2|k3/f6klyyeCTIsƦG;mxbW3]b•QgPyvĎ-vgSk=Tgh"{%LlfS3GN~pTU_/O[IRe&ܤ ?GiLY!Tx#3ZsJV$5ş!xZѻ9M!LdnY4ݦf4\lj⾅[nwq&Du{liڋDvc7:?k!r@<뉠 3C׸Vk`&NuDfh&[Œvpy0fXϏ/r|) ..Ϫq$6pmL0@S6|Hi}$_7fe@/![u+S4 K 'yiֲ3L;_*YN#,UVy#f/vb/j75(Hw6l5H>Vx=#y8W+ҳ[% SUd`B>`|0.`1!!4NГReaf{ g"vd\#fw(j0׏W %^;SZ'79R'1?벤g\Bϵbt'f?͍,JhdoԘ{y:y<̽X]G g;@cnkUgOCRbQ]ۮw]JZ`]?l"bB .3IO]Љx{Zrӧ7uROR^ p-"?"7.+ ͩrc{bdQA,#Ok4bHI!@ "ȧڐ/: *fsÒO f+ 1G4[1*vE ywa y n }w] EKHy>::48)lPٮ;wvKW80 eFˮHIHpZQ FZU6;ے6ܙ\VxKv ~/xM<򚃐 (-Y'wyCq2wŀ3;썎{p^Y.1ye  |z'fc-6Rl7e$V 8춬ʙ'ԙеi'k~ti9j>P@Ac⫝Q1(+mU/\ގzmGz6lStziϴo- 7GW GXal4>(} ⶑ"t!w]Λ%:rJ]_3RCv1v/U.&E@qZ<`7X>;~;CQ,-GVT2N*; YYcR{,n~hN7^ #)b~"Hvm}W~9Iv=6yzK!0 kơQg K۹ X77](!)k|tjLJ۵҉"E/Yxf z$=K5.2E|DCڂS\r蓔j/CAEl.2c%vf4}M:'U4%b&I|2x+_bOGQsdv󦤯oPz8 ::.OAg.c!5|o}-‘S(uTV!uUо+mT/=d7$-wC6D`O>xY $WAͅ32^YS1;2-_N b˧0>)zHrxrq]̾TbLJIJ)"-RU @u#9j`/^:%+e,̠ɯO\NkYtnE(hݰ8b]`D-t>d9q[r!Y*UI̊df~O;1|jJqI=i >bkQTiBw5&RHp;޻֐A+ ->YߴZk#bΝM"%U4ZV2,*t61hk(B;tϡhh:;[ \bSOҹr_"Zk8 :~?Ns/-ẻ*32`ԥd.+LL%nvF?X㪵y s2*hi J4/ ُbR-< 9fx0|fʔ8/"UVqĀ`gP"Y¬Gbu c` 9A@i2~lպ3е/i(z8AKvN2ȖzDjJnG W]1=[me~KuaYNjG(:2!nu N&\@W;#J-ycp]勍`-IsٟQq>a1b?5jq2pӠ C.}9Asx5AС˜i!6]D2gxB&(wozD]$7)eo2$L0P6S ÐnjGVWȦ ޞRA,&_!/o7G$E]\9&'Qcd WxkpϊSK:X:!#yS̳ݏWST-0lź4Cl~ē–#فeSS[.D4s[ϊ ߴE ^3RnSsu '%m}C Iḱ֪V.MYQ+«U H3&IAUJ?©!8>U`2 z :x3jM4 )#B\O\v+N;b"2ΟKǓ~m*=4O!)1Wy&O1,_6uH+'pMN\t9Wﯭv;N|T˫!O/ۘ))00h0ˊYp]x <ɠ(Z!kϋc O+A4zD K1*C[:B 0 T`h1=*qQk\Dܓ|?%gsi0&d[x,4ibs$0#.pS$Șw\sQLiv\y(-GGc yz>{ඏm>v} }9 F1FT `xJ~6 4( .e A,ї8x,rH8T%@{(Jwߓ^ eؑ g'l#?d2cbq5+7{b38C, ]HK_ىɶo>WgO.3>wK1QWO2DԱڔk- ]Qߨl^-??V :r QZ >'߱+appuj/\xت{+F*): Vv'Zk Ÿjiai!I oFMgگЎ[$|DcY|E-JWyؠd(3k14$P5Cs<TЯ0^`1jʳ77 ۭ,KlLpyN=/m{~ATC#bi/;jA f){ *sBPqvy*l w[oW{O#lj~Jˮ9^0MF%y%yrST}pZks|j/X.s&h1Wy2bf h ksR.G|dod@<)2N`e$-j%rr>ueٌk438ߠv5ר2ɮш|Y rovde2⧞-Ir,l?-*0Fɰ,{p`˶e)(Eֹ ?0JRLa!!H|^Ȯ%so'p(yʐXGw̏kP[ҬYyլSy:RSVCofm}J"ϹoDz8IӰX*;R@XIk/MUQtw7o,3¦{"zElVyP^#=X4*9A%+OΗXW ÜHPsGBLtjf2w URnxtV(bEVF$zx6P>0T~O6@wA7n@./VZmʼnbI^/򵟷>_7 uO;^c M3?K\D}b$")a9E[8H VӚaURe;+oF|qWE8 z6]<s(9w3ȔJ/Fրс'j#d̞9JE Jft"zWAyX6Us sx̊lE dL.un8LqiŚr쐆nVI3tnTKq~ `b Ѿ߸R.V~x!SN@=Q.V.JcR4iۅeGDƮ{OzGVgDϵ4YE::>s$kնWA]\Ҫ6tc6su.&;"5=X/ #ag2-D&7#`NZ}tz}$NTDĭbXweN݀B_4& p+`+ IDF QL(|q^}ѩ([F&6e?: *cqc[-qճB?kCDOK^']]~ڙkMxNd;AHoAKZ/8uWK]#obd<,+1&`cyd ,jtfz4=*uEVx~!_2J} Y1.?|/ܸ5^q-i9>ol]r_"0p @xGLZ{p,#WX@PDwJ]LRIW.Ң^Q Vk&~ދCh" g@to 4dyÄ@J9r ñJi71NlRQ{-6(;[58.y}>YӝbP_->o^Ad2IfvO1U֦Ӏפ8j5$2=:yXyc4E ~'zAB<), # }wyS z4$vf@[7p `ty]C^gJBndY@/T*[2޳8_?/e +ȸ*RԑBGbS>ƭB3d[oM-.xbr\<"ÏR0!j8N`eHXj-!,!6C*Wz _OHPZ(evd sz p啎~?2pEF3QUm18Wp?==V:p՘J{ҷ2Q,c{PQ‘.}Wq@O4:)O{!J/sp55M\fO`,P hznDIf:wOT无{&Rz[9=A}5CgaXa<k *>o193xd%,Mu}zrxGÕ/% Vn"iq7XV|ɗ÷dr8@a k6pPEC?u3Zd͝JH]5N`Fha9&x.NGƹ锧hKryDt՞S2lH ?IgUsi)fg3Oy}8|)kaMP71gad8 #NG .[%|fpZg\ ՁAn&H7bŬ./".W3nms54$~Yi@{RǁQR;`4#K"߬"yjYRx߼-ڄTZs+[& mH{^PjV,lAu1?`W-o}7iQ H4B 6[WO1斓&]h,V.啇K =3h1v>KD7 P<9m=/xc֤7!θPA4h nSljTގ:ovWM`U;Cw`CPyaW @1 4Wxm#o}QdĎ#RX l!h6AaTK6Iz9TbJ_5Ê{*PDQv % 5[ܴR{;>^R""+aD+՝A!x-j j$}o~K k&%:]qH7kP]5~fU'dA)| pީU GwMRJ# F2NEdHctEb&vαyV@)&MJ ;V}QS|o*%FkX!wq\ѸE`U#ԵTA%hE-S0N.:^w1*H5 9^A1am.5E9 `vKCmƅh~ ʾ~e b\A<;*J/}?p5*ÁN79&|D䛍@B{ER+#,oB+yA?vL֗9~o)dd˫'|ۻ,ȩ](Ҡ76.+5q+y_@~Yi 2zWڪ jh)6Cu/rxBP[P6PQ,ӧGSt,HKL-$X )Q即NGho+)t= Xj/E&3n.z{;^?J:xr3rV!^iS!Ͷյc3\(7/(R` =z#T^,/5H5 SsV#iރ=Xm _mSB5 zN[&omY&o&_NZ&}* XKi[8^Aq֪d>U'XKoa HKAtP^M6]ӳTlAi>\S 8@*> 6Z'IZg;J7\SѠ$7gevʙ##tdI[p*mrA[)]rՍNV-a50nEӂ*8YUɳ 8~7/ŅN-u P!pT'e^M ɕ~ܺ0c6@Q ZPؒWJ$,/൝+߉׻ e\h |s6z$R"R M| $c}YGX̤\8@A d)ZB,MNzp+=> FkH*$LjXljjsZA9.~ovƥVR'i O{ ~ؐSΞ'Ddk]bx2P[GRrצP10Gw%aehPviviv-_.zp*éFA}KTD4_qi?/3l<d3c^c^s55؋|09dI֗9',r.͙Zn*/CFnh2zYTo1K<|}%OP_ wf&i:9E81~Yb$KxxFQ}>g"9z -!< ^7c2yݚ@=>z^⤁4@db'*q*hyHqIfrakzz7gL]-Q.m ldU$9Κ7i0Y4rFT2 ghҝjxfb GUPhw¶-[%A&{E 5Y:T3!FRDT'kZ}#0K=R]1=@%⡂]*`s%~A$蝋\h>z)eN0~CBɋ۟ACLT&($2;N:nc|L)qV2R?>֦cI{I 6xT|7& Lf.6K4|GC}nJZGJlbJ4rD0.y2L+*Mݿ6E>ۙ>BBG^=wpǕ2#f 6ʍck-c Pw_ժc\@u*K.mljq-9?Fuzg^Ǭ V@Nv5::NԨx$Rg5Lbʻtn2_ ֺJp" RjOz_vb6==fւ4OK&j3EٱKucMˡIvv;5o D]0|Sd J XeFwmWBYOGT2VKQI5'JhGu{ v̪IոS׉/ʦC㈖WOLOꗜ 1|CN@d,Je+xyDq5X!tV<ƟS Z9#/Ah+m7ꏪ!}$z#)Cf+>Bzx2㚎bbwdnOjc2$ f9jO"Cs2şQeQ$~|-?A  ݯ> <&ɍo%L%n3-VU?i>>żZ*T^ٯ]WDjCWC<8a &TNi2ie_10R=X0+:ona>v+I0wJ!Ln'f>́twSôԈg7,h%՝U66\q^"]?y]F*b;rDW^hZ$Z-ZΘ'Sl<.5|Yr5jլ6i |Y(v[E-y[pf, Tw$.)L:v1˭=,|d\2>Tp+. ]_4e-a<*WzC7<`~ NNGΤm74-[z1ϯ_$F^CX3̬n"uLx?cV[s:_etTj<=;"<7 s&= JoNvlM%!j,rog(T_KEqn 1q,v ` xq# W;RUg~*9Hf[ P AFuZ& E\װ39"^ex]Z)Mf 06T}iyR -}VMq\nu"^ӷHagbRmqh h)rycz;oj|[m6 @e7'NP5͛CU"%Z v|H00XmAiUk6I$ݩxc@UpiYV\;T'7e]>9^ފ;RrъL5b膰Tjc5)j=IM\K,6L@Kz}LE5(_ۊ j ǡ:_d-uJ7kk)iDL:2';ڰaE)u!>uNvaƔ4teJ͕LƋ?i)auB^~FAe(aqĺ),up@:OP<;s\?C'0- ok_Q}znh0'fYЯ9v*CT?(6r(E5|nO (>^Xy `Q9 +QroIQWS&?NΉ.^b9-,b-Jq>3S,<.Kj$ -fÌ"rƩ)J/ţA"[POG+MHy0ؚeEP?ʧHǃf ƏR RQw(B9-3ǮaH85bO_E%~m`LP5u+v08J mC-kU4~9zd3|3ҽm52&6p1։TAsqS#H`wh *D.ʾ.f{b3 qN]dL_~&7g!Y CjnJ$FHD1u|=Q `֥ם.:1}lkJK$bu,Pixˀ.>BR:=-n".'4tz88 鋇Ѩzi2<_Zc$iJq`Q,Bb+-͹(={̖|ρ[ ,)V4"`O̘d oQFs,@eO?6p 7gz$-e/ ~J_ȈڱᾓtQKTׂl[Ȇc^=|G0V*-봀gGz5p\$M'x Rc ΔjG*6ZulE,X$UR]o|A59'vI ȹ;"W:4:mMqU%+']W[i1}u`qVAZWj񩠱wG@"n_1rvI [Ӓu%hޒsݝby!ɮUfP~YIi&Jn sdE %}oA*^p41mw$hԑ`tm/̓%=6Qy&j J$YoaۍgeDND2`8Ϡ7ajގ:P [Vll+a'X*G虘3j[1Қ~3qXo2#$Fzp|. ͖6)>"zo` d2F}O&9GQzK}{!+zaނ)lUqBz1Ϯ[[*/jm~IΧ5ǗҼWl@^6ض0'=Q$'O 1sAqTRBqg4KejM렽%mBei5\"oWtze\iQywv_92+ RlN1CkM=SӶ") /) {l^d~u Z5o"IA ΒX xWe&# Q> tyHS-;t֝:cjyĖeN( Ի_`n>z:xzI%t+VPaX#cLA vl>;xMUojdt uo{}u?۴)~m΂PF ͘6xkSeQbD?MWޥ p8t3-Tyj[d8R"2ٙɨxV;L*i᫚蜰>kVZcǁw7:VIa^Y# ?Wt~z?d匰\8ᕶN7Rz=h OAqfGGߜRF4'Aihe^"6mr)'Y.J #> *l"Yhe;KAZ#=O&|hdd2"`rĵצF}ǩw mh~)6\5N~֣65S%avۓ(6b|ݨے߈q;#VD-J]~A#L,=Ȍ "wbi cDqOOdztUKY9Wc)Yq! wfwZwʾ,൨+:5:>ǠԻq?{U?BՙlVMd{-@v^iMD_&pw89UKdĊ )jrFP|y)Pߛǥ(ϧZk F-.yGڅ%I1M&77rri=n9ԾnOxS{V I?ޱG{s#V0 `23qOm|2ԋ*27@~/CSGͳ~=%7*Dj'D+>,-y9%b:i:SL[DUpem"j"ӕʶ${Q-f}IH/0?T݇?h˜Yߨ7Ð 枲Gx̕@EW{-,Pl(VSیd(րf&zB]O=* o+Pu(7A1h"ZA0-PAl9~#65UlF_5w쁽Z2++ CiHUx̎"1Mg Rܐqg%n@0N}i~2NDNZ]k]asg !7 ^[2l>x/\)0ԓ:̤CGcMr>񪎒bʷ22_s鑍MaŒ4}>*s% ³ΰV+ &;!Ac-'̤ф%nCv.|uVJKp;ܐV,"_ڒlGGQ %yf%A("HRe9 rXMSC4-x~iWGRlyhlErp pY{$c1ΎtK7#ih[ɫ!X\z̎AԸ9Sdf(yPP؊2H 8vdş*롴 ;.>%K`Xh!MPD(4;1g:4"onAPyE1|K"O[4nhC{ih;z\,kBld7 UhdG9oC}KH9FCE]U2 _}xCt `,K4~i,b*G.j/:EEXUнe8G"ow0kC9Yi^M2\~-L(Jf7cɝE<9.brUWT5'nc[3uU2;04HC5}᰷STuWIH#r6xwLl`ɒHiLܠ`*v\@sx3=,@\MD/$w(Uw'byӸ+YRI:HQj*˩?m4Y A@DTr~#*lUX쑡ḾiˇN[?&,|;\zAѺ9SpH[ PMzcKkt2)0ɪrcZ v4t@&74쥤8!$o5@D0ÐbW?0{ o5baZl8oA`ʃ>= ɇd$KJqtק\uԎxoNX$Ko8" !$HؿBUD8f:~"%+Cp6Lo yoQO>K"& jsuc >]e80MI=UQqhufKı vOj X9i/h}dN}5]g2g7p+褁%Z()2$tpv|^O0oW`HGԺ+WzBe?PT @@&a%×YRf6Ҽ5ua[-諈Ɯ+{ͯ;K@\<ߠ@ai0|fm$-ebl3t0xi 8W\J'o&I<9ԷW,QSJm= xw<2 Q S+O,2x)K! '掯P9#\ [BTndɕ.8 /槳KFy@͞\GާD/uhnޮa:s](I{kJ.\m4xi8{c_e\POWH¸b-dxJ2_^C;H ^zJܲ%}K h<!c(`&l '×u88BSU6;'jUNoMjDI. g@&V D /v{9롈^;sG`Jߕoj F|UvrwW03&E<~ OUT\2LG; "0@X\D `&%K G$ `dM!J:7`8+E]sȢ0zݡSWH=f{B<@uI6߭6&[ #R3-Vg >,RCİkd50wY=.Ҫq}~Ƙ%̝szܔZ?-Z`'=pR2=wqz60" tq-~4e"x9J䰬|)h`қ[Y[@%}~7dg>FV6{V>*oNI@wj=}=Ոa|L>Uqx>g ({5%kG}AZns"K&g^̵8 p9MD:36rvŒd:M?6igfKK½@$qGdZY$S{3CCU;AJl`P cP!Ao~p+bz'`P/.Ob?j;^Oa!r""MNMe\ 4謜#< ~YTT\k`ĜD#DX?P^&@ȱ5-%9ZÉqvt&XGpݱ!^=#Ql{x޺J_3deBGp a*okt.<+Eg.oo%-><oL="V @gNds.zɎ6!Nm?3ބ*ckk~(>=Rd)WyvS j hV/k϶ ȣ:@mr{"[@r:P)?NM/Kk!pH1\voeAk>/$k= G^MRt7bb0~N"$MHrDK7+'(/|bD)9G@gJ>l[jWa%`{퐍h$q b2)|#ГIR> >WT,ܸ*/8$vw ed=e6X. >u_C|Ee4lm)=0N^sflƟXLhj&~j ]@1a<" j`d`o@PAP͆Zaf׹PR6cvƥ]qhƣAP1]w,HXhq0Y DΰTk86 pL/écP`܏ I$=sݶ@O8k %K5z>wVLǎV~2-鞬/NIaf A$WNk(42삌r!pbe٤SZl?*mtvSFxIŅpFDkCO`T4suبM\_'?av mY˱U[,5 23D>8l +dDlE/ÂR"bE*v7r\j{ ) kO=?— $a|З* ?C:\HˋM7^~a,Ɯ(&|3AcWkݼk1=H[DE'2NEH}Ni#*Ҥa~ZᷜbƻMڍ)_=a+:u5 RzDm))*Oosʹyx\RUb%kJ8 \^c]V;$̦)2a[˙bMH\ϬUfyDk's}l8P`VZUWYZms=k<~fgɏVxfv?ݎ( 4G6*rd5AZ%J'doUAHgw]eR˞@Ǜ#`;zf-i`-Ko}O50F7..UW_xsG;_$/N7]7 '1.NY>+{toj3\BXFGxY;.Ŕ#,!lkLY30 ae X*xU miMdYbkJdg %n'xh5nЈt23,-258Ћ$wp~!]d0G+_ yK},$'6FyseZ<6gǚXD=}.338x,S haZVԃ_`59E} *cɰڈ0>6HhL:qwRΘ@U*IFrAwMHzۼ(xdtRAmLAnK#m.[)f:U9@E3]eX$au卜M/H# Gb4|㠑BBޥTH/6O*D6Y4QQnc[$qlᆤ\f+lGu'p0/]Kbwqw- XlȺ伬P3I1iƛXٚ^Es=A.+zu$kYSEKل 1&ӌl>|P+i}DwٰZkԯm|rqPG`~sQ 2n^TœK$`)$8 pK#m)HU67cŎm=5aT!eWut=)5@:Z`˚ f%`ٺ? mBoWi^}D3I5 U*߆Ic@ P-|Rk2W$.vmR1#&{ * (~KZ 6:SvY.g$ (:2ݹgAbi3?&$c+0:7c+0@IϮ)#WP-bIn3Xf!93t6,~tMNDʹ8;Vtfs|۸`Ee ̆#hJm LFGpN\Xv/5/`LϼGF&W-,D)x\c;-2H .މv7,zCb‡V:7d#VMkw}-TʯiA:aE jrә7WokCc`Z:8 z|S-V2hNIՁ=ekP|kKQ69`jC".jy`4$<Jl]4f2Ϲ4&ЦF0!2u M%x3h'a+]1-ffM7>ITbb!!jvq,g>*`ʏ&0wsD9haX#ޑJQh')=&eMQ_Tޕf OgT MH{ Or܀ӝC]Y7$`ZV:ۜj-\~Bc)2Ϛo6Ucَ65R~CGO첍~ z|gdӟlFsHw*cϯE%?To7YsQEhBo#u(!9yU>C09#C-[waQЧ;Z#Hl24 ӌ8g* vh42[R]LZ~u 2y Ǹz[ǯ4J5 G;xy"K) ЪuvN;͢&2_1c+8.;k+x9s:I~u 1J ge͜Kȁѧ;G dNO*3S"WFiJt8|jݬP,3hy8Äf) Ԏ!mJ1ۮZأfQ.n_rC/I0s__gRr^2A:v8]6}iWm=RΙ4k') 8 =ܜ+RRҐ-Uziޗ;!%^2҉`VI7|NR1yO(vy-wC0{q}P>X3CJ𷣮x9>B?5Slh֖mZcDhTe)fD흓B9n|ouj'l bkZ֙Ph'4U5dU}[%h r, 0A%&IN[#r v;=V}&PXte3^[S+o k9j I~U .m YZ