open-iscsi-devel-2.1.7-150300.32.21.1 >  A bp9|O<-hdŲW~eO uB/DȒOTk*t45nhv0 [dbAo޿J |Ò`&QS>c`C=+hSa|Bk0e,Ttg𭷂#(P nAZ(ncSIkc90L>Ь"191&nP8f< ;)(:sX5Q%Ӥ: γ2`ă$iOc=2XpGBu5a1f6846d2d8e9c780220f9081cfba6ef34cdfc39bc15b6084ceab8f7abe06190186e1617982763fd7405ab0cf6a8fd944052576fxbp9|ҦU#$JRD֤ǣE:k<'-r>HQ oζsu)sNĜ=3eH]Sk{%$L˙K)u0IDQZc#QLk`Ƌȣ  M/|Ñl9'MaTڥtRBNU)L(\"d;z9kaLcLHA->p>h?Xd ( k 9Zk ?? F? ? ? ? ???Jt?p@DY(Z8da9a:"ZaF6GL?HH?ID?XY\?]?^bcd!e&f)l+u@?v<z TCopen-iscsi-devel2.1.7150300.32.21.1The iSCSI User-level Library Development Library and Include filesThis development package contains the open-iscsi user-level library include files and documentation. These are used to compile against the libopeniscsiusr library.bsheep59SUSE Linux Enterprise 15SUSE LLC GPL-2.0-or-laterhttps://www.suse.com/Development/Libraries/C and C++https://www.open-iscsi.comlinuxx86_64< !?0 !n4:njhbpSSI^1H}@S"<=$RV|bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb668f515f158d2c4d43f16b7192e8e529166fe0e714fc0295ae43d23eb111501c6d8de624ab2c80ca925e8397743f8354b3e2eb7221318e2ebebbc813bbd1dc4dc432eb72c35f46e4a10aa445b397f0b9a34b0883a90575bc2b925fe55ff1deec5c492e426b29ba7be5e7b0a79fc7c380f1a93a262e2721b2da1d3612830a02769219e2b215cc525370fb5aa60c2cae0400221c31614c6290f6bd10ea6eef7d5b0d3f5bcce5ae1c43d56eae8aa05abbe7b24a94101139bdcfd4cb2ebf99ba3431014c9422352f59ae632eb5a989071950a7e44f0c56af240e950dbb534e676ed90aa6447f852122899a5954fccd8524c2c2fbe3574b27271827d7c016b3e1c40e05967c41ecd8c7ce7f5eb1e563b12f47ac39ddc7e23b577a320152d54442eee5f83d5512e5d06460c67e3d2bbb420439008d034708d40687b5249f57e6b77e010890e4851a4d451f9b75c7471407b56dda3e570cd81bc157b6cdaf2659eb6b765492b58423ad1294e410c2631ed7b7e929591f335e96e032c66392b397d9c2f0135166a43040c72838e04bfcfcebf72e7378a474696a118d2571e94de17fc8ffbd22457a4f927b16919bfae7b31d32cf55ff43656716cbd67dbdc10fa0ea4fca21760bcd4458c909e6117654f387edb49f8101e3674e47e20ecd193f1a82d1f181c3db1de0b167241b0c317d539de4fe2025f688e5d1c74f9fc983b5c6a77b406d847a37f5cdf5112002063b34a69cfe9b420bb1db03c1663381b67b763a8a7371395df802248e4d8267c2b440d7c57bb594e2d6bce8a1c6774d2ead521cc99ec70b87966cc086f93f510177c39e5bc52d436966fe70aaeebfaf2970ae9db81fbd62976ed61682ea2d7b78ec50c2169055f3a50e383e6ff3fc6bd9ba0fe359fa007ece08086c47913440a79802bf3e04832b5cf3ae84df177ec84dd85d8c9a8842f90aae5f463bc124a6101183ddb09e09e72ebedecca51be34ea6171317dacf4b30b612ae7e8036a9e3870e0b03a63a69776c85bfd12f4a0811917916237b003b0c1b700c4639fdc3ac9c7766861e905ed3cf27a84ffe4bb0c35d0ed572eaba5e748020a1514f6d422041d7c0fb73925896278a0f6119adc475821b338649424abb5947ee4110073d975fd9983555654acb62271e14891cc998987115cadc18558f6cf6ba3d0149da917ead9d4650909d75d63cfcd9ba42d018c808bcc96fafeb4210c9072508cf2862dc548c7347082b99a673d2873475547f070be426ecad6776d6d3dfcf0761638c40a27e418d8f9a084e18f10f97eccb56b744e30cb39cf622fc65dccb40cda2f89a337ce581e76776ada21671695f5bc498362548e71fe12a5a8eb30ea829ac6af88f807514f8951938e9f7c2a339cbad45e8087ab31accbd2be839becab4fba20a9ab5b00b7673317aaf89d37153291766b0bb6af72716fbf38dcc9984b47686b646088859e3dfec1c182dc2d52d4298f7aea67b079e95f0ffa9095be5a37e630a0980a51203cc5de3dfd9968821cceccc61b7f59c6501e33eb3bda535688f1fe5a05f8230a8a6c0376bf7c55259ad83f9c8275350f5527527eee96e4f95d95b17a559d646531c97fd42373434b6b51347822376c96cbd90ef0dfb90c626f3ffb40771351d411956a6ec72b256d96a4d522962f7bc38711ad566145a5dc9290b8c07ee32df6385b5a2820e216d96be68b005e0fcf8fdd54e41f6bb4e0d5ffc4e8376118ae5b4f3b848b74f7809574b50cd9ea185f9c11ad3b728eb7d0620c7b0937f78bbb326579d1ab852f0b8db1ee85b6a9086e376b8c0335774336730725381eb3336711877bb6739a981a04c7940e4f0bebee50b77e68b7cd2b1c74661b68e5d9b8bc7a15fa434e46df2ac3b8e86b900016e491f1364b2c4b283100b3cfdb608054b2d1676a1853f955ef68486574d5f89b957a40f3dfda4359d356d0e167cc6ce51d65e456161f3a5d85f09aa043f8bdcc655213a4917d23b629b3fc3b8db6e567e2eae215d71d9563072017a4e6ba21378b02d3ac2546703638acf45689419ab3bcd39ebf62ec7f9866f822e60423c9c8d104bd27e61c2f6dceee24b6fa744ff5e11a4b44c160face92b8a1514bcaa28d0f46912567ed4a2b3760c316302061de250dce9d7c37f646358acb424a388e6429e9d0d63933728608c631aa0854e081f2bf3818005ad19f92eaf2988de331c393b18bbe2bf0bd806dc359e06dd76dd89f3728faeec2c513a4b6229df4256a16980e02ef7f0558170dd66615754d9822aec7cbd60c3eb9a27e8d17b023c19571299925b623943720123377541359268b2add9936366bde1b66dba4befcea5610d0157bebafa30fde7b5e33a76703a15b70f1d0411a60d1fda3702a0ad06b0c21faf7455a44949f25acd434dc58be805ddae95bdb44329555557872a138bf7b87875f3683ad36cd62afdc254d4d6100c8a0d90943361d7a889fdc793d72a84684bbf14dc9b10e4ca254dff5191129fdf70cccdc3a82c2ce03ef9a65be2c96f00c4e3e793901316f0cf78927283384213c429eb18b14893a6559c63b520f66bd85712d7566291487ecb76526d75112a0e5ce4496031f85aaaed523a639e7849ead10ab4fc35619d3ab2b49799fce4d1bbdc3b8a2de399817751e8fcbaab6e5debb5c8f8e422656887a7bbfddb878eb1c7313e358a855daf8c164649a66b0e2d9363c1b3e1814d6f7fc0ad677abf619e65b71d829b58b8c661c435d001f1131490892163494191d03f30cb17396f849e383e0dc9585e7cbe5ed7e70363f979414cf54852libopeniscsiusr.so.0.2.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootopen-iscsi-2.1.7-150300.32.21.1.src.rpmopen-iscsi-developen-iscsi-devel(x86-64)    open-iscsirpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)2.1.73.0.4-14.6.0-14.0-15.2-1libopeniscsiusr0_1_04.14.3by@blb~H@by@bu bMb#Pb D@aav@a\>@aUa8a@` @`@`N@`N@`J@`@_@___F@_^(@^`^k@^@^|@^^F^4]҇]ƪ@]@]@]{]QT]B@]/ ]$]@\]@\@\HW@\)- Set initiatorname in %post (at end of install), for cases where root is read-only at startup time (bsc#1198457)- Update to latest upstream, including: * Added 'distclean' to Makefile targets * Ensure Makefile '.PHONY' targets set up correctly * fix an iscsid logout bug generating a false error and cleanup logout error messages- Updated to latest upstream version, tagged 2.1.7. Changes included: * updated/fixed test script * updated build system * several bug fixes, including one for bsc#1199264- Updated to latest upstream, including bug fixes and cleanups. Changes included: * add handling name/value pairs for firmware login (bsc#1196113), including man page update for same * Fix bug where some package parts were installed using DESTDIR twice * general build cleanup (in prep for removing DB files from /etc/iscsi some day soon) Also, now delivering a "package config" file for libopeniscsiusr.- Update to latest upstream, including test cleanup, minor bug fixes (cosmetic), and fixing iscsi-init (bsc#1195656).- Updated to latest upstream 2.1.6 as 2.1.6-suse, which contains bug fixes and cleanups. See the Changelog for more details.- Merged latest upstream. Mostly cleanup, but includes a fix for iscsi-init.service when trying to write to the root volume too early (bsc#1192568), as well as an upstream fix for possible deadlock when dealing with sysfs.- Fix the usr-merge changes (bsc#1192013). This includes catching all the places that /sbin was still used directly, as well as making the SPEC file build using /usr/sbin for openSUSE but still use /sbin for SLE, for now.- Fix possible systemd cycle by adding an "obsoletes" for the old libopeniscsiusr for older versions.- Update to latest from upstream, fixing: * Moving the executables from /sbin to /usr/sbin (bsc#1191054) * Remove default dependencies from iscsi-init.service (bsc#1187190)- Updated to latest upstream 2.1.5 as 2.1.5-suse, which contains these changes not already present: * Handle IPv6 interfaces correctly. (bsc#1187958) * Handle qedi correctly in NPAR mode (bsc#1187958) * Update iscsiadm man page (bsc#1187958) * Update iface.example for ipv6 * Change iscsi IP type from defines to enum. * Handle recv() returning 0 in iscsid_response()- Merged latest upstream, which includes: * iscsid: set PR_SET_IO_FLUSHER (bsc#1188869)- Merge latest upstream, which includeds: * Support the "qede" CMA-card driver. (bsc#1188579) * iscsistart: fix null pointer deref before exit- Merge latest upstream, which added fix (bsc#1185930): * Set default 'startup' to 'onboot' for FW nodes- Local (SUSE) change: update iscsi.service so that it tries to logon to any "onboot" and firmware targets, in case a target was offline when booted but back up when the service is started. (bsc#1153806)- Merged with latest from upstream, which contains these fixes: * Add "no wait" option to iscsiadm firmware login * Check for ISCSI_ERR_ISCSID_NOTCONN in iscsistart * Log proper error message when AUTH failure occurs- Updated to latest upstream 2.1.4 as 2.1.4-suse, which contains these changes not already present: * Enable iscsi.service asynchronous logins, cleanup services (bsc#1183421) * libopeniscsiusr: dont error loudly if a session isn't found when working through iscsi_sessions_get() * libopeniscsiusr: skip over removed sessions * libopeniscsiusr: fix error messages * Avoid hardcoding pkg-config to fix cross build * Fix iscsistart login issue when target is delayed.- Update to latest upstream (no new tag yet). To fix bsc#1181313. Changes since last update added to open-iscsi-SUSE-latest.diff.bz2: * Fix iscsiadm segfault when exiting * iscsid: Add NO_SYSTEMD to CFLAGS * Change mkdir permissions to 0770, adjust usmask * Fix typo in util.py * iscsid: Do not allow conflicting pid-file options * iscsiadm: Fix memory leak in iscsiadm * libopeniscsiusr: Fix memory leak in iscsi_sessions_get() * libopeniscsiusr: Fix memory leak in iscsi_nodes_get() * idbm: Fix memory leak and NULL pointer dereference in idbm_rec_update_param() * Add etc/systemd/iscsi-init.service to SYSTEMDFILES Makefile variable- Updated to upstream version 2.1.3 as 2.1.3-suse, for bsc#1179908 (which addresses CVE-2020-17437, CVE-2020-17438, CVE-2020-13987, and CVE-2020-13988), changes include: * uip: check for TCP urgent pointer past end of frame * uip: check for u8 overflow when processing TCP options * uip: check for header length underflow during checksum calculation * fwparam_ppc: Fix memory leak in fwparam_ppc.c * iscsiuio: Remove unused macro IFNAMSIZ defined in iscsid_ipc.c * fwparam_ppc: Fix illegal memory access in fwparam_ppc.c * sysfs: Verify parameter of sysfs_device_get() * fwparam_ppc: Fix NULL pointer dereference in find_devtree() * open-iscsi: Clean user_param list when process exit * iscsi_net_util: Fix NULL pointer dereference in find_vlan_dev() * open-iscsi: Fix NULL pointer dereference in mgmt_ipc_read_req() * open-iscsi: Fix invalid pointer deference in find_initiator() * iscsiuio: Fix invalid parameter when call fstat() * iscsi-iname: Verify open() return value before calling read() * iscsi_sysfs: Fix NULL pointer deference in iscsi_sysfs_read_iface- Updatged to latest upstream, including: * iscsiadm: Optimize the the verification of mode paramters * iscsid: Poll timeout value to 1 minute for iscsid * iscsiadm: fix host stats mode coredump * iscsid: fix logging level when starting and shutting down daemon * Updated iscsiadm man page. * Fix memory leak in sysfs_get_str * libopeniscsiusr: Compare with max int instead of max long - Systemd unit files should not depend on network.target (bsc#1179440), updating: * open-iscsi-SUSE-latest.diff.bz2- Updated to latest upstream, including async login ability: * TODO: Update to todo list. * Implement login "no_wait" for iscsiadm NODE mode * iscsiadm buffer overflow regression when discovering many targets at once * iscsid: Check Invalid Session id for stop connection * Add ability to attempt target logins asynchronously- %service_del_postun_without_restart is now available on SLE More accurately it's been introduced in SLE12-SP2+ and SLE15+ +-------------------------------------------------------------------- Upgrade to upstream vresion 2.1.2 as 2.1.2-suse (for jre#SES-1081), including: * use openssl for random data generation * Misspelled socket name might cause confusion to inexperienced user. * iscsi/libopeniscsiusr:add libopeniscsiuser_node.h to HEADERS * Let initiator name be created by iscsi-init.service. * iscsi: fix fd leak * iscsi: Add break to while loop * Fix compiler complaint about string copy in iscsiuio * Fix a compiler complaint about writing one byte * Fix issue with zero-length arrays at end of struct * Add iscsi-init.service * Proper disconnect of TCP connection * Fix dependency on new systemd RPM macro * Fix SIGPIPE loop in signal handler * Update iscsi-iname.c * log:modify iSCSI shared memory permissions for logs * Sequence systemd services correctly when upgrading * Ignore iface.example in iface match checks * More changes for musl. * Fix type mismatch under musl. * Change include of to * Add Wants=remote-fs-pre.target for sequencing. * Add workaround in SPEC file for installcheck. * Fix issue where "iscsi-iname -p" core dumps. * iscsi-iname: fix iscsi-iname -p access NULL pointer without given IQN prefix * Fix iscsi.service so it handles restarts better Replacing open-iscsi-2.1.1-suse.tar.bz2 with open-iscsi-2.1.2-suse.tar.bz2, and updating open-iscsi-SUSE-latest.diff.bz2 to empty, since initially there are no differences.- Merged in latest upstream. Summary: * Let initiator name be created by iscsi-init.service. * iscsi: fix fd leak * iscsi: Add break to while loop * Fix compiler complaint about string copy in iscsiuio * Fix a compiler complaint about writing one byte * Fix issue with zero-length arrays at end of struct * Add iscsi-init.service * Proper disconnect of TCP connection * Fix SIGPIPE loop in signal handler * Update iscsi-iname.c * log:modify iSCSI shared memory permissions for logs * Ignore iface.example in iface match checks * More changes for musl. * Fix type mismatch under musl. * Change include of to * iscsi-iname: fix iscsi-iname -p access NULL pointer without given IQN prefix Note that the "Add iscsi-init.service" change adds a new systemd service called "iscsi-init", that creates the iSCSI initiator name file /etc/iscsi/initiatorname.iscsi, if and only if it does not exist. This obviates the need to do this from the SPEC file, now updated. Since this was not a version-number update, in addition to modifying the SPEC file, also updates: * open-iscsi-SUSE-latest.diff.bz2- Update SPEC file to handle the fact that the service_del_postun_without_restart RPM macro exists in factory but not in SLE. No functional change for factory.- Updated service_del_preun and service_del_postun for iscsi and iscsiuio packges in SPEC file, so that services get started/ stopped in the correct order, and changed systemd macros so that iscsi login service iscsi.service is not restarted during package upgrade (bsc#1166650)- Update with two upstream commits: * Fix issue where "iscsi-iname -p" core dumps. (found upstream) * Fix iscsi.service so it handles restarts better (bsc#1163499) * Add Wants=remote-fs-pre.target for sequencing. (bsc#1158536) updating: * open-iscsi-SUSE-latest.diff.bz2- Update SPEC file to work around issue with installcheck SUSE script. Update the SPEC file while there.- Merged in latest upstream (2.1.1), which is mainly a bug-fix release over 2.1.0, including changing the test suite from shell-based to python3-based, replacing open-iscsi.2.1.0-suse.tar.bz2 with open-iscsi-2.1.1-suse.tar.bz2 and resetting open-iscsi-SUSE-latest-diff.bz2- Bug fixes, including addig support for "-fno-common" compiler option, 586 bug fixes, a bug fix for SHA1 handling, and other needed but small fixes (bsc#1160287), updating: * open-iscsi-SUSE-latest.diff.bz2- Merged in latest upstream (2.1.0), including more fixes for iscsiuio, and cleanup/bug-fixes of new CHAP code. This replaces open-iscsi-2.0.878-suse.tar.bz2 with open-iscsi-2.1.0-suse.tar.bz2, and it resets open-iscsi-SUSE-latest.diff.bz2 with fixes after 2.1.0-suse. Also, updated the Summary lines in the spec file that started with "iSCSI ...", since rpmlint didn't like them starting with a non-capital letter, and updated the version number for iscsiuio to match the code.- Use SPEC-file macro for systemd generator directory, since the libexec macro is changing from /usr/lib to /usr/libexec.- Fix issue where CHAP was not working after latest update (bsc#1155510), updating: * open-iscsi-SUSE-latest.diff.bz2- Merge in latest upstream, with fixes for: * Support CHAP SHA-1, SHA-256, SHA3-256 vis openssl libcrypto - this requires an update of the SPEC file, as well * Initialize timeout for printing specific session info Updating (in addition to the SPEC file): * open-iscsi-SUSE-latest.diff.bz2- Upgraded to upstream version 2.0.878, which becomes 2.0.878-suse with our (few) SUSE-specific changes needed for our build system. Changes include: * general bug fixes in iscsid, iscsiadm, and libopeniscsiusr, including better lock handling for multiple instances of iscsiadm * iscsiuio/qedi updates * systemd service-file updates/cleanups This replaces open-iscsi-2.0.877-suse.tar.bz2 with open-iscsi-2.0.878-suse.tar.bz2, and it resets open-iscsi-SUSE-latest.diff.bz2 with fixes after 2.0.878.- Enable LTO on aarch64 as the gcc9 package issue is fixed: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91386- Disable LTO (Link Time Optimization) on aarch64 since it seems to fail -- iscsiadm core dumps almost immediately (bsc#1143192), updating the SPEC file.- Ensure /etc/iscsi/initiatorname.iscsi has reproducible size works around https://github.com/rpm-software-management/rpm/pull/229, updating the SPEC file- Added latest upstream changes, including: * iscsiuio: update version to 0.7.8.6 * iscsiuio: allow processing of iscsid requests in DHCP failure condition * rec update: disable the idbm_lock in read/write when updating the rec Updating: * open-iscsi-SUSE-latest.diff.bz2- BuildRequire pkgconfig(systemd) instead of systemd: allow OBS to shortcut the build queues by allowing usage of systemd-mini- Added latest upstream changes, including: - iscsiuio: Stop using /var directory for PIDfile and locks - iscsiuio: improve daemon synchronization (bsc#1135070) - fix pipe notification code - add systemd support for iscsiuio - make iscsid systemd usage optional - fix possible discovery hang timeout - fix iscsiuio systemd disablement Updating: * open-iscsi-SUSE-latest.diff.bz2- Added latest upstream changes, including: * Fix output of node printing for multiple paths. * Fix printing of node database again. * Add Restart=on-failure option to iscsid.service * Fix node print return value when no nodes. Updating: * open-iscsi-SUSE-latest.diff.bz2- Merged latest upstream commits to get needed fix: * Fix output for iscsiadm node/iface print level P1 (needed for bsc#1122938) * Updated iscsiadm man page: add "onboot" handling. Updating: * open-iscsi-SUSE-latest.diff.bz2- Update SPEC file to allow %_libdir macro to override LIB_DIR when building or installing- Update SPEC file to use %license macro for COPYING file so that it gets delivered when when other docs are excluded (bsc#1121877)- Fixed iscsiuio issues (bsc#1116712) by merging the latest from upstream, bringing the iscsiuio version to v0.7.8.5, updating: * open-iscsi-SUSE-latest.diff.bz2- Updated to latest upstream, with fixes: * Use pkg-config in Makefiles for newer libraries. * Merge pull request #145 from gonzoleeman/fix-i586-build-warnings * Fix i586 build issues with string length overflow. * iscsistart is not installed * iscsiuio: Do not flush tx queue on each uio interrupt. updating: * open-iscsi-SUSE-latest.diff.bz2 Also, update the SPEC file: no more need to specify libkmod or libsystemd, since upstream handles that now.- Updated SPEC file with Obsoletes for library, and disclaimer abot updating SPEC file directly. Also, added using KBUILD_BUILD_TIMESTAMP to create reproducable man pages (bsc#1047218)- Upgraded to upstream open-iscsi version 2.0.877, which will be merged with our (few) changes and tagged 2.0.877-suse. See the Changelog file for a details list of changes in this upstream update. This update replaces: * open-iscsi-2.0.876-suse.tar.bz2 (old) with * open-iscsi-2.0.877-suse.tar.bz2 (new) and resets the file: * open-iscsi-SUSE-latest.diff.bz2 to be our local changes since version 2.0.877-suse. The spec file is updated as well.- Merge the latest upstream code, updating the libopeniscsiusr version from 0_1_0 to 0_2_0, which updates the SPEC file. Also updated with new code: * open-iscsi-SUSE-latest.diff.bz2- Use libkmod instead of running modprobe (bsc#1106685), updating the spec file, and: * open-iscsi-SUSE-latest.diff.bz2- iscsiuio: limit retries on dhcpv6 (bsc#1106694 and bsc#1105916), updating: * open-iscsi-SUSE-latest.diff.bz2- Fix a core dump which can occur if iscsiuio is started then immediately stopped (bsc#1094797), updating: * open-iscsi-SUSE-latest.diff.bz2- Ensure we can get qedi transport name (bsc#1090275), updating: * open-iscsi-SUSE-latest.diff.bz2- Added upstream patch to allow host_id of 0 (bsc#1089687), updating: * open-iscsi-SUSE-latest.diff.bz2- Added 2 upstream commits to address issue of iscsi_if.h stayig in sync with kernel vesion (bsc#1086344), updating: * open-iscsi-SUSE-latest.diff.bz2- Cleaned up complaints by gcc-8 about strings (bsc#1084640) - Fixed rpmlint complaint about libopeniscsiusr summary not starting with a capital letter - Fixed libopeniscsiusr global variable overload - No functional changes. This updates: * open-iscsi-SUSE-latest.diff.bz2, and * open-iscsi.spec- Ensure correct dependencies: main package must depend on (new) libopeniscsiusr package, and devel package must depend on main package (updating spec file)- Fix ARP booting issue with different subnets (bsc#1058463), updating: * open-iscsi-SUSE-latest.diff.bz2- Trim filler wording from description. Update old commands/RPM variables to macros. - Implement shared library packaging guideline. - Do not let fdupes run across partitions.- Removed the "rpm/" source directory from both the open-iscsi-2.0.876-suse.tar.bz2 and open-iscsi-SUSE-latest.diff.bz2 files, since they are not needed for building and are not part of the upstream sources. They are still available under the git repository at github.com/hreinecke/open-iscsi.git. This means that changes to the spec file or the changes file will no longer require a change to the "*SUSE-latest*" file.- Update to latest upstream vesion 2.0.876, with very few SUSE-specific modifications, namely around things upstream does not care about, like SUSE-specific systemd files. Also, version number modified to add "-suse", as usual. See the Changelog file for more details on changes in this upstream version. This replaces open-iscsi-2.0.875-suse.tar.bz2 with open-iscsi-2.0.876-suse.tar.bz2, and resets open-iscsi-SUSE-latest.diff.bz2 to contain only changes since the 2.0.876-suse tag. These changes added a new libopeniscsiusr.so library, as well as include files under a new open-iscsi-dev package, if you want to link against this library. The SPEC file was also cleaned up using spec-cleaner.- Fix vulnerabilities found in iscsiuio by qualsys (bsc#1072312), updating: open-iscsi-SUSE-latest.diff.bz2- Added fixes for working with latest gcc (7.2.1), updating: open-iscsi-SUSE-latest.diff.bz2- Start iscsi logins before remote filesystems (bsc#1028323), updating: * open-iscsi-SUSE-latest.diff.bz2- Update to latest upstream 2.0.875, with a few SUSE-only modifications, replacing the 2.0.874-suse tarball with a 2.0.875-suse version, and resetting the SUSE-latest-diff file to contain changes from 2.0.875-suse forward (bsc#1056689)- Add missing coreutils dependency for initrd macros (bsc#1055492) in SPEC file, which (as always) changes: * open-iscsi-SUSE-latest.diff.bz2 +-------------------------------------------------------------------- Clear errno before calling strotull in iscsiadm (bsc#1029364). Note that this changes the file: * open-iscsi-SUSE-latest.diff.bz2 which is changed each and every time this package is updated.- Added two iscsiuio upstream commits, for ipv6 support, and general bug fixes (bsc#1040559)- Added support for qedi ping (bsc#1036238)- Fixed coredump when printing session information (bsc#1035236), backporting commit c8e6198dca71 from upstream open-iscsi- This is now the latest upstream open-iscsi, i.e. 2.0.874 plus latest as of this date, together with SUSE-specific changes that are not yet upstream or not appropriate for upstream. (bsc#1032402/FATE#321911) Important changes in this update include: * qedi transport support * README cleanup * iscsiuio update * shutdown cleanup Also, the base tar file has been refactored to pre 2.0.874-suse as well as patches file for everything after that tag. Lastly, this update syncs this "Changes" file in Factory to and SLE, including SLE bug and FATE numbers, for reference.- Added two patches submitted upstream that make iscsi service shutdown cleaner (bsc#952437)- Added open-isns patch to remove Discovery Domain doubling when loading from file (bsc#897297), adding patch: * open-isns-Fix-DD-member-doubling-when-restoring-from-DB.patch- Stop manual sessions for iscsi service (bsc#989548)- Added patch submitted upstream that sets socket option to SO_LINGER (bsc#974102)- Update user-space open-iscsi tools (bsc#975217, FATE#320753), which included: + Backported changes from openSUSE:Factory branch: * Removing creation of open-isns RPM. * Allow setting host params to return EAGAIN errors. * Kernel include path * Fix iBFT target flags check. * fix typo * Fix typo in man page. * Use system-wide open-isns, not internal version. * iscsi: remove local copy of open-isns * iscsid: make sure actor is delated before rescheduling * iscsid/iscsiuio: remove uio poll * iscsid: fix iscsi_host_set_net_params return code * Syncing up utils/fwparam_ibft with upstream. * Syncing top-level files with upstream. * Fixed duplicate lines for subnet_mask and gateway + Update SPEC file for spliced open-isns by copying open-isns upstream tarball and patches from factory, since open-isns is no longer part of open-iscsi- Added 5 upstream patches for iscsiuio (bsc#960438): iscsiuio: Get the library to use based on uio sysfs name iscsiuio: Wait for iface to be ready before issuing the ping iscsiadm: let ping be tried after iface config is initialized iscsiuio: Add ping support through iscsiuio iscsid: Changes to support ping through iscsiuio - Updated spec file copyright - Build service git diffs now using 12-digit commit IDs- isns: exit with success when terminated with SIGTERM (bsc#948561)- isns: Adding signal managment around DB update, and ignore empty DB file (bsc#941791)- isns: Remove the debugging output from isnsd (bsc#949443)- added patch submitted upstream by QLogic: iscsiuio: Add QLogic Vendor ID to support newer NX2 HBAs- open-isns: For bsc#941944: - Allow setting server name with "--server" - Ensure we can reliably get our IP address- open-isns: For bsc#941791: - Set up /etc/isns/*.conf files when installing - Install /etc/isns/isnsadm.conf- Allow non-tcp transport for discovery daemon (bsc#939923)- Added iscsi_fw_login helper script, and new udev rule to call script when iBFT/iscsi boot targets added (bsc#869278)- Added rcsymlinks (bsc#932814) - Cleaned up spec file for rpmlint- Updated open-iscsi to match upstream, as per bsc#936114, FATE#318770 The following is a summary of changes. See git@github.com:hreinecke/open-iscsi.git for details of commits: a068906448ef Removing duplicate LDFLAGS from incorrect patch 85ed2b4a1cb5 Prevent spinning over poll() when reconnecting to an inaccessible target bbffa1dd332d Fix incorrect list operation leading to out-of-order items on pend_list ce449cc8407f iscsiuio: Correct the handling of Multi Function mode e7f84d774c22 Reformat man page synopsis sections 271b77dece32 Spelling and escaping error fixes. 2022944815b2 Remove outdated Debian packaging code. d650915062d6 buildsys: respect CFLAGS and LDFLAGS from the outside 97ae5d74d6bf buildsys: make 'make clean' idempotent 770993b1e422 Fix small typo in iscsid.conf c9dcedb7b6a9 Remove duplicate newlines in log messages. 2986f9c95f6f iscsid: don't re-read config file for every session logout d56f49d3f947 iscsid safe session logout 3f59db921549 Add some more debug logging to actor.c 75552f5519a8 iscsiuio CFLAGS fixes 73e3e00c0e5e iscsid: fix order of setting uid/gid and drop supplementary groups 99dfbeff1676 add discovery as a valid mode in iscsiadm.8 688c2e9185f1 guard against NULL ptr during discovery from unexpected event c31ec6483815 Allow setting host params to return EAGAIN errors. 973508df1daf fix regression in iscsi_tcp iface binding 93c9d5ae1c86 Wake up to reap children 24409900d9df Make running actors event-driven bc491ac31487 Remove actor_init and rename actor_new to actor_init cbcd086a2cf9 actor: Simplify actor_poll a little 71ec348a2dfd actor: Unobfuscate ACTOR_MAX_LOOPS 61d58fbf6de8 actor: Remove ACTOR_TICKS_10MS() f53eb0034618 actor: s/ACTOR_TICKS/actor_jiffies/ dfe52b2423ff actor: simplify actor_check 8667dcd5d628 actor: Mark actor_check static 8037a0a30b8f Represent DHCP "origin" as an enum, not a string. da567155cfe9 Code cleanup: no functional changes 6478eaac7b53 iscsiuio: Check return value from nic_queue_tx_packet 1d07286fda46 iscsiuio: Remove set but unused variables 382655137020 iscsiuio: Change nic_disable to return void 7c233130687a iscsiuio: Use attribute(unused) for *icmpv6_hdr 8e1d38215344 iscsiuio: Use attribute(unused) for variables that are unused but needed 6ae604304b10 iscsiuio: Fix aliasing issue with IPV6_IS_ADDR_UNSPECIFIED 63b450de0c29 iscsiuio: Resolve strict aliasing issue in iscsiuio/src/unix/nic.c c1e83d439f90 iscsiuio: Fix strict-aliasing warning with struct mac_address 980c471e9f4e iscsiuio: Fix warning about non-matching types cb84219a4992 Fix missing header 9d744ac8c039 Fix bad sizeof in memset 67ff3a01e3ed Fix warning about possibly-uninitialized variable e5518c7a8f43 Fix build warnings for unused variables 5d68768908e0 iscsid: don't round up when modifying padding len d21766d95e10 isns: Add docs for deregistering discovery domains. ed04ac2f9f32 iscsiadm : make iface.ipaddress optional in iface configs for transports that don't have a hard requirement on it. 148854ae2d6e iscsiuio: Rebranding iscsiuio a3c40ba2ba4f iscsiadm: Initialize param_count in set_host_chap_info bfa2f55b0928 iscsid: Fix double close of mgmt ipc fd a037f5eaa9e0 iscsid: retry login for ISCSI_ERR_HOST_NOT_FOUND f0f3bbd25762 Fix StatSN in Open-iSCSI Stack. a9f4d169a95a be2iscsi: Fix MaxXmitDataLenght of the driver. cf1346a86489 iscsiuio: fix compilation- Double the size of the iscsiuio ARP tables, making it faster when switches present (bsc#922311)- Fixing ibft boot, completing commit 26020764daf70, which only fixed NIC context. Now boot context also fixed (bsc#902183)- Ported upstream commit 51c0b6ef8bc90: Supply strings for newly-added error numbers- Do not convert all "again" errors from transport to internal errors (bsc#903729) - Update spec-file copyright date- Fixed iscsi.service start to ignore iscsiadm return value so that systemd knows service is running and can still shut it down (bsc#897565)- Fix isns server to allow legal registration sequence, including portal group (bsc#905670)- Added fix from Hannes to properly boot all iSCSI CNAs, fixing previous change (bnc#902183)sheep59 1660204944  !"#$%&'()*+,-./0123456789:;<=>?2.1.7-150300.32.21.12.1.7-150300.32.21.1libopeniscsiusr.hlibopeniscsiusr_common.hlibopeniscsiusr_iface.hlibopeniscsiusr_node.hlibopeniscsiusr_session.hlibopeniscsiusr.soiscsi_context_free.3.gziscsi_context_log_func_set.3.gziscsi_context_log_priority_get.3.gziscsi_context_log_priority_set.3.gziscsi_context_new.3.gziscsi_context_userdata_get.3.gziscsi_context_userdata_set.3.gziscsi_default_iface_setup.3.gziscsi_iface_dump_config.3.gziscsi_iface_free.3.gziscsi_iface_get.3.gziscsi_iface_hwaddress_get.3.gziscsi_iface_iname_get.3.gziscsi_iface_ipaddress_get.3.gziscsi_iface_name_get.3.gziscsi_iface_netdev_get.3.gziscsi_iface_port_speed_get.3.gziscsi_iface_port_state_get.3.gziscsi_iface_print_config.3.gziscsi_iface_transport_name_get.3.gziscsi_ifaces_free.3.gziscsi_ifaces_get.3.gziscsi_is_default_iface.3.gziscsi_log_priority_str.3.gziscsi_node_conn_address_get.3.gziscsi_node_conn_is_ipv6.3.gziscsi_node_conn_port_get.3.gziscsi_node_dump_config.3.gziscsi_node_iface_name_get.3.gziscsi_node_portal_get.3.gziscsi_node_print_config.3.gziscsi_node_target_name_get.3.gziscsi_node_tpgt_get.3.gziscsi_nodes_free.3.gziscsi_nodes_get.3.gziscsi_session_abort_tmo_get.3.gziscsi_session_address_get.3.gziscsi_session_free.3.gziscsi_session_get.3.gziscsi_session_iface_get.3.gziscsi_session_lu_reset_tmo_get.3.gziscsi_session_password_get.3.gziscsi_session_password_in_get.3.gziscsi_session_persistent_address_get.3.gziscsi_session_persistent_port_get.3.gziscsi_session_port_get.3.gziscsi_session_recovery_tmo_get.3.gziscsi_session_sid_get.3.gziscsi_session_target_name_get.3.gziscsi_session_tgt_reset_tmo_get.3.gziscsi_session_tpgt_get.3.gziscsi_session_username_get.3.gziscsi_session_username_in_get.3.gziscsi_sessions_free.3.gziscsi_sessions_get.3.gziscsi_strerror.3.gzlibopeniscsiusr.h.3.gz/usr/include//usr/lib64//usr/share/man/man3/-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:25475/SUSE_SLE-15-SP3_Update/588bac2f4c7033b241266f663462af36-open-iscsi.SUSE_SLE-15-SP3_Updatecpioxz5x86_64-suse-linuxC source, ASCII texttroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)C source, ASCII text (gzip compressed data, max compression, from Unix)vg$, C:]utf-881785a6902842f57c5795c6bfd237324c7e0d1145380398163548c9fef89eec7? 7zXZ !t/-x] crv(vX0z_e07]cʎBE|JCTX"[L|,7Z#ƣ;k o Z3*gݢV{dž~rDl}aHhF9 KܽX1#0JaFRBikWď4n6:u*'U:hQڹ]aGg医> Ӄ)av8ޚNay"68=k^x5F$jBuyaV1xaMǟ)[@5OrU`,QK jK9eJ{!gv+pSbaCN8hٴef -~y&sgtE% uMAD Scn +l҆qQL /#!IiuvqU LxA9]-pʀv[J~nb\dh Bvle#vvFE /QT:_ܘ浶A6V༆P*Ȫ):&|M5DL K+4{LUhʑLYlu]"dn&hNg\s%^%3YR}Qs.Yg7Vn^hS-c4IQg?N8$gMkH +T>`dQ3iFKpb+[ ~0(HG?4A^`RbHI;뵘nU#0nG z~86GR\[o&#Z>} C}?1+dU@0׮v k50%&s^L3'.NZ0#-\ Wm20BN PmyH UOˣ],Xe4ܦؒR*ah"D^~DE)BNUDH!h0 mBF`|xe!٪H҄F-LA_eP|m +y;b!L O{% t;K(޿|Th8{uϵ\K$ZW%:z}vC^-`3%%_I5e w aAp۰P&(c%S3mV`3XnY0#bG#:*"k̠qq}r?p3ݰm0mf*?ȴ@5L!QijtCs7ZV S[%5-OgգPbә\ î#Wzk^-?a|@EYQ*?e9!nQxo[u.ͫJX[_?U J tӍerBʰmc?aMXI_㡠@E#n^ Bq"UD_蛇_ogvP.UPu37q?m lȗFSA}\vtYUKBR*b*cXI[m-ЮьakiTO_Jt.GFTjbQ9#jU }0!-,A3 [y`muqQ=B筥ԢԚ9_8Vb< YS+\jIR#ě(%Ts0[#Jid2vNP'3SMEU8O7n ĦC$wCi lwhr[U!} ^Gvu?Bp4kJ⣚"sƾYc_yk^U6:<Ø/Y"{Z2c ( x=I*G{/b`BmtΔL) EhKFu+oc>mW)wlЍ q |ހ|`ʷ{KйHf=l6D"ل{v[cuxЁPiLFh2ֿ3R&Rד]g9Xo b&A5T$E.һ.][-3Z%)kH=~mPcʳ ߳_>M]0Sn4KF\MsQhRa>Uԓ8/Vpo;׏|8OdR58|W~H#V9;"!<¤ʹĀ?S+q;ɤB.yC@/6п'p%yʟ(ä = 1{̒ㅫKA0tkix+ȣ~S%OMa3d-S^။\kVHp@/TiwqC*Z_)z#B:r E9yh;+T暤?F KjbmmdM ~( шfr]%-|y?!/6=-BLlf$ rA/y);鬛6*tTmwf# \4I>ipQ~OOgI)TN\l;2XJ6 %8/p neNKRU!T ҞP3|KSYRT*r2QI l&sk}4l;Mu[*2b^/ᆮ;^Tş}g?XO{/$ZQjM[2 q=-N6N6*ٮT{ѫ-'k-YH(S @[K%7^L6TC!3y@g|>ElwNXB)'IGuDEFJMڏi\p_z %]Ux^e5szrT1K)!0t)W0\]K%xc< a=PN{4tH @-֡Η܆]^5J[| B Sf|Ua]5M`{W k?. |s*t^rdȗ6cvB / +Rr-[8j{TG4lN1? ԕ*u|*oq/+1H'3Ŗ;jt'Wѣ Kl9φɘ:.'Yz教jpa$̝ }>wr}`@3 :9gQM&qs;`nt,_|U:=5R.-="z;^v~ܮ}> FãR!L hfNX a>7z|М-(_y8AP^]T1EHE_P*_ 6 Bbbj.Fmfuy..3qacC6p^@C7ҌIՄ֔ G x#C/d<5psspXOoUG3b+bq5!c+BA%E ^UF3V <wh3}1YAΏApr4aS6sE?{#@.W釖>gν/,6;#,~MDqӡ_[2 F }xn~N>NWZiӢּzNi`ڽ9!j6;lh|t-om q$LM~\\'u#TL@Џ@$"tf@EJxVey|&f@wMx434/1}~  /"ܽv_фȊ]z6 IzȨZ:$&wANx^8UkDӿ&ye9ɰ2U"/wz0V:.^g@w|$Dbk @5dJd +SZy(O\62(afy2 Fy!v !S;Yoш B4xy,,>*⦧Q3Pp7#*~7r7]V6v0\H@M0vHx=aʨdAp654i#&5:x{Y !)3 2QǶXס| yU!ZVSpr!Ɣˎ&wPma﷬C̎=t >-uuPM86%jTN̲}vdY_?< C2?Ƚ ͇سÓ[8jQg2K>Yb\czuPw ~_%`Kc#!5^RnjĢ ӰJIӽI7XFE8}oIԲZ!6& K8F#DtҸ^ϊ*$) I'KP4Y? آ*IX{ L9|.cŠeKtkL3S<[H8z?D{5R2mh3D%_O CmBa]4j%&j 8κ:=qv6fԆq9RCikKWY"OF%xl*u Jcwa*ho=us=X=G0$LP^>.u@$Yl̓ӝ̊vT|fmO1}~W FJ,REƢo%W.m9| m!j`hk5,CqG7FQDg?FvOY <9_ƎT~ޔY/J-A\*`ᵣs[glq]g^E،__fHm[()26v!(X:D\ )PXd|ct|˖tPf̵q22FveӸGIcoXZ(As3_?O/[@-[1UCˁ8Q7S[9 א =LB܏{KX@RN-R[[j$613e\m7I<g_o-Fg*+gus ?p㇈Q?NK&\d;{ ! n=@f?fT 1x B `ntEGѽM5j ʲ>+W) O3\QCLQ Zev")U%&!%%%/[G9WPTB`̒#i1: aLje/.0Nēpm?8*h\9"~ jMpK7efs%Dr)w !qz L~yg~hW`}Mm^,|JaņI;)C uj> ry6߯\.g2[^/YQHz)`wi /уPp6VNvL̂]x:+D V/.i_bM7* yLuN7+ `>!JE\ %p%;`ֈ/ :Ąro-$^Y@T#&3 \Bp `^8" 8zmendGڄ8=r mF{j ,!9cZX1K0NK{1 c4DKޫ YJTxR zZj\z2Ŀ4Mc&!SaCN4'1T5 K?KС:u()"'EDb`7ψk2Q\PZČSM.iP3k޵Z˳V1F& `ӸHh jSPi5q_^6aN$lenZZ;d(z O`N-+]ZH䕾|pVlu9MA# {czL.tn,&u-yJݷ& 2)$/tR\p(Q-(л"=Ɛcf.UBI-Ieqo&M[ܫ _% hAWb%+5(v;PcL. h]We@A3x&]# = zqJξPd[}wZ[̐( ŊF1[9WDG4gJz?VP6W+@9mz*i"L &\#l98#/\ȋ۽2Qw1iNHa ^ hqypVP}6ƣ<n0镇I,qyB4:{A7R: Utu~_w#hif/68t߁x2ccodЇp'0SUs Cq Dד,\;I8x +}tNtՎda4OQ%P&[T|"˲F:OGL o:wo\CSr*[rǁs0_,+fuhK"}zyVeu}ˈ|VLzi}!q p+x ƽQPL"HYRx[ k}DjF|l;)bHc9.@g_IXLuճU|#3 UבkGV>pDd` yCs:^`yB! 1KJIεkkYH'p!(чt `{ *HbEu!xo T܄['5Ɯ95JQGχW IQ=L%{l$ 7H"lq0tok{3"2 yF̽jkW3Ȳ܎.aLI \!qraB#mO!P¦AɕzCH|^wJk}zx& 2W.k6'{$y96o&">x$]pbm]a.3)`j+ 4z~yyn=͆,^魬Yz?͐ѻD6Wև~=?*¹fJ1cmFxK:/lyh S׽P.=3.(W_gBQk9@w7 ޓ!yrz׿{H|7o ]R6TPпZ? ?jE}r) gzP]rEMf&[H}rͺv8A%JD#T=FdTZT.| [¢ݯ p;H+xN^rToT3bV>N]m'JzuūSQ&*A%i9(Y@> QFVY/^'b}cDus1+"?\do-avw߮GKJ[z[#F>{meg5BɄP^rE{ݯƮJ/\"Ts1w[: sL 1(O뗟đ @<` BNEyH4cwMdw}tU^5!kAqŮMg%{*Ğjٌ+--$c3\P4dXq-Md%OqL 5ֳSADB$臲p !/pmԡQ4p~T}/: e qPA]=45 Pa6FckEв5d1S9勚lͶQrzF*X?vrϗםMLdv/-Pp:X_u1`6%5ѝ+, Nq z#O֟"wyz?*nì?k'?N%a%{z kR'%avwI-J4|˪Os\dk7W]|0%{UC 3A}k伾nϪT<5m)&Fez\uF{9(^C+لf;@>{J("0ad:L88"QʬE^ 9ܠ)J/w -~'jZIY9X^g牠r&=llf}6 RI|l0p47'FmNĭq*՚#ӳRE5v{&;f #t9%LV cJh^aqߒH9U~  Wja!+!]k;9YydLO/ݿp*]1 r_am3F.S|a!k%FyK Ӽ [:ε8=V/qq>(oɍ̠Gf2?*;4c{.Skuvuq',P\fͮNȇy 9DP@EG!mbŒ:W JT!c9%.t0.ڻ^\J@+]pdK:uBq&aSaێmt#.JԬ+,QrM4/,$!寵F݋g["]5Fl[UE)Ar/Mo Â:nI3~h y/Ȭqv<Z(UƆm]Tq:< \6'pj♴/; Q 0qԼxؚ d٠Q&1O):Ⓝi Q*OL4|W{ ;ħ^Iz67|aN1O|n!QO2Ei-Gv:NHX}m1oȜ3<&Zkj@2-"t$ɛR5uq}&}Yν3qDmoҏT*@aߵs_l C*u2ʹNҠ힝5jF! a.)b}AB66"?Z+?]Y7 <*\&b9%JeL}q1TSzdYhM&EwjCvډ8Ȼ`S0A4xt98QALtO[ B¯U 15Gţo&olbz<5%$N"{7OK+Eԟl?\hcHuؐ*? c +=#wm $LPҟ;ԉ3o9fNhu㪱y5l0Ü>8b1fdnQ8\BOܨS%{<+$H"ii[mQEɕ QsGDZ}2EAꞘp)`3Z$>hS,F"2~Wtb]RƢivZ'c aLQY`@?lv Kxؚ͈_Ú";9ǦU㔾Qn܍ 9b]s1:\(ȯÜ1 vyBXcp mPQ8Jz.<X 6p5!YCfrc:n8 Ǫt,yl#qHw3P̺9BR/cB |7u{ˮF/[oA*uU{?#m ĚOVgvkȦ6-R?_0.ls~3! V x,T(Ee_v^Kw2!9еijp@8un}Q˯6rG TS^qtΓn^nK)S/sF[IcM|qj.NwbxoO v46[qqc ;(%ydvΉ2>*F8 1Ӡi;0dK$Ue&CC(mmZDSQUB}]/J%s"Z*"6]Ѳ=OS٢wU!b^u"5>an.R.*lfMr;Pabm}uXN'?غ3ǏwxI!׷uxN;1"c$h";U*(' W7Q́>KV(_! +seh͍CgbEϊ\AcYNWFQ;l f.G8{8fiq=Jdnn@c6a<9/{`wIb+o1>`&c? 'kƛ|@g_͎ą03b |Rg\p;s^LFHoқ)Drϱr1T:*(#toFn(Q#Ŀ4}Kʦ>[&˯ ැ0K3`<[fl&H/y˙/Ni Ji]3Q3&WF`ی{fl7|຿VP̛zTt%25T6! _C\BDŢu7y[9:)ݑT6㱌1Dr< xs jhKkJڠ+C[3}*֏gS 2IMή ߼ uʟ<۽.8Yݩ>T=9WuL;*egBaQ V:[Gl7`;N4~^|߅sHqw)ۂObs}D]9^`EmbCR%.Q9S IeJw,xp*s5{Vzz:Z((wxwAcUد w4T4wW䃼p^(6,a) .ݸ0[&(L״Ig "Tiq͡)c]݁kc쾇T1Q{oPR5wg(*,*!KLmX ځ{Lf ?*'ALfx 8B+[k+ `U U~'0OkwKUYx`L5[,'ga7 "zn8dms*TrʐÅS{}L,N>33%V#kk}*mSkkƀiRߊ)<.FMFQzַHVC{59uqO;GuEY`1,%w7f""TchHI$M s`;N05PL~|]XOmU NmwLȍ>$ :.f NEz! +ˎJ_OԀV陋(@wdEfghZڒ|7)9חϋdb̖.\J7A۳5F yq8|"Yq"öH0 iA)\8@OS;NQnZg5ܡ]'ExcץIW\d @Pasa!kij-iz=[.̝芒"i;w?zc9fKp-!wRz]Nr g }Ry?ȥw^!Nb孎Vsf:=Yq}.\35X˿!kwdrԡz!C"%I5Obj srh%B &BشWW}'Y*"U@ Yķu〛-Tt11cZ% (_uF,iYȯ46`bEJ(%ea/ ʔ09I/Yn#P9@W?=)mӛU^.;HQr H K(kTM\x fÕ4wrH?#12b[uҧ{GD:o`,rG֑N/qƫStyq:i`8G/n{'']2i;p5qʟ2|ٛ\ĝW; !3E*g N7ԐX+R̯GP~Ub6E[JHBGd+qѩJi" Q.܀bŘ.9j]S`4: ɆÛ(՘TJg|E3ׅ#)3{yNjl_1YPpOȴ 9} 4d؆룍6"b뛏D}~k]^>V%۰CnM[dcc,oJ뀞O? !f#*xUIo);j|jEi#Ԃ9S8GA~=#T4;$ 20OZB&\:lJ?Jmx2)_80# tQoU=cp%Қ[¥#F5#2?@Aj}Ձh14ŵJ$d)嘅M%I;yfILT.K[U?FyxNHltWRq$ݦ/g-isD$)s9~fe @; rKJ?& k"Em&c I“VW *O-8gqBm s8pZl2+8Ee\!Ggh>玾ߒSP;)"⛬¹eB\<~>w r@."dә7@e&SujpIqkc׽xmi8a>k;c+@KAZUN1ZTEs8Lj*RPXw{^$<-C+@vd3ڽ2lʿok^{G:MUZA,ۏ@,w:Աc%?7׮@dI:^Ԁ6iGn$x VTx <"G IYgubsa=sB G:ؤk!əw ~=uԭz\m\ueu,M_q V[?&VG/H:(˛1$:v/gE{M7,ژeWnl4VhE8/KpdHp#)Y7w󌿶[ps- B\REC/khFA vrG3`$/,kW.}T_L` $l|.G6j%D&מ/˻e rK(yMT׸ԘBWRwhHPD1l@>ldNqtun4aYSQ%6xLܽC M>:q}g8X$RQnhՎNPIK˝mYGֺ"Gڕ`ES7]>/dFp,T[]uߊd*S)@RQJK_6yVz(ezcGeNhlJC^@KfwYp ]k&]F-^Vn^{EQUˌ7 t/oBEjeXw 2z '*0z6n69Td Gu&W(^ɪelKS_2r!Zzo; }'gQJ2p]n$;!z,z; jO&(A`~}{QhG&Y#0pGmӚa 09{} >w P`ZdBE(SqIE~̍~80EMs)ңrބ׽ё?@B"jnԅY_|$az!8Pf]oڑ9zGsop#V\*FjsmN,t}DI|ersҙ:b8rF"ʛT֧ 6S!yL \KA[yibN,NP33OXϔ:_ c Xn>m=Fl]&dmGj@-ƫ-VȅpUT¨CwWsr&w:XHAt=ݣ@rlO ƻ1Vt\Ӈ09UbzqgEi˨U? r:X5|d'&Af ?|dj'Cy8L݇B}!?}pךBu`88Ms66D(1f)vd0e=ݿcE@P>nG,1pwVwL ,``7 d_q8UfW&LZWa@GưE`Py ,@c-S oJ' +L">{J D}.,*<90D^U/?oLPx7hb'!+a0H4͸joS#R"1jlr%aigxLlg&4)5B dGwsk`Q>c0 biep93JV'^.QvA H36yH +JgA'%XN|#)Ẓ qכ(nr.B]سWzM+TFP1@9xYԵ8- #\Gho5Ke؅֓x~`'U_q-Ll-o:PzfcGMeÊfi`6k p>ÛgnÕ fu9QJ\g "<5{qԉH-ߖxD5F=n"/} MD1MB3Ab7Kod+euhdBYRUH+jZ f'+l͋nƼǔZbCj$Nzi3,~oa87+ZJ #8]Z`EEfNƇne2%ŧ 1O% $MksCVL7,%d/8E9<~zwWV7kuٮ1*׍E2Ek_5%O#3ph4+y[4EӺY#-n`^C 0M^ryR3/L;?%/'a-& @fYo!pӑ؝ANj`1b)o<\<أ_bO 5rNqAݓ/ZA3]%yJ%M.7p VHnJQ<5_p-b|N|d#[D'3T%~I˰eΌˀT= ӒZ_A`#oxrgX05n{e$ZRt!G)O$a@oͰ]e!2&hy |EJr/fŞKN =@ʈ;y4{=mf@]!,tOf?85m]*ֈMfCi{`UXQMm7 2=G61bDh/A^;"L PI܉&9n} v;^阺ool ٧<pK&VPK\dBp2/R5li㲜QbĴwLy57Y*+_  @Rz ȩ<^GĆڴY7:0Wd\qI[Y r?kt/)~w]!mGx¦ bW*Mheue J%Ɣά~8rjX\BՊ!z[e ݔKH ht]᭝UZwYԇbr/!DuqGFXf /16F} }Wiqgɒ*>/$5O%iY>=I{ѯe0Qˮ>"/ʉO/?{aq`VhZ%LVoܖoep+Rhe{@C2ɒԎPKG9>R"Iٍ UY3־N{ kFKg*/$(m!uj4c eAӘy=Ԩ=*;sO]j|t[ CW5qQا4那}Qg=}U,)' g\_yAYNj_P~gL]FMjkړ]ǹXRK.Wm7n4Q%Sk^zRyؽ scdVYB}hpz DtkBS!oS2PF~;WdGIV2ֺ CK&j(;BI4SCh ("'N9Qokëb(\yUD/R`I`aon"Ze^m`2t֏w sB}؀k",Q3P[aGm^`~{l'ՕYwh=rD\*2 7xV8"+ܑ)?HZH5<~f!#?~]y-2 4MV&[愜: =dar 4Z{OVXhɡP/,"ֻToƣY wv6Db˝ G%J~~. m,KU0*./Dn& #n _d U9"Z?n?L<1񑣓FXd*tY71WJD@M#*rL_\4s?k>Z9CՆDJ?`[ VDc瓋αjE9h*'Kl7-o8i"{JdDž}~iGGfFĎbxZ86:$7Mė;:?`tqsS%WZvhLf9<,\ھ~ZcL8u'לE`V|<,>|sn#ӣ_!|UOA;t&E w#njhJ#?rs儩OϠ5k.OYhtά;udN7:SWѕJNGo_MOiwq)P!Hcƭk{?vqOH|iάUߐ,[9Ve$l).hY`'Lhگ,>DЃTjFO%,(>I3"bu)nT6SF2Ih:LQ^@v~|,Z2 1r#~*1?҉Sk\["G,]SsW`q߀):"~hc 35z[4A4-U^k[\Nilsl+.PPu,(c1B:*V1{~#/0 4*8-LDŽ%|%X$u#]F[6rju!8 AQȜe:>ܤ=ag>~)UeũNU{;AkZzGY$]i]Dm2 ] 9*}H~+YW n4{w`*iHE.4?['z ~[9TgkTQmQ}Aسzj*_U-cY6Kށ|T9nyq+J~e{O;Q-v!b}T@EV 4m@kE-;e-H_zV>ݠͯai%k.YIW)WUFEH}iْ_Z|O1nDCa#m-JK{%4%tDح'ͤ\QS6rD(;Ē,<9.ŤSۭt5;)oU{Յu tSB VSK1j|Mp/8d{N)xɑyn'eXsIޤ!5:3>Ol;7!vl+?P }m<3 ؋azYb_mGP^M%<&Vx 0X:aꗣa w+z, 8Qi' "%hA[W>^ '$_9a`PI:a]#ks!QkZ.Nҿ}JGM @!8˼ES^p7zFeY ]( iC YDKe6䖹(tZJx,d'`*!V%} f+paaS8CwdȕzX4 V: ژAֵ+k Ƽ[fI<]{:lrM> @ iPjΞAWt~,ݟ6YE(𬣸srFc/^0gO z!}r ]|NFJE&\x*fs"YzֺNq|8{]>-~Xx3j*BCd1~> iT=V@ZVX.Y:w &"?gȞɜ8! \ k&J20 3-U _DYnzk!c[LK&@jﮫ*%,ѱnj F=T*xrv ] `jT`J,3l;[^p+.*el-75TˆWCk\Ք=RK?J˚Xܶ&? 0p^'*!Qb:L9O$Cg6cBX>Z#;mJSRb c@nB*ɱTOKь rE̊S k`OvZq`0\"0<3=Mp a\Uק9:C|{VxŁ@*yZ* _j.O 9@s:OAF ؐ:Oٳbg6nN/5&]6Rhy<|YBV#2yO\\yulT׸>NPZe4nri\{#b%gOy?v_=W0^K̖ssO#oXk;ËA <{B׊S6Q4o}U V SȴIAH{ߞ5KJw\Ұ& K  Nd/w4<  ysB O^.r^ ('iOY8!鮇{n|#ȍ4N~>S?zl-I(1iS InLusfjkQ/B`#O_)a>LU&$puP\u{VIY ƇΌYBm4 (N)9j3ֻxnr%0dXJWb; PE*KP"KQOXa˖<;|T3{8otND=WQ܅tl~]{A T]"/nXOR b[m2 F#zy( EsQ_(^DVZIX3JAօdZD 9=Pʼ@9J,S-e78wt.3*r"'9Q\0w(oXPBK&E]JT} BXGAuɺe`%aWs/*BzdMpSfFAg-!ISHb#.ɦfYH *A Y 1 ){.S1ȇ?Bx b3l `TqC9 _N~K:-mPNxƱ-U!` n?2]<-/'c2JkVME} *._ڛWW _3Xgm|]q>p"QUH/edq5caLfw0sF)Ǿ3)0 3w0> k-`>& J˭xuXhhyꂅtøӲsl5ҥWw|`2H cMpicD%uyz[27k'JRz ᤐ/-8&hc C9qw[j Ǯ?-̆(VeKw'ߡzmAL;GoUl$/eSʁ@m/7Nj2˜V}u sA_y,bxem尼Jy2 tsQ5)gQTN$X_df%er8^H Z%~̐Sx!xI] [܆B^%ξZf<3bٵ*z_/`R|;/ y 8S]>o%ܘU(ߪFy3Vp b3LSK^/BI1}p*$7R&0 .sɩ!pS"m j[r͵!X\Wd:0ypM~DB,1u-{!/S~Ȑ陴 hpˮ$7I=;-SlHhoy5&f2ǯDhl(Y& *J)31s_Ĵ=WP\=MգуCŒw/ʸπU9-DtNl>ae-?aƵ,wdPՆ!bهmBAyΛ#0'<~._ gO4/[od]:?1dIg UOM4[i)>UiTMO?4 /QgŅK'e< в;oIi3rvЉ't"|mY )ZWu57qSܴZ)6~m瀽LVCWfC˙=uo-< :t~nq{A ?ӏdNR2Phv{2EB e ەM yY)G*gka) kz˧^lvo늠|u%=ӭ.rc^H=XRJ'>,ƦgO[Ơn:Aiꪧ R!aƍ&JJZVh%*Q 䂒4 #112HʲLJ׀Ƃ1yr7HE#V+^F#D'^tQ7YMB@ i+3&9cxo>a;tZat'wO6 K v5lB. h&ЕRS NZUcvCh KH&&&z^ PrHKNιD 7q4{;T 7W.鴋5?u-\VNȝgNK>ȟ \kq60aUDipZЖ/Łs'j8 :II=AphQDPl'eϮmaw*w&,3k}mV*8-oj<ޚW 0& eߥ}$= {rQ9RquO- !K7) Y.l*d }(j5^14Q-qphў}uTCxBeTHrSM''+p䵪-[j{<*){5)Jlз0? y >@LJ Uίk>_v{33ms&^-\U鑼՟}%! Mҡ9ڊ*nИutՎ8 q%`+\ UXԈWډ.p\y$A9aE^cXgUn9!)m!(@ʂ`|@D*du\AM3jÝҼ{^} NFK7DWm>BIFV ҅9 h|4%acLYgexKdG2Wcn1IqCQEWns)-o20hD/!Dq_' ZВ)-]C{p$-_pbQPS@< 2*:Hw"S4J[aӹ@ l_D0u餡$ \4@ymI+3Ai vyX33b~uplpRQf_#zALQ/v MXz;=Y'BFCH&XR,hO{6Fȫ0)gBc@MYT Gg}=^=%hѝd ?T VC9C*>)K3xlrq/`30/%&fpuOyߩ 6]M;sA7Nf]#r .3J|q\ .Ψq{Ȳ/xppnB$nA?N %>U1x>l-A' Ű19ؾ&J gA%ʨ̧Í8Ъ8 a=veƏ_Ƕ980 1MT7V@ZHthƥ˥1ѹ2jmKez y<^.9nj&YOKWXϏK]hoi]0 @&ll)H RQ,R lOԨ+&cHp-kUYB=u 315|[,\ًԅd>{I |6>!‰85Cr%{.H]EJ_",qBLpqQ^Un;9͙&Xs}[lz _NfO2]!TV-먫Pt1E7}$,a?EI? ]&T bsi˷qNZ YZ