freeradius-server-devel-3.0.21-lp152.2.9.1 4>$  Ap`z鸋/=„}\Q1l}k5i<_Gצp)Ԩ?V%IT!Hk7Lvp^=`!; 0[BH8)FSj<-5eռweQ7PD/3ЇFBzSI!O"-B/d9B%ajr+apRf<\y Eq/g ;ZE #7njRaiYxNK)vbԶJ8587e3c7581db5626504143ca1eacdd60a736d23cb25f9ced6a4faf716551cce0720c7dafac198447843ac4908bfd366c0f8dc23ȉ`z鸋/=„alZ9*M`ckb@.y􇈢`^F]{]JJd[E !)]hƩ{U xKT!9cHG+Ƥ~kP\B~)^3)U q0M5joK"'*PS.뙮.?&zJ pHF!ųT\f H(먒~! u( lYzS }a+L9RS{kPb:y:Os v@vdlp>p;?d! - Jtx $G@G G \G xG ?G GGGjGz(8'9@': 'F5GLGHhGIGXY\G]G^bcd(e-f0l2uDGv`zCfreeradius-server-devel3.0.21lp152.2.9.1FreeRADIUS Development FilesFreeRADIUS header files for development.`zcloud127BopenSUSE Leap 15.2openSUSEGPL-2.0-only AND LGPL-2.1-onlyhttp://bugs.opensuse.orgDevelopment/Libraries/C and C++http://www.freeradius.org/linuxx86_642R8?| 2i r +wt W&~ |TK0LW0GUN0x.S!OTTqwY b/ A큤`z/`z.`z.`z.`z.`z.`z.`z.`z.`z.`z/`z.`z.`z.`z.`z.`z.`z.`z.`z.`z.`z.`z.`z.`z.`z.`z.`z.`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z/`z.`z.`z.`z.`z.`z.`z.`z.`z.`z.`z.`z/eaf076cfd7bc6a732f318c12f477c9fe28a59c8ac58302e216eecd1afa22b13971fed4945734d04521c6e3794ec978a06a1e31fd54ea7de2c7150d218f6ca75b61f82a2397a91786f76e78815dec88f1161a43c99f2a5cc31a80b7a9e81127f9a970cc6ea0cf6c90358da867431a47765f1d2545c9c5c511fc319af787ec7f4fdc8f8333cbc4b156128456bae9344bf659a6c6e94befcfd2c824c24c6f607e4fddabf631e1ae081f6b24cb0fbee02bf169281697b25870eaeb3984117fc424ab600f82be3dbe330700cfde195134d8d23f48785d5703ca23f081afa361c63f0712b6bbb0f3baf16f71cd778a5517456ee4d840ab5944f40a6034a219bdef5e1b81c376dd22d10a5436f4d1fee9224987c53a3a17ec95485f579ee71d6da3483a0d8f97f8a8aed80bcf6740a353da070fdcd6443aefa6b9acce6b1b8a16b7875207e77afbe9cfbf9c37c24f1172248b3934f41ff8a60980a15a6605f4f4d82efb27f3e7c083b482c439626625213b9ffabcce8ef2b59e9290714e03f3cb22ad29d417a50e8935fff24ec71b214b8e9d89724cd9603f960613cb888bccc31c5ac12e74144a69a7aa49e882a0210fdf1cbf7bf56c28b2a59c4d6b35424a482d249d8cdb30ffd08e303718365155c8810b0441f0ef5f8e924f172a5b57a05d5a6c994a2bc551a7bf24e232db932ee56cc35df0befa44558cbc445d776c9527ef43ba4c36e9f8bebb05a74cfadf58ce29c0307a8df01b929882ffb7fd98173b0793c5db66f171706710862edb5a2e4d6ea2a79edd7769b60138981b5e30b383e44276390a77423fe29ce757d681a1e2599ea0ca122b69ded2805c3a3e2a298390d41dddaabb24cb0260f45a111c8a0cbcd516cea9cd9ae9e44f9efb1963650ad611a1b585119f6f56d2b796e07e99e24ce0d8af1c6562fa287c34c4a95a53c2acf2abc88c3b2f3ad981149d87bdc06185bf4ee4472ee494639d0ddf81e8ffa3b8b495d673c67438f01bb3bccb7c415cfe324a4e0c748954b2a7c966ffa6fb12723482ea7f056fe01f62089a5cd2ab3891ab9fad7a623ef8c9a47eaa52cdb1225354fee15db0ed2313fe362119cbd20488d8acdf96be0e8c44e3f2197d943bb7097365e593d8da5ec5c7ee47feaff4056ed4378f76299c48c62af60e6421c3bcee4eebe311144adbe8ea4635b99c494d2616887a889a0ab195f8895d1e495b8ac2f30100c829db2ea58658a6b2ceba589e0724c51ec7e3b57b3cc6a36243fc148971781cd1a1bce26e83937bf77f50c9deefad8a54cbad4cf27cb98de497a1d8664f8d118d970a2dddb31680d1f1c5a4c9338784b823ee937a19451a865843b100da02f2076742a64e485c2773b39df5b45a1dd22345208373c742c5f65b156b287136fca79c207e9f32854847645af8a0aa1ec900a81ddd6392cfbe6edc200df33bc42a300c0655969af4a864e2fb610b4f50ea3ed82b247ccbed7c8827e4e5c594c7cd0b192268e3ddc3d0cb51ec5202ed37ceb24fc880bbc8898d0a69f038c7d06ef553edf45a95b24c389b60c9fce513708ad586d6a50928b4a88a8458be003ff9fefd564ae740259fe477ce001217c0c3c8e4d00089a695e6a0e3d132b0d3c48dd7e2f11c60fea633083be7243fbf925be2e42be0c6685187858c6cdaca3ca61bf553edf45a95b24c389b60c9fce513708ad586d6a50928b4a88a8458be003ff9eff0c06a562d0eb49528849a2dd7e747b78975492e60bd368822fbd5e59a83c73625a02462bd14adb38066495f2ed9599c705f94042126563f94016e8bdee3bf495546c15af8d85997968d9100ba9b82563b60a167ddfff99f32bc032f785d52c191e8d5e478efad503f360d91239b1bf79ab9e643e33ad32d071e86445e0a6cf1e13050768377f0de0aa1081631769cae767bcb309adf2e5beb5da834bff46ef553edf45a95b24c389b60c9fce513708ad586d6a50928b4a88a8458be003ff9452545863795b33646c1fa1608791e6a47caa8fbd604ebfae4ff1c1415795cfd363612c0ef13e44644dededfd16bb6eab15c800312fa46e93a4112cb285ed0437523051863a55a8fb034b8427ec649ed213bd49ce13e2a0545d549b634fa593eed6a795544e91629ab206b5f6835b669bc2bbd035941b21c69b8785df7a8ff327c6455fe53b4c2662864a6cf36e8961057ffee949015b18722aba07a99eebb8a519b664c6df430254c02e4323a07fb70b285b2a11582f621e3d89b1546197815fa806fdf5c3ac0373f4858943b223445975594d6a37e65c8215c6646e13580bbf277cbd30085289c4b8f2022533ab879afd459fc21427f08907acdf14c185d5c4c7e68dda54d809f32a60c0c18a1c9feb157019efce849f4d94e81cff9926c0e58da6c5e3701fa0e4b5cab71f7745c7ac142543a21e5c00f630a2dee09449d7c4ebf731318939f15117e9ff283e392ab7c543007efe78ec55bdac9d41d1c014509a2dff108da9728e7f0b58a14366028a75200f0c866807094ac6acd38d77054f9e97b3c46c775b8753d79dc8c597134efdb81275af27fd2e3ebeef265cd5a9309184f1b8635c841ec09fae090bdbfbf65ffb26d85fe4239ff7e90927cbdaf638f784c4d7444c98de9e4abe06a36fa063e5c425d8aa863c4005adb9ea6350fb557e112925307cdf22251c366f4ed6224961246b1ea4ecb7a8b3009055a405637f6062ee7e517763f46b535664a65da7d886e6edb4158e92169f7ea730cc373e56ea066400c53b6204ae309868fcf8e2f7309fab29f844a9475e4b6dfa0b8f8f252410c4c0a205325e5cc84838287eaf7abacc3ca3ef404b856e285c5a48cced79b51d0d2b5e5aa72f84b46ae24510131399cc8edbe213f2c497bcbb41084ca65f80e1a933f465ffccb638df5b234eca3a1fb3d3a389cf1b5f33565b070e542ce6fd2636896639cba23e521f9b5beb23c7ced4955f09037b2adf212bf2799cdc70a9193c36520dd65a0e8cf28a8870adf8ff6f0c6a6ce62c952ad3559d3980280113ef0de636436d82169f671f04490409b677f55a61960e695f9b6f12dd915401964fafffe5789f4c5be1126146052f1a76c230619a1915892ce9105ba3b746b45be4f4531bf6e25985a62c26705b02c4bbb60bdb11a9f92f25f5906d5d6cedcrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootfreeradius-server-3.0.21-lp152.2.9.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 Adam Majer Adam Majer Adam Majer Adam Majer Adam Majer Johannes Engel Michael Ströder adam.majer@suse.deMichael Ströder adam.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- logfile_secrets.patch: do not log passwords in logfiles (bsc#1184016)- freeradius-server-radiusd-logrotate.patch: move logrotate options into specific parts for each log as "global" options will persist past and clobber global options in the main logrotate config (bsc#1180525)- freeradius-server-radiusd-logrotate.patch: fix permissions in logrotate global section (bsc#1170505, bsc#1174905)- update to 3.0.21 (jsc#SLE-11896) Feature Improvements * New stored procedure for allocating IPs with PostgreSQL Rates of 1500 IPs per second are now possible See raddb/mods-config/sql/ippool/postgresql/procedure.sql * Add SQL IP pool support for Microsoft SQL Server See raddb/mods-config/sql/ippool/mssql/ * Added RCNTEC dictionary. Closes #3168. * Added Pica8 dictionary. Closes #3179. * Add TLS-Client-Cert-Valid-Since attribute holding not Before date Patch from Boris Lytochkin. Fixes #3157. * Generate attributes containing unknown OIDs See raddb/sites-available/tls * Update the WiMAX dictionary. * Added ability to rlm_python(Python2) show a stacktrace from errors. #2979. * Add WiFi Alliance Policy OIDs. See raddb/certs/xpextensions * radmin now shows coa stats, too. * Sample schema extensions for summarizing data in SQL See mods-config/sql/main/*/process-radacct.sql * Update dictionary.aerohive, dictionary.fortinet, dictionary.arista and dictionary.erx. * Added VAS Experts dictionary. * Many updates to RPM and jenkins builds from Matthew Newton. * Added %C (time now in seconds) and %c (microsecond component of now) back-ported from the "master" branch. * Add reload capability to systemd unit file in Debian and RedHat. * Increase timestamp precision in postauth to maximum supported by each database and simplify (and make more consistent between drivers) the timestamps in SQL queries by using expansions. * Option to set dictionary path in raduat script. Bug Fixes * Various fixes found by PVS-Studio. * Set permissions of certificates in bootstrap shell script Fixes #3132. * Increase the 'nasportid' SQL field for 'varchar(32)'. #3141. * Skip processing proxy reply if there are no home servers available. * Update SQLite IPPool queries. Fixes #3177 * rlm_sql_unixodbc fixes. Fixes #2822. * Fixes when building with LibreSSL. * Fix the rlm_python3 build. Note that this module is experimental. #3183. * The rlm_python should append the 'python_path' paths in 'sys.path'. It fixes the expected behavior to use the existing Python modules Fixes #3180. * Fix rlm_python to print the script errors properly. * Bound total query time for PostgreSQL. Fixes #3253. * Many fixes to Oracle sqlippool. It now does 500 IPs per second without any tuning. Fixes #3270. * Reference sqlippool by it's correct name. Fixes #3272. * Revert 3.0.20 patch which caused crashes on duplicate clients. * Update WiMAX-MSK attribute. Fixes #3280. * Fix crash when trying to access non-existant regex capture group. * Use timestamps (request or server) rather than SQL NOW() in accounting queries so that these are stable when replayed from a file buffer. - freeradius-python3_patches.patch: upstreamed- update to 3.0.20 (bsc#1146848) Feature Improvements * Added Force10 dictionary. * Update dictionary.hp with new attributes. #2690. * Update dictionary.aruba with new attributes. #2696. * Fix side-channel leak in EAP-PWD (bsc#1144524, CVE-2019-13456) * Relax OpenSSL version checks, now that their API is both public, and stable. * Note that tls_min_version/tls_max_version also support "1.3" Since there is no standard yet for EAP with TLS 1.3, it will not work. * Added tripplite dictionary from #2760. * Switch to the async interface for rlm_sql_postgresql so that we can enforce query_timeout. * Added new LDAP option 'allow_dangling_group_ref'. * Updated documentation and functionality for EAP session caching See "cache" section of mods-available/eap. * Tighten systemd unit file security. Fixes #2637. * Disable TLS 1.0 and TLS 1.1 support in the default configuration We STRONGLY recommend doing this for all installations. * Add expansions for *outgoing* Radsec connections "%{proxy_listen:TLS-...}" for TLS-Client-Cert-* and TLS-Cert-* attributes. Fixes #2839. * Add %{listen:tls} which returns "yes" or "no" for TLS or non-TLS connections. * Update dictionary.lancom with new attributes. #2847. * Added rlm_sql_mongo. See raddb/mods-available/sql. Note that this module is experimental. * Added more documentation in sites-available/robust-proxy-accounting. * sqlippool now re-allocates unexpired leases, to prevent IP pool exhaustion when clients perform multiple reauthentication attempts * Add support to radmin keep the history in ~/.radmin_history. * Add support for ENV and LD_PRELOAD in radiusd.conf. See the new ENV sub-section of radiusd.conf. * Update dictionary.aptilo. #3002. * Update dictionary.airespace. #3039. * Add sites-available/coa-relay, which makes CoA easier #3045. * Add example stored procedure for IP Pools in MySQL See mods-config/sql/ippool/mysql/procedure.sql * Update dictionary.dhcp dictionary with the recent hardware types. * Add experimental rlm_python3. This should largely work the same as rlm_python, which was Python2 only. * Add Dockerfiles for Debian10 and CentOS8. * Add RPM spec file compatibility for RHEL/CentOS 8. * Notes on certificate constraints. See raddb/certs/server.cnf. * Add NAIRealm example to raddb/certs/server.cnf, for RFC 7585. Bug Fixes * Allow listen.ipaddr to reference an IPv6-only host. Fixes #2627 * ERX-Acct-Request-Reason is "integer". Closes #2635. * Fix a slow memory leak in the file management code. * Try to fix file permissions if they get modified while the server is running * Fix slow memory leak with clients. * Fix request and connection timeouts in rlm_rest. * Fix systemd issues. * Fixes from clang analyzer. * Fix missing include for the dictionaries: alcatel.esam, altiga,alvarion.wimax.v2_2,aptis,asn, audiocodes,avaya,bristol, columbia_university,freedhcp,garderos, infoblox,motorola.illegal, starent.vsa1, telkom, wimax.wichorus. * Fix internal sanity check when running with "-Xx". * Allow "inner-tunnel" virtual servers to work better with "accept" and "reject" policies. * Fix dictionary.huawei data types for Huawei-DNS-Server-IPv6-address and Huawei-Framed-IPv6-Address. * Framed-Interface-ID in postgresql/queries.conf is string, not inet Fixes #2817. * Fix rlm_cache to complain on unknown attributes in the "update" section of its configuration. * Add configure checks for -latomic. This helps on armel, mips and mipsel. Fixes #2828. * Add support to Oracle 19 and 18. Via #2857. * Add support for decoding tags in rlm_rest. Fixes #2848. * Use correct passwords when updating CRLs in raddb/certs/. * Properly separate "originate-coa" packets when accounting packets are read from the detail file reader. * Use the correct virtual server for pre/post-proxy. * radsqlrelay fixes backported from "master" branch * Fix DoS issues due to multithreaded BN_CTX access (bsc#1166847, CVE-2019-17185) - disable python2 for SLE15 and Factory - freeradius-server-enable-python3.patch: enable Python3 module - freeradius-python3_patches.patch: backport python3 fixes from upstream - freeradius-server-opensslversion.patch: updated- Enable memcached driver on SLE15- Add missing BuildRequire on samba-core-devel required for windbind support in rlm_mschap.- update to 3.0.19 (jira#SLE-5890) Feature improvements * Update dictionary.cisco * Update sqlippool to allow for stored procedures with PostgreSQL. This increases performance substantially. Patch from Nathan Ward. Fixes #2540. * Re-added "show client config" command to radmin. * Cleaned up mods-available/sql example so that it is easier to understand. * Added pfSense dictionary. Closes #2581 * Update dictionary.h3c Closes #2592 * Update elasticsearch/logstash config for v6.7.0. * EAP-PWD security fixes from Mathy Vanhoef. See http://freeradius.org/security/ (CVE-2019-11234, CVE-2019-11235, bsc#1132549, bsc#1132664) Bug fixes * Update dynamic_client module and server core so that the functionality works. This has been broken since at least v2. * Fix crash in sqlippool due to escaping changes. Patch from Nathan Ward. Fixes #2532, #2533. * Fix systemd notify, watchdog and unit files. Fixes #2541, #2499. * Fix erroneous length check in EAP-FAST. * Update documentation to remove old "ignore_null" configuration. Fixes #2578. * Fix default POD port. Should be 3799. Fixes #2591 * Correctly encode vendor-specific "encrypted" attributes. Fixes #2600- reformat changelog mostly by wrapping lines - add missing bug numbers for security fixes- update to 3.0.18 * cleanup_delay can now be 30 seconds. This helps with proxies that have packet loss. * Do-Not-Respond policies can now be set in the "post-auth" section. * Encode / Decode ADSL Forum DHCP options. * Fix module ordering issues. e.g. when "sqlippool" needs "sql". See the "instantiate" section of radiusd.conf. * Add Big Switch dictionary. Fixes #2252. * Add sql_session_start policy (raddb/policy.d/accounting) This minimizes race conditions when using Simultaneous-Use (#2257). * For rlm_perl, all variables are now tainted by default. See raddb/mods-available/perl, and the "perl_flags" configuration item. This change should only affect people who are using variables in insecure ways. * Allow "sqlcounter" module to be listed in "post-auth". * Add support for IPv6 attributes in SQL. Fixes #2280 * The server is better at handling fail-over for outbound RadSec and TCP connections. Fixes #2284. * The server is now more aggressive about retrying failed outbound RadSec and TCP connections. Fixes #2284. * Add TLS-Session-Version and TLS-Session-Cipher-Suite to the "session_state" list. * Add expansion for Radsec connections. "%{listen:TLS-...}" for TLS-Client-Cert-* and TLS-Cert-* attributes. * Add notes on running "ldapsearch" using the parameters from the LDAP module. * "ipaddr" attributes can now be cast to "integer" type attributes in an "update" section. * Move main thread queue to using atomic queues. This should help with contention in high load scenarios. * Add "recv_buff" setting to listeners. For more details, see sites-available/default. * The sqlippool module can now use attributes other than "Pool-Name" to assign IP pools. The "Pool-Name" attribute is still the default. * The "unpack" expansion can now unpack substrings. See mods-available/unpack for documentation and examples. * The preprocess module now does "ciscvo_vsa_hack" for Eltex-AVPair Fixes #2301. Vendors SHOULD NOT USE THAT KIND OF ATTRIBUTE. * Allow for -LDAP-UserDN. See mods-available/ldap for more information. * Add sanitizing of control list for moonshot. Fixes #2318. * Update rlm_sql_mysql to be compatible with MySQL 8 Fixes https://bugs.launchpad.net/bugs/1795310. * Allow logging of only Access-Accept or Access-Reject messages See radiusd.conf, "auth_accept" and "auth_reject". * Removed Connect-Rate comparison. It was unused and broken. * Add dictionary.infinera. * Use OpenSSL HMAC functions instead of local ones. * Some SQL modules can now use "auto_escape" to escape unsafe strings See mods-config/sql/main/mysql/queries.conf. * Add wispr2date conversion in mods-available/date. * Implement dictionary-based handling in rlm_python. Fixes #2334 See mods-available/python for details. * Add support for SKIP LOCKED in sqlippool. This can improve performance by an order of magnitude or more. See raddb/mods-config/sql/ippool/*/queries.conf Fixes #2383 * Allow PSK and certificates at the same time Except for TLS 1.3 which does not support that. * Update docker scripts. Fixes #2306 Patch from Matthew Newton. * Add crypt xlat. * MySQL connections can now skip verifying the server certificate. Fixes #2481. See mods-available/sql. * Add better mechanism to detect MariaDB (Old MySQL). * Add RFC 7532 "bang path" support for realms Fixes #2492. * Update dictionary.ukerna documentation. Fixes #2493. * Add support for systemd service and watchdogs Fixes #2499. * Check for openss/rand.h, and allow building without OpenSSL engine. Patch from Eneas U de Queiroz Fixes #2517. * The default PosgtreSQL queries now use "ON CONFLICT" to better deal with issues. This requires PostgreSQL 9.5 or later. Please use a recent version of PostgreSQL, or edit the default queries to remove "ON CONFLICT". BUG FIXES * The session-state list is no longer cleaned in the inner-tunnel. This lets the outer Access-Reject section access session-state. * Fix typo in lock initialization for TLS sockets Found by Sergio NNX. * Add check for crash when home server down Fixes #2233. * Add username key for postauth table. * Better libpcap checks, when the header files or libraries are missing. Fixes #2245. * Allow building with old versions of OpenSSL Fixes #2247. * Allow non-FreeRADIUS State attributes to be used with the "session-state" list. i.e. State length != 16. * Be more aggressive about cleaning up zombie children when running in debug mode. * Use LTDL_DEEPBIND, which fixes issues with Oracle libraries exporting LDAP API functions. * unlock files when asked to unlock them. * return error instead of asserting in map code. * Don't write 0 bytes to SSL. Fixes #2270. * Remove "expiry_time IS NULL" from allocate_update query. Fixes #2262. * Various dictionary cleanups and consistency checks Fixes #2281. * rlm_python has stronger thread locking to prevent reported issues. Performance may be affected. * Don't allow Message-Authenticator to overflow past the end of a large packet. * Fix crash in sqlippool when SQL server goes away Fixes #2300. * Typos in man pages. Patch from Nikolai Kondrashov Fixes #2303. * Fix crash with CoA packets/ Fixes #2304. * Fix crash in rlm_exec with CoA. Fixes #2328. * Print errors while parsing the log config, and don't quit when deprecated log settings are found. * Fix DHCP encoder xlat so that it can be used with a list of attributes. It previously only encoded the first member of the list, and now encodes all members. * The "expr" module now skips more whitespace. * Remove internal FreeRADIUS-Response-Delay attributes from attr_filter Access-Reject. * Don't send junk to redis when maximum args reached. * Small updates to IPv6 for accounting schema Fixes #2364. * Fix OpenDirectory integration in rlm_mschap. * Fix slow memory leak with dynamic clients. * Don't artificially truncate debug output for long strings. * Fix memory leak in EAP-PWD. * Fix crash in "hints" file with Fall-Through = yes. * Fix crash / timer issues with many CoA packets. * Fix attr_filter so that it does not treat vendor attributes of number 26 as Vendor-Specific. * Fix reconnect correctly in rlm_sql_mysql. * Fix rlm_cache to properly use Cache-TTL < 0 Fixes #2485. * Fix rare occurance of bad xlat expansion. * Check for rare race condition when a proxy reply arrives too late.- install license as %license instead of documentation- also fix ownership of /var/log/radius in systemd unit- update to 3.0.17 Feature Improvements * Add CURLOPT_CAINFO. Patch from Nicolas C #2167. * "stats home server" now supports "src IPADDR", to specify home server also by source IP. Fixes #2169. * Add Dockerfiles for a selection of common systems. * Increase number of permitted file descriptors, for systems with many home servers. * Add TLS-Client-Cert-X509v3-Extended-Key-Usage-OIDs Patch from Isaac Boukris. Fixes #2205. * Update main READMEs. Patches from Matthew Newton. * Added dictionary.mimosa. Bug Fixes * Don't call post-proxy twice when proxying to a virtual server. Matthew Newton, #2161. * Use "raw" string value for shared secrets and dynamic clients It now parses strings with backslashes and "special characters" correctly. Fixes #2168. * Fix RuntimeDirectory for RedHat, from Alan Buxey. * Relax checks in 'if' parser from Isaac Bourkis. * Minor cleanups for %{debug_attr:&request} from Isaac Boukris. * Be more aggressive about cleaning up cached certificate attributes, due to deficiencies in OpenSSL. Reported by Nicolas Reich. * Be more accepting when parsing IPv6 addresses. Bug noted by Klara Mall. * Fix double free in rlm_sql. Fixes #2180. * rlm_detail now writes empty Access-Accept packets. * rlm_python can now create tagged attributes. * Don't crash on duplicate realm + authhost / accthost * Allow partial certificate chain to trusted CA. Fixes #2162. * Treat SSL_read() returning zero as error. Fixes #2164. * detail writer now checks if the file was renamed or deleted. * Add User-Name to Access-Accept if EAP-Message exists, not Stripped-User-Name. * RedHat Systemd updates. Fixes #2184. * Use correct API for State variable in rlm_securid. * Remove broken radclient option "-i". * Fix "users" file (and hints, etc). So that it does not get confused about entry ordering with multiple $INCLUDEs. * Fix rlm_sql to expand the un-escaped string, not the raw string. * Link default and inner-tunnel only if they exist. Fixes #2206. * Don't use both IP_PKTINFO and IP_SENDSRCADDR. * Always install signal handler for SIGINT (needed by Docker). * Fix intermediate CA flow for OCSP. Fixes #2160 Intermediate certs which are not self-signed will now be checked. * sqlippool now returns "fail" if it fails IP allocation. * Fix rlm_yubikey to look for correct attribute in replay attack check.- update to 3.0.16 Feature improvements * rlm_python now supports multiple lists. From #2031. * Add trust router re-keying. From #2007. * Add support for Samba / AD LDAP schema. See doc/schemas/ldap/samba/README.txt and doc/schemas/ldap/samba/ * Add "tls_min_version" and "tls_max_version" to EAP module for Debian OpenSSL issues. * Better documentation for client certificates in PEAP and TTLS: it usually doesn't work. Fixes #2068. * Distinguish login failure from AD unavailable. Fixes #2069. * Update RH spec files. Fixes #2070. * Run Post-Proxy-Type if all home servers are dead. Fixes #2072. * Print offending IP addresses when EAP sessions come from two upstream home servers, and rate-limit the messages. * Minor packaging updates. * Better documentation for rlm_rest. * EAP-FAST now has it's own "cipher_list", so that it is easier to configure. * EAP-FAST now forcibly disables TLS1.2, until such time as we implement the new keying mechanism from TLS1.2. * Add documentation for allow_expired_crl. * Update Debian logrotation. #2093 and #2101. * DHCP relay can now drop responses. #2095. * rlm_sqlippool can now assign Delegated-IPv6-Prefix. It also now can assign any IPv4 or IPv6 address. Based on patches from maximumG. #2094. See raddb/mods-available/sqlippool for changes. * radeapclient can now use EAP-SIM-Ki to dynamically create the necessary triplets. * Explain why many LDAP connections are closed. Fixes #1969. * Debian build / package issues fixed by Matthew Newton. * dictionary.patton updates from Brice Schaffner. Fixes #2137. * Added scripts to build "inner-server.pem", and updated mods-config/inner-eap and certs/README to match. * Added provisions for using an external CA. See raddb/certs/ * Include dhcpclient binary in freeradius-dhcp debian packge. Bug fixes * Bind the lifetime of program name and python path to the module FR-AD-002 (redone) * Pass correct statement length into sqlite3_prepare[_v2] FR-AD-003 (redone) * Allow 100-Continue responses with additional headers in rlm_rest. * fix corner case where detail files were not being locked correctly. * Fix (SQL-Group == "%{...}") checks, and same for LDAP-Group. Fixes #1947 * Clean up exfile code. Which should help to avoid issues with reading / writing 100's of detail files. * Fix build for winbind. Patch from Alex Clouter. * Fix checkrad for Mikrotik. Patch from Muchael Ducharme. * Fix home server stats lookup. Patch from Phil Mayers. * Add libjson-c3 as an optional dependency. * Require LTB OpenLDAP on CentOS / Redhat, to avoid linking against NSS, which breaks the server. Fixes #2040. * rlm_python fixes. Fixes #2041 * Typos in "man" pages. Fixes #2045 * Expand "next" in %{%{...}:-%{...}}. Fixes #2048 * Don't add TLS attributes twice. Fixes #2050. * Fix memory allocation in rlm_rest. Fixes #2051. * Update trustrouter for new API. Fixes #2059. * Fix SQLite issues on FreeBSD. Fixes #2060 * Don't do debug logging of bad passwords. Fixes #2064. (bsc#1099802) * More graceful handling of "die" in rlm_perl. Fixes #2073. * Fix occasional crash when using cisco_accounting_username_bug = yes * EAP-FAST fixes from Isaac Boukris. [#2078], #2076, and #2082, #2126. * DHCP fixes, relay, #2092, add run-time check, #2028 * Decode multiple RADIUS packets at a time in highly loaded RadSec connections. Patch from Jan Tomasek. #2106. * TunnelPassword is not "single value" in LDAP schema. Fixes #2061. * sql log now opens the expanded filename, not the input one. This was a regression introduced in 3.0.15. * Remove unnecessary UNIQUE constrain in Oracle schemas. * Fix SSL thread and locking issues when modules also use SSL. Fixes #2125 and #2129. * Re-add dhcpclient "raw packet" changes. Patches from Nicolas Chaigne and Matthew Newton. Fixes #2155.- Fix permissions of radiusd.service (bnc#1053654)- bsc#1055679 - freeradius-server does not provide winbind/AD auth Added libwbclient-devel as buildrequires- update to 3.0.15 with security fixes for issues found via fuzzing by Guido Vranken (bsc#1049086) https://freeradius.org/security/fuzzer-2017.html * CVE-2017-10978: FR-GV-201 (v2,v3) Read / write overflow in make_secret() * CVE-2017-10983: FR-GV-206 (v2,v3) DHCP - Read overflow when decoding option 63 * CVE-2017-10984: FR-GV-301 (v3) Write overflow in data2vp_wimax() * CVE-2017-10985: FR-GV-302 (v3) Infinite loop and memory exhaustion with 'concat' attributes * CVE-2017-10986: FR-GV-303 (v3) DHCP - Infinite read in dhcp_attr2vp() * CVE-2017-10987: FR-GV-304 (v3) DHCP - Buffer over-read in fr_dhcp_decode_suboptions() * CVE-2017-10988: FR-GV-305 (v3) Decode 'signed' attributes correctly * FR-AD-002 (v3) String lifetime issues in rlm_python * FR-AD-003 (v3) Incorrect statement length passed into sqlite3_prepare- update to 3.0.14 (still FATE#322416) Feature improvements * Enforce TLS client certificate expiration on session resumption, and Session-Timeout. See CVE-2017-9148 (bnc#1041445) * Updated dictionary.cisco.vpn3000, dictionary.patton * Added dictionary.dellemc * Lowered the log output for failed PEAP sessions. * ALlow utc in rlm_date. * The internal OpenSSL session cache has been disabled. Please see mods-available/eap * Update detail reader documentation. * Make outgoing RadSec connections non-blocking. * Add SQL backing to Moonshot-*-TargetedId generation. Bug Fixes * radtest uses Cleartext-Password for EAP, not User-Password. * Update documentation for mods-enabled/ linking. * Enhanced checks for moonshot salt. * Allow session resumption for RadSec connections. * Update "huntgroups" file to note that port ranges are not supported * Fix OpenSSL permissions issues on default key files. * Certificates are not required when PSK is used. * Allow SubjectAltName as first extension in cert. * Fixed talloc issue with TLS session resumption. * "&Attr-26 := 0x01" now produces useful error messages. * Handle connection error in rlm_ldap_cacheable_groupobj. * Fix endian issues in DHCP. * Multiple minor fixes for Coverity complaints. * Handle unexpected regex. * Fix minor issues in dictionaries. * Fix typos and grammar. Patches from Alan Buxey. * Fix erroneous VP creation in rlm_preproces. * Fix MIB. Patch from Jeff Gehlbach. * Trust router updates from Alejandro Perez. * Allow build with LibreSSL. * Use correct packet for channel bindings. * Many fixes found by PVS-Studio. Thanks to PVS-Studio for giving us a test license. Please see the git commit history for more info. * Fix incorrect length check in EAP-PWD. This may be exploitable. * Stop rotating session database files (radutmp, radwtmp) since these are not logfiles. - freeradius-server-radiusd-logrotate.patch: updated- removed obsolete freeradius-server-fix-cert-bootstrap.patch because recent /etc/raddb/certs/bootstrap simply works - update to 3.0.13 (still FATE#322416) Feature improvements * Add dictionary.rfc7930. Note that we do not implement the RFC. * Added 'cipher_server_preference' to mods-available/eap Patch from #1797. * OpenSSL 1.1.0 compatibility fixes. * rlm_perl: radiusd::xlat to evaluate xlat string within perl script * Allow authentication retry in winbind. Patch from Herwin Weststrate. See raddb/mods-available/mschap. * Added "recv-coa" method to rlm_rest. It behaves the same as "authorize". * Document Trust Router tr_port option. Patch from Stefan Paetow. * Update elasticsearch/logstash examples so that they work with elastic stack v5. Patch from Matthew Newton. * Print information about packets, replies, and contents in the detail file reader. * Update abfab-tr policy. Pull request #1893 from Stefan Paetow. * Reject packets which contain User-Password and EAP-Message. * Add example for filtering Access-Challenge. See sites-enabled/default. * Pull symlink fixes from v4.0.x. Fixes #1859. * Add systemd reload. Not everything is reloaded, but some is. Fixes #1662. * Better documentation for listen "ipaddr". Fixes #1921 * Add dictionary.cnergee, updated dictionary.nomadix. * radclient no longer needs -x to print statistics with -s. Bug fixes * Minor typos. Fixes #1763 * Fix typo in RPM build. Closes #1767. * rlm_mschap check for password expiry only if password was correct. Fixes #1762. * Update debian build. * update rlm_counter "man" page. Fixes #1775. * Remove erroneous assert. Fixes #1778. * fix mschap password change test. Fixes #1792. * Cleanup config file on data remove. Fixes #1795. * passwd module returns "notfound" if not found. * Check for old OpenSSL, and don't build rlm_eap_fast if it necessary. Fixes #1803 * Cleanup memory better after ldap version query. Patch from Aleksey Katargin. * Rename lt_* functions to avoid linker issues with libtool. Fixes #1277 * Many miscellaneous fixes and typos. * Allow long strings in %{%{foo} bar:-%{baz} blah". Fixes #1866 * Fix filtering operators, along with more documentation and more tests for them. * Fix OpenSSL fixes. Fixes #1876. * Finish SQL select queries even when SELECT returns no rows. Fixes #1879. * Set Module-Failure-Message for more EAP errors. * Correct typo in dictionary.rfc5580. Fixes #1882 * Remove obselete systemd syslog.target. * Client-Port-Balance load-balancing now uses client port. * Radrelay examples fixed from Alex Clouter. * Update systemd target. Pull request #1896. * Trim starting whitespace in xlat strings. * Get MySQL result lengths using normal API. * suid down after fchown(). Fixes #1914. * Fix cases of comparing pointer to NUL character. Fixes #1915. * OpenSSL v1.1 fixes. Pull request #1921. * Better Handle v4/v6 host names. Pull request #1919. * Remove "Auth-Type = System" from docs and examples. * Don't crash on malformed %{home_server}. Fixes #1922 * fix erroneous use of talloc destructor in rlm_eap * Issue trigger modules.sql.fail. Fixes #1923 * Document python_path gotcha's. Fixes #1845 * dlopen() the specific version of Python. Fixes #1592- Don't require insserv if we use systemd - Remove require for unused fillup- Merge changes from SLE to openSUSE (FATE#322416): * freeradius-server-radclient-init-error-buffer.patch - make sure we initialize error buffer. bsc#911886: radclient error free() invalid pointer * freeradius-server-opensslversion.patch: remove OpenSSL version check and assume we know what we are doing. (bnc#1013311) * merge .changes file, mostly. - do not attempt to detect "vulnerable" OpenSSL versions. SUSE security fixes do not necessarily bump version numbers as does upstream OpenSSL (bnc#1021375) - do not generate certificates in %post. End-user needs to do this manually. - keep FreeTDS disabled on SLE12 - we never shipped it enabled - require OpenSSL 1.0+ - use pkgconfig(systemd) instead of plain systemd as BuildRequires - don't list manual pages as %doc- Remove --with-pic which is for static libs only. - Use SUSE RPM group names. Trim filler words from description. - Do not hide errors from groupadd/useradd.- Add upstream keyring - 2 new modules: rlm_sql_freetds and rlm_eap_fast- update to 3.0.12 - still fate#320481 The focus of this release is stability. * Feature improvements + Add support for =~ and !~ in update sections. See "man unlang" + Add dictionary.checkpoint. + Simultaneous-Use prints out more information. + Print WARNING in debug mode when packets may be truncated. + Added expansions %{home_server:state} and %{home_server_pool:state}, which show the state of the server / pool. + Mark rlm_sql_freetds as stable. + Make rlm_perl less fragile. Patch from Herwin Weststrate. + Allow extended attributes to have "encrypt=2" + Update dictionary.aruba. + Add support for EAP-FAST. This is an isolated feature which does not affect anything else. + Update OpenSSL vulnerability list. Use a version of OpenSSL released after September 20, 2016. + EAP certificate verification is now done when "verify" is enabled and "ocsp" is disabled. + New dhcpclient and rlm_rad_counter man pages. + Minor abfab and moonshot additions. + Pass CFLAGS through from environment in RPM builds. Allows more custom builds. + Build with Heimdal in addtion to libkrb5. * Bug Fixes + Use correct typedef for older versions of sqlite. + Update mssql schema to add priority + don't complain on /dev/urandom in ldap + fix == operator in update sections + Don't create DHCP strings with many trailing zeros. + Allow MS-CHAP change passwords instead of complaining on large buffer. + Allow assignment or equality operator on SQL. + Update aclocal tests for FreeBSD 10. + Remove occasional hang in rlm_linelog. + Copy VSAs to inner tunnel for TTLS and PEAP. Fixes #1544 + A few minor bugfixes caught in v3.1.x cleanup, and back-ported to v3.0.x. + do_not_respond again works in post-proxy + Allow realm "~^.*$" {} and User-Name with no realm. + Fix leak when creating unknown attributes + Fix Debian / logrotate. + Make OpenSSL error functions thread-safe. + Fix crash with rlm_sql and updating SQL-User-Name. + Debian build updates. + Allow regular expression comparisons in radclient. + Fix memory leak on unknown attributes in detail file reader. + Update example paths in "man" pages when installing them + Build fixes for rlm_mschap. Fixes #1489. + BSD build fixes. Patch from issue #1583. + Be more careful about /lib/ when building. Fixes #1585. + Correct ifdef placement error. Fixes #1572. + Allow for more files in internal "exfile" API So it will be possible to open more than 64 "detail" files at the same time. + Remove support for statically built EAP modules. Fixes #1591. + Many fixes to rlm_python from Guillaume Pannatier. + Use correct week adjustment in SQLcounter. Fixes #1608 + Minor fixes to allow compilation without DHCP, VMPS, or TCP. + Fix checks for module / config file change on HUP. + Compile regex comparisons when sent via "debug condition". + Update filenames in documentation and examples. + Don't crash if SQL connection becomes unavailable. + Disallow originate_coa when proxy_requests = no. + Free rad_perlconf_hv in correct perl context. + Multiple fixes for Debian builds. #1510, among others. + Set OpenSSL FIPS compatibility flag when necessary. + Pulled fixes for the build system over from other branches. + Fix OCSP for RADIUS over TLS. + Fix skip_if_ocsp_ok behavior. + Better fixes for systems without closefrom() but which have /proc. + Minor build fixes back-ported from v4.0.x. + build --whout-ascend-binary. Fixes #1761. + Be more aggressive about not opening new connections in debug mode after CTRL-C. Address #1604.- use %{with} macro for conditional inclusions instead of hardcoding version numbers - improved package descriptions - fixed builds on SLE12 and SLE11SP4- removed installation of experimental module rlm_sqlhpwippool.so - update to 3.0.11 (fate#320481, bsc#961479, CVE-2015-8763, bsc#935573, CVE-2015-4680) * Changes of version 3.0.11 + Feature improvements - "unlang" comparisons of IP addresses to IP prefixes are now detected, and types automatically cast. - Allow shorthand form of ipv4prefix values e.g. 127/8. - Add "auto_chain" to raddb/mods-available/eap, tls subsection. This allows the disabling of OpenSSL auto-chaining of certificates. Which might be wrong. - Added printing of coa and disconnect stats (radmin). - radclient defaults to expecting Access-Accept responses to Status-Server. - Updated dictionary.lancom, dictionary.starent. - Portability fixes for Solaris. - More errors from ntlm_auth gets passed to MS-CHAP. - Update abfab-tr-idp virtual server. - Added "filter_password" in policy.d/filter. This removes embedded zero bytes in User-Password, for compatibility with broken clients. - The server now issues a WARNING message if duplicate configuration items are found. - TLS can skip the "verify" section if OCSP returns OK. See raddb/mods-available/eap, "skip_if_ocsp_ok". - Set TLS-OCSP-Cert-Valid = yes / no / skipped, which is the result from the OCSP check. - Interoperate with AD and "LmCompatibiltyLevel = 5", by always setting WBC_MSV1_0_ALLOW_MSVCHAPV2 for native winbind in rlm_mschap. - TTLS and PEAP now require "virtual_server" to be a real server. - Print WARNING when TTLS or PEAP identities are spoofed or not properly anonymized. See RFC 7542 for requirements. - Various rlm_python fixes from Herwin Weststrate. - Allow setting Response-Packet-Type in "Post-Proxy-Type Fail", which is useful when the home server does not respond. - elasticsearch updates from Matthew Newton + Bug Fixes - Fix issue where field nas_type would not be accessible via the %{client:} xlat, for clients loaded from SQL. - Fix compatiblity issues with OpenSSL 1.0.2. Ignore calls to msg_callback with 'pseudo' content types. - Data type "ipv4prefix" is parsed correctly. - Use correct talloc context in rlm_exec. Fixes #1338. - Complain in unlang if "else" is used with no previous "if" or "elsif". - Send accounting status packets to the accounting port. Fixes #1364. - Print out CFLAGS when doing "radiusd -Xxv" - Fixed bug with coa/acct stats value #1339. Based on patch from Jorge Pereira. - Fixes for LEAP proxying. Don't use LEAP! - Fix issue with "directory already exists" seen when doing "make install". - Fixed bug with radmin related to the option "stats detail " - Complain if the detail file reader does not have permission to read the "detail.work" file. Fixes #1398 - Fixed SoH. Attributes were not being copied to the virtual server. - Used a wrong list to global statistics in "stats". - Create EAP-PWD identity correctly. Prevents segfaults. - Dynamically validate authentication types for PEAP and EAP-MSCHAPv2. - Fix includes in installed headers. - OpenSSL 1.0.1f and 1.0.1g do NOT calculate TLS 1.2 keys correctly. See raddb/mods-available/eap, "disable_tlsv1_2" - Allow password change to work for MS-CHAP. This requires 'r=0', because password changes are not retries. - Fix home server fail-over for home servers using TCP and/or RadSec. - Special characters in expanded regexes are now escaped e.g. User-Name containing '.', and comparing /%{User-Name}/, the '.' will now be escaped. See src/tests/keywords/regex-escape. - Use correct authentication vector when sending Access-Reject replies for RadSec. - Set FreeRADIUS-Proxied-To in TTLS again. You should use the "inner-tunnel" virtual server, instead of relying on this attribute. - Fix debugging constants in rlm_perl. Patch from Herwin Weststrate. - Add samba-dev / samba4-dev to debian builds so that rlm_mschap can automatically use the new winbind API. - Automatically skip zero-length attributes when sending packets, instead of erroring out.- fix bsc#951404 * Rebuild of freeradius-server package fails * fix source url - ftp://ftp.freeradius.org/pub/freeradius/ + ftp://ftp.freeradius.org/pub/freeradius/old/- update to 3.0.10 * Changes of version 3.0.10 + Feature improvements - Do more optimization of unlang policies. This makes run-time a bit faster. - Re-name most of the functions in src/lib. Third-party module authors will have to do the same. - More documentation on contributing and how to write modules. - Update radiusd.service for systemd. - Open IPv6 proxy socket if the server is listening on IPV6 auth / acct / coa packets. - Create debian packages for DHCP. Fixes #1125. - Add more tests for "update" section parsing. - Update "man" pages. - Update attributes for Alcatel 7750 - Add dictionary for Boingo Wi-Fi - Add support for DHCP lease queries. See raddb/sites-available/dhcp - On HUP, check all modules for config files which have changed. And only re-load those modules. - Allow FreeRADIUS-Response-Delay(-USec) to be set for RADIUS packets. Patch from Herwin Weststrate. - Documentation fixes from Alan Buxey and Matthew Newton. - Update "logrotate" script. - Added more RFCs to doc/rfc for new standards implemented by FreeRADIUS. - Don't crash when doing "radmin -e "help hup". Patch from Matthew Newton. - The dictionary parser now does more sanity checks, which prevents run-time problems with invalid attributes. - Update debian packages. Patches from Christopher Hoskin. - Many other debian packaging fixes from Matthew Netwon and Herwin Weststrate. - Add "session-state" to Perl. Patch from Herwin Weststrate. + Bug Fixes - Fix rlm_files so that there are no collisions when loading 10's of 1000's of users. - Fix radclient to use our internal v4/v6 parsing functions. v6 addresses with ports now work correctly. - Fix sending/receiving packet messages to wrap v6 addresses in square brackets '[]'. - Check for sasl/sasl.h when building rlm_ldap, and disable SASL functionality if unavailable. - Fix issue which caused a non \0 terminated buffer to be assigned to attributes if the value being assigned contained an invalid escape sequence. - Fix deadlock when reconnecting connections in the connection pool. - Fix potential overrun in functions that used fr_utf8_char with a non nul terminated buffer. - Fix decoding issue for Tunnel-Password type attributes which were very long. Found by Denis Andzakovic. - Fix radclient issue with TCP sockets on FreeBSD. - The server now creates ${run_dir} and ${logdir} directories in daemon mode, when running as "root". - Handle tags when using maps. Fixes #1191. - Fix crash when CoA packets time out. - Fix parse error in rediswho - Fix regex support in SQL radcheck the "users" file and radsniff. - Register listen xlat earlier, so that it's available when the virtual servers are being parsed. - Parse Ascend-Data-Filter when given as "0x..." - Print Ascend-Data-Filter correctly. Add test cases for both. - Allow old-style clients again. They will be disallowed for 3.1.0 and following. - Complain instead of crash when "else" and "elsif" are in the wrong place. - Clean up memory more aggressively. This lowers the maximum memory used, most typically for TLS based EAP methods. - Prevent the server from unlinking the control socket of an already running instance. - Fallback to using the configured OCSP URL if one exists, and no URL is provided in the certificate. - Return CoA-NAK if proxying CoA fails. Based on patch from Jorge Pereira. - Lower peak memory usage by decreasing size of internal memory pools. - The control socket is now left in place if a second copy of the server is accidentally started. - Allow virtual attributes in "switch", "case", etc. Fixes [#1240] and #1265. - Many spell check / typo fixes in comments and example configuration files. - Better handle multiple DHCP listeners. - Don't print secrets for old-style realms. Fixes #1267. - Don't fall through in empty "case" statements. Fixes #1274. - Update EAP-TTLS so that MPPE keys are correctly calculated with TLSv1.2. - Always delete MS-MPPE-* from the TTLS inner tunnel. This allows TTLS / EAP-MSCHAPv2 to work. Fixes #1206. - Fix off by one error that caused some MSCHAP-Error messages to be sent without the password change version (V=3) and the textual message component (M=). - Always include C= V= and M= in MSCHAPv2 errors. RFC 2759 does not say that any of these fields are optional, and not including V= caused errors with wpa_supplicant. - Do not include M= in MSCHAPv1 errors. It's not supported.- Fix boo#912714: freeradius can't use ntlm_auth * Create winbind group * Add radiusd to winbind group- Remove gpg signature file * The gpg signature checking is broken and doesn't work- Fix bsc#935573: Insufficent CRL application for intermediate certificates * CVE-2015-4680 * freeradius-server-CVE-2015-4680.patch based on https://github.com/FreeRADIUS/freeradius-server/commit/a03814af310bb3bee74ea012546d99c48b0ea5c3- update to 3.0.9 * Changes of version 3.0.9 + Feature improvements - Make "pool" configurations more consistent, and update documentation for them. - Move connection pool logic to "most recently started", instead of MRU. This should help with pool stability. - More VSAs for 3GPP2 - Added examples of multi-value attributes to rlm_perl. - LDAP-Group and SQL-Group attributes are now dynamically allocated. - Only the "sql" module registers SQL-Group. Other instances register "instance-name-SQL-Group", similarly to "ldap". - Unknown attributes are now complained about more often when used in unlang statements. e.g. if (Foo-Bar == 3) used to be a string to string comparison. It is now a parse error. - Rename RLM_COMPONENT_* to MOD_* in the code. This makes many things easier. - Move to C99 initializers for modules. - Load modules in raddb/mods-enabled. This allows attributes like "LDAP-Group" to be used in the "files" module, without explicit ordering or listing in "instantiate". - Added 'bootstrap' section to modules. Third-party modules will need to be updated. - When adding clients from a DB, add them to a virtual server if that virtual server has a "listen" section. Otherwise, add the clients to the global list. - When reading dynamic clients from a file, don't expire them if the underlying file is unchanged. - Allow the server to originate CoA requests from the post-auth stage. - The server creates ${run_dir} and ${logdir} in daemon mode, if they do not already exist. - Add dictionary for Wi-Fi Alliance Hotspot 2.0. The server now supports all mandatory and optional attributes for this specification. - HUP now re-loads the configuration only if the files have changed. If all files are unchanged, HUP re-opens the log file, and does nothing else. - Much better debug messages for EAP-TLS, including which attributes are cached, and when they are retrieved. - Increase default max_requests to 16384. Memory is cheap now. - Added "stats memory" commands to radmin. Debug build only. - Aptilo controller dictionary updates. - SQL modules now use Acct-Unique-Session-Id everywhere. - The redis modules are now stable. - The LDAP module now supports SASL "interactive bind" method. This allows Kerberos based administrator and user binds. - DHCP code is now in libfreeradius-dhcp. - More DHCP encoding / decoding unit tests. - rlm_replicate can now be listed in the "accounting" section. - Better sqlite debugging output. - Remove "required" option from many sql_ippool directives. - Set default CA "basic constraints" to "critical". Fixes #1073 - Updates to help / man pages from Jorge Pereira. - Added more tests. + Bug Fixes - Be more careful about unused config item warnings when using -Xx. - Move more defines to be auto-generated. - Allow virtual servers in proxy fallback. - Allow %{module:} to work. - Don't crash in RadSec. Closes #980. - Return better errors when a unix group / user is not found. - Re-enable detail module "locking" parameter. - Don't crash when logging replies from Status-Server packets. - The couchbase module now uses "update" instead of "map", for consistent with the rest of the server. See raddb/mods-available/couchbase - Don't require NT-Password for MS-CHAP password changes. - Be a bit more careful about decrypting MS-CHAP-MPPE-Key attributes. Closes #1013. There is no perfect fix, tho. - Fix security issues with EAP-PWD. See http://freeradius.org/security.html#eap-pwd-2015 - Fix dynamic clients read from SQL in non-debug mode - MS-CHAP now allows retries (i.e. password change) when passwords are expired. - Allow "user=radiusd" when the server is already user "radiusd" - suid up/down works on non-Linux systems. This means that the control socket should have the correct ownership. - Fix issue which caused the server to sometimes have problems when a home server was marked zombie. - Fix format.pl because Perl is now more picky. - Fix proxy to Packet-Dst-IP-Address, so that it uses the correct destination port. - Fix corner case with cursor functions and removal. - OpenDirectory fixes and documentation. - Fix leaks in rlm_redis. - RFC 6929 "evs" attributes are now encoded / decoded properly. - Fix talloc pool leaks when receiving malformed or retransmitted Accounting/CoA requests. - Printed attributes again use double quotes instead of single quotes. - Set X509_V_FLAG_CRL_CHECK_ALL, and add "check_all_crl" to eap.conf. Fixes oCert CVE-2015-4680. - rlm_expr now errors out correctly on malformed attribute references instead of triggering an assert. - Make "break" work in "foreach" loops - Allow dynamic expansions to work again in the "hints" file. - Correct minor typos in comments and examples from Alan Buxy. - Re-urlencode the path portion of ldapi:// urls before passing it to ldap_initialise. - freeradius-server-rlm_sql_unixodbc-configure.patch removes hard-coded directory in configure script of rlm_sql_unixodbc - install new module rlm_sqlhpwippool.so- minor adjustments/cleanup of spec and changes- update to 3.0.8 * Changes of version 3.0.8 + Feature improvements - Allow syslog_severity to be set in rlm_linelog. - Allow defaults to be set for bulk clients in LDAP and couchbase. - Updates to dhcpclient. Patches from Nicolas C. - rlm_mschap now supports direct connections to winbind, which is faster than ntlm_auth. See raddb/mods-available/mschap. Patch from Matthew Newton. - Recommend /dev/urandom for TLS randomness, instead of ${certdir}/random - Allow TLSv1 to be disabled via "disable_tlsv1" in tls{}. - Allow Expanded EAP types where vendor is 0 (IETF) and type is normal EAP type. Supplicants sending Expanded EAP types like this are broken. - Add support for server side sort controls when searching for user objects in rlm_ldap. + Bug Fixes - Don't complain about "authorize" in "server {}" blocks, but only if there's no "server" block. - Fix cosmetic issue where debug from the first packet read by a detail reader thread would be emited during config parsing. - Fix ASSERT on truncated detail packets. - Don't use main server log functions from within panic_action, as in the case of syslog this would cause deadlocks if the fault was triggered from within a malloc. - Fix issue in "switch" when "correct_escapes = false". Fixes #911. - Fix sqlcounter configuration to use "%%b" instead of "%b", otherwise the new syntax validation will fail. - Allow forward references in configuration items. Modules aren't always loaded in a sane order. - Fix more escaping issues. Closes #912. - Decode MAC addresses correctly for VMPS. - Fix memory leak with TLS connections. - Fix state machine threading issues for conflicting packets. - Fix copy_request_to_tunnel issues for tagged attributes. - Allow "ok" to over-ride "updated" inside of Auth-Type sections. - Update state machine so that post-proxy is run though child threads for performance, instead of blocking the main thread. - Allow "netmask" to work again in client definitions. - Relax restrictions on SQL group queries. - track outgoing proxy sockets and clean them up more aggressively. - track proxy statistics, including CoA and Disconnect. - If radmin has a connection failure when running a command, it re-connects and runs the command again. - mark home servers "unknown" less aggressively. - Fix potential SEGV in PostgreSQL driver on error. - Fix issue where fields like nas_type would not be accessible via the %{client:} xlat, for dynamic clients. - Set default busy_timeout (of 200ms) in the sqlite driver, so writes don't cause selects to fail in multithreaded mode. This is user configurable, and may be increased if required. - Convert Password-With-Header attributes to binary (from hex or base64), in the authorize method of rlm_pap. - Fix invalid assert in state.c, that could cause abort in post-auth. - Fix double free when -m flag is used, and connection pools are referenced by multiple modules. - RADIUS over TLS accounting uses the same port as authentication. - Regularized return codes from radmin commands. - Fix RHEL spec file so it works correctly for Centos7 which uses systemd, and didn't like the SystemV init script. - radwho and radlast now have a -D option to load dictionaries - DHCP packets are no longer checked for duplicates. - Don't crash in sql module group comparisons in corner case. - Calculate MPPE keys correctly when using TLS 1.2. - Fix load-balance sections. Closes #945 - TLS certificates are available again in the post-auth section. They are not available for session resumption. - radclient encodes CHAP-Password properly when using -c Closes #955. - Fix issue in rlm_cache_memcached driver that caused variable length values to be truncated. - Fix track functionality in detail reader, so it no longer fails with a "Failed marking detail request as done: Bad file descriptor" error. - Actually add the peer identity (as User-Name) to the inner tunnel in EAP-PWD requests, so it's available for lookups. - Fixes to PostgreSQL queries. Patches from Santiago Gimeno. - new set of consolidated patch files: deleted: * freeradius-server-2.1.1-logrotate_su.patch * freeradius-server-2.1.6-rcradiusd.patch * freeradius-server-initscript-pidfile.patch * freeradius-server-radius-reload-logrotate.patch * freeradius-server-var_run.patch added: * freeradius-server-radiusd-logrotate.patch * freeradius-server-rcradiusd.patch * freeradius-server-tmpfiles.patch- Do not disable as-needed build - Remove the with_sysconfig switch and just stick with versions- update to 3.0.6 - fixes a segmentation fault in PEAP module (bnc#912588) Feature improvements: * radmin / raddebug conditional errors are printed to the output, instead of being discarded. * raddebug will exit if condition set with -c was invalid. * radmin auto-reconnects if the connection to the server has gone away. * rlm_cache now has submodule support. See raddb/mods-available/cache * New memcached driver for rlm_cache. See raddb/mods-available/cache * Add support for &Attribute-Name[*] in conditions. See "man unlang" for details. * Add &Attribute-Name[n] which gets the last instance of an attribute e.g. Module-Failure-Message[n]. * Allow for redundant string expansions. See the "instantiate" section of radiusd.conf. * When checking IP addresses in conditions, make the right side be parsed as an IP prefix. * Support JIT compilation of compiled regular expressions when built with libpcre. * Support named capture groups with "%{regex:}" when built with libpcre. * Increase regular expression capture groups from 8 to 32. * Emit error markers for badly formed regular expressions. * Allow 'm' flag to enable multiline mode in regular expressions. * Support limited implicit attribute conversion in update sections. * Support casting between IPv6 and IPv4 where the IPv6 address has the v4/v6 mapping prefix (::ffff:).- Drop .keyring and .sig file: freeradius-server still uses MD5 signatures, which are no longer validated/accepted by GPG 2.1.- update to 3.0.5 Some of the new features: * Allow LDAP to specify arbitrary attributes for dynamic clients. * Allow one level of backslashes (finally). See radiusd.conf, "correct_escapes" setting. * When supported by OpenSSL, allow TLS 1.1 and TLS 1.2 in EAP methods. * Allow multiple new connections to be spawned simultaneously in the connection pool, to cope with spikes in traffic. * Use kqueue on systems which support it. This allows for better scaling when using many sockets. * Home server "response_window" can now take fractions of a second. See proxy.conf. * radmin now supports "show module status", as thee counterpart to "set module status" * "ipaddr" will now use v6 if no v4 address is present. You should use "ipv4addr" or "ipv6addr" to force v4/v6 addresses. * "client" sections will allow "ipaddr = 192.192.0/24". The old "netmask" is still accepted, but the new format is preferred. * Allow custom HTTP headers to be set for rlm_rest requests using control:REST-HTTP-Header (attributes consumed after use). * Extend format of %{rest:} expansion to allow HTTP method and POST data to be specified and urlquoting. * Add support for aliases in rlm_ldap. * Add support for connection pool sharing to all modules that use the connection pool (pool = ). * "tls" sections now have a "psk_query" configuration item, for dynamic queries to discover a key from a PSK identity. * Preliminary support for EAP channel bindings. * Foundational work for dynamic home servers. They do not yet work, but this is now only a matter of updating the "realm" module in a future release. * Support &attr[*] syntax to copy all instances of an attribute when used with the += operator in an update section. May be qualified with a tag. * The logintime and expiration modules can now be listed in the post-auth section. This makes some configurations simpler. * rlm_sqlippool is now IPV6 capable. Set "ipv6 = yes" to get Framed-IPv6-Prefix returned. The SQL queries have NOT been updated. Please submit patches. and numerous; bugfixes - remove gpg-offline - create /run/radiusd after install - drop freeradius-server-opensslversion.patch (upstream)- freeradius-server-opensslversion.patch: do not check the minor version of openssl, minor versions are supposed to be compatible. bnc#906682cloud127 1624472258  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFG3.0.21-lp152.2.9.13.0.21-lp152.2.9.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.opensuse.org/openSUSE:Maintenance:16593/openSUSE_Leap_15.2_Update/01d40a48b058f57394a1ecc1551a3e1b-freeradius-server.openSUSE_Leap_15.2_Updatecpioxz5x86_64-suse-linuxdirectoryASCII textC source, ASCII textp{"Cj"utf-850183620c0d91b816e3639bd16aa5e3c4308277ed22312f2fb1e36305545350b?P7zXZ !t/lo] crt:bLL .Z,g\X ]E#s~_gWK1*zWwm>*GCq8:AThpù1f!aG7P9ώq>ZTlC1 VX(`D{#rdF2;m#)ȡ5ɼ5mqK D0/[`Yи2%,ihtB/:h8@dۖ%o5z%ӗ6uva]cڌ R9G+)xK-_$%!L1zM+Lѝ)aCňtv8"U5P݁v4.1t+|E#]ߒ@|{M/!1jFK$Ź;B9>ԯNK6sF$T :k8Ƥi uk$}Sne+adPnI\Ѧb*C{S TY GaSdpo=D;cMxw7a/j,P]<fǐD4UkI=yuŔY}= 9&l/uNJR(C$WA-?Ril!؛ޭς_|kz1{rV5^Q U@ki(\O5\!Q$u: nm${)}͇T`_s6+aͲ:T>p m&cmT†l"t}x-_?b\H{a1`S}XNG"0~1ɒj񋲃4*2Pq,?r “9qglf͘yCRs:#]2CfB?\NXK.׊:E*ԮԂ< ` cZ:p}%lll+׻;_`\ Qe;DwڏǞV$؁z[Nead!fh|~*}#-OF#&!ՠ̔$㵞yIS2s{ DHyuv _P?h\QR3eձT-^ F5o pPdžWcmQ9Z.G AhBjQvyV)bqZ:S=y*Bj:.wg̞>\:O tvS^XG7QҝU[_Go44/;@dy -.ı{:*:cڼ TB7LdoG![NqJv:Ғ;8=|cw_ݱX+&r)"xͧ9PPZmFͮN5&6Ri@(OL܄ 5O˪5q:{0§}?v v͗ |{{1吜vӆE%\ o-vlQ1J]mݔ9KCC q3@CLA]}MЙN/O|6A7OA$S|u :O3=Fz3>'+&ji=ʒygjVn'1ah A-ZVDL:]@5>C6Gc{+.ៀˁo>/a"]V>_YR0)0d>ǂIHv _s/n 믚>߄uiq  )h& ie}Jʏ-Ԡ!/cz crw%rMl=㜱?=R=h)dHDh@W$7 y } Rf<\7EB[n;At_ÌX7~iqnc|DNYTҗ/)M`g,3;B#wݓ;K2O 6r{t G@Xw!\)v&>t#"Ve>0"ur=0/pl꫹RKVeQ Qpk/Jj'KG֠%L)U0BqN Y"`j;U3l&dk w`{=XۻCACR mvf 9jxm@rA8uS#Ez$V'kWH nD@ul)'=З,u~:w:%LԸY[ '8|;]BD`2 T8`{Z'8ƴ=m8US36`dߕZh O^Ǻ7̥ VŐAg!je Q^joEO=advf oO/ӗnOVF3m -:T|]p ~'<"AVWڝ~-~[#ޭ?%Sg8f[K1'W!RGv)*x) .Uzizٸ}SM>U+v oGT>ڎc&8npã30蔑12PKqo&NZ&2Tiu* `J\*wJ Ȥ^ܫ|z⣏9ų!ُRWr垜9[BV9A%j z+LI iz;_ \Dwdc0㽈d˪R.xmg~ehwY\PVBk?Kc`j{xJtk^2&vl6MmwG&g#_dbA~M0?a'Wj ):dpR4F ~=BVFGuʩ5fjڔ!9 ?PG.ڲ`z7p .~ƇuBE)2&u+S-@gd 8mY^]2#V$)4YRHc6S [dgEظ;@r @i8j{a ~ &YA,[$)!nN$i4yӡݓC+kbȔmKzTZ2aW*VluYi}~ <ܔ,B^l, E0T8kԛ_s6 -Dv^MZO8B@P#P'JXBniK+75p6 OVstWYDaXE}Y̻ayR8bM'P~6w#`xYXdoP6Z~%(KGld`EMnܘ:,=(wioųDLPuKCǂ~KΈB_0m]Y89)VUil#ˎyY0݅0Ҋf$'(l| TKs:F2M^oysG Pޛħ3ofp:_Bq )u?2zDuWP[ =r;]SVYCII.WF3Axt _mUߴQ4}Ptܞ5BHV9Lޝ'v=}#- [_xͿc#R#|yQ@S 4ǟslMlOFkRX6y\1L)a$Zxfg @{Ba(wt>=7੮1 TAY޻AnWcgi_ۣs% lpݽtZtXpBS,5 n |w̽_`*ak=Qc]GIoΚ?BCauR M؊A 7H&uPs^lFŔEN#W+)BJwY JM~Ioh)ĕ mlʼn7䄛3iU SJ!!{Do~l(>hdnJ'xPg^D2)mc*kMHS2QVI8[췤Շh uEYt9q>T!WdĮ#n`ehLWAg:EC.oT }6_z2CFܨ>RNR KU_++4O'2$pC1uW]Eܥżgcp2H  ;BUn="MI죉8p-͎t}  omJM%FF*D8,'hbrV;<킌;C-]NƟ`J6mo|ֈv;D5[M G#=^@+tWRVACPhtrW[ޭJ4a,7CBҳ|^n|ɏ =UCd%L.mt|r-2>nRJͨͽc'&u|oH( cU_3ۤ5EEa_F"F&Vpkټ*͏܋U&:A.RPV K9ڦ5O+(l(8gcY/ ZXu5~mPPJ$ddc65ZmH$/A Fܑ%9d+GZT,@Grb}"Uoc"ukNQ$%j.Tw]T4iGvɐ(zagߏBQjo&1f֯h$^cM;;q^:Tb>Ӝ >`nA~RRY;yZ.̼1ܹr8 =h"A┥/bˬhY(z6qZ\v[|[ehJ֪|!2%ҙBPA>fgp-BY>U TP2b\D |ZI pzԚg j,~l`sĵX3_dzi}b@ =?X -qWTŘղQx(k`IP@&[,Ic)9 hZ3ީ1ⴃEm0@FD06;5"%*>[ rfOI{U"l6)vFXbH >Ecw=?;*AditbTV.ߋ P W|diKJx#x6ķAD}'WDA-L*HKUUိS# 4OqYEJbX՘N?Sy"Z7ub;扞ffFx(k۴$8uΏKq$5l;Cl4T@*:A <fyʌ0GyzkT1T$w=6/D?*XWGnQ8C1)6y]n2 ! ڎ!ɪIEu-ρj?fjrRԓ [Ѹa% -sCjJFcj B7@?7uW]:]2TsQPut6t."-c>wۧv~&ׄ)?2ݢ&QIi;Hw+qw/HYk} =E5zgڸb<Bg^ G=%J.Rʈ.5bX53E%aՈԛL8 %0-(;(ĝ_`!pfymGs_+ I{>\tG88 o by8*k7Ar0cϹ>T\ )ȐSfar 0bʴÜԿoh}q'p3)AFa[gFzX8K!,j&w-d3@2]I Q.E ivYV팥v# [x*S5Qx|J h{W*GēB>Wwk:QG"ei~)gFSk{FFX :#!G1!vPqll`QaI3~->MKGqLIh1읅x: :e-LԠn50B:u-)ƢPaLܑ +z)NtV :|O|w:Bu>w"Zxqz*k꯬kXU(hkbCvT grub2|Y#|K*4dfKTa"ꛇ R7s3 oa|Qg1odҠ6/gw+1<mfVA9w7dǴvҲJ ^nN)Ur*EQV鈕w%dBٛ5 Smgus#`%xv QV ifaf|&ka>r44ʺ WEQyA}& m$((K0s ;6qZaI:.Ov}^dc/5LoE+F;TrTRMvJw7',=u-nFf}]ss BҏR LX+?!F$8~Ή/Elx %Ӻb\VNwDi:uG ^I+*ϊ,&!}b{eڮ(h' =wzڊ(;[vPqY ' W/祊 s-f66 d:WL5Hޗd E4v:q0`E_`dvONw{&X#QFsXd1IOHHuބ4rn/Z;Fmݼ3XScjx:NGg"eOe:Ka\}|-b.A*ȶ7$zrL<=i#>4D|6Qo7t;B\PjjX[Vz!W2Wp$T˃4 ;=щC";KwЩ"I}P0s(xPމB`U# Yx3 ς u<|쭔B#a ܑk-%'Ơ-MD{@;xQ[6UHKI+)?Ft̃[$ \syG?lvMdNEFz俄q}q5ϐO|^+m40TBC~^GhW}9yP)Cy1U Q}aSnbH@E^B{,_TK Ey&p)a;+jVk8nFF=}۔Y4ݯj$V|oyHzRurQѧEoV1~") 4S:F{ixHUKI1W#Dj \G/y;$@^*o#$N[0[$i9ΤsEkWU|"mDqv̇IE:jĔa'6N+ 0l GD. K~C0{wOMgAMۿD{١O%ɡ$ D`S6%Y6E:1T:"eJ?ucKl :.çoĢc^6yڝ45 PfqH亓?{C}Ҭ99D׽ha}k fgt J͂]!Q ;V+lY+ D&j'\؊xۦ5_*1Sȷ¶`c|a揑j]7xvT)- ']Ne6EM(6k>?SB d u۸*ޑ_wpΙՙT^8Ehd^I%tG)I&a/<s?hmKԭmMSH訰(%m#[ )HaL)~Z+ݷ FéԸFVӮB+b=l+#3gv;`J (w"t_Vہ24'`$xr>S T7tŶ!QL2C f)GQbXS׎P>@?wb0c OБ  X+QOhEA8P܍;c-A:pѠ *f3E?I$DY+ȥW/-bq9"N!\+z#W54s,VΆK.a_OVwtF5T^xwI-M]fCzɉaθ5*%vyQ!U'auX36؋>_":|B{t||2T7XάMX^`M<ƖY-0+cLp;]).p8 a۽9rNtfnCa0fxrvbhYኪ[!ə{[It]s߰4eba%O/8R'mpr;cFǴڊ0%DgP#rhKxshyt>5XB=s3~oj'$2*1L2I]:Wk3yF &z6 X9^c[je3f)0a: $=П^$Z_3z8Oq,гzfϖ%BتmŽ8p~ʐU U0f[4agۿ*ϭmr:f! ̖/Z҄?3oRR`4 ub5C'mywRIsP>h7V᧍ZO\^:>(s3[mxs=)+f/Ft~tRGBBK {cUwlO4vtk + M}dn\e7X̺H[4(P&ͨq!b GjÂ1[n3 y7pJT]IQJcyDto|f!I ¹e}]Q%Q3a1;v}ѾxGѬ ˺b*}ŜQœI^6SP8YJw۽<⺼E3' i%ӻf]Zm]50VyHe7 ,\ s{t#t]x% `.^?t,pFS;e>/aªl`fy|gB^)P< qo3`VvdS0y-n&?GI?zzuz',\r>s_ByH pyk9eY @ccwAfX7kU-j4 ܣqny)+( Ws,aQ2`.Qmk׈̥>i(в{TuaT8=W6/_ٍaSKOBɎٴE3p#L(@dhl»Y\*݉)y#~|KCE7-/>{6zVWY{:΅\cvIm `y+ $秳fy ư(G3Xl^kCbX7 s u e{*2qA9xZ?,3, ]aU4VxaBWs ΜK6T˜|Z5%n8 w-H!$t s- .]NCWP޻ HRҜljKQ`#vzw_f\mep_yh `o 3d̓@3P#k)~kml`Y3M%qatfxaªJKg?D{"ێc&-oC~")ΛYc'Y'ȳch\`|_zBA:9$XHt ^*e b0vJE5LlkF|Xzd'<c׬MfT Aj^tھRk:Rztݘl|\^_*>)l &i%Sh+ד"wrxBm>^e_ XT&`QO AJ\^%y۲!v!L4x+}~;P!093dobUhP fm0hϛ~Fku׬G1{"`G4wAR[0()AK߈s@{ ɞaqGrjNz1gʝE,$ړ~}\8J8>:O\> Ns܌:Mzl!"U]/A)7s_570:IMAG $Tק V SG?^0:\ MTK8k6~DJ$.t!DnBe8Ȱd$+Bxyii.D(auPW1 :ي çi: !LL$Umn(/x8 s6dVkeǞLW'gj+ 0FRF!Nld; (eczYo#;D}.9|sfeid1 8NL8yLuۖ(sK0aܲm錱@#}m,!zv wGrA+ʹynW@;&^GA-i )k|J/ zvEs5̌T?u7q*ct;Xl.+2wjl,\qKCφ`&v!LSbq\q[qT_̂`T/au1OծR,eSk Ճ!jpka_ NS>چarO@ku jHh꘶~4h! '숇+#剮㙋}Ϗ5NOИ*(w"f<ℚ RnVe\fYuX@ rl=+Tr>//S`TŰ5>FqCM$g7y!Lmm>f:)UVc0'y*,ԮvNJ=B|yr{([xۨ\E>9gڴO?E{\W>=bR#z"dUjRkU)RjMFj?Q<e `YΘ&u]Wܦ]Č\3_gB,Ʃ~- Cn5Q-f?DL`>9Q> ?#30aSVd졲xh c|-* #+ᮭ`ӃahKe"Pџw'zJjJ(ɸPcH $ ߽ ˪Unn 1֗;qen/7LڑlMPˠ Gď[vHeɠNt^;Ss=/Zv5IXgƊrh @՛?zNُ,&tϘUܓ5%P0VQxV#Ďw|5ierN |9f}4's7R4Bo0o*10;9lCVS2]鞖N%p$-\>NO)ѽrLg4Jz߼uG-6Ŝ;_ =^4Q=w; K0fbXcLhzq" $Ru's$(R̄=cW:tv Romc׿r=JFKf.@M̐l(ԣE E?ï]"&3W7ԙQa( *6_=7H'[KD,לm-AhVp.ɟyYDBOMb|9fAux5BP$kN#()~EYJjs{(e,N=f@+MNq&؄`Q SɆTo>HʲEnHy΢o+CQjtR-R_Z'zlgyM֏_f&>^Ϯ 2.r]k.Wj3 Ye+frB͐PKk\1? W|kKR*!B7|ˆ *So77B-z0EUE*gfrr!RĘIIQ/{e!Ymf|7̃+1Dka} ڴtu~-q.9ҭ#V[UcH!Yr֣HVif 3h8x9<5/1Qz懨 "&-S٪)b? /-؃|?FHAi*'Xn h:Z }:S_w֮zA>w/[9RRzLSy JWjʜk]Ex?Id}};O]g@/Рr!jD4bI]iC3hݟtW -aW)J3"5LE:}(8ݺ'O{~%ZG6 VRBH{¥Զթ?&J}aôC˰SFn~^aZ {=k䛪 W#]WΞ) `Wxl)_*ml!/Df$k8Y\22[%|Z4;Mkkl-Y"0,;PnUץMp}қ+(aцN{+4זo FPPjs'G)u5\h+Tlɮcgr&W]%j!] {x:ť@&TXk>(C)LJI jQۗ޴hN(t@oHO*24T&)6/ +,Gb܆4SƜ$s/Ae^3P`6b3=jjH] Ԉn=&%2̩ Ӌn (G"/u^Ndoo.7 ZܹT,2+i}f'eI8:w!Yi#5\`F8PpGO]0zr|*V-*^I"2?(DvMDP5lbs٥ٕa3OɢNLQ>gBMmx|͘0Xu Qv `2tLjѶMm]OoLσH6H81kM#d"؏:B-'/B0sRjX0ƥRuw¬Ҭ(R7,l׮|o&f#&?yjm+Z.dUW"[j?z]b$\lwszBͩ&ҭ_@A's87(2xn6W.y"g7T\2B' BKڔ0++lVθ<ػeX((5'k)j Ðie>`+\D7gFe9ij{ s=e\xzQAFTwEj)_p "+r٬H侽=l@kùm:Q x]bEfT`lURI% {K%j(C]1?#Α*|7eWAz]]70 'NJe/3&÷L?VEƟ,dB؇gWIeߚ7X56q2:Ƙ8G;I Ǚ.He8x (Nb™A1Zuk(nλ."GX<}ygCp0i;4`g11G LiBD hQlM:cc ٱc: "4  ^8% p4{ٌ QD0BaM]ڸJx&-gQ)a5V`gdz=߼NݽzЅ27/`%  Z:g:.a ڄ{ު8#zav4[.Ip&;Ntҩ7٧îa`6ŝm_ zf(lޘ1CGr5C1۝,)1F7w|!7ECp={im!Ypʲa@09a)@(v.E#*; 4%$Ew) e1gsv(+2={^egײ?䈧1M߁L0Lλz@BW;mTR8tބ{FcMw?P{`EMk̟w uµsvhsv"iġfYB͸n1RV/PaC&VDL?,_Cك]yWԻ-c,8rCZ]PdoJ8[&Z =>n=kpxˊCҕ=4_]#s#-C2x4>ڃ&Z#׷PK{ɱvrLcB;9ƌ{kd6yE}MmU}I}iQ׶DjS0C-Ys>)s#ߋ4̚θtkQ01G^^&v(o;iGR_lSC )J/N藛e̍*¥q~ >\WA+>MQJFEB$D )2hS:˒̠FKl h p-x{P{]k\"\e4jx 'T@N•̉jNJܰCf-ƁL1=~[RۘvC͂NjAC/: "\ #>UrQ!!׳ך 6кX̩|2"3m: \Z(uڡY7q6WZ)fV)8g"J(JTbR횟+ ۸z~2eeS5)?u?<,(36>VU9nkE%ʐ 7\ʾiheؠVn[ \IY>Lg dثx^"]_r:2iv\bo=Eó@^We➤a=,9lKo' 9Ŕ#@{a̡n~20W#XY5nUWtBk 2 a1H5gdT"g6)^ԭR]a{H_eˊDN9"X-#_-z'%V(j>{vAGQknՁu$tɗjIe3/Jcx3ԙgܟw@ vT*H+_@Pw ӃAF3L(\YPj\,vP! qꋎMbbvK&eW4ԩs"!qm:NLsP0j:x@lAA9&wv>CP:9j9_lp}ToCrVϽsFC1Ca개73CKT,ǙٕR23vܱ;Ԛ;_5USH{{$=yBdso |(~/ߠݫxD)BbhTI tE?)rǰO";ZU_uAA#'DmT=er+}kSx/>,Ó;)gg[U=pI:]/65Չ qF/% 8s]P1 $[=@ ]'"mˀ+H&OY fK1eB !6GZj;P]mD*p!Ȝ.]\soUЎ渏gj?VDg?"_* +4rf`T n*pr"jxC_k_?y^]Ն zD 0-І ߭"(ei' #ME*>NY"`qskIfKX.$K,cTdB:*1rF5.=\) ͼhW7$Zć% `%JHn"gt9Ӝ-2Uԩ1lB+hG CbCP Iq=<?kE_2@G;rLCw|Lf^=F DJn= ² 3^E:,UzQˁ>eJpIa:W{ ]Յ~54k|/䯘lcс.hR,Zޝ"нf]I4[ѷ(rAz&'AKN.N`|nԻ7ͤ&ByOh`wh#Crɫ;Y"`=]g'Z =ma 6iT^a{qކ9QBYɴ_JZT**6k0i1UlD%085/ W\a;rX\WJ4#`1.2*jP M,Ho䊳G웊3 >,ْw$Ne҂ӅZG: ?Qc'aSn:z"`& "&{.۬g,*ϩq/U{>/O3k#%u$ pd^{pzs3V y.}ï拾f\(10—$m͗d/Jd nB%(6T`[s5: )Qm'N蚾Qtdj*DM#% NzIRŠ/edwt~btB#+JX;v Gn4UE>&Snc_EZrm9lˉ#,J &ZI˨\WQW|MzudI`rT[I?Z",5# \[n&WSYItG *Y Ympޫ >Y??Rka1z7i*LJL9^2h/ݱكyR(wT ȕiblʵ'(>w!A4d.Yyiz͈MR:/^Σi\*{'Ȑ\Cau.^1pFA0t4Fړ? 7 tQg=? [ɕ$- szh<$7 kLd×2m˰<~7r x?,_=Xc٢0PVf-PVHl#3$ivJܔLO?'X6:^ٞ1)$$U}BS6r Q0w9e|tt{}Poљ8ihx"oY{LR%Q\ mmv\r[Fu[o9yyH*Y-GBQsu0lF.uf%"s2j+DzsDη`m븯a8b,M7;^esު,tt) ౓Ung &\.C*xD28rL6hIeCcP >܎ά?;mM|tVvHйɅ5 ?EPaGnT 7D=jι9Y@V-%%IR+32|sѿGt;,5{^sK Wo_G.E+U,|Xhwq9+S\7<_uo|U1 J`q47Q)&ѓGm lnN^:8h@a2 fS Cٔ5^h@Yρ~ga8,x;,iIl7#ՍSPe%cU_#܊CG u=}Aٮ=LEa{,^sU +=wҌAeIЫtD& ]_!n; j~?J ~`[U:a#M.:Ps=\BӥBEYؘ1xZ+iб#X8¸mc8+o[?f]2H2PQUQUm묎z8Zq23G?.:L+zS@ KwޖUmfO [WSɋ$eKj )%qQ /ۣ:$ C?4/T>B*5Qby}嗾Z2Rh,3~ 2}Cvw0r㝢 o F. ZQϤ:u劙i et)o h]`W8kZ40E,IjbH/ 0c#1}#LAqMW-\sj`? 8U \ce8E7xIU=.$B b?ghL!SCzr FA2gv3/1%R7}ODIbG- $4ۉ+M[{vK=5kyS.cڲ ]J/NRdєِnxƝMxxm7,E΅ez 6/\;\ 6IG RVM-o ?fYOe /,>1,$u|d'!ND'X1xP 2Hyq8'ئ_1F~/ưhھ4.iN7.%h065\-kb|)}cŅՊ!AHyH(hU3ehp0n!-! rYrA1)|{]OC̢hhM+2 "Xje;/9F@F>5Z疴ɟsU 7ng̐Ay&@TptU iDLh b L12U3JnD MbhL._]%6]Vpn>P|c6u~[$|+>Q[)f$eHe F&H8qMB{)TӪ)F3v#YEįITPY]1 |d]2ϲ5MD1^WR$rlhyp F`DKzzJ@-8W *8uvx"}kE:+DY.5G܂R#I-M3rr52̖n ,sg }@U_ ¬}0w: X.ݵq^iC&4FY(P^i+Od'G4pv.AbE&ye)Yrvx-J#I"ؐ#:#_\)DlbN?M-x*B HU衊sN`+[k(8r +ɹXUl OVƃĮ7#3aeD삦sE*W%1^Gy#.:>a+wO-owft XR3NKz)a¹J-.Qjᴾ As_ZV;|wdgA2u(lQTS5]J8ZP21 :҂/S dQ١4@l04=-6"8`t5!gc3T i19 ϴO?YǮLnฉ?5'o[}a~5˳flƼO2o:Uh|Ճtp|CDc 8~itk(\v~K:So6Cv7(,d) gv,sXr/l1ވHKDtTي|69 ٧‘ITݒaA5V‹sFu58FyG9Yv_8s!59+4F+Kcʮ% I"ml)s P${{SÊ0! :<{L z!mtv$\Rk67Sr.ŧn\?WV+X!&F'wC` d1(_0)G:P4rڦL2 ]fd`i⋤9LA|DەE%oX3V '.`Yx[T6 EW&j[}t-rj%S)d]>*˜K'X|abdž%n[ߕfAx{QWYr^h/ |m]4O5`b~C'ӵ2#5Zַ8 $9 U€')VRTyxajPsoa>-H\(4rvFϚ=}{N.DvЯ_3 o:묑3l-yt:P#Lpwxz6)VS?/E@M'uv*|ׯSb^?z*Q&4A(36]hWo准Y4pL"+43AޙPp'F+kgϢR}qپ [%R]./ZnT^߯tc."''p|k=]k64f$v{J??ьZL7(0a#]֜ZDP1o17ɫxX[ qWj*i/Xw-56H=vK)xg `.1V߈BӤ@.CseyB԰)pk%`( 9+aһwM/'1Y8Z,: 6Tɩպ{[ } & -hxъqpخ U VR>%@~^\26d+k\3n86E qaz0Zґa) ͅ  ߕ 4_룙B,ގw#U`/j(1wWڣ~L1&հծLP`-U>]Ao['XyrbQ>Hnė_Wef9_P*@ي jzU1ܙ"&Sԏks4g\kg.5NAE8Ubrx=ꒆ'WEF5$Yɠmwo5 _tI&| "Kw7E.;K~Sfe]jtFpCH\!uNl/n!ϟ't[*9&@ni 6w7o猇_>va sJb5R$X%}c$OcR;vGo`u~+֟ #ҜQ;^/>٤+vL @u-c[KG^3!!Ք}ф(іg[WV( ؕ`~YJ9SII~9~QJ[ cWF`JGו87G k_Qs6V0 ߽Ł3%,'YJe쩛 DS=_yЊ"*f*+xI1Bm Au{dw:O]@sci'9~29^`sgF%)mNolH-A jrAhub- NTmi3\Z ~jup8R2?y6G6@Ae׾ v h9Mo0c01ʓkfN֢б u)7cQ^߈ mV@"ZAEbsf>~9^?4°Wǣnj~DɺKW" %j(f/&^l=Kdj^M(vsGͥ%VS}jNp/W 'v©f+@jG [ީ]XH\B.D$,Yƒ@㫂)*,p,E_fj)N +H/UFMv =95CmiDZ R~*_ ;nZ'3Ȅ mb Wr<%Wl7aH׿M6p/n.<Ғ֒f%;ɋT9vy !SRhBXogvV0j93H{sEnz D8"SP=fϴ`WzQWTӢRV0|_0$AIc9lF'mN n sL mo{I ل,]UD́:s/K_[*\t) aP kn!HoK_k%Ǥz]=T@ŦuוmK`p1P`Kagëi\.k1C$B wR[6-\fzQ3@#+8gR |e||u熢@p) #u˫>?]=H4wH: ]h`VPS0}nN6|MfRv J$|cy\w!OoWQ܇]P5l}]ng=t >BG{tۧ.ff1TU ͲNFyK<YX=uv.-9F.1 Jn\O;P}&ypAዴrӰ,2ÿ.H7"@MW"ujSmbI%J;V:y(%oqjSk>`mHK6^G̨ E|Ocw; +bSTlkߗ[bi,-OoJ Ӻfhxm|<[c˩sI,1nƓF{ظvrAq@M#4 :3kэpѝQLI P$MSJ0eaRѩ*]o/f~ܶ0~LrZ)YT X\n&c$V3$^[;,OYe:(#N|٠iSG-K>?Rn6Io< :1g==LElq6m؄4߂3v-:Jh] }oۜU Z~kXZ1 aE;΃[*6P2e n\ۄ80li⇆78v5?izSkWA&]- ]Nm\A7_94R.Y:|off!g5؃ʶ՝ 7iZr#'uo zwuqkhƿo CriE~\@r~78ҽuUWV-Zn\Ἐ@ĵ $ᵏ@)0y@O(#Uhwft@w P\=]t\!*i͕׽kzTI:FW-]5{i:bZUqpΣVH|~~/hpˊ?k'.BE~5KchJwg'ӱd<Dfk,ONeXTZeQ:5/=ܷ3z(^;VBxL`U3e=vwR|#S7\O7}> ǻ2dfEҩz2X~CJCqVwa۴8>uRyq' ΀\q wg'+EZ؎JBƮ]Ę%DdXO0@T$mAI u(XU3G r#,g8ݼD Ldg bl[1c0b$4rgcqt-SRyc=yqFnpL{yuM otɸ5Z^s Dg}+k9j}z$GU_mcm 5H GՁS(XJB|8&&0vW v>Dkz/{z剮.0W5}21'`Ox#C+>!${4p:P 0 K> U(!v(5N@ϷXZ_sܲN*Cu&J \AvU]EMR\~/^5(ob``cCkLP LQ2.b ZS"R@: .p܊H̺Ymo`Q4g4qfhKR}]Ic:3 w$bitPߍ³ p32];U])l3qPsZvSf~SJ;*lbc숔8}zaVqFp}ℼw3'ìN avS8675Yi3Leiكj'6 !=D)z$} X'`t>\M1dCvvLsإ@H4{Յ^bJ fjYᲱz-#QMW"cɢQ{Nx`<_^(sRG0.MQgo;@.:WCgwA8z@A:d-V28/7X.s$`P )=!b^TDȝW 9(Qym,M1%  WQZ<,ً`de׺v+M暈 Xޑ2wK L!yg^Ίͺ"S[]ٓG7?kic'i1SQMw]Js4 9U혏M< p,T2xrq@iɄd,"a˥p@5fFש&x"@妓e*Ɗ= ȃɟ >\,bPcUi~!ַIBW[唄vH;H;'CkO(v~KNC$yЧ9T|nY+hLA08IyvK6%͸&E?t] upa,@/s"YÅ.X8Y5wS5?I)ծlDtU ,#0+˜AYc媔I[ DR!O9G cFRуD/sg(54O?dִve9 *gz;%y6Q7Ds'Gφ D΀JE:(*/lyͮe[Zݻ0f\e=5{: .V9k вXE/\50:M6MaUmD$OzwRb[Tcź7wYa I_9*KeMWLx%RGX9ۅa8W׹1XD&әjˢ65Pڙ/$v:. Ny xA5\ #"uw+6GWT>0,`bIod1_j<sBˎM[\IU [pI/Hdc:N}ucŬ!HtO {е=kChIavg8a,xT^l7w:P˟ +K:X(+e"}Anp?mf2߰JGt*MmRϗٌ$GJ J 'إwPF /^rskX ϣњUpoYݩDH?%ǻ]",4GP!Z;"i WŇG<( Iy ۯrFV(wXɅ 8Ե~j@9CK֭ҳQz3^y엔> ̲@a._Jj\pK탃c/ՌeF~v!!/ʕywXfOȇc0;y^Bg|rD2ӫO2A 6b_?,e=1Sj-S'D &qX:,MR5qA+^Lm#qRz79( Iy"/\WGu`Վgޢf@W얮ޭ;^a}"Ṕw5PH#J$:ZW&΄MB~bf #WFL.>M'"ʇ|d(ܲѽHa㱡JYGgSOSQ>dW)$|ȐTy֌_}?&9;?P_dp8dxMy+0dp"Tivr% ɞPҫ%w})M`HdR<Ɂ4G3XbZ џfb?1:>gL_5dk4\F(~ZRr o ԪPc0Bp³PZPN -e)2?㳂 aU e/pts;W|Ԓ8e=Lą1S 2a;F26䅐t^>䩵k"0^ჁtXm'lx#O.+ĝgysViW]",8z&->pH,!36=AVӳ. 8 }0a'eMG@nxw˻x~֖Vge$2Ṟ[pBLq <@܁JYn\G43vwjK`)oZ!|o;YYC->L M*ÝŬ.l"zC<>h-4`VBϳSa{m/PX#YC (slIPގT2j='BєUMډT# \;%+B:~Bg5~Ekqw`>c'KiNll;q-h3W3x}sf$ ۽b]H!) =A@Fɤ] Zrh'"ݭeOf~U|tm;kPTiH;*M߹;PD-S8H#խFON\[Ob8Gk`i(=p0o7R״ߣ8ФD˷ӃE%<Dz|AwhYA yTd[jN{I8>HY1oRر}&E/E`}+&hI[aG[H>ŤNYfPq*IG*q^ӨU#SBy6VP*)"!=iwԿ)es=9Rܿ[!@zu4眀)`;zR"W5$OBðU<%$pttO Jy2w7񁤇,.FE'ap-br|, cnJ(9̆WGG^b;.ܮ0hgj=fX@YrS 52U4;#t}k>L wiXZ'r~lk'_ݖx4&{p?IQ)kaԥؐhH`JmjP"cUb"u^mI HC*_jJ%X ,ιC@ Y:xbK5~c1d$6%5XF1c-tjE֙8IԮaݼFZ:3O`y <X&>lXvF .-:}ܒU٬L\GeÏHrg?[AY¸1rKx4np'5G4ۓ)T9Ee~ וt{N!3/w?k,2sPax tX7I9k\}|Og7{cɕ?$KdU?5"nq` N׬uz- `vsNӥ$IIOfO9] )BZщo6n_sw ؘR<Ю*[s] z1¾t;u@7ଏ1:߰c^xuYJ[ϭGʛE,?!e=BeQ>w"~2i-ߨיWK~t% tlEFnp<6CHw ':hۘ?8ψ*aԠ'eZW) ;4d{ro^n>ȢW=5@,81X# x8 i$2w'E1+>xi+8R(0&. Br=_eG|SkuoLyFG|{LZfqFLTEC$#jT~BBIV![h+u۪Řܚt]^Xn2rƗ&cOxo7YkesJ,Cgn`f27ˠmD,^ÿԊUgBK4={z֞}r,fIN=ä3<ےDy2_ N&5ݹ+Kpm&-ϤV"jZ;1OoS00axFb-ibo"ŇADo lZ ||Q \ګ,Pw A =Q9ۡE0mKcPOTi6iW'M/ PԣhIgh;l%~,Bu֙ _b:#l50M-̩x8MF>b|='_ P侮:ݹ#vq9v \`3oV;l]<)"Ly_P񯅰Pkj&Zus}Ӈ,чBrxm_T+qķN=%LZysع##}ib8k_ޏj3|i $B%wBq{b$$<.SI+ _o%p\M@ŻE5H<,+NYh5 RžkSm+3&|QMY@>}qn 5GcZW |<$utɋF._GWIKDJޮX)!ٞ}^cƵn5ܦu$U`nK{0<;ON#JruVxg ZGʸce`P`,"}'"!fK䃷{ÑʣEB3GFWF.0.[ Fx_lAKLaۙzu Ttze (!XS_pTFODm9雀c1͈X(u{žc(oɦ'[F_Hy58sP>Dvq3SI/hRNM4): S¸Y/SÖ _rdJV9ؤ7N'،Վ~>|YDԚAMjeL< 4!Y.vb 8u#)p-X–p;/%!ɌӦbn$DGV~* Y!u`e,握!Ano6lpXSHZйD0S-FAHFK[Q' Χf2{μg\c"ߞNXXDU%qz' wahh™-H{8L[K@TUU(+/\M4ҔmZ(P$b%siL1+jD8|ţDWHk2 =F +z<&O-"b^Vw*Sht#)F[UZ

pRNWi1sMDZ6zV8DP`^FZRW2L-2$&4O`+ej;~\@ePmݱ* 묛ᄄbчA/K%QNe=5%禌_ٟli|WD,2kEnAHVm&yz[=ѡ}^; yi`])  !ߦ9?~n qbX|]GQn4KzK5Vl–$ngI( LhaRf1(/o\=y. 0Lբɞ&2Wr >ɪ) |U`I~sDk7FXhB]6Oy15)# m#I]* KU%ZxΔ4ilݘr*g |yob.9۶]$*/T%P}E0lL!f4kȓ.4ρJc>Np}:+>`X2V!W♩cp[`# +i0+}ʩ!@-,AD(yւ 3WqR^ F 5 IAd!T3֊<2w/`q-}k DGo-,᭧6=6UE.,ۗۧl&at}Bco縠y!I혐eõ"Q/ <*t"gae*vB.? dZK~4,͖>Z@d_ YT aF_'q,^ [sX|ya =J|XFCm   Il+`ǯ3`<}W3'ˤx15\*UZ{r.-2*Z\0J+߷dĩ-Ƥeg+ HpOڤyxCXf݈ipE(l 4/Џxc2vO;y&-s{s4G`E`#|hgw!3C{ ϋJnfIb/r]-\`ZJjFtF BR'$ڊ0L4Te}Zcs(W_O/fWW=܃;{țh1L V\UEUtF,>{rlz >qzaTu7qUPJ Ql=D©Pji_$PO (?dTÍstdn'ؽ7[E[BZ9f K}W YB9FWϟ(\@0hkhހ-bE xAm\+P=R#&}QЯf5ŋFҡo(u$/ߦ%=!wbo]9*0|% tE>\?I\4h!G1]ⲳcBD(_[ƒx8\ݪFR=x&OtclLˁ rl]"QNfcM;|-X2H8TAˣlфmnZLKƑ.4^xƉM#0/.%ʗ JėV[ \օ! O+ʯ\i6gPQJw9cy0J6HȹnU`cB[ gY]D?γRNiePfJ˭~| DKuI M4DtF}j•/=)"̔EBŲgr^-f ZŜY6UhO:FMD jq5q?W5Ccua3k@Bj twTIt ,x sӇ;x_O@ B4Qݽ;`y-NDGrbh(pnޛ0O~1ýLe:&po,f%H ~Ic8 0CuϋL7yWO~c@MM~sjk#y Ye,Q{i[ gihfWBtn:Bz[޹i'zkj‚jC鎽iϭق 'Hx78Ǹ,JZD|>z{OS1OqlHǘc>m2t/%=ڪ}pN/| HJemS*t &ko<{^bwP},e72rb">c Ϛ,,f5_qOw2Tz((1j@ßHA}wf1 ;؆Mgk#5†7x&[eրFkrcJZkP&Jqgy1V]nȦ>7n[nO!yvG} 5FFMQgC4w}:l+Ngg/%[IژC ~seΦ bWx. W<aKtKKV̰.w5[j~)rU[țV]`vZqAwEӫ~p[KLIH`a|g6ݴ8mͺ9y#\ɀ ^e9q%qqڎF:BEk9W (7VZUdDGU!gԎjhR2N5!&*b@*k>BğXQ7c}Y@?O sPlQѡ<N"i؊ۺ So73XZH58/9<>R8P9/f/<4y"80j,%!a<9P1 ssO[ x,GgiRMg/Y:>-zpz9^vv Hg?U\ǘu|΀Hm}Ny*`=O.it %]"+†\9?GJA&Nɉĸ_y)_ 5۪nf 'P h"יִING7C kTI!"ѰjU5w=&I [W})!2%IU>$1(fr=ofXyfCdYfۖ-Y*IPYɕ:ژIҸoGN{ׂEEh f![ޑooG=YzȾD`ŋww\55Eej!.1,8K\k~W6Y5 +Ċ,up LfٿіM8m՜Zv9ɑ'.ya^9&Z7 E~_F?j7o $B:_ dyg`lo)O ?COi#BuIqonmT}t4Æ lw,m _0q YZ