freeradius-server-libs-3.0.21-150200.3.12.1<>,︉cp9|xVuSX%D)JVn9 "} |i06W3\}FJ߀^3>/xۼ!K0QғrKt2:f`sڟ5i0p\I (x^mELzo?zKuxO=hYDkD󤀖 /}ݒ t \}gu7~06?Q^: MQ @Z :o#'6P 3׀M ?\l`|"l{x"l>>>l?\d  . Hlpx| $D T d    4\5(b8l(9 (: (FGHIXY\L]l^b_cdefluvwx<y\(z XCfreeradius-server-libs3.0.21150200.3.12.1FreeRADIUS shared libraryThe FreeRADIUS shared libraries.csheep14SUSE Linux Enterprise 15SUSE LLC GPL-2.0-only AND LGPL-2.1-onlyhttps://www.suse.com/System/Librarieshttp://www.freeradius.org/linuxx86_64z(3@ 'F[AA큤cccccc^zM^zM23ddc0058d99fc6f56385ec7a16e81572c62973dcb2042eb89a3f649baa54a9ff8e8e452dc1e6b4410f45db2a180e8dea63646090a6caf63b1d8274075048956080e22a2688b22f595bf3fcf2ea3fdb921f80151cd916a3aa3d23540f8583008e5bd3a731b517834d2dcbec0403fd42054898834edd261fa7d299172c046d3e98b9cc1e5d41938be45a368f126a6d1fda03d60a3d622dc75e776be4e90c2d2c6e6d6a009505e345fe949e1310334fcb0747f28dae2856759de102ab66b722cb4rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootfreeradius-server-3.0.21-150200.3.12.1.src.rpmfreeradius-server-libsfreeradius-server-libs(x86-64)libfreeradius-dhcp.so()(64bit)libfreeradius-eap.so()(64bit)libfreeradius-radius.so()(64bit)libfreeradius-server.so()(64bit)@@@@@@@@@@@@@@@@@    ld-linux-x86-64.so.2()(64bit)ld-linux-x86-64.so.2(GLIBC_2.3)(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.15)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.8)(64bit)libcrypto.so.1.1()(64bit)libcrypto.so.1.1(OPENSSL_1_1_0)(64bit)libpcap.so.1()(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)libtalloc.so.2()(64bit)libtalloc.so.2(TALLOC_2.0.2)(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.1ct`@_@_FN^y@^p^h^@\\v{\u*@[<[2*ZZWQYY@YlY, @XO@X@X*Xh@X.@W@WiV@V.Vf@UĝU@U@UU8U7@TZ@TTT~@T|X@adam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.dejcnengel@gmail.commichael@stroeder.comadam.majer@suse.demichael@stroeder.comadam.majer@suse.demichael@stroeder.commichael@stroeder.commichael@stroeder.comadam.majer@suse.devarkoly@suse.commichael@stroeder.comadam.majer@suse.demichael@stroeder.comkukuk@suse.deadam.majer@suse.dejengelh@inai.deadam.majer@suse.demichael@stroeder.comadam.majer@suse.demichael@stroeder.comjkeil@suse.demichael@stroeder.comjkeil@suse.dejkeil@suse.dejkeil@suse.demichael@stroeder.comvcizek@suse.commichael@stroeder.comtchvatal@suse.comvcizek@suse.comdimstar@opensuse.orgvcizek@suse.commeissner@suse.com- CVE-2022-41859.patch: fixes information leakage in EAP-PWD (bsc#1206204, CVE-2022-41859) - CVE-2022-41860.patch: fixes crash on unknown option in EAP-SIM (bsc#1206205, CVE-2022-41860) - CVE-2022-41861.patch: fixes crash on invalid abinary data (bsc#1206206, CVE-2022-41861)- logfile_secrets.patch: do not log passwords in logfiles (bsc#1184016)- freeradius-server-radiusd-logrotate.patch: move logrotate options into specific parts for each log as "global" options will persist past and clobber global options in the main logrotate config (bsc#1180525)- freeradius-server-radiusd-logrotate.patch: fix permissions in logrotate global section (bsc#1170505, bsc#1174905)- update to 3.0.21 (jsc#SLE-11896) Feature Improvements * New stored procedure for allocating IPs with PostgreSQL Rates of 1500 IPs per second are now possible See raddb/mods-config/sql/ippool/postgresql/procedure.sql * Add SQL IP pool support for Microsoft SQL Server See raddb/mods-config/sql/ippool/mssql/ * Added RCNTEC dictionary. Closes #3168. * Added Pica8 dictionary. Closes #3179. * Add TLS-Client-Cert-Valid-Since attribute holding not Before date Patch from Boris Lytochkin. Fixes #3157. * Generate attributes containing unknown OIDs See raddb/sites-available/tls * Update the WiMAX dictionary. * Added ability to rlm_python(Python2) show a stacktrace from errors. #2979. * Add WiFi Alliance Policy OIDs. See raddb/certs/xpextensions * radmin now shows coa stats, too. * Sample schema extensions for summarizing data in SQL See mods-config/sql/main/*/process-radacct.sql * Update dictionary.aerohive, dictionary.fortinet, dictionary.arista and dictionary.erx. * Added VAS Experts dictionary. * Many updates to RPM and jenkins builds from Matthew Newton. * Added %C (time now in seconds) and %c (microsecond component of now) back-ported from the "master" branch. * Add reload capability to systemd unit file in Debian and RedHat. * Increase timestamp precision in postauth to maximum supported by each database and simplify (and make more consistent between drivers) the timestamps in SQL queries by using expansions. * Option to set dictionary path in raduat script. Bug Fixes * Various fixes found by PVS-Studio. * Set permissions of certificates in bootstrap shell script Fixes #3132. * Increase the 'nasportid' SQL field for 'varchar(32)'. #3141. * Skip processing proxy reply if there are no home servers available. * Update SQLite IPPool queries. Fixes #3177 * rlm_sql_unixodbc fixes. Fixes #2822. * Fixes when building with LibreSSL. * Fix the rlm_python3 build. Note that this module is experimental. #3183. * The rlm_python should append the 'python_path' paths in 'sys.path'. It fixes the expected behavior to use the existing Python modules Fixes #3180. * Fix rlm_python to print the script errors properly. * Bound total query time for PostgreSQL. Fixes #3253. * Many fixes to Oracle sqlippool. It now does 500 IPs per second without any tuning. Fixes #3270. * Reference sqlippool by it's correct name. Fixes #3272. * Revert 3.0.20 patch which caused crashes on duplicate clients. * Update WiMAX-MSK attribute. Fixes #3280. * Fix crash when trying to access non-existant regex capture group. * Use timestamps (request or server) rather than SQL NOW() in accounting queries so that these are stable when replayed from a file buffer. - freeradius-python3_patches.patch: upstreamed- update to 3.0.20 (bsc#1146848) Feature Improvements * Added Force10 dictionary. * Update dictionary.hp with new attributes. #2690. * Update dictionary.aruba with new attributes. #2696. * Fix side-channel leak in EAP-PWD (bsc#1144524, CVE-2019-13456) * Relax OpenSSL version checks, now that their API is both public, and stable. * Note that tls_min_version/tls_max_version also support "1.3" Since there is no standard yet for EAP with TLS 1.3, it will not work. * Added tripplite dictionary from #2760. * Switch to the async interface for rlm_sql_postgresql so that we can enforce query_timeout. * Added new LDAP option 'allow_dangling_group_ref'. * Updated documentation and functionality for EAP session caching See "cache" section of mods-available/eap. * Tighten systemd unit file security. Fixes #2637. * Disable TLS 1.0 and TLS 1.1 support in the default configuration We STRONGLY recommend doing this for all installations. * Add expansions for *outgoing* Radsec connections "%{proxy_listen:TLS-...}" for TLS-Client-Cert-* and TLS-Cert-* attributes. Fixes #2839. * Add %{listen:tls} which returns "yes" or "no" for TLS or non-TLS connections. * Update dictionary.lancom with new attributes. #2847. * Added rlm_sql_mongo. See raddb/mods-available/sql. Note that this module is experimental. * Added more documentation in sites-available/robust-proxy-accounting. * sqlippool now re-allocates unexpired leases, to prevent IP pool exhaustion when clients perform multiple reauthentication attempts * Add support to radmin keep the history in ~/.radmin_history. * Add support for ENV and LD_PRELOAD in radiusd.conf. See the new ENV sub-section of radiusd.conf. * Update dictionary.aptilo. #3002. * Update dictionary.airespace. #3039. * Add sites-available/coa-relay, which makes CoA easier #3045. * Add example stored procedure for IP Pools in MySQL See mods-config/sql/ippool/mysql/procedure.sql * Update dictionary.dhcp dictionary with the recent hardware types. * Add experimental rlm_python3. This should largely work the same as rlm_python, which was Python2 only. * Add Dockerfiles for Debian10 and CentOS8. * Add RPM spec file compatibility for RHEL/CentOS 8. * Notes on certificate constraints. See raddb/certs/server.cnf. * Add NAIRealm example to raddb/certs/server.cnf, for RFC 7585. Bug Fixes * Allow listen.ipaddr to reference an IPv6-only host. Fixes #2627 * ERX-Acct-Request-Reason is "integer". Closes #2635. * Fix a slow memory leak in the file management code. * Try to fix file permissions if they get modified while the server is running * Fix slow memory leak with clients. * Fix request and connection timeouts in rlm_rest. * Fix systemd issues. * Fixes from clang analyzer. * Fix missing include for the dictionaries: alcatel.esam, altiga,alvarion.wimax.v2_2,aptis,asn, audiocodes,avaya,bristol, columbia_university,freedhcp,garderos, infoblox,motorola.illegal, starent.vsa1, telkom, wimax.wichorus. * Fix internal sanity check when running with "-Xx". * Allow "inner-tunnel" virtual servers to work better with "accept" and "reject" policies. * Fix dictionary.huawei data types for Huawei-DNS-Server-IPv6-address and Huawei-Framed-IPv6-Address. * Framed-Interface-ID in postgresql/queries.conf is string, not inet Fixes #2817. * Fix rlm_cache to complain on unknown attributes in the "update" section of its configuration. * Add configure checks for -latomic. This helps on armel, mips and mipsel. Fixes #2828. * Add support to Oracle 19 and 18. Via #2857. * Add support for decoding tags in rlm_rest. Fixes #2848. * Use correct passwords when updating CRLs in raddb/certs/. * Properly separate "originate-coa" packets when accounting packets are read from the detail file reader. * Use the correct virtual server for pre/post-proxy. * radsqlrelay fixes backported from "master" branch * Fix DoS issues due to multithreaded BN_CTX access (bsc#1166847, CVE-2019-17185) - disable python2 for SLE15 and Factory - freeradius-server-enable-python3.patch: enable Python3 module - freeradius-python3_patches.patch: backport python3 fixes from upstream - freeradius-server-opensslversion.patch: updated- Enable memcached driver on SLE15- Add missing BuildRequire on samba-core-devel required for windbind support in rlm_mschap.- update to 3.0.19 (jira#SLE-5890) Feature improvements * Update dictionary.cisco * Update sqlippool to allow for stored procedures with PostgreSQL. This increases performance substantially. Patch from Nathan Ward. Fixes #2540. * Re-added "show client config" command to radmin. * Cleaned up mods-available/sql example so that it is easier to understand. * Added pfSense dictionary. Closes #2581 * Update dictionary.h3c Closes #2592 * Update elasticsearch/logstash config for v6.7.0. * EAP-PWD security fixes from Mathy Vanhoef. See http://freeradius.org/security/ (CVE-2019-11234, CVE-2019-11235, bsc#1132549, bsc#1132664) Bug fixes * Update dynamic_client module and server core so that the functionality works. This has been broken since at least v2. * Fix crash in sqlippool due to escaping changes. Patch from Nathan Ward. Fixes #2532, #2533. * Fix systemd notify, watchdog and unit files. Fixes #2541, #2499. * Fix erroneous length check in EAP-FAST. * Update documentation to remove old "ignore_null" configuration. Fixes #2578. * Fix default POD port. Should be 3799. Fixes #2591 * Correctly encode vendor-specific "encrypted" attributes. Fixes #2600- reformat changelog mostly by wrapping lines - add missing bug numbers for security fixes- update to 3.0.18 * cleanup_delay can now be 30 seconds. This helps with proxies that have packet loss. * Do-Not-Respond policies can now be set in the "post-auth" section. * Encode / Decode ADSL Forum DHCP options. * Fix module ordering issues. e.g. when "sqlippool" needs "sql". See the "instantiate" section of radiusd.conf. * Add Big Switch dictionary. Fixes #2252. * Add sql_session_start policy (raddb/policy.d/accounting) This minimizes race conditions when using Simultaneous-Use (#2257). * For rlm_perl, all variables are now tainted by default. See raddb/mods-available/perl, and the "perl_flags" configuration item. This change should only affect people who are using variables in insecure ways. * Allow "sqlcounter" module to be listed in "post-auth". * Add support for IPv6 attributes in SQL. Fixes #2280 * The server is better at handling fail-over for outbound RadSec and TCP connections. Fixes #2284. * The server is now more aggressive about retrying failed outbound RadSec and TCP connections. Fixes #2284. * Add TLS-Session-Version and TLS-Session-Cipher-Suite to the "session_state" list. * Add expansion for Radsec connections. "%{listen:TLS-...}" for TLS-Client-Cert-* and TLS-Cert-* attributes. * Add notes on running "ldapsearch" using the parameters from the LDAP module. * "ipaddr" attributes can now be cast to "integer" type attributes in an "update" section. * Move main thread queue to using atomic queues. This should help with contention in high load scenarios. * Add "recv_buff" setting to listeners. For more details, see sites-available/default. * The sqlippool module can now use attributes other than "Pool-Name" to assign IP pools. The "Pool-Name" attribute is still the default. * The "unpack" expansion can now unpack substrings. See mods-available/unpack for documentation and examples. * The preprocess module now does "ciscvo_vsa_hack" for Eltex-AVPair Fixes #2301. Vendors SHOULD NOT USE THAT KIND OF ATTRIBUTE. * Allow for -LDAP-UserDN. See mods-available/ldap for more information. * Add sanitizing of control list for moonshot. Fixes #2318. * Update rlm_sql_mysql to be compatible with MySQL 8 Fixes https://bugs.launchpad.net/bugs/1795310. * Allow logging of only Access-Accept or Access-Reject messages See radiusd.conf, "auth_accept" and "auth_reject". * Removed Connect-Rate comparison. It was unused and broken. * Add dictionary.infinera. * Use OpenSSL HMAC functions instead of local ones. * Some SQL modules can now use "auto_escape" to escape unsafe strings See mods-config/sql/main/mysql/queries.conf. * Add wispr2date conversion in mods-available/date. * Implement dictionary-based handling in rlm_python. Fixes #2334 See mods-available/python for details. * Add support for SKIP LOCKED in sqlippool. This can improve performance by an order of magnitude or more. See raddb/mods-config/sql/ippool/*/queries.conf Fixes #2383 * Allow PSK and certificates at the same time Except for TLS 1.3 which does not support that. * Update docker scripts. Fixes #2306 Patch from Matthew Newton. * Add crypt xlat. * MySQL connections can now skip verifying the server certificate. Fixes #2481. See mods-available/sql. * Add better mechanism to detect MariaDB (Old MySQL). * Add RFC 7532 "bang path" support for realms Fixes #2492. * Update dictionary.ukerna documentation. Fixes #2493. * Add support for systemd service and watchdogs Fixes #2499. * Check for openss/rand.h, and allow building without OpenSSL engine. Patch from Eneas U de Queiroz Fixes #2517. * The default PosgtreSQL queries now use "ON CONFLICT" to better deal with issues. This requires PostgreSQL 9.5 or later. Please use a recent version of PostgreSQL, or edit the default queries to remove "ON CONFLICT". BUG FIXES * The session-state list is no longer cleaned in the inner-tunnel. This lets the outer Access-Reject section access session-state. * Fix typo in lock initialization for TLS sockets Found by Sergio NNX. * Add check for crash when home server down Fixes #2233. * Add username key for postauth table. * Better libpcap checks, when the header files or libraries are missing. Fixes #2245. * Allow building with old versions of OpenSSL Fixes #2247. * Allow non-FreeRADIUS State attributes to be used with the "session-state" list. i.e. State length != 16. * Be more aggressive about cleaning up zombie children when running in debug mode. * Use LTDL_DEEPBIND, which fixes issues with Oracle libraries exporting LDAP API functions. * unlock files when asked to unlock them. * return error instead of asserting in map code. * Don't write 0 bytes to SSL. Fixes #2270. * Remove "expiry_time IS NULL" from allocate_update query. Fixes #2262. * Various dictionary cleanups and consistency checks Fixes #2281. * rlm_python has stronger thread locking to prevent reported issues. Performance may be affected. * Don't allow Message-Authenticator to overflow past the end of a large packet. * Fix crash in sqlippool when SQL server goes away Fixes #2300. * Typos in man pages. Patch from Nikolai Kondrashov Fixes #2303. * Fix crash with CoA packets/ Fixes #2304. * Fix crash in rlm_exec with CoA. Fixes #2328. * Print errors while parsing the log config, and don't quit when deprecated log settings are found. * Fix DHCP encoder xlat so that it can be used with a list of attributes. It previously only encoded the first member of the list, and now encodes all members. * The "expr" module now skips more whitespace. * Remove internal FreeRADIUS-Response-Delay attributes from attr_filter Access-Reject. * Don't send junk to redis when maximum args reached. * Small updates to IPv6 for accounting schema Fixes #2364. * Fix OpenDirectory integration in rlm_mschap. * Fix slow memory leak with dynamic clients. * Don't artificially truncate debug output for long strings. * Fix memory leak in EAP-PWD. * Fix crash in "hints" file with Fall-Through = yes. * Fix crash / timer issues with many CoA packets. * Fix attr_filter so that it does not treat vendor attributes of number 26 as Vendor-Specific. * Fix reconnect correctly in rlm_sql_mysql. * Fix rlm_cache to properly use Cache-TTL < 0 Fixes #2485. * Fix rare occurance of bad xlat expansion. * Check for rare race condition when a proxy reply arrives too late.- install license as %license instead of documentation- also fix ownership of /var/log/radius in systemd unit- update to 3.0.17 Feature Improvements * Add CURLOPT_CAINFO. Patch from Nicolas C #2167. * "stats home server" now supports "src IPADDR", to specify home server also by source IP. Fixes #2169. * Add Dockerfiles for a selection of common systems. * Increase number of permitted file descriptors, for systems with many home servers. * Add TLS-Client-Cert-X509v3-Extended-Key-Usage-OIDs Patch from Isaac Boukris. Fixes #2205. * Update main READMEs. Patches from Matthew Newton. * Added dictionary.mimosa. Bug Fixes * Don't call post-proxy twice when proxying to a virtual server. Matthew Newton, #2161. * Use "raw" string value for shared secrets and dynamic clients It now parses strings with backslashes and "special characters" correctly. Fixes #2168. * Fix RuntimeDirectory for RedHat, from Alan Buxey. * Relax checks in 'if' parser from Isaac Bourkis. * Minor cleanups for %{debug_attr:&request} from Isaac Boukris. * Be more aggressive about cleaning up cached certificate attributes, due to deficiencies in OpenSSL. Reported by Nicolas Reich. * Be more accepting when parsing IPv6 addresses. Bug noted by Klara Mall. * Fix double free in rlm_sql. Fixes #2180. * rlm_detail now writes empty Access-Accept packets. * rlm_python can now create tagged attributes. * Don't crash on duplicate realm + authhost / accthost * Allow partial certificate chain to trusted CA. Fixes #2162. * Treat SSL_read() returning zero as error. Fixes #2164. * detail writer now checks if the file was renamed or deleted. * Add User-Name to Access-Accept if EAP-Message exists, not Stripped-User-Name. * RedHat Systemd updates. Fixes #2184. * Use correct API for State variable in rlm_securid. * Remove broken radclient option "-i". * Fix "users" file (and hints, etc). So that it does not get confused about entry ordering with multiple $INCLUDEs. * Fix rlm_sql to expand the un-escaped string, not the raw string. * Link default and inner-tunnel only if they exist. Fixes #2206. * Don't use both IP_PKTINFO and IP_SENDSRCADDR. * Always install signal handler for SIGINT (needed by Docker). * Fix intermediate CA flow for OCSP. Fixes #2160 Intermediate certs which are not self-signed will now be checked. * sqlippool now returns "fail" if it fails IP allocation. * Fix rlm_yubikey to look for correct attribute in replay attack check.- update to 3.0.16 Feature improvements * rlm_python now supports multiple lists. From #2031. * Add trust router re-keying. From #2007. * Add support for Samba / AD LDAP schema. See doc/schemas/ldap/samba/README.txt and doc/schemas/ldap/samba/ * Add "tls_min_version" and "tls_max_version" to EAP module for Debian OpenSSL issues. * Better documentation for client certificates in PEAP and TTLS: it usually doesn't work. Fixes #2068. * Distinguish login failure from AD unavailable. Fixes #2069. * Update RH spec files. Fixes #2070. * Run Post-Proxy-Type if all home servers are dead. Fixes #2072. * Print offending IP addresses when EAP sessions come from two upstream home servers, and rate-limit the messages. * Minor packaging updates. * Better documentation for rlm_rest. * EAP-FAST now has it's own "cipher_list", so that it is easier to configure. * EAP-FAST now forcibly disables TLS1.2, until such time as we implement the new keying mechanism from TLS1.2. * Add documentation for allow_expired_crl. * Update Debian logrotation. #2093 and #2101. * DHCP relay can now drop responses. #2095. * rlm_sqlippool can now assign Delegated-IPv6-Prefix. It also now can assign any IPv4 or IPv6 address. Based on patches from maximumG. #2094. See raddb/mods-available/sqlippool for changes. * radeapclient can now use EAP-SIM-Ki to dynamically create the necessary triplets. * Explain why many LDAP connections are closed. Fixes #1969. * Debian build / package issues fixed by Matthew Newton. * dictionary.patton updates from Brice Schaffner. Fixes #2137. * Added scripts to build "inner-server.pem", and updated mods-config/inner-eap and certs/README to match. * Added provisions for using an external CA. See raddb/certs/ * Include dhcpclient binary in freeradius-dhcp debian packge. Bug fixes * Bind the lifetime of program name and python path to the module FR-AD-002 (redone) * Pass correct statement length into sqlite3_prepare[_v2] FR-AD-003 (redone) * Allow 100-Continue responses with additional headers in rlm_rest. * fix corner case where detail files were not being locked correctly. * Fix (SQL-Group == "%{...}") checks, and same for LDAP-Group. Fixes #1947 * Clean up exfile code. Which should help to avoid issues with reading / writing 100's of detail files. * Fix build for winbind. Patch from Alex Clouter. * Fix checkrad for Mikrotik. Patch from Muchael Ducharme. * Fix home server stats lookup. Patch from Phil Mayers. * Add libjson-c3 as an optional dependency. * Require LTB OpenLDAP on CentOS / Redhat, to avoid linking against NSS, which breaks the server. Fixes #2040. * rlm_python fixes. Fixes #2041 * Typos in "man" pages. Fixes #2045 * Expand "next" in %{%{...}:-%{...}}. Fixes #2048 * Don't add TLS attributes twice. Fixes #2050. * Fix memory allocation in rlm_rest. Fixes #2051. * Update trustrouter for new API. Fixes #2059. * Fix SQLite issues on FreeBSD. Fixes #2060 * Don't do debug logging of bad passwords. Fixes #2064. (bsc#1099802) * More graceful handling of "die" in rlm_perl. Fixes #2073. * Fix occasional crash when using cisco_accounting_username_bug = yes * EAP-FAST fixes from Isaac Boukris. [#2078], #2076, and #2082, #2126. * DHCP fixes, relay, #2092, add run-time check, #2028 * Decode multiple RADIUS packets at a time in highly loaded RadSec connections. Patch from Jan Tomasek. #2106. * TunnelPassword is not "single value" in LDAP schema. Fixes #2061. * sql log now opens the expanded filename, not the input one. This was a regression introduced in 3.0.15. * Remove unnecessary UNIQUE constrain in Oracle schemas. * Fix SSL thread and locking issues when modules also use SSL. Fixes #2125 and #2129. * Re-add dhcpclient "raw packet" changes. Patches from Nicolas Chaigne and Matthew Newton. Fixes #2155.- Fix permissions of radiusd.service (bnc#1053654)- bsc#1055679 - freeradius-server does not provide winbind/AD auth Added libwbclient-devel as buildrequires- update to 3.0.15 with security fixes for issues found via fuzzing by Guido Vranken (bsc#1049086) https://freeradius.org/security/fuzzer-2017.html * CVE-2017-10978: FR-GV-201 (v2,v3) Read / write overflow in make_secret() * CVE-2017-10983: FR-GV-206 (v2,v3) DHCP - Read overflow when decoding option 63 * CVE-2017-10984: FR-GV-301 (v3) Write overflow in data2vp_wimax() * CVE-2017-10985: FR-GV-302 (v3) Infinite loop and memory exhaustion with 'concat' attributes * CVE-2017-10986: FR-GV-303 (v3) DHCP - Infinite read in dhcp_attr2vp() * CVE-2017-10987: FR-GV-304 (v3) DHCP - Buffer over-read in fr_dhcp_decode_suboptions() * CVE-2017-10988: FR-GV-305 (v3) Decode 'signed' attributes correctly * FR-AD-002 (v3) String lifetime issues in rlm_python * FR-AD-003 (v3) Incorrect statement length passed into sqlite3_prepare- update to 3.0.14 (still FATE#322416) Feature improvements * Enforce TLS client certificate expiration on session resumption, and Session-Timeout. See CVE-2017-9148 (bnc#1041445) * Updated dictionary.cisco.vpn3000, dictionary.patton * Added dictionary.dellemc * Lowered the log output for failed PEAP sessions. * ALlow utc in rlm_date. * The internal OpenSSL session cache has been disabled. Please see mods-available/eap * Update detail reader documentation. * Make outgoing RadSec connections non-blocking. * Add SQL backing to Moonshot-*-TargetedId generation. Bug Fixes * radtest uses Cleartext-Password for EAP, not User-Password. * Update documentation for mods-enabled/ linking. * Enhanced checks for moonshot salt. * Allow session resumption for RadSec connections. * Update "huntgroups" file to note that port ranges are not supported * Fix OpenSSL permissions issues on default key files. * Certificates are not required when PSK is used. * Allow SubjectAltName as first extension in cert. * Fixed talloc issue with TLS session resumption. * "&Attr-26 := 0x01" now produces useful error messages. * Handle connection error in rlm_ldap_cacheable_groupobj. * Fix endian issues in DHCP. * Multiple minor fixes for Coverity complaints. * Handle unexpected regex. * Fix minor issues in dictionaries. * Fix typos and grammar. Patches from Alan Buxey. * Fix erroneous VP creation in rlm_preproces. * Fix MIB. Patch from Jeff Gehlbach. * Trust router updates from Alejandro Perez. * Allow build with LibreSSL. * Use correct packet for channel bindings. * Many fixes found by PVS-Studio. Thanks to PVS-Studio for giving us a test license. Please see the git commit history for more info. * Fix incorrect length check in EAP-PWD. This may be exploitable. * Stop rotating session database files (radutmp, radwtmp) since these are not logfiles. - freeradius-server-radiusd-logrotate.patch: updated- removed obsolete freeradius-server-fix-cert-bootstrap.patch because recent /etc/raddb/certs/bootstrap simply works - update to 3.0.13 (still FATE#322416) Feature improvements * Add dictionary.rfc7930. Note that we do not implement the RFC. * Added 'cipher_server_preference' to mods-available/eap Patch from #1797. * OpenSSL 1.1.0 compatibility fixes. * rlm_perl: radiusd::xlat to evaluate xlat string within perl script * Allow authentication retry in winbind. Patch from Herwin Weststrate. See raddb/mods-available/mschap. * Added "recv-coa" method to rlm_rest. It behaves the same as "authorize". * Document Trust Router tr_port option. Patch from Stefan Paetow. * Update elasticsearch/logstash examples so that they work with elastic stack v5. Patch from Matthew Newton. * Print information about packets, replies, and contents in the detail file reader. * Update abfab-tr policy. Pull request #1893 from Stefan Paetow. * Reject packets which contain User-Password and EAP-Message. * Add example for filtering Access-Challenge. See sites-enabled/default. * Pull symlink fixes from v4.0.x. Fixes #1859. * Add systemd reload. Not everything is reloaded, but some is. Fixes #1662. * Better documentation for listen "ipaddr". Fixes #1921 * Add dictionary.cnergee, updated dictionary.nomadix. * radclient no longer needs -x to print statistics with -s. Bug fixes * Minor typos. Fixes #1763 * Fix typo in RPM build. Closes #1767. * rlm_mschap check for password expiry only if password was correct. Fixes #1762. * Update debian build. * update rlm_counter "man" page. Fixes #1775. * Remove erroneous assert. Fixes #1778. * fix mschap password change test. Fixes #1792. * Cleanup config file on data remove. Fixes #1795. * passwd module returns "notfound" if not found. * Check for old OpenSSL, and don't build rlm_eap_fast if it necessary. Fixes #1803 * Cleanup memory better after ldap version query. Patch from Aleksey Katargin. * Rename lt_* functions to avoid linker issues with libtool. Fixes #1277 * Many miscellaneous fixes and typos. * Allow long strings in %{%{foo} bar:-%{baz} blah". Fixes #1866 * Fix filtering operators, along with more documentation and more tests for them. * Fix OpenSSL fixes. Fixes #1876. * Finish SQL select queries even when SELECT returns no rows. Fixes #1879. * Set Module-Failure-Message for more EAP errors. * Correct typo in dictionary.rfc5580. Fixes #1882 * Remove obselete systemd syslog.target. * Client-Port-Balance load-balancing now uses client port. * Radrelay examples fixed from Alex Clouter. * Update systemd target. Pull request #1896. * Trim starting whitespace in xlat strings. * Get MySQL result lengths using normal API. * suid down after fchown(). Fixes #1914. * Fix cases of comparing pointer to NUL character. Fixes #1915. * OpenSSL v1.1 fixes. Pull request #1921. * Better Handle v4/v6 host names. Pull request #1919. * Remove "Auth-Type = System" from docs and examples. * Don't crash on malformed %{home_server}. Fixes #1922 * fix erroneous use of talloc destructor in rlm_eap * Issue trigger modules.sql.fail. Fixes #1923 * Document python_path gotcha's. Fixes #1845 * dlopen() the specific version of Python. Fixes #1592- Don't require insserv if we use systemd - Remove require for unused fillup- Merge changes from SLE to openSUSE (FATE#322416): * freeradius-server-radclient-init-error-buffer.patch - make sure we initialize error buffer. bsc#911886: radclient error free() invalid pointer * freeradius-server-opensslversion.patch: remove OpenSSL version check and assume we know what we are doing. (bnc#1013311) * merge .changes file, mostly. - do not attempt to detect "vulnerable" OpenSSL versions. SUSE security fixes do not necessarily bump version numbers as does upstream OpenSSL (bnc#1021375) - do not generate certificates in %post. End-user needs to do this manually. - keep FreeTDS disabled on SLE12 - we never shipped it enabled - require OpenSSL 1.0+ - use pkgconfig(systemd) instead of plain systemd as BuildRequires - don't list manual pages as %doc- Remove --with-pic which is for static libs only. - Use SUSE RPM group names. Trim filler words from description. - Do not hide errors from groupadd/useradd.- Add upstream keyring - 2 new modules: rlm_sql_freetds and rlm_eap_fast- update to 3.0.12 - still fate#320481 The focus of this release is stability. * Feature improvements + Add support for =~ and !~ in update sections. See "man unlang" + Add dictionary.checkpoint. + Simultaneous-Use prints out more information. + Print WARNING in debug mode when packets may be truncated. + Added expansions %{home_server:state} and %{home_server_pool:state}, which show the state of the server / pool. + Mark rlm_sql_freetds as stable. + Make rlm_perl less fragile. Patch from Herwin Weststrate. + Allow extended attributes to have "encrypt=2" + Update dictionary.aruba. + Add support for EAP-FAST. This is an isolated feature which does not affect anything else. + Update OpenSSL vulnerability list. Use a version of OpenSSL released after September 20, 2016. + EAP certificate verification is now done when "verify" is enabled and "ocsp" is disabled. + New dhcpclient and rlm_rad_counter man pages. + Minor abfab and moonshot additions. + Pass CFLAGS through from environment in RPM builds. Allows more custom builds. + Build with Heimdal in addtion to libkrb5. * Bug Fixes + Use correct typedef for older versions of sqlite. + Update mssql schema to add priority + don't complain on /dev/urandom in ldap + fix == operator in update sections + Don't create DHCP strings with many trailing zeros. + Allow MS-CHAP change passwords instead of complaining on large buffer. + Allow assignment or equality operator on SQL. + Update aclocal tests for FreeBSD 10. + Remove occasional hang in rlm_linelog. + Copy VSAs to inner tunnel for TTLS and PEAP. Fixes #1544 + A few minor bugfixes caught in v3.1.x cleanup, and back-ported to v3.0.x. + do_not_respond again works in post-proxy + Allow realm "~^.*$" {} and User-Name with no realm. + Fix leak when creating unknown attributes + Fix Debian / logrotate. + Make OpenSSL error functions thread-safe. + Fix crash with rlm_sql and updating SQL-User-Name. + Debian build updates. + Allow regular expression comparisons in radclient. + Fix memory leak on unknown attributes in detail file reader. + Update example paths in "man" pages when installing them + Build fixes for rlm_mschap. Fixes #1489. + BSD build fixes. Patch from issue #1583. + Be more careful about /lib/ when building. Fixes #1585. + Correct ifdef placement error. Fixes #1572. + Allow for more files in internal "exfile" API So it will be possible to open more than 64 "detail" files at the same time. + Remove support for statically built EAP modules. Fixes #1591. + Many fixes to rlm_python from Guillaume Pannatier. + Use correct week adjustment in SQLcounter. Fixes #1608 + Minor fixes to allow compilation without DHCP, VMPS, or TCP. + Fix checks for module / config file change on HUP. + Compile regex comparisons when sent via "debug condition". + Update filenames in documentation and examples. + Don't crash if SQL connection becomes unavailable. + Disallow originate_coa when proxy_requests = no. + Free rad_perlconf_hv in correct perl context. + Multiple fixes for Debian builds. #1510, among others. + Set OpenSSL FIPS compatibility flag when necessary. + Pulled fixes for the build system over from other branches. + Fix OCSP for RADIUS over TLS. + Fix skip_if_ocsp_ok behavior. + Better fixes for systems without closefrom() but which have /proc. + Minor build fixes back-ported from v4.0.x. + build --whout-ascend-binary. Fixes #1761. + Be more aggressive about not opening new connections in debug mode after CTRL-C. Address #1604.- use %{with} macro for conditional inclusions instead of hardcoding version numbers - improved package descriptions - fixed builds on SLE12 and SLE11SP4- removed installation of experimental module rlm_sqlhpwippool.so - update to 3.0.11 (fate#320481, bsc#961479, CVE-2015-8763, bsc#935573, CVE-2015-4680) * Changes of version 3.0.11 + Feature improvements - "unlang" comparisons of IP addresses to IP prefixes are now detected, and types automatically cast. - Allow shorthand form of ipv4prefix values e.g. 127/8. - Add "auto_chain" to raddb/mods-available/eap, tls subsection. This allows the disabling of OpenSSL auto-chaining of certificates. Which might be wrong. - Added printing of coa and disconnect stats (radmin). - radclient defaults to expecting Access-Accept responses to Status-Server. - Updated dictionary.lancom, dictionary.starent. - Portability fixes for Solaris. - More errors from ntlm_auth gets passed to MS-CHAP. - Update abfab-tr-idp virtual server. - Added "filter_password" in policy.d/filter. This removes embedded zero bytes in User-Password, for compatibility with broken clients. - The server now issues a WARNING message if duplicate configuration items are found. - TLS can skip the "verify" section if OCSP returns OK. See raddb/mods-available/eap, "skip_if_ocsp_ok". - Set TLS-OCSP-Cert-Valid = yes / no / skipped, which is the result from the OCSP check. - Interoperate with AD and "LmCompatibiltyLevel = 5", by always setting WBC_MSV1_0_ALLOW_MSVCHAPV2 for native winbind in rlm_mschap. - TTLS and PEAP now require "virtual_server" to be a real server. - Print WARNING when TTLS or PEAP identities are spoofed or not properly anonymized. See RFC 7542 for requirements. - Various rlm_python fixes from Herwin Weststrate. - Allow setting Response-Packet-Type in "Post-Proxy-Type Fail", which is useful when the home server does not respond. - elasticsearch updates from Matthew Newton + Bug Fixes - Fix issue where field nas_type would not be accessible via the %{client:} xlat, for clients loaded from SQL. - Fix compatiblity issues with OpenSSL 1.0.2. Ignore calls to msg_callback with 'pseudo' content types. - Data type "ipv4prefix" is parsed correctly. - Use correct talloc context in rlm_exec. Fixes #1338. - Complain in unlang if "else" is used with no previous "if" or "elsif". - Send accounting status packets to the accounting port. Fixes #1364. - Print out CFLAGS when doing "radiusd -Xxv" - Fixed bug with coa/acct stats value #1339. Based on patch from Jorge Pereira. - Fixes for LEAP proxying. Don't use LEAP! - Fix issue with "directory already exists" seen when doing "make install". - Fixed bug with radmin related to the option "stats detail " - Complain if the detail file reader does not have permission to read the "detail.work" file. Fixes #1398 - Fixed SoH. Attributes were not being copied to the virtual server. - Used a wrong list to global statistics in "stats". - Create EAP-PWD identity correctly. Prevents segfaults. - Dynamically validate authentication types for PEAP and EAP-MSCHAPv2. - Fix includes in installed headers. - OpenSSL 1.0.1f and 1.0.1g do NOT calculate TLS 1.2 keys correctly. See raddb/mods-available/eap, "disable_tlsv1_2" - Allow password change to work for MS-CHAP. This requires 'r=0', because password changes are not retries. - Fix home server fail-over for home servers using TCP and/or RadSec. - Special characters in expanded regexes are now escaped e.g. User-Name containing '.', and comparing /%{User-Name}/, the '.' will now be escaped. See src/tests/keywords/regex-escape. - Use correct authentication vector when sending Access-Reject replies for RadSec. - Set FreeRADIUS-Proxied-To in TTLS again. You should use the "inner-tunnel" virtual server, instead of relying on this attribute. - Fix debugging constants in rlm_perl. Patch from Herwin Weststrate. - Add samba-dev / samba4-dev to debian builds so that rlm_mschap can automatically use the new winbind API. - Automatically skip zero-length attributes when sending packets, instead of erroring out.- fix bsc#951404 * Rebuild of freeradius-server package fails * fix source url - ftp://ftp.freeradius.org/pub/freeradius/ + ftp://ftp.freeradius.org/pub/freeradius/old/- update to 3.0.10 * Changes of version 3.0.10 + Feature improvements - Do more optimization of unlang policies. This makes run-time a bit faster. - Re-name most of the functions in src/lib. Third-party module authors will have to do the same. - More documentation on contributing and how to write modules. - Update radiusd.service for systemd. - Open IPv6 proxy socket if the server is listening on IPV6 auth / acct / coa packets. - Create debian packages for DHCP. Fixes #1125. - Add more tests for "update" section parsing. - Update "man" pages. - Update attributes for Alcatel 7750 - Add dictionary for Boingo Wi-Fi - Add support for DHCP lease queries. See raddb/sites-available/dhcp - On HUP, check all modules for config files which have changed. And only re-load those modules. - Allow FreeRADIUS-Response-Delay(-USec) to be set for RADIUS packets. Patch from Herwin Weststrate. - Documentation fixes from Alan Buxey and Matthew Newton. - Update "logrotate" script. - Added more RFCs to doc/rfc for new standards implemented by FreeRADIUS. - Don't crash when doing "radmin -e "help hup". Patch from Matthew Newton. - The dictionary parser now does more sanity checks, which prevents run-time problems with invalid attributes. - Update debian packages. Patches from Christopher Hoskin. - Many other debian packaging fixes from Matthew Netwon and Herwin Weststrate. - Add "session-state" to Perl. Patch from Herwin Weststrate. + Bug Fixes - Fix rlm_files so that there are no collisions when loading 10's of 1000's of users. - Fix radclient to use our internal v4/v6 parsing functions. v6 addresses with ports now work correctly. - Fix sending/receiving packet messages to wrap v6 addresses in square brackets '[]'. - Check for sasl/sasl.h when building rlm_ldap, and disable SASL functionality if unavailable. - Fix issue which caused a non \0 terminated buffer to be assigned to attributes if the value being assigned contained an invalid escape sequence. - Fix deadlock when reconnecting connections in the connection pool. - Fix potential overrun in functions that used fr_utf8_char with a non nul terminated buffer. - Fix decoding issue for Tunnel-Password type attributes which were very long. Found by Denis Andzakovic. - Fix radclient issue with TCP sockets on FreeBSD. - The server now creates ${run_dir} and ${logdir} directories in daemon mode, when running as "root". - Handle tags when using maps. Fixes #1191. - Fix crash when CoA packets time out. - Fix parse error in rediswho - Fix regex support in SQL radcheck the "users" file and radsniff. - Register listen xlat earlier, so that it's available when the virtual servers are being parsed. - Parse Ascend-Data-Filter when given as "0x..." - Print Ascend-Data-Filter correctly. Add test cases for both. - Allow old-style clients again. They will be disallowed for 3.1.0 and following. - Complain instead of crash when "else" and "elsif" are in the wrong place. - Clean up memory more aggressively. This lowers the maximum memory used, most typically for TLS based EAP methods. - Prevent the server from unlinking the control socket of an already running instance. - Fallback to using the configured OCSP URL if one exists, and no URL is provided in the certificate. - Return CoA-NAK if proxying CoA fails. Based on patch from Jorge Pereira. - Lower peak memory usage by decreasing size of internal memory pools. - The control socket is now left in place if a second copy of the server is accidentally started. - Allow virtual attributes in "switch", "case", etc. Fixes [#1240] and #1265. - Many spell check / typo fixes in comments and example configuration files. - Better handle multiple DHCP listeners. - Don't print secrets for old-style realms. Fixes #1267. - Don't fall through in empty "case" statements. Fixes #1274. - Update EAP-TTLS so that MPPE keys are correctly calculated with TLSv1.2. - Always delete MS-MPPE-* from the TTLS inner tunnel. This allows TTLS / EAP-MSCHAPv2 to work. Fixes #1206. - Fix off by one error that caused some MSCHAP-Error messages to be sent without the password change version (V=3) and the textual message component (M=). - Always include C= V= and M= in MSCHAPv2 errors. RFC 2759 does not say that any of these fields are optional, and not including V= caused errors with wpa_supplicant. - Do not include M= in MSCHAPv1 errors. It's not supported.- Fix boo#912714: freeradius can't use ntlm_auth * Create winbind group * Add radiusd to winbind group- Remove gpg signature file * The gpg signature checking is broken and doesn't work- Fix bsc#935573: Insufficent CRL application for intermediate certificates * CVE-2015-4680 * freeradius-server-CVE-2015-4680.patch based on https://github.com/FreeRADIUS/freeradius-server/commit/a03814af310bb3bee74ea012546d99c48b0ea5c3- update to 3.0.9 * Changes of version 3.0.9 + Feature improvements - Make "pool" configurations more consistent, and update documentation for them. - Move connection pool logic to "most recently started", instead of MRU. This should help with pool stability. - More VSAs for 3GPP2 - Added examples of multi-value attributes to rlm_perl. - LDAP-Group and SQL-Group attributes are now dynamically allocated. - Only the "sql" module registers SQL-Group. Other instances register "instance-name-SQL-Group", similarly to "ldap". - Unknown attributes are now complained about more often when used in unlang statements. e.g. if (Foo-Bar == 3) used to be a string to string comparison. It is now a parse error. - Rename RLM_COMPONENT_* to MOD_* in the code. This makes many things easier. - Move to C99 initializers for modules. - Load modules in raddb/mods-enabled. This allows attributes like "LDAP-Group" to be used in the "files" module, without explicit ordering or listing in "instantiate". - Added 'bootstrap' section to modules. Third-party modules will need to be updated. - When adding clients from a DB, add them to a virtual server if that virtual server has a "listen" section. Otherwise, add the clients to the global list. - When reading dynamic clients from a file, don't expire them if the underlying file is unchanged. - Allow the server to originate CoA requests from the post-auth stage. - The server creates ${run_dir} and ${logdir} in daemon mode, if they do not already exist. - Add dictionary for Wi-Fi Alliance Hotspot 2.0. The server now supports all mandatory and optional attributes for this specification. - HUP now re-loads the configuration only if the files have changed. If all files are unchanged, HUP re-opens the log file, and does nothing else. - Much better debug messages for EAP-TLS, including which attributes are cached, and when they are retrieved. - Increase default max_requests to 16384. Memory is cheap now. - Added "stats memory" commands to radmin. Debug build only. - Aptilo controller dictionary updates. - SQL modules now use Acct-Unique-Session-Id everywhere. - The redis modules are now stable. - The LDAP module now supports SASL "interactive bind" method. This allows Kerberos based administrator and user binds. - DHCP code is now in libfreeradius-dhcp. - More DHCP encoding / decoding unit tests. - rlm_replicate can now be listed in the "accounting" section. - Better sqlite debugging output. - Remove "required" option from many sql_ippool directives. - Set default CA "basic constraints" to "critical". Fixes #1073 - Updates to help / man pages from Jorge Pereira. - Added more tests. + Bug Fixes - Be more careful about unused config item warnings when using -Xx. - Move more defines to be auto-generated. - Allow virtual servers in proxy fallback. - Allow %{module:} to work. - Don't crash in RadSec. Closes #980. - Return better errors when a unix group / user is not found. - Re-enable detail module "locking" parameter. - Don't crash when logging replies from Status-Server packets. - The couchbase module now uses "update" instead of "map", for consistent with the rest of the server. See raddb/mods-available/couchbase - Don't require NT-Password for MS-CHAP password changes. - Be a bit more careful about decrypting MS-CHAP-MPPE-Key attributes. Closes #1013. There is no perfect fix, tho. - Fix security issues with EAP-PWD. See http://freeradius.org/security.html#eap-pwd-2015 - Fix dynamic clients read from SQL in non-debug mode - MS-CHAP now allows retries (i.e. password change) when passwords are expired. - Allow "user=radiusd" when the server is already user "radiusd" - suid up/down works on non-Linux systems. This means that the control socket should have the correct ownership. - Fix issue which caused the server to sometimes have problems when a home server was marked zombie. - Fix format.pl because Perl is now more picky. - Fix proxy to Packet-Dst-IP-Address, so that it uses the correct destination port. - Fix corner case with cursor functions and removal. - OpenDirectory fixes and documentation. - Fix leaks in rlm_redis. - RFC 6929 "evs" attributes are now encoded / decoded properly. - Fix talloc pool leaks when receiving malformed or retransmitted Accounting/CoA requests. - Printed attributes again use double quotes instead of single quotes. - Set X509_V_FLAG_CRL_CHECK_ALL, and add "check_all_crl" to eap.conf. Fixes oCert CVE-2015-4680. - rlm_expr now errors out correctly on malformed attribute references instead of triggering an assert. - Make "break" work in "foreach" loops - Allow dynamic expansions to work again in the "hints" file. - Correct minor typos in comments and examples from Alan Buxy. - Re-urlencode the path portion of ldapi:// urls before passing it to ldap_initialise. - freeradius-server-rlm_sql_unixodbc-configure.patch removes hard-coded directory in configure script of rlm_sql_unixodbc - install new module rlm_sqlhpwippool.so- minor adjustments/cleanup of spec and changes- update to 3.0.8 * Changes of version 3.0.8 + Feature improvements - Allow syslog_severity to be set in rlm_linelog. - Allow defaults to be set for bulk clients in LDAP and couchbase. - Updates to dhcpclient. Patches from Nicolas C. - rlm_mschap now supports direct connections to winbind, which is faster than ntlm_auth. See raddb/mods-available/mschap. Patch from Matthew Newton. - Recommend /dev/urandom for TLS randomness, instead of ${certdir}/random - Allow TLSv1 to be disabled via "disable_tlsv1" in tls{}. - Allow Expanded EAP types where vendor is 0 (IETF) and type is normal EAP type. Supplicants sending Expanded EAP types like this are broken. - Add support for server side sort controls when searching for user objects in rlm_ldap. + Bug Fixes - Don't complain about "authorize" in "server {}" blocks, but only if there's no "server" block. - Fix cosmetic issue where debug from the first packet read by a detail reader thread would be emited during config parsing. - Fix ASSERT on truncated detail packets. - Don't use main server log functions from within panic_action, as in the case of syslog this would cause deadlocks if the fault was triggered from within a malloc. - Fix issue in "switch" when "correct_escapes = false". Fixes #911. - Fix sqlcounter configuration to use "%%b" instead of "%b", otherwise the new syntax validation will fail. - Allow forward references in configuration items. Modules aren't always loaded in a sane order. - Fix more escaping issues. Closes #912. - Decode MAC addresses correctly for VMPS. - Fix memory leak with TLS connections. - Fix state machine threading issues for conflicting packets. - Fix copy_request_to_tunnel issues for tagged attributes. - Allow "ok" to over-ride "updated" inside of Auth-Type sections. - Update state machine so that post-proxy is run though child threads for performance, instead of blocking the main thread. - Allow "netmask" to work again in client definitions. - Relax restrictions on SQL group queries. - track outgoing proxy sockets and clean them up more aggressively. - track proxy statistics, including CoA and Disconnect. - If radmin has a connection failure when running a command, it re-connects and runs the command again. - mark home servers "unknown" less aggressively. - Fix potential SEGV in PostgreSQL driver on error. - Fix issue where fields like nas_type would not be accessible via the %{client:} xlat, for dynamic clients. - Set default busy_timeout (of 200ms) in the sqlite driver, so writes don't cause selects to fail in multithreaded mode. This is user configurable, and may be increased if required. - Convert Password-With-Header attributes to binary (from hex or base64), in the authorize method of rlm_pap. - Fix invalid assert in state.c, that could cause abort in post-auth. - Fix double free when -m flag is used, and connection pools are referenced by multiple modules. - RADIUS over TLS accounting uses the same port as authentication. - Regularized return codes from radmin commands. - Fix RHEL spec file so it works correctly for Centos7 which uses systemd, and didn't like the SystemV init script. - radwho and radlast now have a -D option to load dictionaries - DHCP packets are no longer checked for duplicates. - Don't crash in sql module group comparisons in corner case. - Calculate MPPE keys correctly when using TLS 1.2. - Fix load-balance sections. Closes #945 - TLS certificates are available again in the post-auth section. They are not available for session resumption. - radclient encodes CHAP-Password properly when using -c Closes #955. - Fix issue in rlm_cache_memcached driver that caused variable length values to be truncated. - Fix track functionality in detail reader, so it no longer fails with a "Failed marking detail request as done: Bad file descriptor" error. - Actually add the peer identity (as User-Name) to the inner tunnel in EAP-PWD requests, so it's available for lookups. - Fixes to PostgreSQL queries. Patches from Santiago Gimeno. - new set of consolidated patch files: deleted: * freeradius-server-2.1.1-logrotate_su.patch * freeradius-server-2.1.6-rcradiusd.patch * freeradius-server-initscript-pidfile.patch * freeradius-server-radius-reload-logrotate.patch * freeradius-server-var_run.patch added: * freeradius-server-radiusd-logrotate.patch * freeradius-server-rcradiusd.patch * freeradius-server-tmpfiles.patch- Do not disable as-needed build - Remove the with_sysconfig switch and just stick with versions- update to 3.0.6 - fixes a segmentation fault in PEAP module (bnc#912588) Feature improvements: * radmin / raddebug conditional errors are printed to the output, instead of being discarded. * raddebug will exit if condition set with -c was invalid. * radmin auto-reconnects if the connection to the server has gone away. * rlm_cache now has submodule support. See raddb/mods-available/cache * New memcached driver for rlm_cache. See raddb/mods-available/cache * Add support for &Attribute-Name[*] in conditions. See "man unlang" for details. * Add &Attribute-Name[n] which gets the last instance of an attribute e.g. Module-Failure-Message[n]. * Allow for redundant string expansions. See the "instantiate" section of radiusd.conf. * When checking IP addresses in conditions, make the right side be parsed as an IP prefix. * Support JIT compilation of compiled regular expressions when built with libpcre. * Support named capture groups with "%{regex:}" when built with libpcre. * Increase regular expression capture groups from 8 to 32. * Emit error markers for badly formed regular expressions. * Allow 'm' flag to enable multiline mode in regular expressions. * Support limited implicit attribute conversion in update sections. * Support casting between IPv6 and IPv4 where the IPv6 address has the v4/v6 mapping prefix (::ffff:).- Drop .keyring and .sig file: freeradius-server still uses MD5 signatures, which are no longer validated/accepted by GPG 2.1.- update to 3.0.5 Some of the new features: * Allow LDAP to specify arbitrary attributes for dynamic clients. * Allow one level of backslashes (finally). See radiusd.conf, "correct_escapes" setting. * When supported by OpenSSL, allow TLS 1.1 and TLS 1.2 in EAP methods. * Allow multiple new connections to be spawned simultaneously in the connection pool, to cope with spikes in traffic. * Use kqueue on systems which support it. This allows for better scaling when using many sockets. * Home server "response_window" can now take fractions of a second. See proxy.conf. * radmin now supports "show module status", as thee counterpart to "set module status" * "ipaddr" will now use v6 if no v4 address is present. You should use "ipv4addr" or "ipv6addr" to force v4/v6 addresses. * "client" sections will allow "ipaddr = 192.192.0/24". The old "netmask" is still accepted, but the new format is preferred. * Allow custom HTTP headers to be set for rlm_rest requests using control:REST-HTTP-Header (attributes consumed after use). * Extend format of %{rest:} expansion to allow HTTP method and POST data to be specified and urlquoting. * Add support for aliases in rlm_ldap. * Add support for connection pool sharing to all modules that use the connection pool (pool = ). * "tls" sections now have a "psk_query" configuration item, for dynamic queries to discover a key from a PSK identity. * Preliminary support for EAP channel bindings. * Foundational work for dynamic home servers. They do not yet work, but this is now only a matter of updating the "realm" module in a future release. * Support &attr[*] syntax to copy all instances of an attribute when used with the += operator in an update section. May be qualified with a tag. * The logintime and expiration modules can now be listed in the post-auth section. This makes some configurations simpler. * rlm_sqlippool is now IPV6 capable. Set "ipv6 = yes" to get Framed-IPv6-Prefix returned. The SQL queries have NOT been updated. Please submit patches. and numerous; bugfixes - remove gpg-offline - create /run/radiusd after install - drop freeradius-server-opensslversion.patch (upstream)- freeradius-server-opensslversion.patch: do not check the minor version of openssl, minor versions are supposed to be compatible. bnc#906682sheep14 16708474683.0.21-150200.3.12.13.0.21-150200.3.12.1freeradiuslibfreeradius-dhcp.solibfreeradius-eap.solibfreeradius-radius.solibfreeradius-server.sofreeradius-server-libsCOPYRIGHTLICENSE/usr/lib64//usr/lib64/freeradius//usr/share/licenses//usr/share/licenses/freeradius-server-libs/-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:27107/SUSE_SLE-15-SP2_Update/ea436a6cecae00bf250af9f8b03f03e5-freeradius-server.SUSE_SLE-15-SP2_Updatedrpmxz5x86_64-suse-linuxdirectoryELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=dfebd52e26ee16dfcf96b38fd2eedc156c754d87, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=28da93e58ecb1bf7c49512513aa21fd4a9251267, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=3fd06dad31d0bf73d33ccb616cd47853aea5b9fa, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=e13df6db69b39773c6904d5b451c463dbea17576, strippedASCII text  PRRRRRPRRRRRPRRRRR RRRRRR R RR R RRPR RRRRRRR RۀzQ:utf-8b1d87a85cfba63ed835700b6c90b16bf3197962ffe134e8ec59881974f961174? 7zXZ !t/H4]"k%(fm?1 1N8HFHST3 ԸD!KT-^;Eo5<$PiM6剡`e&o| )g&'V_뱚h!Ol;qVELCڧkS]S߸uξOp{ZoITE}|$u(:LK鲘fvɌ1xE1J T}:du6dDGEohԤ;g}'o`1% ƚ5%T@'<5jQ|K>g: Wc5﹦%8ۼL-_?ew8<>,o {0CVk|9@f'+`my,z|fuǚG7,'Rri|4G!c;~;c& (QCTkP@xqCW򲃮'AјHbYt]BO7-C@Pq娰fJ5rPC,kP7~Q0,( JhUs3 $Kgi6C2 ,zIG~x VO*؅0s-8E@ke)2;&j\Z(BY)-[ }NWIpb`TH^\t(^})=`t E 3.T ]`G`#O7q "a4n- Ò=N~YghE"̺JvK3{C5)v*5lƹSn< лJ[˭mTr < br5^C0K'OSO>d񓯾GdE#ID /d(=#WKBNeQg}b\;DB)SG?D iBơ=|hgMzG84f:U+Ct?QH["i l?]K>+1.{P.Szm>#B%N"W'ߢqf4+PmCrHLf+M?ݙ?zr3y/dQ2K9%SZ7ny;6rZ/tɜB'BjMF.)ѼfK?O폷YٚJNA}O)$0ʗ(8짷#1~4Stmj_}26*s?1U3Q麕Mm~ZN&qPhԅKvÚE@HДF_5-i׈)(EzYSÒcFR͆ MdL7X@7Rrpne1FY|7,Kn! V.vT7v}ATgMrQ.Ač?UFuPV'Caކx ߷8&?hyEpb仚cSWuQ\Q_@f"nS؅t1JҳY9\ARG ꙀOoBm@4HEbE‚uvpg2xTXtW gbsen Ctŕ+uhHa(Bz1m[ҒrQ0kk>.#ybR2Zȓi̲#έlaB ŸQeb u~KS6sY n/~s?J% 8Sz|$2۟t|.աNCdHvc=)f^%Ae [$SDP2e y~كo҅lʬ%5]pf=~{<̷[/ܜ}9u*+0F}gL'ꞫA 0)Bu9ύ' Q)TnCvaGmHg- U2@֯ClPޫ=P4[.sq/?'HNbI6>ʭ?#xMJZhC>3+ 7Sp`{Łqlk.JW5c CzU ;L^f.AT Ɏ_%ᦅ2H?hTT=ޢ)Ax#|:#:^&rKKN%L(z:X!,U[$O$gdx-76܋ 7B^c*WǛABM*/TUүvLMe%sQ Py3B=YE8vFE< ' Fp,1πAX]ZE(&a51Yʀ> &2p 86COM'hx:|/8ڂ:IZHU̖-%ɚڂ7/x (`{_Tj vP}ڿ_*2bIh}vplE| [.^Fd! Ah<kf繳^o0W +-iObZ6,8IjtBP.ED4&t~E{oVN4{L&5+,B NN$R D6z~#"|"VػKI", 9>d+؉`<[j=@.nfC_Ix< ;JŮe̲zңؙ.ZRAfu"g9 iV]GIS,t&3v7`Ԑ5?6ۑ'nS\G1èv]=Y_=`{61ۢ)q).e^v *Ru(&Edz!?:R7)n/R9Y)ls1b̖dzEml /8X(n:-_cZܞ.)/wQl^|Bj[?3aM;M[}E WQ 棯f΅4|uMEy7W!|O2|pͼӾ뵾 ǽsSh-Lȶ@pq ΨѴd\~NfTdv7(AyLwE?u<ݠk[Iq2IוW>3PLhxZu~@q?#jtؓzZ%^ペ9Ge\*CuՕ3JL=?ۮD)$40\Swg}OQbetags4eЃd N_ukшWH.GFa>YO1zқPz;>[ ; \g$Q XM<Sռpm8 K!+f{'8YhⰎ& v ܥ\.Zdpl8} ]5JD=#Ans@: R9b`/{` uU%L\ W*+M~,qܵaI{±s кbX IḲ>JYK('0= Sww> #N5$1) b87%e\>p-ZkWN>W'/($ӓ.Ku-ߡr;Sp™c.1ss +NWe멋g֦;UKbp[= SީmPu"_9,) aqAfnH6 &ׯϧ- Ԡ7DHn4!`GmAivr%:',uCnxe{HT׃C$68΃௰V~7kv-+\ R!t}owZ gK:}E|$ n%.= r'Q^Cl`}AD޽0ghK?X]Mށ@vJD`X=8e=͊¯[a 5%Ӣ5GR+ӵHO_*[#(@Z &)?{VR4\q3ܝMuF23[?:zfFoa8V7,=L-@׌TOB {=bӰd4] 鳺y [Zsoۈu Ю$)ah (@*q8&a@Ez/M-k,yiA]aGlӯn>VAxI=ߍMw0 u}lXh>p^av^ #x/1X7?!?my_lf8X5uTeD7WA|=W~b:_: Si7*| B a^@礆H74庹&&H1\wp3u" 1Dº]8̅?jrJ=I}ᱩwؚĀ5ݙ"*^;sx֭-_Go{ M(&qXWo#Eg1=#Ѻ"#hlcZ22=|(:>!v4~+Tr pTmzf,n t %JSƣ>xQJViN0)䴌e9bܿx+]4:-bs$ѵZ9`SD-byβ?ԟ+Ύ0ɸx,h`^[K  WB0;v;onA_NY퀲i(YZwJTT'^#y`:W[JMjߊ=hn% Gr8q^Ie79ڝnK.3Y?8rt-b(\4 .W]e# 1F[Q{?S fM(u4bF)|DCȪ?_qiTsP#,92#c3AA:H}]2T  -%dTuNфxS"FD'kZ:!HOͥ,C^H2x:CW 6^Awo22Tz[)А϶ j}x?uS#FrB_HU$y,.E0uPMIJa&F]>ޔc^fI2k^U30:#p;ڤ%MzmNJɲ[>LfnT<~`FLiV 0S6ɼ^/kߦI)+n,+ wM: IR4`5ڻ11xaW] ȇ/v-k@ 'hәH@aݥHߒ C-" ^eĚ[+ދR57+DhDcA; >Lr0*jWnU:܃I0 ԫ1+c SUY)kF9Hp&a7z֫5r5b=6\ph}y $,h[Cw =LuH}J<29me݊`\85g 4 lGvV> %lc?<7}hel&g .!#`礩IJq rljҴ0\jr.;E՗|XZ˵Za'!.A~d'D-JG tF. R?|IX}g6~UƤRSg#0"ZضC] ׺C}g Đ@nv٩I1xuoC&VV1{_uUhIG4GٽTG R3 &FDnaնGEU؇P&te&8-X§&c%@?= 4vTUwT ROP!o$)Vu0clú088(r#Xj[*}swt %<o qfT {i\Vڶ/) vRe ZHЮ/N]tU lO_9#Vr2n =WU֕7YIöȧO,p;F\Cjŗt)"%|sɇ} 3$ *7ek2&=^?%;%r\iz6ͳ~3MV?]Oq~Z/pœ`{ [ [N6"vQ˳#|X]$/C=NL`Fx`8@e;zcd ,f VU )\E^I̮vkJmA u"LW.: Aj K|OA!Q%iUm^,?<4UG :8/K8LˬU^,2eÄAiI.6kBp&W5Nlp$ :sa?6‘q %jw\~T){ت\UKyhP~?zKP=hcc x EOCFy-Apbŝb h!: zf}oMTd̜,/o! דOzEks94^/"H 0ӎh}ۤ(jAST>~Ff퍹9NaJ2݇ p"cQX,xkB_E5s̉oLH GkwP39ѭ.qƢT9W CKRH |КNo9-uj"`ə廉%TnEH,܁H(I2$ fJ$M˷V(rX=1 R{?7|nK^e9fh7 BhjɘAXǨI`RkBvϲ_ !ev1]=|:ʇ+[ga/)Í7S~+AlU 1 XnZS\G̸ֽQo>?v,㴬 #(*I~HټyTYC5ǹ3 mk/b] )I#ucQx,?Q/skM,oQ :`- 3>atvn8;%>yFVJJUp"oLmL)nR/(Z{K4 9 XH~ ^5 Dh) b;#7:S+q 3n=rXlCyL'y zZ<ۮs3cc˵fXq%O5F}Y1Š5ر9Ѕ볚MMw-t#L}Uny?!sbRwP'y4HF,f*2jp!ӡ!&8DdAr۱o)&y(mEP|Cn9bcPG5⏅͆*ݵx.CC2'O#s3U෈xMvzdvU|Fu> D#<_n2O,uͿy_\@ w%}k:w!bJV%BUF1.'e7ZF s[_}B+wa\h ayM&Yv[ToA<[%-9l%gkp ߼XrY;"YT! tEwzTu_A ^I~mxsOMU%ޕ/39aU(:o6MYil4`#̋aQ3B/m}֚CEIńWϙyAY|c1Md6μ%%v; t j:3u$}ud+OqT!? $m=x@iڟF4Jk)^Fi|.K˙8qlYjp%Ɨds#ĸr ހIwaj\<]rw?I7yzg'іKOmzդn/I.a9hzP48 31fN=dbSԕ(nt:_0딕4b=R}&oX!^ hM_W>;)J0YQ~0ԃ=5L$"r=]ӡYn?@B ph]Qq^-儏(8 D_|rY.326X}\x_{{|@F(0Φٰ-vиHT;? _gAK-+NmߖÎ^ģos˸QUKM7N}8EW3AO0ŷ>t~]Uyh9"WΥ1)ɑj?q}0 &vۘΛ_?1%@0nc9|7d$K$Hxl $Ҍ9ʂcy9$d6g;s0rL[=ҹȁ{4dpH|\EFǕZmNf@=v,X1[PȪWQ_yy)-%!1ilfLOϻ- NvCnIs"(T_W/42S-faEy\ CݷpzC2w h+Α ( fKlvOEj!//(Hr0o Z௮.:j#ڦ I_ i˵q1!pA@JD|;ul>H% `0&A{ 9X,њI@Cؖ=M]q,'BF̢K^py*f?okr3 d̡s d,ѝo1>Pr#_xUwQʿHi;6^;87=> _8+uNUN+xe#:+а/6Q~{HGZ_LQx]*t&FɻCSav$^߷SD=R(Ac1*e4[WGKڙt^ 1G/:+.=#|<,ۓ4)xP%G1BZ)>;n am/p)Ez&;o҃rYg̿KGwIX]l]8%4U81|ɒ'C=M^ļtPAqܓY ?DMb_9rddߢP$X6[Qt{>`P1B6Q'7N9>cX ۖ_\eM"-\AI{q2TP )zdxghuN!KH3꼩q/{D\A8lրqw[7^Ǜ%oJxtrRreg e(jD?/Ǒ̳auPQuHTL(7s@{5?a  [ [NۨC4 ryB2@1FyFUP%uQ¦ CbX3^}#[ɱitshJd0l6B^7HKrCIW¡ƫ(JnX5 ZOo`O1 w?:L/7,/fE Vqg9" ~t_EX刢A_lFs˹̿j|$-ǥ < a&Ͽ];=逴LΚ$:g.2.4lUT,9g d(%dhR}xFl}? ƟV·6u=!ٮ7SaQ1' ˗!.sNoG<'w@xix4o`ڃuf&Ecv$2󼾚y;g=.~te>4)uFe 3Q^O, @\@ʰwQg~eHv5tN[#UHmgx/D.Ts`m΂<qZݸ` qV?4oBX dp$,D@UP~O'?t -7fXsy ' qX7"f8LKat/,V85BgE5Y?@$q! rȓ'.տT۷6JS@+ۿ[1sDWW."k~Rӫ+c@]sø '.N) Q50GMqq6Ki6 wfIJg鵃 G#/& ?ϭLby j qSI KtM^RC>aToյ O'q7 )܂Ӥ:u]&f &K/W'Z{nf 7¿UP Rg(P3#C nGᖸ=ejƇ:T <\;)ql  n#V &PR"arDŔ6eɃH? =a8ކf@`A_*'v rê|O5֝MF+QWĮ068É x ژ.vU8`NX`*&É"Hǩgt]|Q)`a]x kx6doͳId)Y}^a O`st6E.Bԣ(̠$ zba V]1D>vp7=ҿ=R5{=6)Bέ/rW٬JN&M$.*unmm3W.2fq+X6d 0 aAQ㰋^w'w?8RYc pP'19#1/H(L1%DzV';D8hjh^7[NE=9b7H¢na/AGڰA(nWYyv erkm[K<޳ݴae߼ խjnjQG!R4nj/~trb?#-M=ӹ\R dΜÕ- d<8dO1UK;Rޯz`YrtLbe'$5y@<oz A-H/OY8nya3aYRPnKђs/ n߉6$ѦF%)q=}%"ϲR*A")-ިcʟ.S?$Y6Q@% fKK`+<2I݄ؐ`B@OKMHH:LEbpC+4NZ*CSi)}r+Gwq}QyXg٪w tOm7婈 &w3c@%d4L)aOO[f\6)"@~ÐPE2~B wr:!i8cld-=(p)=&'#)Nq -B>W7zF]*ICcTFqN dRTeFB[['`U$J6uU .. T ^C!߅fLYkḥ6ͨoTRNbw=\1YƌўW^&ge4T= j25,fWr7B#]v/ƿ?A&"kcT0s5Oʐ0e34(ɿ΀i,qWj5۷_c_E97\ zQeG5h* 8[&hO>)7٥旅/"[u+DY$kZ:`:m ȆiM`׍M nM_'֫#FPv==/pg!ѢgO䬹i4Ȕǜ}q1S,Fҕjy dV STaٟsBjcr}GUJEQ.IC)z rT膡2J.PfNd]5v81Sgͪ7Ybo0l'U 1 *YC(;xW{Fx8 6;78&m1=!S}|m^N,1E]@ oN52͡A;ɗV#~"bM$«MHm3sk*s9Gu0$dx}*n vX_GU O`*qxOk,jY<iO~離nOthTly|_u<8&=YP>ݶlDht@K[Wy53z}ybV8#.ދ/ },Έb!Z~h݌N0E*FKu7S/d yP˹ l/" IrK@qM " |J#o T.48_b'(/ {7ʷHU.h0-ŀ7UevW?K/A+nިp*ak. qdV0Ǜ FJ14H!QWWo7hq>;WX(.ӣ,@v厨@㧲[eIp|}A1jj}vh|}e:L:+r@@:XSrtGho_1-EGl\s6*XRDsQinDux'^h.Zב"ZoRP簨Y? bmCS*0Jz㳣6kV-swݖ M’-"'1Tǥ86kxq; P&q'1aL$E58ǺkZ%j` yE G2;Z;6܈{$Ǡ %1;cDx>51qg`uXe (l58a{ꪃ*//sAt@$ymxAv&8zGW@] ?N)8-DmY[+{~H_>+\&'= 7bY;@*ۈYϒw!4GI:]j8/,BqF] "pi}ۑ HFi*0|n#A5LE,ےv/T[\J2ө/vbj.ԁ HKm˅ytمPQ AdGُY vcmRcjp?`K Z7 0 yST|zdH%Atpy cX[:˘/[^BA0rmHKYBѡwp&ZlSO@ܚbBw^VMo]ڵԑ1aT:$4훱uușTqx1R#6Jһ ggtĥPAjoJPBFW N( <\x >[M?h5횓*[[_ t[;8J6}HvC'0;T{JJh]ݦ>d5HhNQŇ!=/UDPTX[̩A+2 cH"ykEAn˿>)S{,3{ݷq1~ɂP@1T6ȑ#4 ;2oJNrko-h0P_9eN{I 3_T@\{Rxg||`%4h@j[ޥJ=1çtнET4mfTRK:!JD\Z\ZG2Xq\.ŢMDć?,])ݼlkpN-򦄡QyfNΆ[㟠׌} W1߳zu{mK&CLy'%Zl#]F3}p315)$LnW%(z߀\SFl}io^7Y;9 TG;svy@Y.*a 5i~^)"ѭGotKB`ρmȤJњ>uKcP`a-y6kO˕tl֪NgSr2lƩZӉ5j}Q vz)e/jQ7i W,N 9(.Ҍ L'g /r48}rh0b: \Kd0F+ꊶ#ïc6A ABx TPAt~8,ڦ]o|hJ_׊לV5B:hK (3W@6JõGtt_s?ъT9i d &ݦxSjaGە6("]ݪ V7t2E~<_$+u^)Н4~';W C,$N3c6DoH)u9XǣMK?I) &1/ v-Es_X W(ΐ9T%,.|bLrvbhv[oIGZ&}"Dt mo}Sy_'Aȸ-rk$bcg|޿5Eٟ q6(N:zj͋r[B~zh}.ǴJ WfMv1۫-]ztmo*/h^8"D53"t&) ߪ}|CŪ:<:N9l ݱL$`޴D4G݈ufe>R̓ 3&{PQКx*MUjƪ9)D m~`UĠ)HfID`5B'#5ᙼu 5#ň Hj{0˝;sqO&{3x).oō+hF\/7tu$Xy"σ%tM{_(Q[Gz2}_=ٵksKn-3Q&v)d-l&Io`[`PnhPVr\s{Ђ%A^b( pم{TmymI$ 2ԅ3D'h= 3"<+JGD8H5(֣2tv_e7*m2Jh&v%m{'9@l*{EH;s}!(=Hi >9cM~sg m=G/hv4XjwTVy䈄?qD Dlچ +(1PQ7^eJy"*Q%mQ,Z;x1AeI$qoLG(;QY lG.oR6tqޫd qi1ye7/qD׫=Jm9:7; Q Ls0 7j.VNɪXV$)ΨGˍ*t<f([| #BɆVYKDžgQ #`ً)\=~@Wxүi3(jU Gt]1oaW^ zO=saz[K2dЕ;K{wM'F5%q+vɍ7/Y^ MRKJ#==Bh,e>`N;BNz+z~#A#rM>Ylxz'IJy ނܪ_Q{ bAhD'R45eAܧvۀI145ޡXJ[O$eqzJңPm݊6Z-ViNvt"BVI*ƽR173D]nj!vy v(khA>US^w18 ~ |_CH%q\`͵7OW[G: ߲pXY֯).A:N0,2.'F/ s*V]>L;"\[{ >ulm$<'^>I_i^BP;-7ʪ$oMT4?PiP:Jh0&w50J0 mZ6j9}WDPg!?IAd+0LCV5%!׽9 -bUKtt0fzi\A?pzġuj2qc%6؝'zN<đR(#ꚫ͵h^Wjs0rCX!Dplq-З>S͈p<C˃γCZ*|V9/d#[*8x)٬6TL,Q0ȭ5b`譟1i'ŭrhM:1}aO/EieS)وu fxa۞!Z1ylss6Iec1}`h5\)B4Sƛ m,CZg[7*{վVLwCRȥ[!s huܭ>ְt:l4rPqrd>`_ (aI ~AshAJk F5UzŐ )쉘p+&nϵ!RI:MBgeqgʼnx4.mPU*8OBz S6BӬ}>[=i>|Դ7 Z\)dDGvou!ysx^VY Y9`i_w#C08n,Uǁki2c*Sz1t(lCek,̲eVڻt)A,uӜvJfᗙK𫥔:.#{T;!a.yW[ug_ܔ?+7Ãl#1 lY߯8߬]UpR+ԝ [KGo!m6S;Xʽ"! efԲ[O j9F;)<)`\JN1zC*m">WӪ ", lBһsXy)CbFʣ;ztjƛ|zvc*4+XC_۽X ?GQӣ2A)4LX&cv0m)-ew෸XY M P y?]GR-mY_`DxC>.wva5mClNݤ_(b%˦ *þiXr?HlW}"KNX$(ixxҀ'+LDFEn`Ā#XMe%s|;f⮻hyPLI(MTԡRdXA^tn΁b!)3 iͬ`VX虐?9j1Y歨LWjJ{5b}[s Vޕ!2S9w T@1<=<]KW!SVL '1Ffpp: C>ZLkױZgzpJ9齭q)H`$~Ln)=c?z61?mᣮ9ҟo.طC-'(Aۧdk%:[O7+h(% VF/y.H"j:W'A%ДͻjR47MDph=X kZ:$S~坖衏[xf ]EAt m,p gIUb'XIG|&W5)4!{錆LX1+kg@ [Q5ÔKS>Jdp' Dhky) Rsd/]; 65RQ&לI_jd˵F{, GՕOaOZVE4Jﭣ*hD}V8ϳ.|{20IumyJ-/Gm,;;_Ksg?UC{D=Tw/-g -5)5dh!#gfE%x7-6PsnnE}Ka0Q殴#HUoFz7~DgDii 4]aĹ\cۢ +4Le{ T &)Np!.!dcЊ!2m&^(RJO$'e]KR<3QۆW:en'b7:`M{4#sG$oITNѼRJX $a#4x0oLa(3 8'{|K*)4'לrLU pL#dO+:<``Wϣew+N-#;Ֆ>k%ᬢĥnE*6o-$I4^[Y cy%H,[Pa0RuZ:JPE_Wp4Hs <,{()P7~ܚ@Q fj(r"|o+f>®9x=G|7hO ʙf߂ȽOm+=Z`=7`E;np(>fkYL2Օ`v")I82ɉ y|Q# PstvB3kYżDAΡj[G+l*m+wu-2ΣbeЖ Azqo{tVJR{MJl%a!झ" eAǎ<{'[b'|b/_as4ɒ|suϽ@$>RKY3܄uC͵VfR0f+"-% $Ro+yfDkPRj6 ψ1]͹H=."7R^Lh t?l-)>k$ЪgV.J"D Ztl9]{~jQEu7FUh4/`lN-| x}@F͔Z-0-ʸYp+f4tƣH 0VaX(Θ/0$rבm-.P%N4TL}90ӠA}v{fi*sJ f~>xy$FE2G‹-RΜ{& 8-Aڋ/Y:{|ˋ539D_۩}c+#g{6S܈|M@A6䭯U'X!Yʜ~I\dl9:цW?~덅{Qq3. sv8bUreB!I9ԻB:{<@:x};8IK덛7r062*,>֑FP{^o(T3L}n],ǸuNf*H^UsֶhZbBM[a ks'Řk/n@te(pL kZq~N6 0㨧S(6)FU"ܦ}VhӅڧ`rO ,%\NiOJ6J w#^h'4K˺G"10Tvf _k6?N<\ #W&'&/ \r~\(sqRg?_j-lֶ=_ҁ8?։ hGQZJl jMt,#n%$Zm,Կ^CW4/\Nu d e6Tb"ߏFy'5_B%ߗq] *?p)'` $Bx(uUjx$^q2cf^/C$qTf݌U,?=#bOTXd\V=PZ >SPWiTC?8OLʝ`-v>Kzw&4K~̫V.ol|!/h(`脳~ i!/?I . ,-1[@0ЏP 3DͪLf>aM+&N\pNv cY 6vȕ\ !񮝁MIKٿ,+_@xrƱ]]Ot5T1O(`(45m[!QBhNxү4]N |18p/ P Zk3"LD94P3uc;{€PZt]ƪ+b9K7Qoa͋ԻcQMxOY*BХ#&_?;$>Cs(kn`MЌg50b##vq2XQp K Vv7 Z0 %dD3R5u{cP,#yӲ>^ZiׯL$&ʖ*c: 44g:<WUM!I0'^)Aw}]J$4|wd&X$^iNri.bQMOM=ցb^qIi0ËkmAŧw%Rtb%l}\a}C# 42a[/ g?Ofk+ɽnqw3A}T3wP3Y0uLT{%O5Ef^ 7gVؖr51SI8w=c'51sػi[% 8bpMx~b5Ļ!wQUC)S kB.' ۙo*=lHT@w6ZØ| ЊXUVU}55GuxAٔYPtW 㜦eF"姆~V*/K q<C1cztѶr4"iMBCo rAFOqDʦvʿJT؝3Mkl9,3l*`gXBxGʼnOvHuqMT&Ix"dʈDPgYh:š{Y Nbc&%Y%VVNIL 5`r K-ҭ`X/U0BTDQѰ[Ĕd" h\j솷M//l=i^[h-pe:XIخanz?<V|_h-/2jVA~NҜ BYZ 7D1xAXY²"2ڙm6N-rԺcIDi =.y#;."/ҟfO:/ukB'lN.v( l3Tn8^:vU_ʢ|MZ$f[]WuZzcX^VJ*me\a~*ޝ2 !H'icT˚:m;␅[P{^Ы`]*4"0S9z*|%y*gorkI7-Qrw[632ѱ0.?Ή0X1!~*zKM(ɠmg_Pk0NˑCq\GTa@Nw@'Ȅ ){ﴫB3X9nKmο6s+E\b@[40,dJ0v8 (|* u:f!tUdJ, 93 >r׎͗H v($+פqd#5 ZC' Lf>5Fiu2<7RԠ$en̈́Ks1ΐn*CcuuǞvLF;H^̭Z 5@)8ơ!yESdj=a/3B ÁP017}:{QqE{TIؗz2A*oՊ2\1s J#U—H5dt WRziA1/k@X<'1rtqIop^A$A9%eu\!ze~^$IܒuE}ۚN ,rv4; ߔyjk߈4P<3|am msu\0C5-HMOb`qso͸S{a9%eM̍&l;R .>X$֤H,P3o'$$:NARY# #:ux ͥOj Nb(VwDpbOD賍}{y A{ 3sRtczH9vW4¥*- Ig)`Pu>6ܗF+7E%/nJ<TWH i>dMc 1پw s$'ErhV4gyUu{S]}V=syq5NP߹ d5&_[B-)6c^#l$AV LXcQbI-wo}b&̩0M*ёBsa>h%h@7zuPIsAxRl/M8I*ru%ޖ<4}I&7wsMl1BDSs v)ShY\fқ fão] #uNƥY_.Ӽ XDV# 'D%ӫ(M%Ҟ D%}M]> LzRG?(ΦL[hcDSuGw[?Qdta|uNb77j$O1잴܂TNu<(\ĄܩB{|\tFnS@N ǜ| B- zImjdE13C cuY`f^*G8ط"ϛ3dx [QT/~mDSĜgߦU,ZPp l0',HEv,_+u//TnO[gPTB91@[;Ȋp%9V~ɫK/sE٣|A>L߃Vz7 "3>iWrԴ '7 K)xTzνxՃ:ZdJ\x= hqb(r݄ _K+&" jwJplE=宀 )4?R1NBd#8$/]"㣀xr%wzq/ӆ0~r[K me{:.eG]lfohhqJJ3;(xί6ʻ[u躱7~-;\KD .\4Z¾A^|k ۼ%qrsV+^^_g쩊:&3^^%8Pf/. VkSpc=N@\Rp a#YI]kh )Yhwɕfžl,^Jk5̰T YRiYr:,b+}ax}P)ga;x^M'v:NxS'H>C! zd- ٥+("b 9ʘe)Ȳr[Tp.X*9e+M[#b4t l18l.EZGѐIF Y]" q^t@=y͖9 i/Eܻk*W_q׎n_m}WUCpJPAS>ItVZ1fr+\Rʓl4@ 3:1`@JR4 B?'lF .3;|)Laa dwMiO+Io2KKű;Lip~a0G8B b0Ȣ ^Cc L6#w֠:.Pxqˏ%ϤPyG Ǧi d7x"Pi)rDI’Y>l 3? fDY#PwbGD IO8@7wIPd5Y 01`7[h\b( \cI.^ VS*̏)Tpb.RҊ$s,UU(8k@z~I,#k^Ju{8gJ{sAI"ѱ ^4%"]Z(@﮺^ŠO9z -ߚN:pSdI.J ؓUE•>1EVdˍhTf++N33;>#l_6;HQ ۽Ɯ/ѾuɃ_nfb6 @SگGY ۊtOF7GԖ'+[,7%ȁܧ剽n i@ɩ1ȆLqʑH<:W*)55su pySHP>%`  ~0EMIKj/vb,0c|#`.Pb'bKgXa#+Q,_;'찧[fHZïFSxR=21_,C рaO1:&n>Ndނbu |U䵮pOS~?2,VlC٥mdOezI\S9dPIKs̳6ssE])M5~%/gLT8q#r5:c:=c3g}0y;R@Ձ6S (=JBr. ([4nGa%?e,GAL_)^U5Mm5lek,QIa,I`R W4г%oؘPptňFOLf6V½P_n%0|4|NF7DwnE\r+)׳P_W:C&uϙ sGYp~:7huɺ%t废JyyW~#Nд ~x!|׾p}Agq n dpK\Uԫ-{x5聵!곽ʅ)iz|*<;LG1v*d^dc,dY|E&L7sEcÜ#]% !t^Gw(u>mј$?,]c.V5ɚ&V Cez4TJ6'/rҥ"UcG Dn7]7-)~S+* ji%Ycúԙ a -z嬿4NCaLȲ ò! @xC{)-~_pQQ|xǞpp^M,HiMp  &qkBk5+&SESz٩zrx+a5lhǞ#ݬh*¬K#o7z=I:bSeh_1%~ L*<j*NQ`5zRh,aVEK E[#qowmMdEf^t=l&) e]bOq>f—*2?J] Nv<1,`F)a P,c8$ u<m7MICct?knrAVz7Qde$\ǧ"+larcz0IȘI/ =W& 1p;k4!LoٲGT@15[dDf'E0Ɖ+aLz"Faj7SKR0٫v_{[xCn_nH%i5V@N =k#BuuK{aY ѥjcvR~`Ѯ? JI8&[lD^$뫄eoЎEٍhF$)e6ֽ-?IQ߰Tosc;mYW-I><΢Vpo[_z냴niDJA‡@;pF0Ü N"IwR𺪶2@|Ҭ9I]pn|A{ZTfddinT& |7'f0)y#rGA8x@e.+8'|}(v\uD45=Shv 96IzW߉_y'4@BtNa3تX&QTy-c0-]NAs<mʮ! "HReֽcﶄTP X4PND{}jN6H:Ke;W.XqHA  7ߙ:o | %$Pwfi4'X"9">0]/n"MH],θ(,/@>2w}S+NMͼ~tscB ~ z{d(ueL˞4!$:dmR8 r]s[hQ.k`7g=:''Mv˥}O.x\ ڐ˝MAz =cU`I pׄ[yilq64DүV zF:ޒ& -53ďǍ QI^O~=i&mnu G4QQlyAGօZJ%rkN?@Hj^՞t]Pˑꩩ &ajZ` A|mfꨶ{ѣ^}/~&4ܳwkqjIS72N/@puHye;]NzG'P w1ظ)2u<.\+&iG46[92Fx鋉[^BV1Ull1Yz,C/^ImG{}]"X:47BwvDIk%L0>dNŠ-k8lÌ4;bncY6,A ?"d&|o/[.C~ . ?[|0kQ.VW?MJw%1!]h.#zxp -ҖZep?EF ~ZIIk .35p_;|*AK3#) b%Oh:Hp1Mv_ZVt =Q6 2 { T[1Cl|c`(:H9yA!5]ztpjOQtOEOϷ|jcm.J;V'r,0* -ht\&0ݫaà [-U/船A+g# WRƪwNO e5?Msu 4%XUa{SZ@̃{T:9 ='<i&8PhX}}Yabgps؍AޚDMA3Qăz?o{T,Yfv)a5'XBA#~/ ^5PP}/R kK7@dY&a< FВW6ztu^-il"ɂ;"8=P -Z~m!aɍAKmː!5}ߒ- ^6&bQR=o"51>^a-^s !HHwL[  -C1b}L{00& v;L﵃LH~OdX.$~>p 9(ExAnrr5=>8N364CA/޼Ci4r)a ܜ ]JeCԪC[~ !ߘp4Rgوz IR E]&5N.Z|hjF񰁖U:co(mŬ&ؚR}4з/c/;PM9A1f# Axe$J@ѽH.CmPe h-'*)| `h N@n$2^b %0[uNDq6wOGLwUUeztl`YYO6>{d4Wi-E=\AЊ7C ;,h(1@J; vr{ɂ(CuTUh:mhnpL^DrjMz!#|AQ}"כZҕmR"Xļ+"A MYf  :Mt 0o Ė9烌{=`XkQOb=TliofeB83Sd|>7Gq"4_g@zM=n$?!Gy`J#,)2y~]\}fx"J|G7JkO[^" J03G>|LJsaXveb=p4\IT{ >#ި;ܬurRXlŮ%->Y]-?p:r^_f ӄ<^]dn_8ӽfSnnP}b_=VDxek~Kh}x A>e`p,,TV]}Wm+ Տ, ϲi+x'1<{ɿi4Ǧsc_& m-9\/ҩّ6  ]\V8Ŏb-JR ΐsׁT Ԝ]RX$ˆځ3m,߇ t#{%2SU3FE!D[[Q2hf]Έ3BJpѦpE~B@w@˕C5RďL.> ?~_Hqj 17oRGAUЫ#Nڒ\+N)66|owADs-qɘS&|-Ts  XйWh"@XC['y#ViT#.X+zVIɁ ~C|h9%kM},_ǻƏԕܔL\21X_R3|BNߪ]7bz FM)[;;w1O2- !jo͡*H494^NiU nWWCKnZlm.+Tlk wYpNOG:˜>&-T_3\`3RQ9^C^ATrţHq?ig=*$Ↄ9A@Loܼl+B N5͵,#GhZ-k$1LnL76ա0/a")hm'YLoBaXmŶD%pt Z>1"T Ygj~e0yn){gwf>bBC4Cޙ׼ r̵kH'+p,68]yX:gk:s֍'ٓW{)p,BE (t8˰hFSF4#;N(@}4p,`H4 4tS44Gv;b ۦ;9Bkl1TβV:;yqQe- ,y(]$f~caG~`8EDY9*\W'c:(VZ)%j3ȢU$g4zH0:qY@I 'tY nZCx~XkKE[ʩ8 > KO)v,fӮw2J(HP zC:[h(퉳ޗ/苺bi SN {XJL}]!Ɵ"#(BhM3~7<.EՔ`<>y^;Py_#<@F Si}ӑcc@w ¾fhd7j=@KL߿dzZ@Y{?+|>RRq0LC}jj 4q#Jc/)q`0e<3^-հ/?Pt^ӚN&0}a'p/(3.4j˙-ΕO寲\NAe<3mJAxFIp.7#M٫ 4ơO әN$i:J wD_ll":>@һ7 RM%^?=q)<.V jydyua ybA<݇3f=x]k ?!8G2Bj, V(cM)qb-Y@cr%ErӸ]d B?͡rUfS龠6}1vlC]\8n0m9 $sl& fLGr[ɷqˉ1]9g㭉)^`\ 37u%fWJpKژOhPjQy%Κ@C<'ժ.^W>ݦ4*ɮ2xH,ü1s]ҧp^f@|'0kFe:SF\3ˡW>/# 1ᕟ-MUm)#'"nœyFlG_CL[o[zQ7<Ϛٳ KmG@zzҦcgwiEjUSj1DA$ϋvw N=>0M ۗTIKZDA3-L5O[6Qq.9u-#{0 G),o)fJ_"^qYD9nvo Z_ o};=3|**-:P.~ ,T;e6qzKBoXJ-E} 57su84AbROwZYˠ?LԯK282he _$ 57C#KM\@`cغ/z2FďoYIuV;e2:XP{q1P%`H_^1NyJyټ S#%n:dvˠb**x׉͘QH\!щ ͋ p vG%' Y"SeiLͿ*(lZ> Dhuq(gsR8n:$9SKE܆Ǽ1LBU0"jC7q+o\HK&n@TN6F 46E;05Ģ`157V+=2B+ B+UIJ)&Ra8 gkڻʨEM8Di?^u[)=e;fL w-flb"))#Dl\RѢИ&!z@m'*!j hYJ\5YaZodP *u,LV6֔.A&T4\ BtWlѱ?*wԴ<ݮ@/.'46"/|u:kh*5Q_jdu[93a%=d(sH{ *ə k7mC̷9F#Ǚ/cUMRz t1NKB܋\+doF;=7-+ڎAYc7NԄԬsmytHu0{q*@6B6P33S [ !ޅs3XZt ҐF%6Eaz?r.,,d nj_g#Tn1I0QqlA鍧R2-R@Uvuy"w٨R&hLFMYRp# 98Q͵cR&H7Fv!c,L6P܏*ˍdbBN n ǎ՛NۣT0tY-M> o'-6n|c Φjn@+5z tM#g u@iM K>b^/ ; >,h A3nR6 [s/^0E2sgwYИsڴ:(1 Eh*w\ ںt?~-&?դ+eI?,c/LqsR'/Ht"pe٣I:/DF"4ȥGUpr|g& WTEWG{0.yv-j"xekN xF,ygT$1ՑCν86@\OpLҽ}Q: 2BY$9֙^I斂D ~6#U$ Y3*l8bivj͙WUkWHtܑXحtx^_҃-i8{s2=ZyԏKtX8? o9<4Ck>*S62}>8cJ" ~j2@kY0z=m|eҬ+o,ZGԃ;H|+>B`n'-S~AE&,~8+t7e ldAƘXZ\ژn@{O[ p./L@ĦMĬoGT]*{MY0q9bSu +dXn OAR'l~ػ]kn2lⷔ X*$QA^@ (Est]tZa d{2XZ[rA ^,5B ]i?荢ӑd0_\Z4%Q9VַBؐz]s_Ԗ6;RT*nϴW3eo d1 E$K tV*]860?~݇@?ixUψxs ]^ӛuԠb)YR)*@99]u]hnjpyQG\s_\#s^bAGFL]MM\p ayƞFɱ>N5;@]2ق" a \KZJɥf1Hcqs%mS8_[V<1]ëAfiOu4Q]u2F[ǓNgn&t:VP!>}A*qTER̠ 1mI[XO!w/ {]\K+#ߍ'߭VrKe JߌjUYbm IL`6fM\%|r&ƥ2{$7uj=zb~>!:r_h:{[iCoa/e)3+`6W_⏻p8ľmOmnx[{~5LkTvkiUTYD)s@Ak`G~rGL%ǥ>YufF <ِo^ry^'{j^|+[OOa#fpR|"Qd#q V8Ie2 fa:yv`v:\,adrm8PɡS=o1jtn3>Q 3fz% B{tS{ ܄w`RQ8O"ieUmX7iHĥڹ}Fs'|WK+DvѩsZko23赑$PG~u $Yj@l<\Y9t *`M\PK2B2 ]%0/5A{1@{_&\i=a,?5;..3Rx!UڴxHehUt ʞu#4,JP[*C2E:?!56W {"+m] ]aLeuG$FgDTeQg]*mB=Oʒp}BQea1^qXΈk~DxV(a\ժi=DYB՟Iy%J8g*`OLY:y.}T{|f3*b hsybQ^YHoyRv>C}; #Aj6C\p>.S?K[%ZӞ9,Po (Z%" jxsܶz*hrI~*738UBNDwvw lI! =ѿ %+`]TSc$Uɹ}%9{P.fjxіc 1➙\'86I/⛠."bc}ńB{d 66%~qP}m5l&Ps0YV-]gѩ?5okzhG7-X*_;3<里E fSS{YuNO]>}K7j:{ܣ"9<݇x3wy-%̫͂B$F%XA{s}4gtw [>+q/4 nެxؙ`B;F;Elh鎰׋:JE}5<9qƔSa EQcc̋S~¿_d,O @}F<qUX}&Stf[w4!I"̗pBڕEF"OqbO#עs)g"߂td۬u"/}]t-:+?oLVfٙZᛑ%9.u-8k,vTf1;o+ӌW^a2hTzp\Rz$+$jZh_´3Q.Q>vE`Z]ȵ"Je?XxgؑzQN0 كOc&b593E$4rcZV WYitFDE`8 XdO:#>_ ɭ mi*6VqFU+ 4 аYPq&/8ⵣel0r|cKi_"/Y=3VA@\:XRA׀ D1g(׭udCl\{Q\)Ke.b=윸/ -kB7t$'GRZcaNYՙDQ6b1cOQI&4bIfeެ4, pc4l4#TQ1m%M*J#pW`*7vJr5(MôkCvƾKXEzM[|A ۠5^x tZȉǓ=z4 hijV-SV9wk<4sXyl@m}m2j2(" x}6;Zb=y؎UbTq-HtXM 4f3fJsgc{Vɒ,J  mo^%=-%;ȂU2C@>,G~۱1/T0S氆je(b|hh+5`` 4X*0>*HAYym"\,HSX偼]gK"nF˷`BDd΅N~M Z 1N?Gsl#R: F-SH;b;w", @].Vm˛){P45^$&;Qes"'$,7Ml"V&(IZ>JJ[wH\ %uz PeRHJd\SoE٨A$~ETn36?2t,7\Ǭg"1zNhzP6op2/az"ML4hFIN) Dۦq I+,f k)Yswi ʐV=I,'aa[ r5ꑦ< ~y+PVnzIlg]LJk Mf,393ovP2{/;%>Z#On !'g7:+5!9_B8-V!ʭ,SHp0~4[>u*3 + ƙn9Oz$~˯f&If..1".ы~A[Ⅼw l #^(g[_rf矄3NUtY>[[[f^RgjXh f8%lIx=d *m8. g$`=ڐ;A3̱o'Z_pX$G w-ـF`"9“,7uv~(\>V#b2._^ZNE"*vƒ6x Zilџ䞚.Lj Pie.5#NiT\2ʨ@@04.mg'% H>XѬ(P#ګ5 +I֓E1@#D>$=&݃o3EdkkdQ`۵yަZ Y(%>ғA)`dH*(Pb,{e P!5J,p.ZFarbY녘* h?fd7 < Xٕ ɞFĀ@IYl4aOfg jmܵ0;huiqWQw0s0BѺ?Olҩ >-Vc{oAMpVw-x򛺯*=*n6d,Jo8xا!%Z_^hLDiBw h/'WuR,R~ |bcZLɋi* wU!Jˈg\j $ɗ~=[28Sބ,U| Cl59)@:=g]r_~z2;=$+>5'_\.E$ O"3 qzZFVFl"1_zS(Q#$d=b ;< ܑH T6(f˧Z_Qbr4.& A|b_X˘`8pgJEZx{oO9đNO,;!7GfE)m7ÏT^/|[{Ê\~n &pdZvoÜYA/xh sw#)7*]GBqS0˺| EV& oaU"fuH{挣E_hU1*3$y N6'bRR;BߛO Wmu+9CA7JJPR$4Լ*#l=?N\ܳ")G+i(J*I3K%aܟۜUIQ٘ITiV Kkd4HfM1mkN: ^O Tۢ]`lɲPDhDKS6,T-N3w= kMVEzUP޽YX2E5F(a4<7A|!`O4QE`J },#*;wR5f"#g܄7P)/CO;fyUqjV( @LDȉa-B..*Kj荽Ϣ|f@qȘT/h^@iü9ȽӛRՑQY;-LxAjcZ8pq#*+O`tٲ'9cxeTj,Y5gh8 Jr{pw{3;Grfj? G6vZz4rॾd-k}) $g,&Uy|52( %/[ /M밪_ɎE' 6xF_b Y#ڞPqJX}^3G2HwSzy&grnCəMjEkY,֣Z!mUG|Xws6&H<)`L/q"ps*ysiV}$'H(vh\c#ZAXC(=sh +/L*7*?llخݾ~QhӉSlRnS7)#U+5_is <8=UE]@z䊐`E!N=oŴo1TS0Jݕhs"RsJk1) 0PZ_gOlO{Uy( 7Eԭ@.ro2v5k AT!d09~'+D?e'\/|*<6zi"㽟;s[rdOuD{}pR.IG6>&]j!d;.]}X܉f>hיHNJ"&1"wBP NjM,BnJ7V~B?SddlPWQ,' ֦:g4Ǹ b5%BT:76n:D8 B$xE짔ԛg*]ю踺g2vt 86lQn!,8Y1Fخ+H-i9$|ܺ*:;Uzn]Xּ_I|04e>%q^ke04kȺ% 9P p^ˏm\-VxxIue~vzugeg5@Y\N Xk]FQ@J>h1>$m cU@7 #m,W:DDěj M˯)r%phSD[A_ 7D|g9K BWQX߫Y&~*Żؙ_>(A(_oV?4RLˠˠLN3x$hhRgŲE襈ʶp=x9nѷm5C]nZ3Hg$=*P.kvEϦSZ_/7zwv |8Ea/4n(f٤ǾaaPz8{`nۦ5/Bb._ *Z8g|xiH@PvRƭ׷`X^αp=[1("1\73>AN8qV2 {6-JRhFX+H )_?p=XP6*O^Kvnkp\ŋce!&cy'V sV1)oւű DJbB{[̭]UGƺ$`;jDiĎt38eij@kCv1tF[>Рi'ny"Ut/>"&&;>툇.'?(غ-B4r>u.f֍oWq(_6_}̯!/BɎ-@NVACwDZɬࠗr(Rğ`I@tHf>SɄ(2\@*' ^rM5׵ sEUWz‰D򿹑Ȟ\ ߥQPQjͭˤH3^=/ ]gʵo|AWL8Hdw-@:ꔙkebh&NM[;&T "*csSgb &V'k%K{z "򿧨v jp~ҳƮ4qC \֑A&լȭ1s1oejfu剩ՉGVpvаPhar Ƌitc:S-bCnqvn2\BV'HwچE`GϯmzpڷDInav>7/r~cF{$OPZ"QEBwcX8ZY$#Sr2@} KTG'o5[9 "2LM1pJ!Qf52(`u5Tnsh˳\%Zu僐(x US'rnjqഠC%-Q[9uˠ<"R(o&i4}vxAݬd_[c3sΉE8G;+gf0gxD^^k@ (~F6:@(\V.ќaێ4Q iҸ4d[:pP5W.IvjSw#酯=,p%*ޔx./M zH&8isiS&1=ܶ YZ