freeradius-server-devel-3.0.21-3.6.1 >  A `,p9|,P6AueY(p۩e~S!E]Wo䗽__$@a0lluu0&cƙ&8d^BLmzT/d9 ACL^ q- rٜѽߒ_HHAzMJ_eacWI-āEY9lbj k,!czfO >πd_}Ava^"ѫW'X\|\TOM[KD!459ad3d73c05ba155f585c4c5901cfd1144f1c9721d9cb0d8f568f86ce6a34f4dd487cc0f6aa35e5093bce033cd5bd157cb80a3cɴ`,p9| KrG ެᅴ89SpvPbvt)N ~L<{CDW뭡rDCNc<~H H?kmT3@zٵ!)t'2=qp8ކx]u7h^cxhi˟xĞ&ƌzI9WOeHy ]1C *ňH^ K/l~"_?yK(1X ߄2ap;?d! ' Dpt .4<GXG G tG G WG GGGG(8&9P&: &FeG|GHGIGXY\ G]<G^bcd=eBfElGu\GvxzCfreeradius-server-devel3.0.213.6.1FreeRADIUS Development FilesFreeRADIUS header files for development.`,ocabernetBHSUSE Linux Enterprise 15SUSE LLC GPL-2.0-only AND LGPL-2.1-onlyhttps://www.suse.com/Development/Libraries/C and C++http://www.freeradius.org/linuxppc64le2R8?| 2qi r +wt Wm&~ |TK0LW0GUN0x.S!OTTqwY b/ A큤`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,`,eaf076cfd7bc6a732f318c12f477c9fe28a59c8ac58302e216eecd1afa22b13971fed4945734d04521c6e3794ec978a06a1e31fd54ea7de2c7150d218f6ca75b61f82a2397a91786f76e78815dec88f1161a43c99f2a5cc31a80b7a9e81127f9a970cc6ea0cf6c90358da867431a47765f1d2545c9c5c511fc319af787ec7f4fdc8f8333cbc4b156128456bae9344bf659a6c6e94befcfd2c824c24c6f607e4fddabf631e1ae081f6b24cb0fbee02bf169281697b25870eaeb3984117fc424ab600f82be3dbe330700cfde195134d8d23f48785d5703ca23f081afa361c63f0712b6bbb0f3baf16f71cd778a5517456ee4d840ab5944f40a6034a219bdef5e1b81c376dd22d10a5436f4d1fee9224987c53a3a17ec95485f579ee71d6da3483a0d8f97f8a8aed80bcf6740a353da070fdcd6443aefa6b9acce6b1b8a16b7875207e77afbe9cfbf9c37c24f1172248b3934f41ff8a60980a15a6605f4f4d82efb27f3e7c083b482c439626625213b9ffabcce8ef2b59e9290714e03f3cb22ad292cb2167411236ff67455e4033b336240e34b89bd2d61fcfd0d778fd029c5e06e2e74144a69a7aa49e882a0210fdf1cbf7bf56c28b2a59c4d6b35424a482d249d8cdb30ffd08e303718365155c8810b0441f0ef5f8e924f172a5b57a05d5a6c994a2bc551a7bf24e232db932ee56cc35df0befa44558cbc445d776c9527ef43ba4c36e9f8bebb05a74cfadf58ce29c0307a8df01b929882ffb7fd98173b0793c5db66f171706710862edb5a2e4d6ea2a79edd7769b60138981b5e30b383e44276390a77423fe29ce757d681a1e2599ea0ca122b69ded2805c3a3e2a298390d41dddaabb24cb0260f45a111c8a0cbcd516cea9cd9ae9e44f9efb1963650ad611a1b585119f6f56d2b796e07e99e24ce0d8af1c6562fa287c34c4a95a53c2acf2abc88c3b2f3ad981149d87bdc06185bf4ee4472ee494639d0ddf81e8ffa3b8b495ab990d4ac7bcb8fe8e85f40ac5de4476f633d02d274e20755c6709409518fc4bea7f056fe01f62089a5cd2ab3891ab9fad7a623ef8c9a47eaa52cdb1225354fee15db0ed2313fe362119cbd20488d8acdf96be0e8c44e3f2197d943bb7097365e593d8da5ec5c7ee47feaff4056ed4378f76299c48c62af60e6421c3bcee4eebe311144adbe8ea4635b99c494d2616887a889a0ab195f8895d1e495b8ac2f30100c829db2ea58658a6b2ceba589e0724c51ec7e3b57b3cc6a36243fc148971781cd1a1bce26e83937bf77f50c9deefad8a54cbad4cf27cb98de497a1d8664f8d118d970a2dddb31680d1f1c5a4c9338784b823ee937a19451a865843b100da02f2076742a64e485c2773b39df5b45a1dd22345208373c742c5f65b156b287136fca79c207e9f32854847645af8a0aa1ec900a81ddd6392cfbe6edc200df33bc42a300c0655969af4a864e2fb610b4f50ea3ed82b247ccbed7c8827e4e5c594c7cd0b192268e3ddc3d0cb51ec5202ed37ceb24fc880bbc8898d0a69f038c7d06ef553edf45a95b24c389b60c9fce513708ad586d6a50928b4a88a8458be003ff9fefd564ae740259fe477ce001217c0c3c8e4d00089a695e6a0e3d132b0d3c48dd7e2f11c60fea633083be7243fbf925be2e42be0c6685187858c6cdaca3ca61bf553edf45a95b24c389b60c9fce513708ad586d6a50928b4a88a8458be003ff9eff0c06a562d0eb49528849a2dd7e747b78975492e60bd368822fbd5e59a83c73625a02462bd14adb38066495f2ed9599c705f94042126563f94016e8bdee3bf495546c15af8d85997968d9100ba9b82563b60a167ddfff99f32bc032f785d52c191e8d5e478efad503f360d91239b1bf79ab9e643e33ad32d071e86445e0a6cf1e13050768377f0de0aa1081631769cae767bcb309adf2e5beb5da834bff46ef553edf45a95b24c389b60c9fce513708ad586d6a50928b4a88a8458be003ff9452545863795b33646c1fa1608791e6a47caa8fbd604ebfae4ff1c1415795cfd363612c0ef13e44644dededfd16bb6eab15c800312fa46e93a4112cb285ed0437523051863a55a8fb034b8427ec649ed213bd49ce13e2a0545d549b634fa593eed6a795544e91629ab206b5f6835b669bc2bbd035941b21c69b8785df7a8ff327c6455fe53b4c2662864a6cf36e8961057ffee949015b18722aba07a99eebb8a519b664c6df430254c02e4323a07fb70b285b2a11582f621e3d89b1546197815fa806fdf5c3ac0373f4858943b223445975594d6a37e65c8215c6646e13580bbf277cbd30085289c4b8f2022533ab879afd459fc21427f08907acdf14c185d5c4c7e68dda54d809f32a60c0c18a1c9feb157019efce849f4d94e81cff9926c0e58da6c5e3701fa0e4b5cab71f7745c7ac142543a21e5c00f630a2dee09449d7c4ebf731318939f15117e9ff283e392ab7c543007efe78ec55bdac9d41d1c014509a2dff108da9728e7f0b58a14366028a75200f0c866807094ac6acd38d77054f9e97b3c46c775b8753d79dc8c597134efdb81275af27fd2e3ebeef265cd5a9309184f1b8635c841ec09fae090bdbfbf65ffb26d85fe4239ff7e90927cbdaf638f784c4d7444c98de9e4abe06a36fa063e5c425d8aa863c4005adb9ea6350fb557e112925307cdf22251c366f4ed6224961246b1ea4ecb7a8b3009055a405637f6062ee7e517763f46b535664a65da7d886e6edb4158e92169f7ea730cc373e56ea066400c53b6204ae309868fcf8e2f7309fab29f844a9475e4b6dfa0b8f8f252410c4c0a205325e5cc84838287eaf7abacc3ca3ef404b856e285c5a48cced79b51d0d2b5e5aa72f84b46ae24510131399cc8edbe213f2c497bcbb41084ca65f80e1a933f465ffccb638df5b234eca3a1fb3d3a389cf1b5f33565b070e542ce6fd2636896639cba23e521f9b5beb23c7ced4955f09037b2adf212bf2799cdc70a9193c36520dd65a0e8cf28a8870adf8ff6f0c6a6ce62c952ad3559d3980280113ef0de636436d82169f671f04490409b677f55a61960e695f9b6f12dd915401964fafffe5789f4c5be1126146052f1a76c230619a1915892ce9105ba3b746b45be4f4531bf6e25985a62c26705b02c4bbb60bdb11a9f92f25f5906d5d6cedcrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootfreeradius-server-3.0.21-3.6.1.src.rpmfreeradius-server-develfreeradius-server-devel(ppc-64)    freeradius-server-libsrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.213.0.4-14.6.0-14.0-15.2-14.14.1_@_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.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- 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#906682cabernet 1613551983  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFG3.0.21-3.6.13.0.21-3.6.1freeradiusattributes.hautoconf.hbase64.hbuild.hconf.hconffile.hdetail.hevent.hfeatures.hfreeradius.hhash.hheap.hlibradius.hmap.hmd4.hmd5.hmissing.hmodcall.hmodules.hpacket.hrad_assert.hradius.hradiusd.hradpaths.hradutmp.hrealms.hregex.hrfc2865.hrfc2866.hrfc2867.hrfc2868.hrfc2869.hrfc3162.hrfc3576.hrfc3580.hrfc4072.hrfc4372.hrfc4603.hrfc4675.hrfc4679.hrfc4818.hrfc4849.hrfc5090.hrfc5176.hrfc5447.hrfc5580.hrfc5607.hrfc5904.hrfc6519.hrfc6572.hrfc6677.hrfc6911.hrfc6929.hrfc6930.hrfc7055.hrfc7155.hrfc7268.hrfc7499.hrfc7930.hrfc8045.hrfc8559.hsha1.hstats.hsysutmp.htcp.hthreads.htls.htoken.hudpfromto.hvqp.h/usr/include//usr/include/freeradius/-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:18279/SUSE_SLE-15-SP2_Update/9c7f074efad29e98ec7d42bac29d6719-freeradius-server.SUSE_SLE-15-SP2_Updatecpioxz5ppc64le-suse-linuxdirectoryASCII textC source, ASCII text=ӟ_?Qutf-837d4f761d0073da5ff2a79a589bc6e772596d42554d5438ba8ab99c53f25adf1?P7zXZ !t/k۾] crt:bLL b7S•k΅0Sr|&5؄Mf{̶hfs5ݦ^wsfZLԁWTQwέD 4fb$2AO}0%I8>ii1$=T0g/ ;_{]8`I,ȏqHr<莚cO-IQH9<_a+88L˓o%Q-H~iK5iS%moFdZ=ӺfiKݬnuzMQDJZԿЛ0ШtHtWc\k\2gOiYfe<18fȕ[Kp#zqaD)7lee1gRY]F~ZktQp/Cg'7bVQ䤚m%ԑ}Yk6ZsR/AY>6B>X7ކWoI-_5@‡{PIudp 6$Ho~,$0Уa^ʰuc&`1U|f!9?׌A0U3?{PX"eʪm"B;wz TsT-z+Sz,,s67e,_UOdl*no(<ל*vQjY.zk%|?{>*xbHG*U'1qZj$g]rb'Eeg\&YanM隹װ򫣩gc'~SI{xbo;(nU$=M>1.k apVq|f:ݹ`- _59#Ӭ54 J '>b> wO 9LUb b& r*u;4{o^<) є0s7ssG?4DCzq~D>Uhk<1^DjiɟD?"Nzum+i "F)m)56ӡV$~K0[%E"u.M1 LtAHڥ"׉[s|FF&V*O028mЇr)ܳD;̰ˤ^jYL&v1ԉIarhV"V1D/ҵSMƚѓFTm}^qeH!DVVtp+όԺjBNbÁ(:)C%5~u!Z5-uO^Hshkͱ0U4JtsGCX-얔#p\(7<\G2B6x!%]b+~ -- jX|SnO?no&=֨W[+fK K7,Sk)j*!6յ3Z, ?CcXõ>ySetd'1s\Aװ9q8b`$]51/'n1 rwV2䝟焩9" gE#0,v'_Ar] h,iδ;IJxP{-TPr<Lmd_*t 8^;K-XK"Vl̐6qPD2Sx.c+!i8,2u1RHvZWZh*eͷͭ>QOeN1]5>/ QP~7q,Uh; mSќ_ ]Uɹ &~^јя&r5ZW2)H5HOdl-!f;W1 kW,,1g ׻;tș[]p_R$V&u\ kLH;;IJсܴouUy;fWA"Kf~hz"e$h_vOiRݨ-CT/|vᙏ+[DjG-t ʹB&-f~[3WVyK up}JRȯ )=q=Yۡ#Li|ñ!e- 6vڞ^vGmM!QD7?,C V!$6x7pA,2OY/}%ԋ]Y W\I5 + /x͛V!iҰ fIdiUD;u#Sټm ٟ@qп>imxb»IeM;R^7c4|ɕHZ{K]6S rOXtVKQ;p+_>2qڽ B)IɌĿ0kV/E`^ =Y~xH?Ө֢.&n:5N jFFxZ$y,Q]Vc ̇KY fux wΊGA?lϣ!Y^ F "2aGkEe3OAH7:mN+ySQm¨/*VBں5\ E#Ϊ_<""x/eCXLW{JRʱXv3<`+Cӳuo-q&,oi%aIS A%mi7ʍV!Lsu9I2j5!d{f,9%kS6x g~uFN$1ӂIY)&-K֚+Zxɐ@=޼-yY3-)!F'UPu2sho^So]ɨ/!9ccc|C~|56Q;$f"Ob9n@"R:ltx:RNpndӮi0f"ݖIŚX48'9zMy7H>-0"4Y0'Z(۬bA82.y3dnѾQX5oul#y W#VYE5hQi>*Ք ""JթȈaRz؁ͩn#i+ڬK7tB Hg )[YUyBd:Z+XɘE'I?۞p3=j鏤T\HGcȲrHj "?2Zv;qN*xBMi\:6f9Ǣ"쾨z3rwDѮ/cM Y'Nȶ V Ϟ?L4J(ڻ6g#F8=D m'~*; ѧ ,Q:>‡|[ͭ{"$ 6C;mDX+ڡQ*vT.↪:Ii=%dm݃su?xjIШ~ F-GCOQ/:E6Cg3JI@n>ͳ2=ʮ8s fp-G*+AJ]UE g$'2H OI~:Itːgĥ-F[H2]ycuu]bw컝bvZ\~BQ(9E$YgOE)ଵ.6 @W^B耐`QISL 4bKnndDKԱ1*nXض#_p#mC\u,>G>057ZVs_d-~`W > Y ZQOFA~_ "$y6MZjwa.nx}5]}Q2H5В,ҡp*3bI5\ AN'~ca; ٜ!g:5agO Tm@D+hU^/]O$ 'n.k*Go dY#`i^{p'0@K|:dz'ƃCָ-4㿢+rkj <cțe ݫZ`qvç"M4oʑ2* "mIFlW+Yc%s΀ FsU^l&fek3[SE51 mRz7 BQZ醧fZ?j@Ў*¢d(v,zY / Dp~o_#+GG}LSkN'%[3GZpKZl9f?ZyIq#D{f/TSH$+wh+=E)* +'3K?>1B"GO!{s*)9oĬwX=/?tLcF0z*fem-*i.P99V)Vz)2ְ05DYdz¼|F&WVG7|5,LC׮p|.1ov'|MCXӧ>W_?x 7153^`Nn?EyP>_69A1uUF!Z+>:s)J.ҹ^*E!/ȏ|+ ?-6 :k+m[UCZ`2$cZC1?\F^ xU/W:3d[}1BNyd뒘S];.&à? }Z&6ۈ. k]"F"V% X91FTĘ+ Ǎ[5%И*7ڲoُG_ Mys:ODR^U9-Ȩe{&|Q|O2c/YPf M=BY/l . _^[Ҏ˅&Aaڼ:FM bSG9>ǕPf/3Vg;[z] BSN%H0[2"_"}$?4Ckv}``ps`5RtD6y"' [ .cokz&dR?Ag_8-Z#]\+1J'[Jd}([Ift˱Vx*Y2&?d4iEQl,RYr^1u̬{ltQ Cw]pn$$rHH#ph$Z\Y/O._{/w&3՘IzN`bΗddiFX0䬠k@6#.#4C`~KP+ c#ۡt(_i`ٖ~\HNb52_G|V/TGu$'ޮ{X4\ NlșcY@%e6)3͆FPʪeFm\H)̨y~=)X &f(,Ijh8\?JTg\.v"'Kǫ I 1bd$7:iz 㿣zsBBT.xZH5 4tQVP[}Y'~_c 2;E_u!Ԙ?T2M~5嘂|+Jy̬,ٹ"LШ"V`Z%A̍ {3.+EܜG(3cl1njLM> @/q/ (f}^~1L:*ɯ dHEQ '&8X*B9bרKUS}Su+7Z=#,eaHv\U ,f:kZ֥}ϝg_:4cdnjWcf?{96CN0ԉ`DLʄP"I~}M:ᩗ^fg @LLҦ 0Y0;6txHxce2(+58>94]f政 &o%-,Ca%o+~!\W^: On*Lɒl9]#(RE{^_fi("šesu*äp(_JDiC>pQVuiiTrRcbOPK.$u:P]HQdZyaGU/E]ȕV]FRwBֲ<.'˾d=t(:Qn3J~$TqϮTUX+/rx#9No<6=Sxȿh%;'1=08M4"7x2EcjR89*lTM:]\;N\Nwuy yȎ_Є ]nvD_iA@7QeI~VeԨOzWΛF栞OU'}(;dj!PZ3 ;}47!^>fp5 *~n {.pcvr`] ]-ɴ:(:X7aOZpf |X*bKUBa48WDιOPM~?Ww*ȓшHaď]RAfeo?ڲ[cAgR/-iF[R9i`$h<HT/w&Z-L&şWa O\ 6dmy=&^}x1_ K(ղMzIOY}Ş'*{( V~- 'SftE]M@է*$⪍|M.;0XZ>0NEŁD])1Su{&LQ=dAVPa#5]eY 3fܤ&7;S@M `,%B_^ahpwi嬿*Ȃ1دZ$Ero&9?#ӫB' jO 3GQd`B{؀4ɶ QTe]B]H.]_;^xQ0Rs4+X3?24V++8\_{lqCFu8D5rA 09Jʴ%?B>>R3w< t,u ]l#èjc9HNO[~IoWLJ*$d[7fu'bMD:nXiq5B1cN"OtlZ Fdݕ577:^򮆳1}vBK`DZcM*Yy(]%,RsaB|8 M `"D1u_IvM]s]Q.bqS07jÉv} 6v4터 r/ʓˉx'\o8nܥQؗU BEHo}ÔLM+ٗY{7>\c?PʷP;JдȊzMC vo&Ǜ> g@_W `/ʮH33>^H8r]Z\l[*::le&{2o6d+:o^!+}فM2ok!W-jZ O CϽ6`hIL/1+AG'u>ٝDn/RDJU?$~@|<;5#|:Y[.`1t{,@-Bji0٬n;3ղSkhà_r\"YuwZ.pךZŽqH="8x5^IZVl D5xs¼Gym@:jQrt+9L:W]z0" J 96{3^d7&N]X-D(nۗ%v6\<;b0=b+tAC b8nRtAZ:?qO"PKQ.LchƘÀODyz(F0*(`THAn'#H\Qg Y"'_B]^flH3ۄ!8i>m>ۆI= ј>ymX^ h{B"YPl8SdVͶ]kQLɩkC/B.;\r)w@y.:J n[u6hEeYiz3KTo;5v)t3!#"A(;Al&¶fB2gHrh\YcG^J'IYG`,ت_Pur6Y}Lew~DE%5gJr?$GsYO`|x=uLժ!#PohH7yhqHj 3mvߔ Q渝Zp8_t6QUPh )]8Qu_|Y idGh4aj1|Do%ԧ >o*2a{^DłUr! ef?xuh )$WakҲC˽A%+,Z09u5 &16kj3?̯w{ёN@@n ӕ!9 8C^Ph&.l4q=蓮f *<;WY/~JO̼Łi=.$A]o zˍPZ$7DR>!wziξЀrz= ^/1c"=Сbvn# g br6\ԮICTn }pvgP9 /\Yر𷇄8{^-r=-RH @5(}QٸcpIuv=*O8_E: dG06JS ך;wQ)KePGi1Hz&Cf5t,y;2ȻV_;1K+nm{ I@ >%+ܜRG>tnhPZ!đ`vzX?Am4tY9 W!:5 Œ6?b{|Ԩ{ ɦȩ.K rZck帽Tm86Pb8NR?^Cb꾝㓰ß}`gٿY$>VҜu8И;'5Z"n"q3NY1R1ZS,ig:#5KZ&ZA1x~('^}ӭ%F >33FzL8W]YZpTm`e+\8WS](1u섦AC]=ݬ%P(fY݇S\%`EK7Hc.EFtu%4I8n¥!N|)!͟(aTGG7+S, Ϸآ\y":"43ٌh%NX}!D Tx͌W(kpcqbCUJ2^rrnX0J/l$Ԅ!c6\x*'zO݇|wAdl*"C!VY'D~9,6Y'df?6ǣ7lNz Ki6 e63w< TGXoR>)p]> _M4ȞzcO8)8 n^,;c9a?[%L5Ӕl;Zб[lp|nKt N(Q_4~ E.զA/,+ADP_Y+ 3R-53P4 lDxW92=/NXCwemi:eƛyρS^mpZO 5+sk,52kW)3<̮!ʔuO=[$g5ET&gW.إ|"SRkvQ@VKU3hfk&H:{o[WjE@L5vffJnZ4?WfPFϋn1 5$NԂϓ1Rr NF0 ^&y4=9L*Id:Fz(ѕ1: *0r%lwh۫&L|iMޞj qם##J+8`g>+IFG΁6:iH:x`L`~kPG!5;:7gۖw%tB'ϡNvUJ"HϻbE?|\s}.0RnT!uxϯI/WY@ADd79[);whT{ViI>ALr͔U*J3L{v\L}b Ĺ$!<[/d> y8Vo qd,xcALX0b&@LR]4O#ICRsnq`հ=&B=(Hs$NA^;WtB꒯_TkM+zR_S%=DhcD (|jBmp)۲DL"VrvR"Ik˙aG&rgaNػ`%A;,tRmFOZiݹl4 ɫK.{@BLVR&3壾ǦjwoTAņ2`B{]G{Z%F{!#|VOd4'z~!; +g1'$c! }uQKՂ u|sit:coL,&(yf-yLTHmkA|bVM>t3:/?]vb/aUfm[MLy=djBwW#2d ݬaFF[Pxw>=.i5$ʦELYURe]4XM>'"rV뤼u{FBDl(~RsKNjI\,Mࠂ[,p'wwsڏJf52[-wΏd}Hw!ŕQ GRTZAmTC;Ce7]7&f}\Ú 0o:>a 9|U:#Tm9U ҿyNI K sx3WNzVByKwj*O F \!!iwgZODүtC0ȾD׳w8+f7"{b(,h'i5:IXeY].Y$:=#P+A`Д}6xsQ')D3NWRL^\Ez0*y ?ZW戍$SQ䓭#Nj$o.;! {AX7)TocbCˏx :Yt*{iY]ڼNF-1X< !'76e/UGfC 牨Pr>JYihG) +Ra)b΁=,de_Pv5D x¦}&WF$a8)3\ta%9L 3Tk&T:˖+g|䱊އ ji&;daL W Rgͳ)X[)ޝAl ډc%lq#wTCڣp}.H^_hi1ŵN;)u5ʗCLٶܾi!q9>$e |FR(gTyE-1r?U䐳h;Yd!B la%P񗲴RS7eU#l#{ޒ? EսZTk]#Vq_TcԔbI`Co@,1t]Ƕ78c][@<+ÝDPw$oG4nYvQk:wZ^mAؖyPcDl;&7\Y*Z _ ͎@S87_,ysVDD@[;)%m6AR a7,fc#;uB|Tv{]6`lᝰhXRo;8Qa;Ý؏ϟ&-{B>> sI?T; Pk%LW Okߪ("r7/a aƳ`h 0lrH9`_@+޿3>fr Z5pU#nPq??\s47$nsv5p/!my!)/deh47ɨ57T&<0&T?o>1nY\;7 K!`!pG3(Yd kA$F%όꮋZ:>mpn'UHR=wfMRL0n L8FkJWzizviA m^s*o8k!teN cEN Te_.9Кu:7 8:og#؎11},!6D{QU)fp:gNsN;tUb>_eHeZ(~kHY[}5?u[23y^'w  ʀ͒e(\>L\#뮧)ƪ5rXz8vb Ԧ1BEWP"Yc0AZ;ܪ=zgE؆['I1 [H(Xd*" 5'>2@*fQlGTT^.ri/_g5?C!~oFFKK5dۺ#<((TwuE&SgآYBKfFH]˿웢jBQ=*8bLiw6͍(xpTx.0LV -Lvvf6\Wk$4ʊМ#HNsꭐZk`9 ;ZD 7b tV:7LB?\&]Y9Cq{t<a|fNнo] Z'KeĝۻyEhJw^h?_5N5s#K*4nUX&lZGMjf;v*"bp`eqXyޱ6*).N| N<薠Jz9/u$h2,~@_peE2@Ec4([Ӟ9DOce bvۣsScd}!4 ڭB͙ޥsn 6q2$ .$Q+$(SOQ[ep_/t .بާow6Q]{9qj~ak. K3@,tuErl8xhX\["K2& fٔIm{hbzo_Mv3PLj ;xnq'f C)l esk3^Yi'?u3@սo cֲ^]lŠ6֙UtO#vm í >]{aZw=BRLiIJ܌.J/a̩b4CC?<~" )FgErqxl?ڋRe`.Rw! rD%YIo})&)J~`𸵦A_}|Cf'ĉ|$23_+5Дa*-IKbp+~\%cn>qe3 ^ye;~ykc=z̦zOr䢨ޒXH6&\zFj4eMs V#MlPךGC|X)#0$cF&PW [3]6p[dQqFh0Y(8AIfXHœYT Jn)P:NVxuS?ӗ!^6fHh:X ^8EouI H{brfe*6pMrzwujUHI$JB*m΢՛RˌWT5 aU_I2د>v;~i<MжbP&`fi-_EsdGe p~j{ee\V$B;iuBu}1 '~y"qn_fwkpےv l#d,g&:#TǛ9"s*2GiٜֆO;峑//ky,KrJIn뗯--&b4?ȼ )~oي2<%3B=]pzoGé(ǜzFUbTHG1SlS_fy-2_HB<Tym]u!@cOGNXjN/J.v~I&3 *ˎt|ap5pVNAB>kbfT[CHiG>֜y$ 9|SR>'jԦydيxay yK]^m.5@YM1+ X!f1ˀR, pY5fnRY7|M[$z,EbPJrV52[M>''IlU_Lӄ(֎;9tlJdK?~y:Txwtptx頺csZ.@֕Ncx-x[SlfdLRrpV(#lxLez1etׁ,~YU߲zO+F;Lؙ}^wj0I/\9EK \=ci'R0 f:Ō)h͗li?4x0FH/E]n UGRς .3@Vh P4OJV#`MO/_|=4SpU?eJh] QxbynnQ#ր ci#Љ񶷕qsM5zL⺻ǩxV\2Mby' џcƤl)(-Xju:ME\ǧ-#%aCH`s*>L 4<D7T]kgAeL@R) (>)|x*3/m ڨ9B[xu}:!9s}dIdX$g4I]W.O/B͈al'g&ʈ1ӲIv4'vg-*HN);5p,qzpWnP]*[bDGs%N,qyi9emIM}8"phjMD([K)WqmɭSH!H]lѓGtPa mj5Pwd~jL7Tbjev OiMp'm=W0_ኰ4Xy=Rڬt4M8kq[ *hB zF}zR5x: LŘى]m9t<17ŇZLB4Ũ ;hz`HxJbpt0. <`im4AD7k%_o!gݚ,Nzo[*Ί4[7 ?#ІK.IuSSAF&E I;8G$3߮ca6e'tZ> -uNlpla ygĢ0'RAYlʚ.|ldp,ҦP ( @T]M-y/<̅L<(opP߰/ev\ 903#`/ ʛB9TTm봔3̈́Ώ~K WY(V,#b hSKwG![ X[T2c5sTAwψKd)&+ǰDZ{C)&( ODZ`_5©x [ OΫq[(&\(_[_:>ʞ(w@5_Z ܀s qM*\ ͷbleZl5,:jt1"^Jf@ĚXÀn7]P>ͭ3Z:,.bnn%I9%wQ9tNÛBb%i\1ۇXSbJqŕ+lD47q`zQyfs o_n&wi2a7eU7 BsR0248;Њ?`4{M Q_a+m*P)%`>?N($ǗKsyxyB5C* Fx0< m4޼N>]cǹь.6Eyl;Ml|~R˲w7:R4z~pdn*q =Qܨ1^>: Ŭ}٭B;qACA(Kl떡Pس4fDy:9#mU vn+K^]D"?3EEL削B_L ĸe3Q1) ~కȷ{څz oSȊ&3gkYr6o8d k`P8#!㖧EؘJdQyX) eg!45DLo9e0:9g]IK3g ?h%7< & ݘg;jU.G9IEW1A}g(/2Vw 6R :-!tr@ڤ6F07|Oؓeڔ9;[>Y㋟jt#d" xEi?æ,$ibjH#r9)v{7 i覃 ]PqNJ}dMd4{oH:321n@~Ɠ؁M|,`&5{@{:&zELڈhעp4D`+ko VXO,{EODX/6}!bz n5zYԂN8S#}zUCֻ }r beẇPDˍXKeSɪuF5,QYE,iȮm!F0]!F;Lx Z2_Wu_XG/мht5mLRda'Zl.;]lS-7Ntw0 otM|1cprƵM{eCApa3o&?E@=ٵq{'Ig_}u48PVZ n?JCMpѩAnC2; =ڿ|9sAzigO8WY_Y׆_d%:MɀXJ4e-bLN$*ȕ\Zx cW^Gb|.!Q#$Rtg{~mRt @3,O=joႰ%- uG(]fX$p nc~ZH{ ]ܸ)˹_>k h}n/ͱbgnеۗ2n5Lt>{tLUtsJMp {V+F>tuږ3ǚ,ooApXUoڢ݈qsh</Gq_3bJSA7{uY/{RHMiJE$yI;vA+W61wZt=3hV번f8_gY+OU.ȆS/mCXΜIwaGd%g<a`i\5NY6jTU.\<_ɱU~c uF0]d|,QyHk&LzF.tyE݋Mr;_0T݆׻zKs{)s*cv1;;CR@P┣bV,!Y#nm'<qw=\*^O97]hwE8,v '@x p@ vy v)DxX%*ses?DNVPy~f]ڊ !m8cq۰QfM8E>Xxhx|XpY X'C, ѣWs= eߋ?ZZuOee@%r M)#*MKRl *2B v#+~㸆 ۃk5ϱYQV~jSWtcs Ŧ{U!vD̛/mQ^` *FB()=y_NaG:Rdܗ/AiDw*LsW9a!ftqs6 $ư\ z/@2-JwzNjqo;_ѐ>כTf^䐋}U<$-ЪaxgbW'eY;/ vaW4 ɼn8__omK~.szG3%W5}:@LßXE^ݿk޲ʹ*0x`9EеuQ4jʅUx)d b 8\cd-clJ84;I'hc9_ K}1KyT{aXXm6WZꤳ&sMV@%UzoȺeqPj8U)"7Ȁ|h((a [oxxAa<;zM>ao?QlD")"5,$\`RbSHG?2|.)/E}),CaOz 0󳃦~TML$`g|@ױ9OF?ٿX@:fꬋЭz# (;+!O=iRn?4NҠ{~<D\_py_ 0gVY{SqO]ꚁNfGQEHN=$iKiuǦ=ZE4AmBqbYްА˶?e7aLq9X+} _= pɩ0n6\wrJl òqj,p׹'nӾLPnM_?$㶘*6A`ӓ` ^UnmHI-Ǿb,F2ZgL!z v;n~߬ ^fd%x>p/Y%}"~0L0}{V9hS0Z%dpYw@n!銁#^Lz8s;bi^`c/yH62pME2?#&Ykb G/O],哧G,gI)plLg@V,^Ux+)hwsl:3Bv#iwsQ":)Ya ۢK4%5+'e}\"5:C@wẑĕRo\CD^x96SkS|o9K•^SAO1R5ѝxĘJ3bM .TI! U0*Kwz,+ۆ-:` za43ij!\ئ xlx~][PpT ᚏj+a+\[|u-R {O>ևok>Gr'p &A"WyKΆP%_1>|=AfEYDƺ$+XB"8,K̴;/̔ovJEba3{⹃Ud&»›!Jؿ_L_)0Iz-Kv:ytJOJ)pۡy}ez{z09:'?? g jߟ! eR>؄H)^04dUyB[iKT\T4GQeqJ$g0C]hO ;aP޼fym49*[#͂yzp ˆ xzAI'_]2 \ZƄAa6\>zX|PJH-7w"0h<3CN:>cƿX=Gg"Cٙԩs$\t (h"e:Qgi9ڛ421$L(c˽sy#u:)~3ndӚfpmXy&1 W>僫9U3~QN(It.v$)ZsF_9>ҵ3#i/rEO<d _ɚ#q?#RӑZe*KdU]$]kGBI#@8'78!Wi"r-0,5mazN=pOބX2Qbhr!bmj2XO\_[PcNW9׭A8AFUAY!=FZ,װ`?rl8Ey*o2V]R,B`87{~/$cO XB>XG)#:kml8 }u< NI"Nm9ZO$\F܂Bއه8h[~Y[U<@:Ėn}+gYfn& K R-gP\`l.i2~JxN 3"qkuER~pC0/-ԁC@rh! / CS"j)16TM>H)S+ @|Ǜd[Qa P٦,=Jl0?kM\k=5MO#5<?B/x9~6H/PC4sp8weWU "~?(:> dLmԅ´u)XqszLZkb缝NLF ̩4Mm_1o6SMAڳ|!D|ibuOֹ%h RawhBZb~K\+z)硍 ^aXuHF&F.!+@i-ş/(쑹2F zA+]e*gk3IT'$FTNiA s ݹ蛿vP''NK &4ϸe|"Α'Aן%5*r,ct '@\Stk[ mC> Pi h^/> ~D )RU] ZL(UG\'P%#ۋg7vb-hl@u0mDE %Ui3\NQ^\~| _A4P;iP_;Z˯ʥfTn4egOL'>DuK]:^ I! xa@/9Tϔx+"ȳHq@uQ"b׿g+ 'l#'QjaL?OȎ5Xȁh^<+'XW,3D4YQhQj8?D.@|U D9ς/F>:w$sDc Ҥ!QmdOpPL!4TѫͼuFjx2N ne#;lQT{j-؅;_Wxy]kZrtTTq=C^Mmn]FRZ3KjxE'O,j0#~1>2?SH6e`]XvF)[ė(QB)]YcBT{4aq_zQQ~?X2F~,8ݥԶ-dYwU#7F.kktl̚@$Y%*()l3we߾f= dia!87r.:3v0<ŝM> H>Jn8>!a6uO'AQi=ԾT'{\3 ީTF,<͙\4UoGIܦC 6}xgNp@|q28f^nɂY96a\3ds艐V L'QgUXxZY0SvsA/׍A07b[Vb./I7RrT 0Q ;8ogg!ʖd?sUjxRwj` Fඵ%eMcWY;oNѐߤeiN)L'B@PgG'Wf;}O̭ԇ$B6OwҘܨyudH #u9I+ cj*:پ\͇4dpOD\)zdrO@=nmF`j{C2(^rz[YpWN,t+ٝ"E0@;Iym QPb Fu]|^?1 a K`ḱHh^!IҖN): AbmZ۾\݉ q5`ZK-iq: VrTU@OIq/(ˏțr1K l UwS;mWcLL$ !M}Xlj]d,㡵sK2TzHF5Q(f7zX9QFMՙ2%bvg7UwY:Ce] v&(!9 6quL&B[) TL[XO:%66WA9YЄ>+u#"ّ&gz J%[ L#i 8@iɳԇlft1HJʮ"d9e|KtkvoMpr lo|ҡgGKa_m1S-Opcyb *?{y3:~0߇uj򰥑ܴh,aˮ@ݯ)!޻(۰lRAJq!:C0~fn(x47`n<;9QQvSpn[x!A)S>/YҠmi#H6B1(dP賏1&~ Ip@I#%v‰L/wKG?&%}d6/UO>*]<)P ̞`ۋc+&t\*磓b ne|>LU( C+z]ɭw& mDsّ(e@9, PC`=7<)*jӖ' ƅ29ӎ+P%BS/t lr.7je 6E+Մ5g.Aȿywӎ27Y=+)<*L7:_IqϪz(hA@QؗahjPFP Ba.ar;7]t 7`fCV û\u:cI7AHraL/GOR@q@@)3\"2WMd;߷{!#NfEIo֢s,NQ8­X 1sd eEKMX[*!HL,f&" SYUt E'A_K@Sx LjO%ӓniP<~EȠ^5b9Fx9T`)&:@@1v3FP1KǙ~Td]$Tghݗn_$gFĿ|2&"rb])}`^VcMu\;M,zH0TE{DtZlТX^Z%m㭏tʕۡ*uvPa/ C30TqG !9u"sc=kvwH RTh:=MͺNFצHJ-.\ܜpXEH?%:Klqǖ\{!{KgY0Ft©3b %At 0['qX̘;i xjTF' 8k2*Iz%m*7PU^lx>*Qxr|aA Ϗ dbgѵ[,rE:bRl;?Y0_Fw3Rߜ|0 !SG% "fdSW C;:η*RXN>0h=p`UsU;HM׊ |ѓu U3$,E^ix6txLfdpv4H92E'GosO4jp12sT #}mq;f+7 ˞۹} kEX@֯{+9s:M|Z}W(ɧ;#V: M?T= Rv6#C12IsGV:?hՠc/Ā:V8.g 7P (`.{(x[QaOjЗ %G)?tՌD]MV`F  gL]熘,x/]WhK)qH=v%3;Xڔ:V$˾^ U,l.ӆi/M݂H 7ǩ5ֆ󦋚wox' =j$` e7ME# qm…&"j!FPkUfcp&Uiv k c!1?Y~ |*HOZpȥ) -ŲsT_c@Gz榀m>"Uu94DQ{cY yR `K*bdnDv iٕg_k:kƞ$8F܅qѶɈKj^96z$ִ],.3|zspI 4"7BMCv<Λ^ h5A< ^,.iݪroEIL'X1&kHC1x*К)Q>Ws>VEְ[CfMeڄb=)D[MngtRH©xB|-\.0>ܐ?~#ts0#t)[\d%q4a)vc 9 Ԏbp)SZN5KHs*υ9"FD9@ܐ["Bõwmq~ / !U w0/fa23t QTD/7s4@,J? OpaivF Yoh}NhUp+ bn=pet^%OٍG/#So5fW`K¡!hYX+6^:})s[޼5akB8΅nepnL- Ae_Ž,ŭw&G@yE!b7] [̳,wMۊ=LE_Ic'i%OӡȄE"EH$z=MՅ^+c9D^TАKy}lr)},W7>p95ތh,wz^&B ٛkur-kp翰揎 XbCy=LȰt}Gc(IYg̩͈0 pܗVȎXɣ^#B57ۼgi%<Pg?K*@wK"?`ҙ&uvQ3&;KxYԥTǡ"ARʰ!z+hJєҒ$h7ĎΪیZ!?R^/ gSqSd+K&=(&$Q`ۮ|i lurP-7Xjڽ߿ʨy̫wMoOx rJr!kB`z9˷B݋2oEض! <^]rvPocIqIK8*2ϮGپG喥q$k]9j9SaO01Uiav 1LK\MР{Jyq}BqZܨa@Kj/J+N][Ӵ|['gtwqdhMkoQvo 01?QhrJxi u@K4휇)D KQ[}ӝ-2et˦~1*Z(i`«*swa*<_fj6:gwf zcu[uiHsLY[nt(c͈p8&(:j +D/4Ħ6"ҙhBcZ4ZlNK&e:ĤnݨnZ0S#w^c^*H, Ih HYV94]nC0i-*m/?'8EU^$;[>B_EAONLdc?EƺSM8BGSYG؞v*{p_Xcu2N vI{_(0Jq h;bnBHYIA3IdlM_{QE =AK[:)vkfZ</&&,xmcISRnn^ |g}6+@2Y?a!}J) Ȓ%FQsb!iAn\gQl(öYzH!-+,!`n0!"$2Tk|4ߤ\2""YS@Ké`Pl!+}< ookuUURq$yҕ&Md< BmN&XDj sv~u^y$cuy- =8{݋`$IlY`&[+0W`414krM15?%sWfG;IІEn-VEكW2®)Vh.HK:] Dޯ5!e1,Z{DRцnM 6>hqc_zsRtx_g00ထMQoCDr/=Ԁxgq-/ \\}z;1"{&hldqPJ\+,C#~2hӟ+d`(u7[g}N34gp&Fi=/@yX3"ƨ ֙A?T t(vyX8 Rct,{ Xe)W#v`tk4N5sTI˒6xheq^Gcmtļ"A\46T995|4 Bf Ќv?$OneB⏄؞ lC=N6I'X7CPgNV$r롻r,W:UsJ $4n5zc]ΰO14 ðTrߩTA/Y?<74$pJY aZFoxjnPYEQSPכc sgHZ%c-hppE,yK_p"͋(&RN{οPZveFeOr]T9s?#48z3<T0YKo*1 tZ}kL;Q,Vg/~%6vxXt&b9 ꋖPl}hH,MNa!h?_rGN$_=-A]d6L)a! |)L_& ? Dj1)1i&%< [2ғ)ǚߖNVbyxAUVHiW98V)9:'3oz]|BP"XAP%J)@v9t&|45~~5Pb=5r= v A%*a0}~2Q$iji;]K+ǯdj(9u }f܏ya^ W&,l禙O-.'AFj~^(%@x&:"WĽ ѵ3Kֿzŏu.[Xċ  h'Q" p @Ep+2Q9hZ0_#ǰ`Ow*m[RL A`<\JMt#({{fs`~F;KMpIQ_"=P Kx? " 6A#N"ɴSVOϗ1c0r-f=h{!^_k%?uqy4@M[&.)@T.ON]{.s ]"䎮ɺ[x.u'.b_Ì +t-'Qjf.Ř5 ,'G}\IN"f(ҿ6ll/^[:%scb,9/Db̭YkЍy{-I+ nm߳pQnNX(RXQ@qjOM Twua%ED{\UcIE͎*о?0/)<\H]W27ގ<#9).}0d}Zv4q{ӸRjf PwJFbhy(02-1[|qy ĩќ^vdԠ9J}冦aV9!nM~ɵTc!`lW9"}oJebV d;@ ꁐBQ}U+4#=a}!*M_ ܓcZb;{Epa =!i1( WjQ6t1-j {QV㇇ž ~ =E=mu}yIGLjQm_&ǵ8:NOb/kĝ"{sJؼ M_ :ƅ̅WgVCB 4#eph}ᰮ 2DŽaa0cyB-CcV︀Vc="JVr=+@hx3(*Pr #gl[&|[vFU%!豿,/!uT`Z?́RïOdExV4,C7I\iQuDm U O69TT(`F8b)g\]u%ip*F/IHOSo`aԑV$[$?@i}*DWQm̐KЫCqtZ߸@kpQ\)d3:|f\(t$CF]o/it)QvlQh}R6 (kxi;ŸnF%s̈5SDLYJrwUbܰw>C.187 Zk?sTʬ ] Qr㽆,R|~/Bb@;+cdrJ}*Syt2! N1,h]E¬vC䍂w~`U!9h- ה jQ|'mQj3 *HӀp~c;tWcUQa85`-*Mz5gŦKKo8SC#,O֣/O͇\z z d'9/\@%޻鷄ݶ>9qUk!f@^Q;$m)O 3Rg hdrTv\C< )QgX($9T2 lilUl\ؔ>6ȂͺnL:qP$!g C*q# 7.lqH,LAj $igz-BY ,04|A6]gZn#Zy:iGƶYųkÄrRX?i(qJ!Yށp 3oè>@:ٿ%Ku}CA!=Ǫ0o6zg=$uA;%t"Lkt0{|v87_`e!߂*_bdWwĊ】rn!$rVL@d.D-Xϕ=u%j2Ӷ H̢f-wM^,v9qL`~YJQB# J'kZD^o|&_fXFns `[{xzHܐb"mG,k]yDz)d޼M`2KA+;w*X5An&Z]!!׃8\-ԫ] &uNZ4;[HsWTT#[HfVuڊ.c^\VT ;CoJ-[(QX:6T1- zv}CzR^JLfLjhWWqИvc$JBdI^R\5 󳷬IUȐ2S~Pid ]8>`bppiJ:a%7)>/.1 PGP{!6OG+$(z %=@:t]SqdrdnyCU& ca$Qj[OD~#-菽ΡFF4Y }|zơ)Rr 4+*dWz4JqhL$ט@0⚳h@dYk!_#Y[-/ n8OgS_km_i1V ?kQNZ62Vxg2wgLc;G˅%F@تOۂ@̘ @RI`2偾=l>^6Uz &r#r/6ֹ]{(}#?5qH\)-ah80S̛FcESF 5GwZYKө5ǎuNؚ<[ۯ@]¦_p gjũJm[ڹ c -}. N_& _'I7l@FGja"o%}\ZKxAGtZgdLJkK$ ŷ߿eՠ@ Ԁ e0$VTZ޻ lhɔq3wS&Ɇ5”,%[&*~BA!>_4E?(PSԲr^a#{$ʃ>u#PA3~ل$Wq$8 Lܗ]5٧n毬,4>k%Hz>Ei.nʭyڸrcAVAm- "yH'mfr.UCEH2$y*)?—CS0g~x f .. .8q7'IaG,ʺصྋ5cinW,~ڟNA.5c*-`QwdP!rR&ޚ 9ƴaT7\Vw2LR'(mT ) P3?QwH1cn?4ݳzs A1暰{[(Tg9L`ػeEP)s?B+ΉN li#-#-c/V2^>|j%ȕ;-ۉBJq}ן]Y%m\>pknE2~!( vP\&>l8i,>k7 P*IOnj]'@/|NtMuƶ ufu?aFIK Q+PZPq8/L"Ns|{cKxQzpgJx^wF-9y?;*1`$l,nW"n0{" %ҘAyv`rT_SK, 7|L;w < \ 5@C>€ơ8vN\[`[мGmԄ7S(l)ti™#s؃S'C%VB$M1*lŇB/p>S~МAYT#6Tqq={LG7]Ej*ٝflFxP׈x5e**L͚r+JfQBmҞ3M~ebUm Τ3W4lՊ5ǔ1>v_a6+DH{RWgf[P& +iz`TNUw@–}qaTT{ v0BF zt+O~b"<q Dۓq؏Qy DAֶ 0yudqIf܊$O GD[ŗ彝cؘJgFg<ϣ|MGeïm/p"VÒFɂM<#TQa璺Qo=f؎B֭Gy}f>NECH{W/S'?*w@cX7d;`+}\C2it$yO,!uk63c8rrwn%.BycGթNU}:y [6'+Acy+*N^ vg ihnoRxMBqEjWrp'T>C ԅυLyן@D b% K+D,^;hRbM_HsYW;,E]=U̩}-*|ׁH"Ȼ=W+'wcgo4"{Gnhx3Dߔ7/!ʁ.Ð^|#r%dB-ZnRs^TFnل]^ k:l[D5h4@ieO]a"8wu1 JŨ>ըXs)L\MrrC+O)U.Z.р3TaBg5Pc 8n5\OU݊y(6 DqZ>Y noW[&?Q{ zbA1-XPܥqu/㱣EGG6EO̹UJ8QD4wIԴ*JoWh>aaTKhPW]Bfx,AcU q?U9@,ʓIړ4pnq)b}Ɲ)˒D,ja rt;s3iϽF쑜۶ӳ:{ڂvb1r’_eL{L ы>)mic DRi Rwn'p%:vG?niHt(3|Qܚq5ڬ9RFpg:w;RXP4`Ian?PM,_N'@U9vF g?.a9zb\G,Eرr'CP7c{b.hL Ab۪;ӘkQIbH}N"?*@d1 YR<Ӌ|V*\\ ǧ}'lbĪxEJp|얛%ENdd 6l҅؞*᧯̛zDKs_rvZǜE@V C➷YMm=|>єBdH ð- -</^=+ KOXw93MyFU︣Q)ٱMaZ+;.œ iwnݫ>IwEQ[ ͚{b!Iz%c.\r![jψmrvX筕Ll<|3[/^onKWd$ѫ\(781aQ}7騏nVmhGc;R~an*X^_< ~ms[r:\p{ANHHxU^E`7ˁGZl` tL(5Cw#RZ?5opC 8/=a=b[|~C(#ZQ\:1hj9=zZ+ 9COs붰X@^(~iK  pb]' 7 )ˮJ5 EaJt>0j uzX Y5ɹ[oDjHMbSZZRPs -4g(慁}czppĹ"|\d ?ܼ9]Ⱦ blMV~%iBPI۴YhDxk 1\}ˁj|{nCآB%A584EvVcq G.J*G_luChn)(zLbN_\*$^luc#35dqij_x³m>S`tiR˨\gxYFv ehFI̺z. ,v-m J12`,x,|-zz,-hϢoi DtF |ҟ5B,*к4ͨK6QVZ;a~ Cp㲊Tf1X=`YqmJR:-4 w8طi8R\̼5ajPIA.v-ə53-7TNƊU'<CӲ{ ɞa*M!t̬*oG"6LiQs 9nyp],0⬥剐 GjlL%Le-nO-Z;񅣜M21].ծL"nrP?jq{/ j֥[=$o ݅I{9Ԫ/5P1|)Vc9k-k24d:Ȇn *®;φ~sw3EiF(З)T;.mN\(u gŮNHEΞd[^-Zrn„^ma ϦjlzQ[THс8f\0D]}@c]pLֽL +ewowkKz`\[*z.$T!HHׄoi.{1Jjs#InW""M CYIoYH&b)K( +pĭz/\AaP x1Sx"xIšK9,\p ŭcZO3Y𜩎-3I꿯>'?(}3ɏAku&g3#,6) _wXV 6& "cx?)ӅvcD|Gl-wzL;tN ~ɼX8ixrKJ,n`@2|ik &!k:_.Xq Dm?#VV剂0#;T$@zGHtp8qY 3Zmwt4sRbd(ٗ% vLo9ǽk~wwʛJrpi͡C:(!4v͹ $)Ԡ :-i꛳O̾4*J4hrϣ_ez3&7 q$R"@1虗@,<jU۱:)bh08]sZQq&> TZ'_% 9mt:c6ئk8I:Iw$a2%J`uB`d qlZZhД&=Z"#}Ub$-QRc.K4Ba سhrZG0cx2UFD fD!y2DÖׅc4Bp8NN],Km/=2^81֊!7 )òGk4{7;d v诅5C  [V YZ