freeradius-server-devel-3.0.21-3.6.1 >  A `,'p9|qxXt7V$6\ ( Qm¶pGRI"To]RxaF!(=&urTar`!;"8VCyOO* 3Ǽp9G%p ab&yt+qIEj9.UP6>+(CѼu20LIUsQ "2[%.6.k%3~x RJ @!,ӥzZ `{V!i<1.Hfa2f8e0ea624416cdc84300acb3be6130a84c0f2121b5cfd89e38ecd1f23b01cbe8b9da231619e8bcbbd82c6187c55701d6129ebɜ`,'p9|6͞*Xbm_ARm6]E4z%/t%k7zUt~53kD?N‘%y`ߑY7+=CHs Tצp"^S'![ r~E cރeUsEvaX1 ^1 KR1,zD e|J GjO?hJ 3vifK)AM4vɭ3> X;T9GXڶ4L3I0@)T˃2[y2k>p; ?d! ' Dpt| *08GTG G pG G SG GGG~G(8&9L&: &FaGtGHGIGXY\G]4G^bcd5e:f=l?uTGvpzCfreeradius-server-devel3.0.213.6.1FreeRADIUS Development FilesFreeRADIUS header files for development.`,ڿsheep64BHSUSE 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/linuxx86_642R8?| 2qi r +wt Wm&~ |TK0LW0GUN0x.S!OTTqwY b/ A큤`,ٜ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٜ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٜ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٛ`,ٜeaf076cfd7bc6a732f318c12f477c9fe28a59c8ac58302e216eecd1afa22b13971fed4945734d04521c6e3794ec978a06a1e31fd54ea7de2c7150d218f6ca75b61f82a2397a91786f76e78815dec88f1161a43c99f2a5cc31a80b7a9e81127f9a970cc6ea0cf6c90358da867431a47765f1d2545c9c5c511fc319af787ec7f4fdc8f8333cbc4b156128456bae9344bf659a6c6e94befcfd2c824c24c6f607e4fddabf631e1ae081f6b24cb0fbee02bf169281697b25870eaeb3984117fc424ab600f82be3dbe330700cfde195134d8d23f48785d5703ca23f081afa361c63f0712b6bbb0f3baf16f71cd778a5517456ee4d840ab5944f40a6034a219bdef5e1b81c376dd22d10a5436f4d1fee9224987c53a3a17ec95485f579ee71d6da3483a0d8f97f8a8aed80bcf6740a353da070fdcd6443aefa6b9acce6b1b8a16b7875207e77afbe9cfbf9c37c24f1172248b3934f41ff8a60980a15a6605f4f4d82efb27f3e7c083b482c439626625213b9ffabcce8ef2b59e9290714e03f3cb22ad292cb2167411236ff67455e4033b336240e34b89bd2d61fcfd0d778fd029c5e06e2e74144a69a7aa49e882a0210fdf1cbf7bf56c28b2a59c4d6b35424a482d249d8cdb30ffd08e303718365155c8810b0441f0ef5f8e924f172a5b57a05d5a6c994a2bc551a7bf24e232db932ee56cc35df0befa44558cbc445d776c9527ef43ba4c36e9f8bebb05a74cfadf58ce29c0307a8df01b929882ffb7fd98173b0793c5db66f171706710862edb5a2e4d6ea2a79edd7769b60138981b5e30b383e44276390a77423fe29ce757d681a1e2599ea0ca122b69ded2805c3a3e2a298390d41dddaabb24cb0260f45a111c8a0cbcd516cea9cd9ae9e44f9efb1963650ad611a1b585119f6f56d2b796e07e99e24ce0d8af1c6562fa287c34c4a95a53c2acf2abc88c3b2f3ad981149d87bdc06185bf4ee4472ee494639d0ddf81e8ffa3b8b495ab990d4ac7bcb8fe8e85f40ac5de4476f633d02d274e20755c6709409518fc4bea7f056fe01f62089a5cd2ab3891ab9fad7a623ef8c9a47eaa52cdb1225354fee15db0ed2313fe362119cbd20488d8acdf96be0e8c44e3f2197d943bb7097365e593d8da5ec5c7ee47feaff4056ed4378f76299c48c62af60e6421c3bcee4eebe311144adbe8ea4635b99c494d2616887a889a0ab195f8895d1e495b8ac2f30100c829db2ea58658a6b2ceba589e0724c51ec7e3b57b3cc6a36243fc148971781cd1a1bce26e83937bf77f50c9deefad8a54cbad4cf27cb98de497a1d8664f8d118d970a2dddb31680d1f1c5a4c9338784b823ee937a19451a865843b100da02f2076742a64e485c2773b39df5b45a1dd22345208373c742c5f65b156b287136fca79c207e9f32854847645af8a0aa1ec900a81ddd6392cfbe6edc200df33bc42a300c0655969af4a864e2fb610b4f50ea3ed82b247ccbed7c8827e4e5c594c7cd0b192268e3ddc3d0cb51ec5202ed37ceb24fc880bbc8898d0a69f038c7d06ef553edf45a95b24c389b60c9fce513708ad586d6a50928b4a88a8458be003ff9fefd564ae740259fe477ce001217c0c3c8e4d00089a695e6a0e3d132b0d3c48dd7e2f11c60fea633083be7243fbf925be2e42be0c6685187858c6cdaca3ca61bf553edf45a95b24c389b60c9fce513708ad586d6a50928b4a88a8458be003ff9eff0c06a562d0eb49528849a2dd7e747b78975492e60bd368822fbd5e59a83c73625a02462bd14adb38066495f2ed9599c705f94042126563f94016e8bdee3bf495546c15af8d85997968d9100ba9b82563b60a167ddfff99f32bc032f785d52c191e8d5e478efad503f360d91239b1bf79ab9e643e33ad32d071e86445e0a6cf1e13050768377f0de0aa1081631769cae767bcb309adf2e5beb5da834bff46ef553edf45a95b24c389b60c9fce513708ad586d6a50928b4a88a8458be003ff9452545863795b33646c1fa1608791e6a47caa8fbd604ebfae4ff1c1415795cfd363612c0ef13e44644dededfd16bb6eab15c800312fa46e93a4112cb285ed0437523051863a55a8fb034b8427ec649ed213bd49ce13e2a0545d549b634fa593eed6a795544e91629ab206b5f6835b669bc2bbd035941b21c69b8785df7a8ff327c6455fe53b4c2662864a6cf36e8961057ffee949015b18722aba07a99eebb8a519b664c6df430254c02e4323a07fb70b285b2a11582f621e3d89b1546197815fa806fdf5c3ac0373f4858943b223445975594d6a37e65c8215c6646e13580bbf277cbd30085289c4b8f2022533ab879afd459fc21427f08907acdf14c185d5c4c7e68dda54d809f32a60c0c18a1c9feb157019efce849f4d94e81cff9926c0e58da6c5e3701fa0e4b5cab71f7745c7ac142543a21e5c00f630a2dee09449d7c4ebf731318939f15117e9ff283e392ab7c543007efe78ec55bdac9d41d1c014509a2dff108da9728e7f0b58a14366028a75200f0c866807094ac6acd38d77054f9e97b3c46c775b8753d79dc8c597134efdb81275af27fd2e3ebeef265cd5a9309184f1b8635c841ec09fae090bdbfbf65ffb26d85fe4239ff7e90927cbdaf638f784c4d7444c98de9e4abe06a36fa063e5c425d8aa863c4005adb9ea6350fb557e112925307cdf22251c366f4ed6224961246b1ea4ecb7a8b3009055a405637f6062ee7e517763f46b535664a65da7d886e6edb4158e92169f7ea730cc373e56ea066400c53b6204ae309868fcf8e2f7309fab29f844a9475e4b6dfa0b8f8f252410c4c0a205325e5cc84838287eaf7abacc3ca3ef404b856e285c5a48cced79b51d0d2b5e5aa72f84b46ae24510131399cc8edbe213f2c497bcbb41084ca65f80e1a933f465ffccb638df5b234eca3a1fb3d3a389cf1b5f33565b070e542ce6fd2636896639cba23e521f9b5beb23c7ced4955f09037b2adf212bf2799cdc70a9193c36520dd65a0e8cf28a8870adf8ff6f0c6a6ce62c952ad3559d3980280113ef0de636436d82169f671f04490409b677f55a61960e695f9b6f12dd915401964fafffe5789f4c5be1126146052f1a76c230619a1915892ce9105ba3b746b45be4f4531bf6e25985a62c26705b02c4bbb60bdb11a9f92f25f5906d5d6cedcrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootfreeradius-server-3.0.21-3.6.1.src.rpmfreeradius-server-develfreeradius-server-devel(x86-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#906682sheep64 1613552319  !"#$%&'()*+,-./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_Updatecpioxz5x86_64-suse-linuxdirectoryASCII textC source, ASCII text1_-ԁʴ< !utf-80fbf19a32ae08e47a6204bcfd281e3d13646262fbd063ddba6e44a626d106cc4?P7zXZ !t/k۾x] crt:bLL bgLrIC95{n3rp g Չn?.$|<3d x@3IG/in)δ2Qtn*Jdv2OT?1,5eWj?TR>~0F!ާ)mNjW|<\فYX<{-11Ѕ8l4^&oR6hZso fI'$GMoG4,%`rXpqJ@쿫6\ ?/w+L=h !vx2:[$^J B6BS3M?4iX8U1TIaE—γו7q\ai=>93g,q:WJh#} x0ՏgL)ij aȽ2!V'6}MM6y9ʂs3L5 Qȃ"tR *poG`\N`xT ._BRFv!M\Yd_S2&O5ЛP۲tiHOmCgk NDZBb唊S@Z}UBHG;wjDH3eLyp76-羶Ym9# Z{ SH3ӳPP(g``)'i/$*KOS񞂹Ҥ1SXvFAALN<οg V {R1pc$r t; -(a&, y[0ۋgHuźp%Ӕ_"k4-մդj?%Rhvzl2`<8δIi/)'f -A_2YQ@9G^ZC*wFJ'Aoz \(LL hФWbқJktnϟٚքs?^>X{a`kӫ`bvcbaPfc)~Yό8~_Y꒫3e&bҘ`{x#HV<C~̼/\lkV(_EvHm}@׶((P\ Տ.pM*?ւfُg@i8Oۊ>پsٲ@[sq=HĖգdFͪkgQܦJ#IiJ϶+<'}C&G?;T6'2L?!3<^]gI:%Ƃq <w>zS ‰ yt}ZLv a6;wsS$Lݴ3^⯻i 1ϕT'qVT $*t=v{Cly6׎pA|OM1po|^5V֖sk}mWXgp=%(q8R"H`YPέ꧈ +@-yU1&SnW)3 -7hE\| ulq1bQ$T6zx4'˭%΃j?e,X>NVe/ $x튍}\m?bޞj9& 5r,d9 }J yTǝUEr Xhѻt> 9߯/)R.pOKi!d'`g J-Q7_=XP/uӒiV5Kq4:wT\Qvb&Me,@tRg4i 腉EM^AUbԞlsS{0V Hv'xӫno' uT l?wzq }tŝ{NW,?\Jm0 ;X:wCɖZt wG|U~|xg9+lL]2;`D'  a{[?p,e>V'>[ַimT, `ν̜[4j<~o%頫X#nI  .T I*n^α)/bal}bl(c-ábRbEIm]2-+GԲ ##?#jG+Bĵdo-Ou* z DC(Lm{6g10~AYyo.%9Z 亥M:ś̾nu\%~' k}tGT=עm.;9}Rx %hܘZ\<*p>aW (o6UqŊS"{-X}'p]!fuA2B4tÉS"}]He]Kvu"գ$$5p/M/ x^QDž`T5|I aYgD;JQ z"L V -qq"a0Mgal  Y^x "e#FW)}sNc{ )d}"e0sdtctu}0[X\iouvCpMXbp'M]sxj2Kw6..Yj䓡Vcf=" 9PTm=~:f'[JАo>L$eSkLKe|^򈈣ፀJZDm]|K'bbxfzoi^qweO} =~EbTђIw޻T\ =iZk)xqoK˜~PzR4Tyۦ^bӕeAr!IR8z5R&2 4Ed Z[P :7 lS>el_Tq N6.7M #%_ou.oŅUaZ x}*X,Q?^>sI1SP2Vtﲿ~]e?V޷=Bfڡ:va# JK- k>r(k[,8s(c[#d&9DX.gyR@CkۿuԢ^+#F}IֺRy>;IjgD Wr -Vi$9jP9w=ztB 䞚$+ ʒLoVȰwNQH!ﵒUu"|JIN'5k8kpkq4%Q|GN@[a:8ՠ 9O C$):A=ʄ+ |' F-lUnq4))do$H6aqw7lN"mV?XLY\_,؀lr˺ᕑNj,gb lGSV0nښj/VKی&Hgi턨 hV Gd1>S7^ D)j,g9MKjLwt?`ɡuY^HHk7Y%π9w mt-LԍxBQpӔ;3 t(j~"e+P+XS~  aM[}hF)Z9!~d98BJ3t"Mh"YWبiE`F1;xJsw-@Pe3yILnLfPD0rs?g`|/F (tmBJ!Ġc={j@@WEdxLgF*W1T45HHA5E=0!WJvPoQa}~@Hz_V3GQ4{Y_|ӱ8ֲkQɱŽ[F&L!Vlh*'ۇ]M3?arX\+EDl" k4†a?,E%-PF6SgE|Tch6>J7i9s<̅bA|`|:C;!5"/=uǿ}}bDr%5L.ETL**k3i+ρ7H֐̟WzY`d -zf:3D_!lHhv:# }W"cA >nOBj_W\T?,QхC[::/zF&7' lDPggØ\5Gh֓h1 kH?{p,ΩB]#"E[K{tEq¿rnf #א_g0FeUyv8>R| 1m4A5,Ua u8پrgcu . ͸to%K,)Hٿt6aA đ@TzqD~HsiF QU8_lDC}_>JՆ)T6׀IvOQ9"ح`,T}q}BL?#?\6Y-i Ys:R¥,z%'Ekʳnk+pIr-չpŤ]Eirפ syFDCV" IF8air02O}R7=Bg|fN)4i,75XxX" %^cֹ, +HkL6ot0J,jp==m|V%黕))@2$^ >sit).|s:& O~5{J2QO?=;*Iy|amGکc/ "q'D"عjzNUB&S`=sQ8W smXh ú -hi+O t.n%b\Ir.n(>#uǮl a?N{nfFΪ'ȉt|#!hO_7,ΐ˜-|XC3Cv]4:i{*uJ DzD*:cCF5{Uq[x%M&vwW/p t,n(,p?E7蓋t;J 7 >;[ N7υ^rd$AǺU 4./x[-Dwz2^6\iQ1n*,_^DӳN^h\}&}2>C-RY_O6KQ"^|m-o5cb7Ai+zi{2ջgDD)'?[<ς7a̒j(r(Y]f ؃_%5vqө~[M@辅9H6HK1Bn@DZ"&W:5E(2֖(0mjN=F̍xZMJQx(3hC$8htZ;` $%Y8`{ l9mded#K-='ܹ#^^#ON½8~))0FDV^T;nݿ}to]+Ԗ[h=*' t:<02"\` A]H3[AHv |vriVΔ:42+ڡa0d}JfMFDk4zl&en,v&[4Ce em|>ERĕ86 %/Rqk~ Ļ.-{rJJ?*TY]jF W @~Z6BjS(v F?4=^>nuQ;BB o!c]/uD7֛@iIRnl$TYϻPP3ˤ:]id:$;]clY!gU3 n2107-2nBo87q5v)h&k_O l\ {6 P2NrӴ; E5+r͜_=Ѣ@U[&A -|_wD@kJ8V+}L+ 0xP,F5;]lg0נČ{XT5s>ɴ$!&&mnZJ#%6qGBwwy=J-/ `piFTd<4Pq4XyBVs7M2|TWZj.{yr2Ex LXXn4q,-ʦ;g ;)kt,ic:RLa1c/5ᬐ?ݞĨrP>WYW2z BmI=G@h<=lBdLvh䷹01W#YrW2#J)XpTh,OhEr5 A}̂bZô>KDa:eE0CX=x#1Kkљ(|اfĝA;.n=qMJ2=ĝ!C9L׍9&TnC/4F 7ˁu*AH{{!|,b} =~[\9aBoG vl9xJG'Z_*Lp'+&N?a9ҍc Ħ, 2&/kfu0գ}@|,) rԱ}A> eoO&N7t9n[n tsuE|%2oA]jb5```]WV̘^ M&.#7jA)|/Rk|c掗;3Tr).=>+º{@ 3)RrK%2R&RbŹӵԣslK#<_l>k*U5 ]g"偁#(;jPW-Jƺvg1{X.#ضZ2ʡ\7dZ/*6EHjdӅh햜>9zx4wJ#&p_'g)s1pD%e{v#b5,:|+[ODzf WI=ZnʟYQY)."M;U#TGL \2V 6H X.CfQln(^/Pv5L( Pg+LfjPi+=׋q;G?< $/70={e ˫d%XyМ7eTBb |-ؒBݷM@ n%`{qiU4c"7ɋ-iGRR#y#3`a2C (([I)1u1)Tdϝᡨ1e__lZ "6<͠1l5Xe,Jp #+/桗> nό&PVdΝʡeNiD.Fr jD ଧ9r^t|M9,l”輛Xpanlv~}:rWAI`+ ?Ldf!Ƶmq04uM 5SNSf: "V ض7YpxZ]iqW&vئmG.zj:z ":L~_rtc%=5->F7CXO.05U煈"g=nmL0O GƶYac=(Pbelk4;375jyfٗj,%I %{;CcH}doU@R`gRw)[׌ehl.5JPe,lF>QQ^ʩMf])\W&1(Ɩ"#M'XwP(P:ܚzwF{ D-5s;8+hpE͆F?pV̭!C0xI+ʁRȞ11H9cK%' nS%eoeJ;HnZ#,zCQ* C$кmHȪEƀmaƀ*+-m]/W%_M]ppv\aL^RX ?j[_,Uj̓{g1]iAQxXNꀔ4މx6pY4Z/=Q:5#͏@WIE芟\}8@Jj0S8k^/džޯo@jWu.?bݯ I3X_B-z[ ݋hxV;Id5h H*vc}@#m#Ȫj-m~4$N#G Rjהn KHKuz.7y5}66<]![;Q.Fche..BQAl^PZZ#zXb9!0Zt㉸`na4$2 Q7}OXN~ [{4Q6R&h!a)5'OxW {t6s(~Ucikk(mlrO;Ɉ;;D9]4 7WnZ::`="î,`#H>c 5C_Փ'dEp;=yT"W:i|uhŌi)vuNHtMe6_bH1sAn[ UET!?5;UVrу/kʳxkn!:*"Q, vRJ`X'?XpP$Ŷ~"3%"8(y]i +"hUm|FϤ&×0 SelHL:AS{_05P3:rcնIN?<@64b<2ιAķN Z2@Y :3bEW=8uJH)i3] "j&إz{(1 \kb}R}.&T nIEw1U J*X2ւ Z17z>z? `8n1rփ@tٌNɟ$2bqL QGP)L Q $WUU9EAkг~TQݣ ӇTzU}tsUyO~44^,x&ǥ +Sogfg!#=DQ?I:_׼ҝS7XT,2 #W[Jlf֤ˮi#dN}?AfO樮BgזLֵF6뱹/e:/%KH3m[?|"gғ,bπ+a  <}GkE f?9<}hZlBN$]цjwAf9t苺 'u9Vz]7hf(-!Z(w$5Іum -%?Wؔ>REYrLr*+Tv*puG2†%zOYyU@乇r#: <Е~Dc~jSǴqۣK|XENى7RJts:)?c [*Wݭ.lĭЈȁ63Bwo"T ׹ '1,sgzOYPTZ 1?$IHp{9 hŠ?znRȠVS7ѵj=>>F6ژ䈀=r)k-U FE}lHJ74eܿEkty\8&GMj tz4O']qeqtD}ktӯi-(Jm=4P>?W qb7dӢ B~]G}5hg)l1"R|ɲmKQ"i3GZ%4mد,׈&w|J`Q++N?2[\6.@gW,ݨQn)J#&(lhMOL\a2$^Y(?ժP49efo%Jhc b&׿) ێfIc6 1$#̗W ѽhՙ7`t %}V3h52%*Y̟~/\ kɂ/>Φ 0~Md:\ϭ |sRH ^ض%IIZҒu|@}L}"8 n\Df6ʞr6Q8>$~ϛ~4l(_e&!޼h: BJ$r'-~%&{FM[*Jk FVf^'*_GxGdPS޷MoRnJn0{B#Kfjz0@/WYNurY:}}S9p*_~JA"J=~iX{I$'7꓉ 6:jw(5Ǣ6 ukr;q}!*5Ǥ-`tO'lo V(WUTzWb# onz]Қ%3z.\9JA yI`7'wY=@;cr@R'cF؟hJKՈ,NՆ (E2DśĴ[Tʈ_-pI;).w@aߗfrA0 `Qth\sߏbmkh/`챖d MCt}?R )ȿ9YGs{n9e |g ^8g F=W4pkMk!uwirOx%jI{eSA3λ N7$2`f(+ };O2r_x; z?ϒ:y`T$O.61 \;Z?qSDf܆>=]**_ƳX' 7ܼ$X]# \|-~ilAF4/!++~OM %XW4\=|Me"x<"zn 0K+9tantU!`9n@{Y3z衃Ac^ܰU rAg$i'B?čz7=U/ nk6C((g%oN)M|ptbl"5.9g)ЋnpJLarFMۻ.QzLޒحrQr#ѢWQͬ<猸Ũk[ڜ>H 8'd:x,<|̬X`Nx}A|FOk'"n u$Dl v΀V^usa;i1]Wsi1qmiOC,GB&h,t=iZ L`W& Z1P۱> {?|@u묘&xf:$^\igX4-[JEx܋ᤳ&BV U_)L{[cرfJއp_c w6:-Y"QSrـrzitFL(cjUv!?-(ȿlO( +ky[J72kr  XGUYrN=kV\@'|eRS,ȌvC,k1JB 4nW {ޖˏG]`eyp)mIB~(%oepFk/sV= 5GW͇xqLz|T 0Ic>kY_.Mx0$kt0cz`=P& ʼ9%.=I"+ ́+=W3٤!X!;$NbRB5+qxcO{IVKY\ϲD >Sw[F/&}iStfj|WǷk;4DMW}A &@GJ>*V4O$LH'X r>r;U<~Q,PVQxx}gބ"Cp;Ke*F2C2'cvD`6AAMD+=̝rTvi-{&I,V[@e/Yuv,gfh4`Ǽ68J02S>ee~t НCRoܓ!'ҀkيaUGFF8eT?qH> Lilj* cLЮ@:N$yVP! VJ:&:x\wSV ܀,ȝ Ͱ0|Pl.pIw\s^VRw\( ~+;;.(BcK59ZX u(iYb9@,{ϞÔJٺZ <%tPl?01w.¥GݫޛdE64s[kaЊ@[RRnp9L'.[@g\| 5p.unAnw-P0mBryia9@O"񬌮x"kM]Txe A#zk<9)T,sC> wV6F=LGRk)*Zz <Jh|!Ll\ͱm3FL̠%$#5D45%$\b* ɥ`2vԥ(a0¯{|V1n9WX'"`NG g`QB.OA%Y(ӌVuF( )j'Hlfo! ιԋ|U=$jE޺#Y/jcqe.xR8+q Eb8fg.vM1+ɆɚNg_ nwV#u ǝW $ַ"?irD$ӁE"zymO]Ε+\:*1tLlL֮, xoLU9jkM.X'5L02ȷ3[ l dJVP$yH"%y^jn8kRw+s#P~['#%gzgY+} F+ ¨O]A)4>,j5:=eyY- @4J٘dtJe54ym77pPJX)$g`o"E?_>MZd]zE鲽ag4YB <ox~t0؆!2iMV<*1큪vhdL pSuMw4~]؎^86#_$ݙ}b6Ǿ0~f㽡2:@ofV2(胫2QV29LMsz=sBA9" @yx)wJ!Xܞ}Q+R3C><ƯPO <~J<>Nk&23ΟJ&CRر]k93XÅ{15bCܒH tI;8R-My8ӊjF6u_ˉ"ɵ_gSH`)ȆɛnW!gBf >x:vڃ̶0^D0L/x)e*xKH5]=' j -8+,njYh"GR~ow4;GŊDr+GSc@{RmFd/"&{㭱'v[G}x*J9aɫVpvI/`jP3mPS"xbe}$RSF;Խ"'Q=~0XRA_LTUR>d3#-]QW-#1I4/ pi`NBfɼy"q4]ke|) 5zξ+K|cg P$ S25,uխ€zmjȘ3W_z*,!l?a}Ϝo/aҿ9>}uEW۱4449l6Ԅ%{z S7w䮱=Vۡ.*S4r;8ͭ3F O"Vr3.ɇuծêJhNGZX>NN^Y v,s :7m5L2((E'2 L=b y"λFMt#^i>vY4OB+9h .w}{@bǓb%ig1"-/p:u*b&%>Є"j==!*,3C ůkr+)khzG>{ c7(!$6ow (SΣ\\0%xDfqbUѤ ʓ6p)9p1a.at rQ h!CSJ\,i .)b`<@=Ҁ> 4/",ظx7R]x@P!}h^EvTu!tN6TUo9\l1@U'Z$6φe xCE֤a,3g9g>`Jl7$Nb,ilF\[?$Iq5SlmH'2qf|TGȭ/kOsظ:{[o,i?[YU2fp` pjL0)+ E}4?:>ʰ#0Sh2tR/R{Iѵo{d/5(ϯIJeiwP1PLD;f(bV_.JL(80Ǧ_fQ;2â~mM{3zB4vm=| N+^$aک~?bX_ƞl*c`"E\ML.h:}fl2sz!Q=6 $Q*I? (ј1Dϻ9JD@t={+MI8PPp/'ޖ/em`4ʋ6LT̽|*ǦG#I1 氬oNjuĢW"j?-B\ͥWaAdZ6FᏦ<;,e'}@"L$9c=0+q d tJYxUg4)B?q:dKNņi]#Ӟ7o#K¬ˤUƶ=O>]0݉@-N^OAsi,c,Wn*I%5] $b>v(=w%4-Ef@m]k2\Z|f兝B[SȰfQyĐVpJ82W&ZfQ x+Z+1MbDO^w i u$a3EL^Jnt?!sri^њvUױro)1|,z" zDULE_PU?@1rK}+خ卻%nI[[e # dv d^s>Kַo׳|!2vlC{Li-}TleU#K / ge  sOJܯ0Oknlz `HvAPIg`nm|>ڙ Yjm$1wk-:Ҍ 0k_˩__LS].Qgc~TfEFprWVc\y{$=?`^ JCrYc21~n45Ḓui:kIaZK/r1@ۍItN8[-؁Wъh);f>x< Fn]::({DB(JNچܑ Ap+@\A"jڤ?_\9>-o | J( R"wCµ9TA$(cVB[=ǧM|؜Gd|i!p|*2F—z Ԣ3k =&'ƒslЕ޻O[l2.-+|u BI1U3 1> Pe84vd ڴr0K [w !Œs PF)ϛDzl,S~ Y %43e*eڕwkwn^htɵ_/ =\M}21iᖉۃ w⦬O8obǴgzqMp]9j T,d*) >ngUzFUQ:WWec+BERבrkpk N;s-ӛDNـik u-_u]D IPd /)k&SQ|s)`?%ڿ1֖5a`~Ez=4E Dk(=*d1"xGk^8twgn G"8Mj?ꭟlX uGR[ 3%1?Rm?1q҇`ѻl׍MRUw߅16˫NhǢެֽͥX2~8^ӰdCž8,p UFsiug!$%.Ldk3q)Pau6x;:~+!ljl绊*wУY؀ nxPf,fkAz,m}wp*R&h~U& 2"hl(+C5&VnK5*A4y^RHdy`%HfQ4KxUWH nCU/kH.i Ɍ |.,O3V ǻ)9&`Xn)q,8H+~hoa=9ZL2Tq_y0z\ GC'26ʪ".Og0-͚K`. &|T҇]9UW-XTsˆ^铹uKSDeI "hbo몵Z +Re )Ijl-M0N6ʜh"+gSs؜DT LUV]"WEt7bNI^? V 9-t`aSmsi@wgF2q'Y Xm\yfN%d>1ҎR>U'%5a0Dr%l5n2VD 䋒^.}5?|L$я%vUW%ujtIz ]St^.PZ'U*#U-*%mz8elH(bt_Plxւ+d~wzrlLK֮/O,Wr 5HxA3afHeR3h⭸6y";}! .- WvvpLg.g0WZk%V,ͬ%ot>bp!jyClt WKO[x~؊C=ۤ/RR3B{GJe^f0~ ^P>tS`KYQrl['#鎱,}Ѽ"b'R @`SL cK E2 &g736]0CeMK4OƔ@sol׸;世)m{eEh4ߒ5d-2yө:-"-~.#Ϧ n˅w<.FPi"QqOqN³f׹66~O_[nK&]aJ%QW_LBPn:KLU qbXu,/vk0R7YH kl*zE iu.I۞ֺmuHiitx bw,?.AJV+K.|GywRXM/P,h^N9m(:1Ri%.J'<_|}ȖvGMμD:>}OA3eR)gQ)7YCl:lt$إ\.?Z'sEOՓ~7~M™˙Rܼ$DQn;9'Z;GR 3gٟlF~ҞsJ;2N2p̑G0RɠٴHxg%6}/u@2cIS^#<8#৿a! 0ʑgM V P*e)iJ q\wte!&&E)Ah7i5~<:drse߻y~+= ژu qc˳wT@ݚo";K] ~I%#![ҦꜜZ&pHOeo35H"{'[ &\A#MJSwC2}4-BMVHƖ;;t$HmpN8ȻEaf,.Zu]GD8_q`- 鈩}Yݠ <ѷX!3կGRA5'g9t5m^ubw,@|= V>tiߌ±4g%o@U&>+e%*ٰ;{Wx{[ \CPGrhIY\ RbukaX]:s@\ܦp7-z4LIYSe5#~ W$T)$9Kayqg:i]dzHx\=|Θ{$WFꫛYВfϙB&X=_F¼9;r:/`ɵ v$KZ.!ot9΅pCp7Dj#H6U~'yoo0Z[h!/xdt#'e8PZ l[A,[;!+>l9u`ɴDDJ_.@EH!Svxѝ] 䣟 R18/i*L.쐭A.&lPA1I,Yf9"Dk,̹w"zzJrgZ] \ ˆΧ">A <"л(( r_S .څkfPR)ocLsh+_:9NyBMh~Vfs2!/((z[0PjdpUDZ0RX9҄ CWXzc:ѥS5#įgzjxQT5J<}{'3/9j3s^R\Ë́bvʾ}g;%?6gza,޳.:=yG#3``\"HȞ 6תd+LN6-Lt~$?ؓ:X,=&z<4dUZ|m^#&Ո:Fy@ݽ\>f1pt (uR:LJc$5ۇ3퍐 )˹8%ӎJwV)hq.(If L*RV^z8iڼUZ!4ZJH:\}i$aJ20`uÕmvliArHulSjҪFVYԣ 5&"k hdR[z.%3AϭXI|W6A{EI\dJr23!{ALㆠ#?zEkp y#AΚ2wVRGzD%O 5*R#IO5KrDNwF!_¼Wwju-9@6SK[Wbu'H+idbI*(Ly5ZyӗJ9"W2 m= _ӓp/@^y',\TXܤdvTgrzRSޜ7  PPS US j}Tњf7$2{xX<(Au'J{)8R1/ %|J˧%a *m̬,xŤ_T7 'm1'Y|4µkmZ /$A1Q+7nƘY[I"^ I.4>;MYC(io _> ^_b?O%ܩqڝcfZRF WF9Yφ{V!WE(]jR)TSſX1oU䖩H|y'*6i1A}L,"ہ~F>o)(:.7=0arqdZ(d. u4wYBDSXU9A]\'R8+j^ގTB@Do|u#JDBZ: 8pmү9Xpeu}̇IsNSVf5Ku:a<m:ýȦ<Sp&OKԈ&Abr/;\;Y: aS9*eM / xSPj V =t{U㏡H[/fLyу'駲Eh5V/4ZMc0L pQhJ 0ܡ'JiJ'H+k`c 6Db gk6|yUE7I~c'>]xꃷ|\n])r:vF(ŧlBƞt2i\KwA^qU+ lEW{ K1z(AwW hy)a`>l#|Cs#(졳雫z870w:;gO'W >q&Jόv4dn]=Nh}PC{&D18jY /P=p.߼dʢQHMoQgB8)B:\^-E^8cܭi T} dRF7d"IϒmWSrF@xQ`HD'{^ljP]|m4K'N * T3l acXgRy#?|d]Z *"Ψ"2*)~b.J]VFO,y<53.Ѧd|}eECSS )mj\x=OCͲ^>#vOv[? |d0 ;ZO?-&J\.@C9w-Jj*K">B?G۝J(k^fi=V'AHf:CkːWl0(9m=_ 6 GnXv`2&յxQ܉f= tj6{bO5 @l&i=2a{lfW՘ ̥x緣uйwȷ }! Ґ5rkp+٣F?o#FIRvcmס>8I#{խh}EnGqTQ5Vs ."*))z`4036jpԾqq`)O6^[v Lqdl&ή_s {!v (qep ('-PPdL2z",[a"#4A>Q"g L)lEH $Ykd:vQ"lt VL%0 QrhoNu ІzdfOB![6JVzDEq +lX=aJw=MV&*$ }c] H L`Q%zogo2RZ|Hz"trt6|<ָOQ(Nwgv x&M CJ –-)HEO#ZW FӅ+Kƚ`AmyƷYeh1ᴂ}WgzXF=mj R%v JNj6Ey>yyѱ ^ŇFz~Ѕepr崙q0 `7Pqq:;qHT䩸z!3#R[qUm}iZD=@ w1t"&#VO择}Kxwѽ4(BdjI0ϸ(|ʧ_^!'Mw$w&8˃woy͏+ .ׯ3g: V`r.),%ZN bJ)3,J4e<^K!o+FL/]|9 *OgLIS#6&+}'gr/JGxqblaS9Ȋ :{# Z%ua# ?Nx ,;<޵ (w˴ߎ*uW'0&-qQm['Y~*KےV|yi,c/Rudmm@hjH3~JWycU8&qJ7Oݼ\l˚o%.%2,)͕KZe?W$6gctJբGY| U1oaZ~k. ^Z60 P mSoc{gJT)_{y`@4 FLӢ4ƃ9&߽DtQFMJ-!CZW5/I`/=po;,_C8Ep:A@Cwv>@UT,b.(YEt;CWPY߁'n՜ OrLUe7 mSa9{9EAbay0Wtٽ75w>[zRSM`r*'0C!'|!ʠu1?@3,nKinBќ7GآImhؠcĬ .oK.{ea͑ŗ`@҅pbC@}i>~ݙMir/q9:a-/TeP(ROZR2pP5 5gVEP-|,vfqCڃ@CR30I%d|m,<\{`>mQYV7ԫWvt *u;YvJָ"+ Jv_dD0R6 = w*B$&8[ChGAtJkC>(04uYSZ;aٗ謹+C!IXH鎤)ϯh|$flayn%/> vLq4AA>#5)SuZy.¦kRMa±ӳzE׉>ٟ7ħC^|/S V=Ձ<,k:|YdK-ce) ]Ӻq- CbӖYS?ٹw.qY ٩e QHa0e x̙}_PƸSafFN&56 WT&=5Mn-PسQ~ܜ3J KTfL}+{ !ygs|:L@0܎Ӟ:Zca^bV 6M~m˦WyNh[ , v,oY$a3 D}0ch3^nF{:gdJFژ+-,Z4n~r!;M;?.ˤ^Sب D*?:!oDێn @1$c#?9-\N~ԎTE&Fegt@XWf·{7p.Z|vK5?j#ia {a~n94)HѤ vC?9&I%g`JRqVԈvj NXsTffE@ڜ&ǹ-vh􉸶ao NSQ<~]j 2,';"J};XQeDRp8|MsT+(ixF\EEx*$8KqƉe9f: ͚dc^M'o]w8#دbO<"jc"Eu|fԐd'ltWGɇ)ܥxuCn{kdF֜*XO婌"zU}5Bgx>۪[68uWt*&ڟ|gެRCD_i <}Ù_x|') %=c2֨ bxR(1Cǘpᆌb48a5F Gd E_XJס,:{E+i/A]gؐm!C|5 ^( kIǾs˜%_22'&H6R`C:K,Sf:r;ȟ иǰ|pO'9m˺ !^ۂw|Ǔ=Bc=ӏ|^^_pbw{]$ȫ %[. &V)>{e-orDVܙ';gB Zc&w:_̊&ЂP'͌F8n7Hey-4T:X)PQx$czgCW sea\Xp˜~^M߶[ukb1'e(zRȩ[U27WKu`烠~m!<0e.3%Z Boa|3Xh2H[QIJ܊5<| y1_Y#+`$ŵ!,3DX7i69q`/c,%zEO9 0wim>zTMfcAۨ j*@AǶ΋#KNo_tFcTAZԤ: "k5KȣFl܊A6A?^,9e]S.Y!>bEzVSmU6'Mӻg/m.YNҧR2 vW@_/H6 K0w0C{ BtP )!4Bz4rEi)LlMv!k(>1P̿Xb%gsI %0*?ObaX|vk]`+C?I߹ۃ߶SE_ٸGm͕rK'*?gE>E%u5@XE[Lu +]jbV% ?fǯ8>Ž9F4s;A8Avb0jp{]NL3`M U/G,<". 9w2#X&&(Ff#Wc:6-3c424o0b~/bvC Cw5eDz^=FQ7zlrWY{^`qspG@anKo W0+RܴUXz!zM>t3 ;R&R㵛J.{$EcvOczu[hX"Q-%fn8*هr2S_s'(õuslzcSUT=QҶw/9VR ൲Ckq0؞@fgDѝRcPcX^1\sp]H.#Aej3ݹmz=Ô:9h#]O59vo{eh;αlɨIaˏaROlJO${SKn9&57PӸ[(e0@iLJ$:ZpITQ8/n7| ,AqT- róyq3z^86!g?[̮9,}{j**`bzAD&IWsv/,A> ~w̋)I( \O&,j؟!{aS =Z9.KF 12xý /l?@P$k} [R0!olJ= Va岧BU4f[pTQ}i;x(7Gԏd;.k7gGŌ@޼fԡ/._ΠF7Op*eLЧHNA uϝA^فkS z;x:/Y0ZtN_e;H)ƭ>\aۗmSvwPMNZnXS?j|6%xsb5 a*٨'L`ai]^Ֆ"!c-A*93fޞy7&^yM32"fxC!)#V!"&77rZ',dz҆_˽ PoGMY ]+UF]N3!e4Pɚ3$E.eJQlk!KC=SOB@1MMF.]$gIM M'SN!4;@5|ݡiep&FU~ڗr6i~شjƯ (~'AҘwǕ0[5\̴:Tvy䩕$O-a:= ;Oۢru:hV<&c19ٹ<pK}Rܥ%å NVw֝b-ij)Xp٣B̒C4ɛDZn9HGmz9;7A&֘xUeָ5YK5RsݭYe5o4*՟&US.3:`D>S撩 ͷ9 ((wB'7 mI h$CbBO ӲgpJVK<5lx9aZl(?0J贠K}M3ܭ63gih7_W#(X ,A"WAPԭ+<ykgm 6jDqw0d廛vC^ rƱPBVQT.tq8d!UѷgC*oKRִMWR`Pd8mp<h6&*q$Qb!JH'Do/K{\rz2_wGLƈ]VI iex{UQfw9 9  ,u{ڑԃǺ Ins6 @Bl&N}; Xz1 sԑhѬ6>!{ݯea$reT|T; ܥ7UPB#9+̦-M2bsPcA;/thzPUda>7ݍ;1#b<=T"!8YEvjbݲ~,<}d0C=ojȵuKDIvhY:s2=pϼ' uA[;v5pǪd 7)Ca)ikX@'RbiDJ6 ha! { 17F46qHHu![sz'"ABv= E_txTQOb@uR$ۭ,JAu|@<=0n$juac 76 }Q3l LtL{/&2=^l܊Pm&({4IZ7 ڌT f%?=#6lxܛ*Uq/iKYuCz-4 z@@,H, Yzy<.O(~"#‰Ag|$M8eh-&n_=rKwkHhPiYZ$2c˰khO.;v! DZ (hx++pȔJl'(0Ardjq8*V#YϤT /Gg~)W٤2FZٲ* ʋoIi7v K^=s骆JW)#fS`ab5zxyi q683>rN`y HNp>l'i;=<{G$~8ɨ>9;ѓ!.`?r|hG͏9^yJr(/PgcK;vMp`ak569r&2E^WEg){2-:Ū k qYY2gSۭ0WHGk{]7 'tDz{7J6Ha y|6&9{+EC$Lt 04\}M GWӽllQ0hVR~e@}i_%B֚I6@`Iֺ*U8CN]a"p9"m7A(hLh(ՙ1(oxM>$*"qfW5X,E,[e ,8K8J#6f^PJ"qh<$9 b&.ěk1ȏ6|,mgk>;yILEߘn U%~~jF\}+ o6C-Ͻq;nKH=fKTj8O{ c *Jb;ߘZq<%) =5ֺ{b4@~r%r4CC0^ ^icNN $z9G'UP獱 HigIK6돃_JMz|t.%OZZ+5JbuSXbhFV7o62/^Nq!'9}Gy ( ֮;kҏ0?KQ7N}W쌯|ÆJ}fj[ēZȺ%zSxޠxMۊCs;r|1Hy+Y+HEυ]!̓>A}:cxΑzˈ s5]չ/_@6\Y,~ !b.9C(RoX'^ G v*\TמK]2|2RTr'&{֜uʊ4N.>W3r MKT)qstҳ,pӜZ`_I:Ep7uJ3tQy"SZ׈Ԯ0@f0OBVFY_%MZoAF1Gq!$@cy+iM0u$50 dZ w?f#}bz3J,xaED7Q0W91؍ZU hH.dV6̟猚ӛD>N8dO+%F t[3!TOYQ_#a صhXxy:{gW(P6SE(YP8́S8HMI`> pcNz'|'[iX:+yo/hTa.9}Q2iy 7O!_]d A@ ޢ]ő!/-|%K&[Y)k^_֨FWv2:KykaqS#ΕO@45㸆( g#ߝ8( Ǟkݤ?qwWINg7h,LD(,•UAA(G7Bj{vv(No 5Ґml)Dՙ#Q色z&gSbg13iO+X5b\ *Idpt"?F:6:{8g%b3u[jԤ"y95s==V{ԛJ[sS$ hiy ,M T_3x tsV˦I\Qx4C|t_8@B`폮ǝ\0pp^fNme`L)>qV~) lZ_xYoe ?{EILI߷t a/%8!ՑS+.*k}j]C=zǸIx+rXgCnqa|3le~H ?% rek.ǨI,53qg/U~5;ƉkK $T=_ߒ]륶)yLX64rwTqy¸a@eV߻6&^i/͉ _UoI*g6E,$)]6)U3j?_ >}.WC$ʹ-?߉ '1s.Iޥ[Af=+T,#N ,\rN$RdHVE*30z&ޫf}k-Qmհ#0!-SďTs-ȳpIۉϚ".CSdU)(P_6 "H7r}@uHӘsD4qz^KҦR}ta]>E($Nm  BpS8p?o:Tv$ebyǩKR5;ӉنUz_jGT\D#h)^ V\` o7AJW2cܝ*Lc7ֽ <)3y[yMVӺ~rr=NdKA y!0,℄D!sT 1oN=#y |gyl6GC(GtC1K{w,лv%; YX ɀbnmB$dl NL" l{6ZCLLJByc8i6Qo%Gr]\7]k +@VFW>Qj2OgW#Q[%,:_ylO$iO}\ xtEWК:v3+6Ug@6S?3]CfӷF"-cvYڏNTH*JӨWgCAB8CTg;sM8 Et=T{朇EAkUySP "Y=-Hkeш;AOE+`E>MsV(P+U>NEIkba3Єk']+p^uRN$!,6}ұ׸ ˞{t^5c5'1D$(\arpsyN&?/EwVaeߗiʀ{3ؗL$od!40Pr00yi54&6 AVJCG1K ^zX5񥁢imЬy/Rv]Ux Pٌo=+YcLQ_k?1= 戲 j=G ԾRe*i v57$Qczu Ƅp\Y.@sl9#ln!&RU(JEI;l"wZ@>dÆA/cVx HBOХF:)6bQfK;M2+CaT!X[u>g@} Yty-5Z(> Th69nS|QMAQT{*Hs%&S(5JE-9'knk4 Q+Rity$^M6mgVq?LWQ)pKqH.@Ư\ުt^_.K~O߆Ŀ4fJj~. D꼕Q[I'X4jAUn}GpW@?@kA:SZ=si<|SР^P)q)g\Y8n ٺd9V%h6a3%Wj!vN?4j|/CRMì[Z, 䛨/-jY/e0cr*9RS1a r ojrov.7x[ !\1;C5qX瘮 L5u#V]o9h8t9 P2y@*!B?&d"$CPUi*fxQu]tT?nYk[n&kzpAL%;%֣@R(EdE8: b!{'i^?_eǀU% toQR\o(AN׏2FtT7ztJi1L u"0J 4EDmmÀKkS[XN3qJ~ bJTHg^s~!&qS3[ mp_QGtqO=_kR(w,/{"|n*n|#$ɕrĖ2K68m~B1r۷nXh-k.jrP3'kR<\f^D0ʩ4eTT}=ք}@|k08v1jIKmHǵ ~Fhk@8Y3@G@",D$j%#mon?;]f~P:qgznD}f"@=YM> μ} "JrhoA[vué[:!1 .1k!تo-*/xEFwt|`&t]=]}(9:U`4?苌fБObx74}?H( VHg_W>A[ AM>=7dA7N(iXTMH8 - ]73k49:i(MD$V m9kGc$_v.FF})>as`IyEzjyÀ''@:t xu52|]0_>kgBT,+em*FgXP-V4 ]Ǭ<ŔrMB-벤~eVW۳pF j)ߵG:Y8K-^4GP=)qt7/Ux-vӀfTw.LO-p}&-ձ j.hJ982Oٱqc25ߤU&:FJ2^ϓy L3;HO0t}7HRkݚO >c:RFYYRgtu5$R]}EL|jqoъu`.җ󡳮b.Ò?>m`+ +g-n ]]ǵ(CG{ۼ,jAeiY/L< 4܈,UG(v'&s  } YZ