libselinux-ruby-2.9-6.el8 >  A bU]"h&fSW 1U%Lg=9}xw:"J;w%u+?1R]iQ,d1+quMk-[ܭx f6V Aps0$AkaA5 \-魿Tn<i<ҡ3IX ]Z՞ja_ɸM]Pb@* :Ge*}FrL7ɄxTk ),y'%ZV`MD6skjfqa2)FUP1)[(,NQ!:%el\sq1&v$(҅܊j^ ʃ0 2J^oiK!lm>΀R$4(O/Xĕh Ε`̀Τcs& toTބ~F`N%юgm=(h;/u X=f8-bNvTs۟DEzIa63874fa364bf5548b0343b6147d45783562ee1d5d36eab75b3c713cb09e8f4253a1085f16f26344657e8cc29bfca24a0861dc254bU]8kIIM1 ^{n k*&y{}ܛ m lD|l]*l5~MSoud+˨%H[?Qdv YoK)k;`;4B??^Sv8'Z^;HnV}9 1kxN1&OK;<$ _| _50.-|%Ie}a_Δ)X) EhÁꬬ+wBpY|ft")A4 ,Өgiϝk+x} GݑS xLv`g-)wS7{֋h|@#<آ?[6OVi/%0 M(4ɐ y0oC5G@>p<]`?]Pd  A  9?HX ` h x  ,L\   (48<L9 lL:l|LGYHYIYXYYY\Y]Z^ZCbZd[e[f[l[t\u\v\(w\x\y\]]] ]LClibselinux-ruby2.96.el8SELinux ruby bindings for libselinuxThe libselinux-ruby package contains the ruby bindings for developing SELinux applications.b_x86-01.mbox.centos.orgCentOSCentOSPublic DomainCentOS Buildsys Unspecifiedhttps://github.com/SELinuxProject/selinux/wikilinuxx86_641AAbNbNbNb20a5ff1b47612361a5d24273cb390da625d87fc7f8845e2f93fa2e8fe4708a9b4../../../../usr/lib64/ruby/vendor_ruby/selinux.sorootrootrootrootrootrootrootrootlibselinux-2.9-6.el8.src.rpmlibselinux-rubylibselinux-ruby(x86-64)ruby(selinux)@@@@@@@    @libc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libruby.so.2.5()(64bit)libselinux(x86-64)libselinux.so.1()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)rtld(GNU_HASH)2.9-6.el83.0.4-14.6.0-14.0-15.2-14.14.3b_@_l@]X]@\@[@[ā@[ @[,[@[Zz@ZK@ZZZI@Z@Z}@Zz@Zu@ZTZOhZfY@Y˒Y(@YJYV@Y@Y|xY{'@Yx@Y.X-Xg@X@X @XN@X@XXx@Xv@XJX43@WH@W9W@Wq@Wm Wk@W,@W'A@W#LW@VяVIVɦV=@VVii@V@V UU@U4@Ua@UQ@U8U6;UTS@S@SSShShSXS 4@S@R@RUR&RʚRkR%R@RMUM@M@M@M@MlMQ0@MGM5ML@L-@L@L*@LLq@LN@LF@L$@KKKrK@KKqK}+KTM@KA@K@JJJJG@JG@JG@JjJS8JS8JB@J@JMIܑI@IԨIbI̿I@IV@III@I@I2I@IcGIcGIcGIG@IG@IBR@I1.I!\I!\I-HHHe@He@He@He@H@HHH@Ht@HsVHgy@H^>H^>H-w@H!H @H@G@GG#GF@G@GGƢ@GƢ@G­G@GGD@G@G@G@G,@G,@G@GG@GZ@GZ@GeGeG|@G|@GO@GO@G<4G<4G0W@G'@FF@FIFFFFF&@FF@FvFFS@FF@FF]F@FtFFzh@Fw@Fm9@F` @F; @F-@F,F@F@FF*FF @F @FoE@EE@E4@EE?Eɿ@EEEEElEx@E&E=E=E@Ex@EvEnEYEK/@E>@E4EE EgEgEDfDDDDq@D@DB@DB@DB@DB@D{DDX@D4D4D4DD@D@D~D~D|3DvDu@Dr@Dr@DlaDk@DiD`@D_2D_2DX@DWID?D;@D'Dj@C@CCC-Cǖ@Cǖ@C[CCC8@C@CC @CCqC @CCCC@CBC@C@C|pC|pC{@CyCp@Cp@CoACkM@CiCf@C_oC_oC^@C^@CX@CWCS@COCFc@CFc@CECECBnCA@C;@C:C*C&@C&@C%mCC@CC C a@C a@C&B=BۙB@B@Br!Br!Br!Bn-@BgB] B] BZfBS@BQ,@BIC@BAZ@B9q@B9q@B06B-B$Y@B#BB@B@B LB LBBAA)@A@A@AA@A@A@AyAҜ@AJA@A`A`AA@AA@Ak@AAA@AvA@AAoA]FA]FAQi@AN@AI@AF@AF@AA@A>@A>@A7 @A7 @A5A4h@A3A3A/"@A-A+-A(A$@A!@A A A@A@@@q@7@@@@6@@@A@)@@@@@@@@@~y@@~y@@~y@@}'@s@@s@@s@@l@@ia@@b@b@b@O@@O@@Dw@@9@@,@@ @/@@???E@?E@?٭???q@??@?@?@?}d?z?a@?M?D@>S@Vit Mojzis - 2.9-6Vit Mojzis - 2.9-5Vit Mojzis - 2.9-4Vit Mojzis - 2.9-3Petr Lautrbach - 2.9-2.1Petr Lautrbach - 2.9-1Petr Lautrbach - 2.8-6Petr Lautrbach - 2.8-5Petr Lautrbach - 2.8-4Petr Lautrbach - 2.8-3Petr Lautrbach - 2.8-2Petr Lautrbach - 2.8-1Petr Lautrbach - 2.8-0.rc3.1Petr Lautrbach - 2.8-0.rc2.1Petr Lautrbach - 2.8-0.rc1.1Petr Lautrbach - 2.7-14Petr Lautrbach - 2.7-13Petr Lautrbach - 2.7-12Igor Gnatenko - 2.7-11Fedora Release Engineering - 2.7-10Igor Gnatenko - 2.7-9Iryna Shcherbina - 2.7-8Mamoru TASAKA - 2.7-7Petr Lautrbach - 2.7-6Petr Lautrbach - 2.7-5Petr Šabata - 2.7-4Zbigniew Jędrzejewski-Szmek - 2.7-3Zbigniew Jędrzejewski-Szmek - 2.7-2Petr Lautrbach - 2.7-1Fedora Release Engineering - 2.6-10Florian Weimer - 2.6-9Petr Lautrbach - 2.6-8Fedora Release Engineering - 2.6-7Petr Lautrbach - 2.6-6Petr Lautrbach - 2.6-5Petr Lautrbach - 2.6-4Petr Lautrbach - 2.6-3Petr Lautrbach - 2.6-2Petr Lautrbach - 2.6-1Fedora Release Engineering - 2.5-18Stephen Gallagher - 2.5-17Vít Ondruch - 2.5-16Petr Lautrbach - 2.5-15Charalampos Stratakis - 2.5-14Petr Lautrbach - 2.5-13Petr Lautrbach 2.5-12Petr Lautrbach 2.5-11Fedora Release Engineering - 2.5-10Petr Lautrbach - 2.5-9Petr Lautrbach - 2.5-8Petr Lautrbach - 2.5-7Petr Lautrbach - 2.5-6Petr Lautrbach - 2.5-5Petr Lautrbach - 2.5-4Petr Lautrbach - 2.5-3Petr Lautrbach 2.5-2Petr Lautrbach 2.5-1Petr Lautrbach 2.5-0.1.rc1Fedora Release Engineering - 2.4-8Vít Ondruch - 2.4-7Petr Lautrbach - 2.4-6Robert Kuska - 2.4-5Petr Lautrbach 2.4-4Petr Lautrbach 2.4-3Adam Jackson 2.4-2Petr Lautrbach 2.4-1.1Fedora Release Engineering - 2.3-11Petr Lautrbach 2.3-10Petr Lautrbach 2.3-9Petr Lautrbach 2.3-8Than Ngo - 2.3-7Vít Ondruch - 2.3-6Miroslav Grepl - 2.3-5Fedora Release Engineering - 2.3-4Fedora Release Engineering - 2.3-3Kalev Lember - 2.3-2Dan Walsh - 2.3-1Miroslav Grepl - 2.2.2-8Vít Ondruch - 2.2.2-7Dan Walsh - 2.2.2-6Dan Walsh - 2.2.2-5Dan Walsh - 2.2.2-4Dan Walsh - 2.2.2-3Dan Walsh - 2.2.2-2Dan Walsh - 2.2.2-1Adam Williamson - 2.2.1-6Dan Walsh - 2.2.1-5Dan Walsh - 2.2.1-4Dan Walsh - 2.2.1-3Dan Walsh - 2.2.1-2Dan Walsh - 2.2.1-1Dan Walsh - 2.2-1Dan Walsh - 2.1.13-21Dan Walsh - 2.1.13-20Dan Walsh - 2.1.13-19Dan Walsh - 2.1.13-17Fedora Release Engineering - 2.1.13-17Dan Walsh - 2.1.13-16Dan Walsh - 2.1.13-15Dan Walsh - 2.1.13-14Dan Walsh - 2.1.13-13Dan Walsh - 2.1.13-12Dan Walsh - 2.1.13-11Dan Walsh - 2.1.13-10Dan Walsh - 2.1.13-9Dan Walsh - 2.1.13-8Dan Walsh - 2.1.13-7Dan Walsh - 2.1.13-6Dan Walsh - 2.1.13-5Dan Walsh - 2.1.13-4Dan Walsh - 2.1.13-3Dan Walsh - 2.1.13-2Dan Walsh - 2.1.13-1Dan Walsh - 2.1.12-20Dan Walsh - 2.1.12-19Dan Walsh - 2.1.12-18Dan Walsh - 2.1.12-17Dan Walsh - 2.1.12-16Dan Walsh - 2.1.12-15Dan Walsh - 2.1.12-14Dan Walsh - 2.1.12-13Dan Walsh - 2.1.12-12Dan Walsh - 2.1.12-11Dan Walsh - 2.1.12-10Dan Walsh - 2.1.12-9Dan Walsh - 2.1.12-8Dan Walsh - 2.1.12-7Dan Walsh - 2.1.12-6Dan Walsh - 2.1.12-5Dan Walsh - 2.1.12-4Dan Walsh - 2.1.12-3Dan Walsh - 2.1.12-2Dan Walsh - 2.1.12-1David Malcolm - 2.1.11-6David Malcolm - 2.1.11-5Fedora Release Engineering - 2.1.11-4Dan Walsh - 2.1.11-3Dan Walsh - 2.1.11-2Dan Walsh - 2.1.11-1Dan Walsh - 2.1.10-5Dan Walsh - 2.1.10-4Dan Walsh - 2.1.10-3Dan Walsh - 2.1.10-2Dan Walsh - 2.1.10-1Dan Walsh - 2.1.9-9Dan Walsh - 2.1.9-8Dan Walsh - 2.1.9-7Kay Sievers - 2.1.9-6Dan Walsh - 2.1.9-5Harald Hoyer 2.1.9-4Dan Walsh - 2.1.9-3Dan Walsh - 2.1.9-2Dan Walsh - 2.1.9-1Dan Walsh - 2.1.8-5Dan Walsh - 2.1.8-4Dan Walsh - 2.1.8-2Dan Walsh - 2.1.8-1Dan Walsh - 2.1.7-2Dan Walsh - 2.1.7-1Dan Walsh - 2.1.6-4Dan Walsh - 2.1.6-3Dan Walsh - 2.1.6-2Dan Walsh - 2.1.6-1Dan Walsh - 2.1.5-5Ville Skyttä - 2.1.5-4Dan Walsh - 2.1.5-3Dan Walsh - 2.1.5-2Dan Walsh - 2.1.5-1Dan Walsh - 2.1.4-2Dan Walsh - 2.1.4-1Dan Walsh - 2.1.0-1Dan Walsh - 2.0.102-6Dan Walsh - 2.0.102-5Dan Walsh - 2.0.102-4Dan Walsh - 2.0.102-3Dan Walsh - 2.0.102-2Dan Walsh - 2.0.102-1Dan Walsh - 2.0.101-1Dan Walsh - 2.0.99-5Dan Walsh - 2.0.99-4Dan Walsh - 2.0.99-3Dan Walsh - 2.0.99-2Dan Walsh - 2.0.99-1Fedora Release Engineering Dan Walsh - 2.0.98-3Dan Walsh - 2.0.98-2Dan Walsh - 2.0.98-1Dan Walsh - 2.0.97-1Dan Walsh - 2.0.96-9Dan Walsh - 2.0.96-8jkeating - 2.0.96-7Adam Tkac - 2.0.96-6Dan Walsh - 2.0.96-5Dan Walsh - 2.0.96-4David Malcolm - 2.0.96-3Dan Walsh - 2.0.96-2Dan Walsh - 2.0.96-1Dan Walsh - 2.0.94-1Dan Walsh - 2.0.93-1Dan Walsh - 2.0.92-1Dan Walsh - 2.0.91-1Dan Walsh - 2.0.90-5Dan Walsh - 2.0.90-4Dan Walsh - 2.0.90-3Dan Walsh - 2.0.90-2Dan Walsh - 2.0.90-1Dan Walsh - 2.0.89-2Dan Walsh - 2.0.89-1Dan Walsh - 2.0.88-1Dan Walsh - 2.0.87-1Dan Walsh - 2.0.86-2Dan Walsh - 2.0.86-1Fedora Release Engineering - 2.0.85-2Dan Walsh - 2.0.85-1Dan Walsh - 2.0.84-1Dan Walsh - 2.0.82-2Dan Walsh - 2.0.82-1Dan Walsh - 2.0.81-1Dan Walsh - 2.0.80-1Dan Walsh - 2.0.79-6Dan Walsh - 2.0.79-5Dan Walsh - 2.0.79-4Dan Walsh - 2.0.79-3Dan Walsh - 2.0.79-1Dan Walsh - 2.0.78-5Dan Walsh - 2.0.78-4Dan Walsh - 2.0.78-3Dan Walsh - 2.0.78-2Dan Walsh - 2.0.78-1Fedora Release Engineering - 2.0.77-6Dan Walsh - 2.0.77-5Dan Walsh - 2.0.77-3Dan Walsh - 2.0.77-2Dan Walsh - 2.0.77-1Dan Walsh - 2.0.76-6Dan Walsh l - 2.0.76-5Dan Walsh - 2.0.76-4Ignacio Vazquez-Abrams - 2.0.76-2Dan Walsh - 2.0.76-1Dan Walsh - 2.0.75-2Dan Walsh - 2.0.75-1Dan Walsh - 2.0.73-1Dan Walsh - 2.0.71-6Dan Walsh - 2.0.71-5Dan Walsh - 2.0.71-4Dan Walsh - 2.0.71-3Dan Walsh - 2.0.71-2Dan Walsh - 2.0.71-1Dan Walsh - 2.0.70-1Dan Walsh - 2.0.69-2Dan Walsh - 2.0.69-1Dan Walsh - 2.0.67-4Dan Walsh - 2.0.67-3Dan Walsh - 2.0.67-2Dan Walsh - 2.0.67-1Dan Walsh - 2.0.65-1Dan Walsh - 2.0.64-3Dan Walsh - 2.0.64-2Dan Walsh - 2.0.64-1Dan Walsh - 2.0.61-4Dan Walsh - 2.0.61-3Dan Walsh - 2.0.61-2Dan Walsh - 2.0.61-1Dan Walsh - 2.0.60-1Dan Walsh - 2.0.59-2Dan Walsh - 2.0.59-1Dan Walsh - 2.0.58-1Dan Walsh - 2.0.57-2Dan Walsh - 2.0.57-1Dan Walsh - 2.0.56-1Dan Walsh - 2.0.55-1Dan Walsh - 2.0.53-1Dan Walsh - 2.0.52-1Dan Walsh - 2.0.50-1Dan Walsh - 2.0.49-2Dan Walsh - 2.0.49-1Dan Walsh - 2.0.48-1Dan Walsh - 2.0.47-4Adel Gadllah - 2.0.47-3Dan Walsh - 2.0.47-2Dan Walsh - 2.0.47-1Dan Walsh - 2.0.46-6Dan Walsh - 2.0.46-5Dan Walsh - 2.0.46-4Dan Walsh - 2.0.46-3Dan Walsh - 2.0.46-2Dan Walsh - 2.0.46-1Dan Walsh - 2.0.45-1Dan Walsh - 2.0.43-1Dan Walsh - 2.0.42-1Dan Walsh - 2.0.40-1Dan Walsh - 2.0.37-1Dan Walsh - 2.0.36-1Dan Walsh - 2.0.35-2Dan Walsh - 2.0.35-1Dan Walsh - 2.0.34-3Dan Walsh - 2.0.34-2Dan Walsh - 2.0.34-1Dan Walsh - 2.0.33-2Dan Walsh - 2.0.33-1Dan Walsh - 2.0.31-4Dan Walsh - 2.0.31-3Dan Walsh - 2.0.31-2Dan Walsh - 2.0.30-2Dan Walsh - 2.0.30-1Dan Walsh - 2.0.29-1Dan Walsh - 2.0.24-3Dan Walsh - 2.0.24-2Dan Walsh - 2.0.24-1Dan Walsh - 2.0.23-3Dan Walsh - 2.0.23-2Dan Walsh - 2.0.23-1Dan Walsh - 2.0.22-1Dan Walsh - 2.0.21-2Dan Walsh - 2.0.21-1Dan Walsh - 2.0.18-1Dan Walsh - 2.0.16-1Dan Walsh - 2.0.14-1Dan Walsh - 2.0.13-2Dan Walsh - 2.0.13-1Dan Walsh - 2.0.12-2Dan Walsh - 2.0.12-1Dan Walsh - 2.0.11-1Dan Walsh - 2.0.9-2Dan Walsh - 2.0.9-1Dan Walsh - 2.0.8-1Dan Walsh - 2.0.7-2Dan Walsh - 2.0.7-1Dan Walsh - 2.0.5-2Dan Walsh - 2.0.5-1Dan Walsh - 2.0.4-1Dan Walsh - 2.0.2-1Dan Walsh - 2.0.1-1Dan Walsh - 2.0.0-1Dan Walsh - 1.34.0-2Dan Walsh - 1.34.0-1Dan Walsh - 1.33.6-1Dan Walsh - 1.33.5-1Dan Walsh - 1.33.4-3Dan Walsh - 1.33.4-2Dan Walsh - 1.33.4-1Dan Walsh - 1.33.3-3Dan Walsh - 1.33.3-2Dan Walsh - 1.33.3-1Jeremy Katz - 1.33.2-4Dan Walsh - 1.33.2-3Dan Walsh - 1.33.2-2Dan Walsh - 1.33.2-1Dan Walsh - 1.33.1-2Dan Walsh - 1.33.1-1Dan Walsh - 1.32-1Jesse Keating - 1.30.29-2Dan Walsh - 1.30.29-1Jeremy Katz - 1.30.28-3Dan Walsh - 1.30.28-2Dan Walsh - 1.30.28-1Jeremy Katz - 1.30.27-2Dan Walsh - 1.30.27-1Jesse Keating - 1.20.26-2Dan Walsh - 1.30.25-1Dan Walsh - 1.30.24-1Dan Walsh - 1.30.22-2Dan Walsh - 1.30.22-1Dan Walsh - 1.30.20-1Jeremy Katz - 1.30.19-5Jeremy Katz - 1.30.19-4Dan Walsh 1.30.19-3Dan Walsh 1.30.19-2Dan Walsh 1.30.19-1Dan Walsh 1.30.15-5Dan Walsh 1.30.15-4Dan Walsh 1.30.15-3Dan Walsh 1.30.15-2Dan Walsh 1.30.15-1Dan Walsh 1.30.12-2Dan Walsh 1.30.12-1Dan Walsh 1.30.11-2Dan Walsh 1.30.11-1Dan Walsh 1.30.10-4Dan Walsh 1.30.10-3Dan Walsh 1.30.10-2Dan Walsh 1.30.10-1Dan Walsh 1.30.8-1Dan Walsh 1.30.7-2Dan Walsh 1.30.7-1Dan Walsh 1.30.6-2Dan Walsh 1.30.6-1Dan Walsh 1.30.5-1Dan Walsh 1.30.3-3Dan Walsh 1.30.3-2Dan Walsh 1.30.3-1Dan Walsh 1.30.1-2Dan Walsh 1.30.1-1Dan Walsh 1.30-1Jesse Keating - 1.29.7-1.2Jesse Keating - 1.29.7-1.1Dan Walsh 1.29.7-1Dan Walsh 1.29.6-1Dan Walsh 1.29.5-2Dan Walsh 1.29.5-1Dan Walsh 1.29.4-1Dan Walsh 1.29.3-2Dan Walsh 1.29.3-1Dan Walsh 1.29.2-4Dan Walsh 1.29.2-3Dan Walsh 1.29.2-2Dan Walsh 1.29.2-1Dan Walsh 1.29.1-3Jesse Keating Dan Walsh 1.29.1-1Dan Walsh 1.28-1Dan Walsh 1.27.28-2Dan Walsh 1.27.28-1Dan Walsh 1.27.26-1Dan Walsh 1.27.25-1Dan Walsh 1.27.23-1Dan Walsh 1.27.22-4Dan Walsh 1.27.22-3Dan Walsh 1.27.22-2Dan Walsh 1.27.22-1Dan Walsh 1.27.21-2Dan Walsh 1.27.21-1Dan Walsh 1.27.20-1Dan Walsh 1.27.19-1Dan Walsh 1.27.18-1Dan Walsh 1.27.17-4Dan Walsh 1.27.17-2Dan Walsh 1.27.17-1Dan Walsh 1.27.14-3Dan Walsh 1.27.14-2Dan Walsh 1.27.14-1Dan Walsh 1.27.13-2Dan Walsh 1.27.13-1Dan Walsh 1.27.12-1Dan Walsh 1.27.9-2Dan Walsh 1.27.9-1Dan Walsh 1.27.7-1Dan Walsh 1.27.6-1Dan Walsh 1.27.4-1Dan Walsh 1.27.3-1Dan Walsh 1.27.2-1Dan Walsh 1.27.1-3Dan Walsh 1.27.1-2Dan Walsh 1.26-6Dan Walsh 1.26-5Dan Walsh 1.26-3Dan Walsh 1.26-2Dan Walsh 1.25.7-1Dan Walsh 1.25.6-1Dan Walsh 1.25.5-1Dan Walsh 1.25.4-1Dan Walsh 1.25.3-2Dan Walsh 1.25.3-1Dan Walsh 1.25.2-2Dan Walsh 1.25.2-1Dan Walsh 1.24.2-1Dan Walsh 1.24.1-1Dan Walsh 1.23.11-1Dan Walsh 1.23.10-3Dan Walsh 1.23.10-2Dan Walsh 1.23.10-1Dan Walsh 1.23.8-1Dan Walsh 1.23.7-3Dan Walsh 1.23.7-2Dan Walsh 1.23.7-1Dan Walsh 1.23.6-1Dan Walsh 1.23.5-1Dan Walsh 1.23.4-1Dan Walsh 1.23.2-3Dan Walsh 1.23.2-2Dan Walsh 1.23.2-1Dan Walsh 1.23.1-1Dan Walsh 1.22-1Dan Walsh 1.21.13-1Dan Walsh 1.21.12-1Dan Walsh 1.21.11-2Dan Walsh 1.21.11-1Dan Walsh 1.21.10-3Dan Walsh 1.21.10-1Dan Walsh 1.21.9-2Dan Walsh 1.21.9-1Dan Walsh 1.21.8-1Dan Walsh 1.21.7-1Dan Walsh 1.21.5-1Dan Walsh 1.21.4-1Dan Walsh 1.21.2-1Dan Walsh 1.21.1-3Dan Walsh 1.21.1-2Dan Walsh 1.21.1-1Dan Walsh 1.20.1-3Dan Walsh 1.20.1-2Dan Walsh 1.20.1-1Dan Walsh 1.19.4-1Dan Walsh 1.19.3-3Dan Walsh 1.19.3-2Dan Walsh 1.19.3-1Dan Walsh 1.19.2-1Dan Walsh 1.19.1-6Dan Walsh 1.19.1-4Dan Walsh 1.19.1-2Dan Walsh 1.19.1-1Steve Grubb 1.18.1-5Dan Walsh 1.18.1-4Dan Walsh 1.18.1-3Steve Grubb 1.18.1-2Dan Walsh 1.18.1-1Steve Grubb 1.17.15-2Steve Grubb 1.17.15-2Dan Walsh 1.17.15-1Dan Walsh 1.17.14-1Dan Walsh 1.17.13-3Dan Walsh 1.17.13-2Dan Walsh 1.17.13-1Dan Walsh 1.17.12-2Dan Walsh 1.17.12-1Dan Walsh 1.17.11-1Dan Walsh 1.17.10-1Dan Walsh 1.17.9-2Dan Walsh 1.17.9-1Dan Walsh 1.17.8-2Dan Walsh 1.17.8-1Dan Walsh 1.17.7-1Dan Walsh 1.17.6-1Dan Walsh 1.17.5-1Dan Walsh 1.17.4-1Dan Walsh 1.17.3-1Dan Walsh 1.17.2-1Dan Walsh 1.17.1-1Dan Walsh 1.16.1-1Colin Walters 1.16-1Dan Walsh 1.15.7-1Dan Walsh 1.15.6-1Dan Walsh 1.15.5-1Dan Walsh 1.15.4-1Dan Walsh 1.15.3-2Dan Walsh 1.15.3-1Dan Walsh 1.15.2-1Dan Walsh 1.15.1-3Dan Walsh 1.15.1-2Dan Walsh 1.15.1-1Dan Walsh 1.14.1-1Dan Walsh 1.13.4-1Elliot Lee Dan Walsh 1.13.3-2Dan Walsh 1.13.2-1Dan Walsh 1.13.1-1Dan Walsh 1.12-2Dan Walsh 1.12-1Dan Walsh 1.11.4-1Dan Walsh 1.11.3-1Dan Walsh 1.11.2-1Dan Walsh 1.11-4Dan Walsh 1.11-3Dan Walsh 1.11-2Dan Walsh 1.11-1Dan Walsh 1.10-2Dan Walsh 1.10-1Dan Walsh 1.9-1Dan Walsh 1.8-1Dan Walsh 1.6-6Dan Walsh 1.6-5Dan Walsh 1.6-4Dan Walsh 1.6-3Dan Walsh 1.6-2Elliot Lee Dan Walsh 1.4-11Elliot Lee Dan Walsh 1.4-9Dan Walsh 1.4-8Dan Walsh 1.4-7Dan Walsh 1.4-6Dan Walsh 1.4-5Dan Walsh 1.4-4Dan Walsh 1.4-3Dan Walsh 1.4-2Dan Walsh 1.4-1Dan Walsh 1.3-2Dan Walsh 1.3-1Dan Walsh 1.2-9Dan Walsh 1.2-8Dan Walsh 1.2-7Dan Walsh 1.2-6Dan Walsh 1.2-5Dan Walsh 1.2-4Dan Walsh 1.2-3Dan Walsh 1.2-2Dan Walsh 1.2-1Dan Walsh 1.0-1- Describe fcontext regular expressions (#1904059) - Strip spaces before values in config (#2012145)- Deprecate security_compute_user(), update man pages (#1879368)- Eliminate use of security_compute_user() (#1879368)- Fix mcstrans secolor examples in secolor.conf man page (#1770270)- Use Python distutils to install SELinux python bindings (#1719771) - Move sefcontext_compile to -utils package (#1612518)- SELinux userspace 2.9 release- Fix RESOURCE_LEAK coverity scan defects- selinux_restorecon: Skip customized files also without -v - man pages fixes- Build libselinux-python when %with_python2 macro is set to non-zero value- Build libselinux-ruby (#1581322)- Don't build the Python 2 subpackage (#1567358)- SELinux userspace 2.8 release- SELinux userspace 2.8-rc3 release candidate- SELinux userspace 2.8-rc2 release candidate- SELinux userspace 2.8-rc1 release candidate- Do not build libselinux-ruby- build: Replace PYSITEDIR with PYTHONLIBDIR- Correct manpages regarding removable_context - build: follow standard semantics for DESTDIR and PREFIX- Escape macros in %changelog- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild- Switch to %ldconfig_scriptlets- Update Python 2 dependency declarations to new packaging standards (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)- F-28: rebuild for ruby25- Rebuild with libsepol-2.7-3- Drop golang bindings - Add support for pcre2 to pkgconfig definition- Enable the python3 subpackages on EL- Also add Provides for the old name without %_isa- Python 2 binary package renamed to python2-libselinux See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3 - Python 3 binary package renamed to python3-libselinux- Update to upstream release 2017-08-04- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild- Rebuild with binutils fix for ppc64le (#1475636)- Always unmount selinuxfs for SELINUX=disabled- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild- Don't finalize mount state in selinux_set_policy_root() - Follow upstream and rename _selinux.so to _selinux.cpython-36m-x86_64-linux-gnu.so- Fix setfiles progress indicator- Fix segfault in selinux_restorecon_sb() (#1433577) - Change matchpathcon usage to match with matchpathcon manpage - Fix a corner case getsebool return value- Fix 'semanage boolean -m' to modify active value- Fix FTBFS - fatal error (#1427902)- Update to upstream release 2016-10-14- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild- Add missing %license macro- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.4- Rewrite restorecon() python method- Rebuild for Python 3.6- Fix pointer handling in realpath_not_final (#1376598)- Fix -Wsign-compare warnings - Drop unused stdio_ext.h header file - Kill logging check for selinux_enabled() - Drop usage of _D_ALLOC_NAMLEN - Add openrc_contexts functions - Fix redefinition of XATTR_NAME_SELINUX - Correct error path to always try text - Clean up process_file() - Handle NULL pcre study data - Fix in tree compilation of utils that depend on libsepol- Rebuilt with libsepol-2.5-9- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages- Clarify is_selinux_mls_enabled() description - Explain how to free policy type from selinux_getpolicytype() - Compare absolute pathname in matchpathcon -V - Add selinux_snapperd_contexts_path()- Move _selinux.so to /usr/lib64/python*/site-packages- Modify audit2why analyze function to use loaded policy - Sort object files for deterministic linking order - Respect CC and PKG_CONFIG environment variable - Avoid mounting /proc outside of selinux_init_load_policy()- Fix multiple spelling errors- Rebuilt with libsepol-2.5-5- Fix typo in sefcontext_compile.8- Fix location of selinuxfs mount point - Only mount /proc if necessary - procattr: return einval for <= 0 pid args - procattr: return error on invalid pid_t input- Use fully versioned arch-specific requires- Update to upstream release 2016-02-23- Update to upstream rc1 release 2016-01-07- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.3- Build libselinux without rpm_execcon() (#1284019)- Rebuilt for Python3.5 rebuild- Flush the class/perm string mapping cache on policy reload (#1264051) - Fix restorecon when path has no context- Simplify procattr cache (#1257157,#1232371)- Export ldflags into the build so hardening works- Update to 2.4 release- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild- is_selinux_enabled: Add /etc/selinux/config test (#1219045) - matchpathcon/selabel_file: Fix man pages (#1219718)- revert support for policy compressed with xv (#1185266)- selinux.py - use os.walk() instead of os.path.walk() (#1195004) - is_selinux_enabled(): drop no-policy-loaded test (#1195074) - fix -Wformat errors and remove deprecated mudflap option- bump release and rebuild so that koji-shadow can rebuild it against new gcc on secondary arch- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.2- Compiled file context files and the original should have the same permissions from dwalsh@redhat.com - Add selinux_openssh_contexts_path() to get a path to /contexts/openssh_contexts- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild- Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4- Update to upstream * Get rid of security_context_t and fix const declarations. * Refactor rpm_execcon() into a new setexecfilecon() from Guillem Jover.- Add selinux_openssh_contexts_path()- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.1- Fix spelling mistake in man page- More go bindings - restorecon, getpidcon, setexeccon- Add additional go bindings for get*con calls - Add go bindings test command - Modify man pages of set*con calls to mention that they are thread specific- Move selinux.go to /usr/lib64/golang/src/pkg/github.com/selinux/selinux.go - Add Int_to_mcs function to generate MCS labels from integers.- Add ghost flag for /var/run/setrans- Update to upstream * Fix userspace AVC handling of per-domain permissive mode. - Verify context is not null when passed into *setfilecon_raw- revert unexplained change to rhat.patch which broke SELinux disablement- Verify context is not null when passed into lsetfilecon_raw- Mv selinux.go to /usr/share/gocode/src/selinux- Add golang support to selinux.- Remove togglesebool man page- Update to upstream * Remove -lpthread from pkg-config file; it is not required. - Add support for policy compressed with xv- Update to upstream * Fix avc_has_perm() returns -1 even when SELinux is in permissive mode. * Support overriding Makefile RANLIB from Sven Vermeulen. * Update pkgconfig definition from Sven Vermeulen. * Mount sysfs before trying to mount selinuxfs from Sven Vermeulen. * Fix man pages from Laurent Bigonville. * Support overriding PATH and LIBBASE in Makefiles from Laurent Bigonville. * Fix LDFLAGS usage from Laurent Bigonville * Avoid shadowing stat in load_mmap from Joe MacDonald. * Support building on older PCRE libraries from Joe MacDonald. * Fix handling of temporary file in sefcontext_compile from Dan Walsh. * Fix procattr cache from Dan Walsh. * Define python constants for getenforce result from Dan Walsh. * Fix label substitution handling of / from Dan Walsh. * Add selinux_current_policy_path from Dan Walsh. * Change get_context_list to only return good matches from Dan Walsh. * Support udev-197 and higher from Sven Vermeulen and Dan Walsh. * Add support for local substitutions from Dan Walsh. * Change setfilecon to not return ENOSUP if context is already correct from Dan Walsh. * Python wrapper leak fixes from Dan Walsh. * Export SELINUX_TRANS_DIR definition in selinux.h from Dan Walsh. * Add selinux_systemd_contexts_path from Dan Walsh. * Add selinux_set_policy_root from Dan Walsh. * Add man page for sefcontext_compile from Dan Walsh.- Add systemd_contexts support - Do substitutions on a local sub followed by a dist sub- Eliminate requirement on pthread library, by applying patch for Jakub Jelinek Resolves #1013801- Fix handling of libselinux getconlist with only one entry- Add Python constants for SELinux enforcing modes- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild- Add sefcontext_compile.8 man page - Add Russell Coker patch to fix man pages - Add patches from Laurent Bigonville to fix Makefiles for debian. - modify spec file to use %{_prefix}/lib- Fix patch that Handles substitutions for /- Handle substitutions for / - semanage fcontext -a -e / /opt/rh/devtoolset-2/root- Add Eric Paris patch to fix procattr calls after a fork.- Move secolor.conf.5 into mcstrans package and out of libselinux- Fix python bindings for selinux_check_access- Fix reseting the policy root in matchpathcon- Cleanup setfcontext_compile atomic patch - Add matchpathcon -P /etc/selinux/mls support by allowing users to set alternate root - Make sure we set exit codes from selinux_label calls to ENOENT or SUCCESS- Make setfcontext_compile atomic- Fix memory leak in set*con calls.- Move matchpathcon to -utils package - Remove togglesebool- Fix selinux man page to reflect what current selinux policy is.- Add new constant SETRANS_DIR which points to the directory where mstransd can find the socket and libvirt can write its translations files.- Bring back selinux_current_policy_path- Revert some changes which are causing the wrong policy version file to be created- Update to upstream * audit2why: make sure path is nul terminated * utils: new file context regex compiler * label_file: use precompiled filecontext when possible * do not leak mmapfd * sefcontontext_compile: Add error handling to help debug problems in libsemanage. * man: make selinux.8 mention service man pages * audit2why: Fix segfault if finish() called twice * audit2why: do not leak on multiple init() calls * mode_to_security_class: interface to translate a mode_t in to a security class * audit2why: Cleanup audit2why analysys function * man: Fix program synopsis and function prototypes in man pages * man: Fix man pages formatting * man: Fix typo in man page * man: Add references and man page links to _raw function variants * Use ENOTSUP instead of EOPNOTSUPP for getfilecon functions * man: context_new(3): fix the return value description * selinux_status_open: handle error from sysconf * selinux_status_open: do not leak statusfd on exec * Fix errors found by coverity * Change boooleans.subs to booleans.subs_dist. * optimize set*con functions * pkg-config do not specifc ruby version * unmap file contexts on selabel_close() * do not leak file contexts with mmap'd backend * sefcontext_compile: do not leak fd on error * matchmediacon: do not leak fd * src/label_android_property: do not leak fd on error- Update to latest patches from eparis/Upstream- Update to latest patches from eparis/Upstream- Try procatt speedup patch again- Roll back procattr speedups since it seems to be screwing up systemd labeling.- Fix tid handling for setfscreatecon, old patch still broken in libvirt- Fix tid handling for setfscreatecon, old patch still broken in libvirt- setfscreatecon after fork was broken by the Set*con patch. - We needed to reset the thread variables after a fork.- Fix setfscreatecon call to handle failure mode, which was breaking udev- Ondrej Oprala patch to optimize set*con functions - Set*con now caches the security context and only re-sets it if it changes.- Rebuild against latest libsepol- Update to latest patches from eparis/Upstream - Fix errors found by coverity - set the sepol_compute_av_reason_buffer flag to 0. This means calculate denials only? - audit2why: remove a useless policy vers variable - audit2why: use the new constraint information- Rebuild with latest libsepol- Return EPERM if login program can not reach default label for user - Attempt to return container info from audit2why- Apply patch from eparis to fix leaked file descriptor in new labeling code- Add new function mode_to_security_class which takes mode instead of a string. - Possibly will be used with coreutils.- Add back selinuxconlist and selinuxdefcon man pages- Fix segfault from calling audit2why.finish() multiple times- Fix up selinux man page to reference service man pages- Rebuild with fixed libsepol- Update to upstream * Add support for lxc_contexts_path * utils: add service to getdefaultcon * libsemanage: do not set soname needlessly * libsemanage: remove PYTHONLIBDIR and ruby equivalent * boolean name equivalency * getsebool: support boolean name substitution * Add man page for new selinux_boolean_sub function. * expose selinux_boolean_sub * matchpathcon: add -m option to force file type check * utils: avcstat: clear sa_mask set * seusers: Check for strchr failure * booleans: initialize pointer to silence coveriety * stop messages when SELinux disabled * label_file: use PCRE instead of glibc regex functions * label_file: remove all typedefs * label_file: move definitions to include file * label_file: do string to mode_t conversion in a helper function * label_file: move error reporting back into caller * label_file: move stem/spec handling to header * label_file: drop useless ncomp field from label_file data * label_file: move spec_hasMetaChars to header * label_file: fix potential read past buffer in spec_hasMetaChars * label_file: move regex sorting to the header * label_file: add accessors for the pcre extra data * label_file: only run regex files one time * label_file: new process_file function * label_file: break up find_stem_from_spec * label_file: struct reorg * label_file: only run array once when sorting * Ensure that we only close the selinux netlink socket once. * improve the file_contexts.5 manual page- rebuild for https://fedoraproject.org/wiki/Features/Python_3.3- make with_python3 be conditional on fedora- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild- Move the tmpfiles.d content from /etc/tmpfiles.d to /usr/lib/tmpfiles.d- Revert Eric Paris Patch for selinux_binary_policy_path- Update to upstream * Fortify source now requires all code to be compiled with -O flag * asprintf return code must be checked * avc_netlink_recieve handle EINTR * audit2why: silence -Wmissing-prototypes warning * libsemanage: remove build warning when build swig c files * matchpathcon: bad handling of symlinks in / * seusers: remove unused lineno * seusers: getseuser: gracefully handle NULL service * New Android property labeling backend * label_android_property whitespace cleanups * additional makefile support for rubywrap- Fix booleans.subs name, change function name to selinux_boolean_sub, add man page, minor fixes to the function- Fix to compile with Fortify source * Add -O compiler flag * Check return code from asprintf - Fix handling of symbolic links in / by realpath_not_final- Add support for lxc contexts file- Add support fot boolean subs file- Update to upstream * Fix dead links to www.nsa.gov/selinux * Remove jump over variable declaration * Fix old style function definitions * Fix const-correctness * Remove unused flush_class_cache method * Add prototype decl for destructor * Add more printf format annotations * Add printf format attribute annotation to die() method * Fix const-ness of parameters & make usage() methods static * Enable many more gcc warnings for libselinux/src/ builds * utils: Enable many more gcc warnings for libselinux/utils builds * Change annotation on include/selinux/avc.h to avoid upsetting SWIG * Ensure there is a prototype for 'matchpathcon_lib_destructor' * Update Makefiles to handle /usrmove * utils: Stop separating out matchpathcon as something special * pkg-config to figure out where ruby include files are located * build with either ruby 1.9 or ruby 1.8 * assert if avc_init() not called * take security_deny_unknown into account * security_compute_create_name(3) * Do not link against python library, this is considered * bad practice in debian * Hide unnecessarily-exported library destructors- Add selinux_current_policy_path to return /sys/fs/selinux/policy if it exists - Otherwise search for policy on disk- Change selinux_binary_policy_path to return /sys/fs/selinux/policy - Add selinux_installed_policy_path to return what selinux_binary_policy_path used to return - avc_has_perm will now return yes if the machine is in permissive mode - Make work with ruby-1.9- avc_netlink_recieve should continue to poll if it receinves an EINTR rather- use /sbin/ldconfig, glibc does not provide /usr/sbin/ldconfig in the RPM database for now- Rebuild with cleaned up upstream to work in /usr- install everything in /usr https://fedoraproject.org/wiki/Features/UsrMove- Add Dan Berrange code cleanup patches.- Fix selabal_open man page to refer to proper selinux_opt structure-Update to upstream * Fix setenforce man page to refer to selinux man page * Cleanup Man pages * merge freecon with getcon man page- Add patch from Richard Haines When selabel_lookup found an invalid context with validation enabled, it always stated it was 'file_contexts' whether media, x, db or file. The fix is to store the spec file name in the selabel_lookup_rec on selabel_open and use this as output for logs. Also a minor fix if key is NULL to stop seg faults. - Fix setenforce manage page.- Rebuild with new libsepol- Fix setenforce man page, from Miroslav Grepl- Upgrade to upstream * selinuxswig_python.i: don't make syscall if it won't change anything * Remove assert in security_get_boolean_names(3) * Mapped compute functions now obey deny_unknown flag * get_default_type now sets EINVAL if no entry. * return EINVAL if invalid role selected * Updated selabel_file(5) man page * Updated selabel_db(5) man page * Updated selabel_media(5) man page * Updated selabel_x(5) man page * Add man/man5 man pages * Add man/man5 man pages * Add man/man5 man pages * use -W and -Werror in utils- Change python binding for restorecon to check if the context matches. - If it does do not reset- Upgrade to upstream * Makefiles: syntax, convert all ${VAR} to $(VAR) * load_policy: handle selinux=0 and /sys/fs/selinux not exist * regenerate .pc on VERSION change * label: cosmetic cleanups * simple interface for access checks * Don't reinitialize avc_init if it has been called previously * seusers: fix to handle large sets of groups * audit2why: close fd on enomem * rename and export symlink_realpath * label_file: style changes to make Eric happy.- Apply libselinux patch to handle large groups in seusers.- Add selinux_check_access function. Needed for passwd, chfn, chsh- Handle situation where selinux=0 passed to the kernel and both /selinux and-Update to upstream * utils: matchpathcon: remove duplicate declaration * src: matchpathcon: use myprintf not fprintf * src: matchpathcon: make sure resolved path starts * put libselinux.so.1 in /lib not /usr/lib * tree: default make target to all not- Switch to use ":" as prefix separator rather then ";"- Avoid unnecessary shell invocation in %post.- Fix handling of subset labeling that is causing segfault in restorecon- Change matchpathcon_init_prefix and selabel_open to allow multiple initial prefixes. Now you can specify a ";" separated list of prefixes and the labeling system will only load regular expressions that match these prefixes.- Change matchpatcon to use proper myprintf - Fix symlink_realpath to always include "/" - Update to upstream * selinux_file_context_verify function returns wrong value. * move realpath helper to matchpathcon library * python wrapper makefile changes- Move to new Makefile that can build with or without PYTHON being set-Update to upstream 2.1.4 2011-0817 * mapping fix for invalid class/perms after selinux_set_mapping * audit2why: work around python bug not defining * resolv symlinks and dot directories before matching 2.1.2 2011-0803 * audit2allow: do not print statistics * make python bindings for restorecon work on relative path * fix python audit2why binding error * support new python3 functions * do not check fcontext duplicates on use * Patch for python3 for libselinux 2.1.1 2011-08-02 * move .gitignore into utils * new setexecon utility * selabel_open fix processing of substitution files * mountpoint changing patch. * simplify SRCS in Makefile 2.1.1 2011-08-01 * Remove generated files, introduce more .gitignore-Update to upstream * Release, minor version bump * Give correct names to mount points in load_policy by Dan Walsh. * Make sure selinux state is reported correctly if selinux is disabled or fails to load by Dan Walsh. * Fix crash if selinux_key_create was never called by Dan Walsh. * Add new file_context.subs_dist for distro specific filecon substitutions by Dan Walsh. * Update man pages for selinux_color_* functions by Richard Haines.- Only call dups check within selabel/matchpathcon if you are validating the context - This seems to speed the loading of labels by 4 times.- Move /selinux to /sys/fs/selinux - Add selinuxexeccon - Add realpath to matchpathcon to handle matchpathcon * type queries.- Update for latest libsepol- Update for latest libsepol- Fix restorecon python binding to accept relative paths-Update to upstream * Give correct names to mount points in load_policy by Dan Walsh. * Make sure selinux state is reported correctly if selinux is disabled or fails to load by Dan Walsh. * Fix crash if selinux_key_create was never called by Dan Walsh. * Add new file_context.subs_dist for distro specific filecon substitutions by Dan Walsh. * Update man pages for selinux_color_* functions by Richard Haines.- Clean up patch to make handling of constructor cleanup more portable * db_language object class support for selabel_lookup from KaiGai Kohei. * Library destructors for thread local storage keys from Eamon Walsh.- Add distribution subs pathAdd patch from dbhole@redhat.com to initialize thread keys to -1 Errors were being seen in libpthread/libdl that were related to corrupt thread specific keys. Global destructors that are called on dl unload. During destruction delete a thread specific key without checking if it has been initialized. Since the constructor is not called each time (i.e. key is not initialized with pthread_key_create each time), and the default is 0, there is a possibility that key 0 for an active thread gets deleted. This is exactly what is happening in case of OpenJDK. Workaround patch that initializes the key to -1. Thus if the constructor is not called, the destructor tries to delete key -1 which is deemed invalid by pthread_key_delete, and is ignored.- Call fini_selinuxmnt if selinux is disabled, to cause is_selinux_disabled() to report correct data- Change mount source options to use "proc" and "selinuxfs"- Update to upstream * Turn off default user handling when computing user contexts by Dan Walsh- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild- Fixup selinux man page- Fix Makefile to use pkg-config --cflags python3 to discover include paths- Update to upstream - Turn off fallback in to SELINUX_DEFAULTUSER in get_context_list- Update to upstream * Thread local storage fixes from Eamon Walsh.- Add /etc/tmpfiles.d support for /var/run/setrans- Ghost /var/run/setrans- Rebuilt for gcc bug 634757- rebuild via updated swig (#624674)- Update for python 3.2a1- Turn off fallback in to SELINUX_DEFAULTUSER in get_context_list- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild- Turn off messages in audit2why- Update to upstream * Add const qualifiers to public API where appropriate by KaiGai Kohei. 2.0.95 2010-06-10 * Remove duplicate slashes in paths in selabel_lookup from Chad Sellers * Adds a chcon method to the libselinux python bindings from Steve Lawrence - add python3 subpackage from David Malcolm* Set errno=EINVAL for invalid contexts from Dan Walsh.- Update to upstream * Show strerror for security_getenforce() by Colin Waters. * Merged selabel database support by KaiGai Kohei. * Modify netlink socket blocking code by KaiGai Kohei.- Update to upstream * Fix from Eric Paris to fix leak on non-selinux systems. * regenerate swig wrappers * pkgconfig fix to respect LIBDIR from Dan Walsh.- Update to upstream * Change the AVC to only audit the permissions specified by the policy, excluding any permissions specified via dontaudit or not specified via auditallow. * Fix compilation of label_file.c with latest glibc headers.- Fix potential doublefree on init- Fix libselinux.pc- Fix man page for selinuxdefcon- Free memory on disabled selinux boxes- Update to upstream * add/reformat man pages by Guido Trentalancia . * Change exception.sh to be called with bash by Manoj Srivastava - Fix selinuxdefcon man page- Update to upstream * Add pkgconfig file from Eamon Walsh.- Update to upstream * Rename and export selinux_reset_config()- Update to upstream * Add exception handling in libselinux from Dan Walsh. This uses a shell script called exception.sh to generate a swig interface file. * make swigify * Make matchpathcon print <> if path not found in fcontext file.- Eliminate -pthread switch in Makefile- Update to upstream * Removal of reference counting on userspace AVC SID's.- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild- Update to upstream * Reverted Tomas Mraz's fix for freeing thread local storage to avoid pthread dependency. * Removed fini_context_translations() altogether. * Merged lazy init patch from Stephen Smalley based on original patch by Steve Grubb.- Update to upstream * Add per-service seuser support from Dan Walsh. * Let load_policy gracefully handle selinuxfs being mounted from Stephen Smalley. * Check /proc/filesystems before /proc/mounts for selinuxfs from Eric Paris.- Add provices ruby(selinux)- Update to upstream * Fix improper use of thread local storage from Tomas Mraz . * Label substitution support from Dan Walsh. * Support for labeling virtual machine images from Dan Walsh.- Update to upstream * Trim / from the end of input paths to matchpathcon from Dan Walsh. * Fix leak in process_line in label_file.c from Hiroshi Shinji. * Move matchpathcon to /sbin, add matchpathcon to clean target from Dan Walsh. * getdefaultcon to print just the correct match and add verbose option from Dan Walsh.- Update to upstream * deny_unknown wrapper function from KaiGai Kohei. * security_compute_av_flags API from KaiGai Kohei. * Netlink socket management and callbacks from KaiGai Kohei.- Fix Memory Leak- Fix crash in python- Add back in additional interfaces- Add back in av_decision to python swig- Update to upstream * Netlink socket handoff patch from Adam Jackson. * AVC caching of compute_create results by Eric Paris.- Add patch from ajax to accellerate X SELinux - Update eparis patch- Add eparis patch to accellerate Xwindows performance- Fix URL- Add substitute pattern - matchpathcon output <> on ENOENT- Update to upstream * Fix incorrect conversion in discover_class code.- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild- Add - selinux_virtual_domain_context_path - selinux_virtual_image_context_path- Throw exeptions in python swig bindings on failures- Fix restorecon python code- Update to upstream- Strip trailing / for matchpathcon- Fix segfault if seusers file does not work- Add new function getseuser which will take username and service and return - seuser and level. ipa will populate file in future. - Change selinuxdefcon to return just the context by default- Rebuild for Python 2.6- Update to Upstream * Allow shell-style wildcards in x_contexts file.- Eamon Walsh Patch - libselinux: allow shell-style wildcarding in X names - Add Restorecon/Install python functions from Luke Macken- Update to Upstream * Correct message types in AVC log messages. * Make matchpathcon -V pass mode from Dan Walsh. * Add man page for selinux_file_context_cmp from Dan Walsh.- Update to Upstream * New man pages from Dan Walsh. * Update flask headers from refpolicy trunk from Dan Walsh.- Fix matchpathcon -V call- Add flask definitions for open, X and nlmsg_tty_audit- Add missing get/setkeycreatecon man pages- Split out utilities- Add missing man page links for [lf]getfilecon- Update to Upstream * Add group support to seusers using %groupname syntax from Dan Walsh. * Mark setrans socket close-on-exec from Stephen Smalley. * Only apply nodups checking to base file contexts from Stephen Smalley.- Update to Upstream * Merge ruby bindings from Dan Walsh. - Add support for Linux groups to getseuserbyname- Allow group handling in getseuser call- Update to Upstream * Handle duplicate file context regexes as a fatal error from Stephen Smalley. This prevents adding them via semanage. * Fix audit2why shadowed variables from Stephen Smalley. * Note that freecon NULL is legal in man page from Karel Zak.- Add ruby support for puppet- Rebuild for new libsepol- Add Karel Zak patch for freecon man page- Update to Upstream * New and revised AVC, label, and mapping man pages from Eamon Walsh. * Add swig python bindings for avc interfaces from Dan Walsh.- Update to Upstream * Fix selinux_file_context_verify() and selinux_lsetfilecon_default() to call matchpathcon_init_prefix if not already initialized. * Add -q qualifier for -V option of matchpathcon and change it to indicate whether verification succeeded or failed via exit status.- libselinux no longer neets to telnet -u in post install- Add sedefaultcon and setconlist commands to dump login context- Update to Upstream * Fixed selinux_set_callback man page. * Try loading the max of the kernel-supported version and the libsepol-supported version when no manipulation of the binary policy is needed from Stephen Smalley. * Fix memory leaks in matchpathcon from Eamon Walsh.- Add Xavior Toth patch for security_id_t in swig- Add avc.h to swig code- Grab the latest policy for the kernel- Update to Upstream * Man page typo fix from Jim Meyering.- Update to Upstream * Changed selinux_init_load_policy() to not warn about a failed mount of selinuxfs if selinux was disabled in the kernel.- Fix matchpathcon memory leak- Update to Upstream * Merged new X label "poly_selection" namespace from Eamon Walsh.- Update to Upstream * Merged reset_selinux_config() for load policy from Dan Walsh.- Reload library on loading of policy to handle chroot- Update to Upstream * Merged avc_has_perm() errno fix from Eamon Walsh.- Update to Upstream * Regenerated Flask headers from refpolicy flask definitions.- Update to Upstream * Merged compute_member AVC function and manpages from Eamon Walsh. * Provide more error reporting on load policy failures from Stephen Smalley.- Update to Upstream * Merged new X label "poly_prop" namespace from Eamon Walsh.- Update to Upstream * Disable setlocaldefs if no local boolean or users files are present from Stephen Smalley. * Skip userspace preservebools processing for Linux >= 2.6.22 from Stephen Smalley.- Update to Upstream * Merged fix for audit2why from Dan Walsh.- Fix audit2why to grab latest policy versus the one selected by the kernel* Merged audit2why python binding from Dan Walsh.* Merged updated swig bindings from Dan Walsh, including typemap for pid_t.- Update to use libsepol-static library- Move libselinux.a to -static package - Spec cleanups- Put back libselinux.a- Fix memory references in audit2why and change to use tuples - Update to Upstream * Fix for the avc: granted null message bug from Stephen Smalley.- Fix __init__.py specification- Add audit2why python bindings- Add pid_t typemap for swig bindings- smp_mflag- Fix spec file caused by spec review- Upgrade to upstream * matchpathcon(8) man page update from Dan Walsh.- Upgrade to upstream * dlopen libsepol.so.1 rather than libsepol.so from Stephen Smalley. * Based on a suggestion from Ulrich Drepper, defer regex compilation until we have a stem match, by Stephen Smalley. * A further optimization would be to defer regex compilation until we have a complete match of the constant prefix of the regex - TBD.- Upgrade to upstream * Regenerated Flask headers from policy.- Upgrade to upstream * AVC enforcing mode override patch from Eamon Walsh. * Aligned attributes in AVC netlink code from Eamon Walsh. - Move libselinux.so back into devel package, procps has been fixed- Upgrade to upstream * Merged refactored AVC netlink code from Eamon Walsh. * Merged new X label namespaces from Eamon Walsh. * Bux fix and minor refactoring in string representation code.- Upgrade to upstream * Merged selinux_get_callback, avc_open, empty string mapping from Eamon Walsh.- Upgrade to upstream * Fix segfault resulting from missing file_contexts file.- Fix segfault on missing file_context file- Upgrade to upstream * Make netlink socket close-on-exec to avoid descriptor leakage from Dan Walsh. * Pass CFLAGS when using gcc for linking from Dennis Gilmore.- Add sparc patch to from Dennis Gilmore to build on Sparc platform- Remove leaked file descriptor- Upgrade to latest from NSA * Fix selabel option flag setting for 64-bit from Stephen Smalley.- Change matchpatcon to use syslog instead of syserror- Upgrade to latest from NSA * Re-map a getxattr return value of 0 to a getfilecon return value of -1 with errno EOPNOTSUPP from Stephen Smalley. * Fall back to the compat code for security_class_to_string and security_av_perm_to_string from Stephen Smalley. * Fix swig binding for rpm_execcon from James Athey.- Apply James Athway patch to fix rpm_execcon python binding- Move libselinux.so back into main package, breaks procps- Upgrade to upstream * Fix file_contexts.homedirs path from Todd Miller.- Remove requirement on setransd, Moved to selinux-policy-mls- Move libselinux.so into devel package - Upgrade to upstream * Fix segfault resulting from uninitialized print-callback pointer. * Added x_contexts path function patch from Eamon Walsh. * Fix build for EMBEDDED=y from Yuichi Nakamura. * Fix markup problems in selinux man pages from Dan Walsh.- Upgrade to upstream * Updated version for stable branch. * Added x_contexts path function patch from Eamon Walsh. * Fix build for EMBEDDED=y from Yuichi Nakamura. * Fix markup problems in selinux man pages from Dan Walsh. * Updated av_permissions.h and flask.h to include new nscd permissions from Dan Walsh. * Added swigify to top-level Makefile from Dan Walsh. * Fix for string_to_security_class segfault on x86_64 from Stephen Smalley.- Apply Steven Smalley patch to fix segfault in string_to_security_class- Fix matchpathcon to set default myprintf- Upgrade to upstream * Fix for getfilecon() for zero-length contexts from Stephen Smalley.- Update to match flask/access_vectors in policy- Fix man page markup lanquage for translations- Fix semanage segfault on x86 platform- Upgrade to upstream * Labeling and callback interface patches from Eamon Walsh.- Refactored swig- Upgrade to upstream * Class and permission mapping support patches from Eamon Walsh. * Object class discovery support patches from Chris PeBenito. * Refactoring and errno support in string representation code.- Upgrade to upstream - Merged patch to reduce size of libselinux and remove need for libsepol for embedded systems from Yuichi Nakamura. This patch also turns the link-time dependency on libsepol into a runtime (dlopen) dependency even in the non-embedded case. 2.0.17 2007-05-31 * Updated Lindent script and reindented two header files.- Upgrade to upstream * Merged additional swig python bindings from Dan Walsh. * Merged helpful message when selinuxfs mount fails patch from Dax Kelson.- Upgrade to upstream * Merged build fix for avc_internal.c from Joshua Brindle.- Add get_context_list funcitions to swig file- Upgrade to upstream * Merged rpm_execcon python binding fix, matchpathcon man page fix, and getsebool -a handling for EACCES from Dan Walsh.- Add missing interface- Upgrade to upstream * Merged support for getting initial contexts from James Carter.- Upgrade to upstream * Merged userspace AVC patch to follow kernel's behavior for permissive mode in caching previous denials from Eamon Walsh. * Merged sidput(NULL) patch from Eamon Walsh.- Make rpm_exec swig work- Upgrade to upstream * Merged class/av string conversion and avc_compute_create patch from Eamon Walsh.- Upgrade to upstream * Merged fix for avc.h #include's from Eamon Walsh.- Add stdint.h to avc.h- Merged patch to drop support for CACHETRANS=0 config option from Steve Grubb. - Merged patch to drop support for old /etc/sysconfig/selinux and - /etc/security policy file layout from Steve Grubb.- Do not fail on permission denied in getsebool- Upgrade to upstream * Merged init_selinuxmnt() and is_selinux_enabled() improvements from Steve Grubb.- Upgrade to upstream * Removed sending of setrans init message. * Merged matchpathcon memory leak fix from Steve Grubb.- Upgrade to upstream * Merged more swig initializers from Dan Walsh.- Upgrade to upstream * Merged patch from Todd Miller to convert int types over to C99 style.- Merged patch from Todd Miller to remove sscanf in matchpathcon.c because of the use of the non-standard format (original patch changed for style). - Merged patch from Todd Miller to fix memory leak in matchpathcon.c.- Add context function to python to split context into 4 parts- Upgrade to upstream * Updated version for stable branch.- Upgrade to upstream * Merged man page updates to make "apropos selinux" work from Dan Walsh.- Upgrade to upstream * Merged getdefaultcon utility from Dan Walsh.- Add Ulrich NSCD__GETSERV and NSCD__SHMEMGRP for Uli- Add reference to selinux man page in all man pages to make apropos work Resolves: # 217881- Upstream wanted some minor changes, upgrading to keep api the same - Upgrade to upstream * Merged selinux_check_securetty_context() and support from Dan Walsh. Resolves: #200110- Cleanup patch- Add securetty handling Resolves: #200110- Upgrade to upstream * Merged patch for matchpathcon utility to use file mode information when available from Dan Walsh.- rebuild against python 2.5- Fix matchpathcon to lstat files- Update man page- Upgrade to upstream- Add James Antill patch for login verification of MLS Levels - MLS ragnes need to be checked, Eg. login/cron. This patch adds infrastructure.- Upgrade to latest from NSA * Merged updated flask definitions from Darrel Goeddel. This adds the context security class, and also adds the string definitions for setsockcreate and polmatch.- Upgrade to latest from NSA * Updated version for release.- rebuilt for unwind info generation, broken in gcc-4.1.1-21- Upgrade to latest from NSA * Merged av_permissions.h update from Steve Grubb, adding setsockcreate and polmatch definitions.- really make -devel depend on libsepol-devel- Add sgrubb patch for polmatch- Upgrade to latest from NSA * Merged patch from Steve Smalley to fix SIGPIPE in setrans_client- have -devel require libsepol-devel- Upgrade to latest from NSA * Merged patch to not log avc stats upon a reset from Steve Grubb. * Applied patch to revert compat_net setting upon policy load. * Merged file context homedir and local path functions from Chris PeBenito.- rebuilt with latest binutils to pick up 64K -z commonpagesize on ppc* (#203001)- Upgrade to latest from NSA * Merged file context homedir and local path functions from Chris PeBenito. * Rework functions that access /proc/pid/attr to access the per-thread nodes, and unify the code to simplify maintenance.- Upgrade to latest from NSA * Merged return value fix for *getfilecon() from Dan Walsh. * Merged sockcreate interfaces from Eric Paris.- Fix translation return codes to return size of buffer- Upgrade to latest from NSA * Merged no-tls-direct-seg-refs patch from Jeremy Katz. * Merged netfilter_contexts support patch from Chris PeBenito.- Upgrade to latest from NSA * Merged context_*_set errno patch from Jim Meyering.- only build non-fpic objects with -mno-tls-direct-seg-refs- build with -mno-tls-direct-seg-refs on x86 to avoid triggering segfaults with xen (#200783)- Rebuild for new gcc- Fix libselinux to not telinit during installs- Upgrade to latest from NSA * Lindent. * Merged {get,set}procattrcon patch set from Eric Paris. * Merged re-base of keycreate patch originally by Michael LeMay from Eric Paris. * Regenerated Flask headers from refpolicy. * Merged patch from Dan Walsh with: - Added selinux_file_context_{cmp,verify}. - Added selinux_lsetfilecon_default. - Delay translation of contexts in matchpathcon.- Yet another change to matchpathcon- Turn off error printing in library. Need to compile with DEBUG to get it back- Fix error reporting of matchpathcon- Add function to compare file context on disk versus contexts in file_contexts file.- Upgrade to latest from NSA * Merged patch from Dan Walsh with: * Added selinux_getpolicytype() function. * Modified setrans code to skip processing if !mls_enabled. * Set errno in the !selinux_mnt case. * Allocate large buffers from the heap, not on stack. Affects is_context_customizable, selinux_init_load_policy, and selinux_getenforcemode.- Add selinux_getpolicytype()- Upgrade to latest from NSA * Merged !selinux_mnt checks from Ian Kent.- Check for selinux_mnt == NULL- Merged matchmediacon and trans_to_raw_context fixes from Serge Hallyn.- Remove getseuser- Bump requires to grab latest libsepol- Add BuildRequires for swig- Upgrade to latest from NSA * Merged simple setrans client cache from Dan Walsh. Merged avcstat patch from Russell Coker. * Modified selinux_mkload_policy() to also set /selinux/compat_net appropriately for the loaded policy.- More fixes for translation cache - Upgrade to latest from NSA * Added matchpathcon_fini() function to free memory allocated by matchpathcon_init().- Add simple cache to improve translation speed- Upgrade to latest from NSA * Merged setrans client cleanup patch from Steve Grubb.- Add Russell's AVC patch to handle large numbers- Upgrade to latest from NSA * Merged getfscreatecon man page fix from Dan Walsh. * Updated booleans(8) man page to drop references to the old booleans file and to note that setsebool can be used to set the boot-time defaults via -P.- Upgrade to latest from NSA * Merged fix warnings patch from Karl MacMillan. * Merged setrans client support from Dan Walsh. This removes use of libsetrans. * Merged patch to eliminate use of PAGE_SIZE constant from Dan Walsh. * Merged swig typemap fixes from Glauber de Oliveira Costa.- Change the way translations work, Use setransd/remove libsetrans- Add selinuxswig fixes - Stop using PAGE_SIZE and start using sysconf(_SC_PAGE_SIZE)- Upgrade to latest from NSA * Added distclean target to Makefile. * Regenerated swig files. * Changed matchpathcon_init to verify that the spec file is a regular file. * Merged python binding t_output_helper removal patch from Dan Walsh.- Fix python bindings for matchpathcon - Fix booleans man page- Merged Makefile PYLIBVER definition patch from Dan Walsh.- Make some fixes so it will build on RHEL4 - Upgrade to latest from NSA * Updated version for release. * Altered rpm_execcon fallback logic for permissive mode to also handle case where /selinux/enforce is not available.- bump again for double-long bug on ppc(64)- rebuilt for new gcc4.1 snapshot and glibc changes- Upgrade to latest from NSA * Merged install-pywrap Makefile patch from Joshua Brindle.- Upgrade to latest from NSA * Merged pywrap Makefile patch from Dan Walsh.- Split out pywrap in Makefile- Upgrade to latest from NSA * Added getseuser test program.- Upgrade to latest from NSA * Added format attribute to myprintf in matchpathcon.c and removed obsoleted rootlen variable in init_selinux_config().- Build with new libsepol- Upgrade to latest from NSA * Merged several fixes and improvements from Ulrich Drepper (Red Hat), including: - corrected use of getline - further calls to __fsetlocking for local files - use of strdupa and asprintf - proper handling of dirent in booleans code - use of -z relro - several other optimizations * Merged getpidcon python wrapper from Dan Walsh (Red Hat).- Add build requires line for libsepol-devel- Fix swig call for getpidcon- Move libselinux.so to base package- Upgrade to latest from NSA * Merged call to finish_context_translations from Dan Walsh. This eliminates a memory leak from failing to release memory allocated by libsetrans.- update to latest libsetrans - Fix potential memory leak- rebuilt- Update to never version * Merged patch for swig interfaces from Dan Walsh.- Update to never version- Fix some of the python swig objects- Update to latest from NSA * Added MATCHPATHCON_VALIDATE flag for set_matchpathcon_flags() and modified matchpathcon implementation to make context validation/ canonicalization optional at matchpathcon_init time, deferring it to a successful matchpathcon by default unless the new flag is set by the caller. * Added matchpathcon_init_prefix() interface, and reworked matchpathcon implementation to support selective loading of file contexts entries based on prefix matching between the pathname regex stems and the specified path prefix (stem must be a prefix of the specified path prefix).- Update to latest from NSA * Change getsebool to return on/off instead of active/inactive- Update to latest from NSA * Added -f file_contexts option to matchpathcon util. Fixed warning message in matchpathcon_init(). * Merged Makefile python definitions patch from Dan Walsh.- Update to latest from NSA * Merged swigify patch from Dan Walsh.- Separate out libselinux-python bindings into separate rpm- Read libsetrans requirement- Add python bindings- Update to latest from NSA * Merged make failure in rpm_execcon non-fatal in permissive mode patch from Ivan Gyurdiev.- Remove requirement for libsetrans- Update to latest from NSA * Added MATCHPATHCON_NOTRANS flag for set_matchpathcon_flags() and modified matchpathcon_init() to skip context translation if it is set by the caller.- Update to latest from NSA * Added security_canonicalize_context() interface and set_matchpathcon_canoncon() interface for obtaining canonical contexts. Changed matchpathcon internals to obtain canonical contexts by default. Provided fallback for kernels that lack extended selinuxfs context interface. - Patch to not translate mls when calling setfiles- Update to latest from NSA * Merged seusers parser changes from Ivan Gyurdiev. * Merged setsebool to libsemanage patch from Ivan Gyurdiev. * Changed seusers parser to reject empty fields.- Update to latest from NSA * Merged seusers empty level handling patch from Jonathan Kim (TCS).- Rebuild for latest libsepol- Rebuild for latest libsepol- Change default to __default__- Change default to __default__- Add selinux_translations_path- Update to latest from NSA * Merged selinux_path() and selinux_homedir_context_path() functions from Joshua Brindle.- Need to check for /sbin/telinit- Update to latest from NSA * Merged fixes for make DESTDIR= builds from Joshua Brindle.- Update to latest from NSA * Merged get_default_context_with_rolelevel and man pages from Dan Walsh (Red Hat). * Updated call to sepol_policydb_to_image for sepol changes. * Changed getseuserbyname to ignore empty lines and to handle no matching entry in the same manner as no seusers file.- Tell init to reexec itself in post script- Update to latest from NSA * Changed selinux_mkload_policy to try downgrading the latest policy version available to the kernel-supported version. * Changed selinux_mkload_policy to fall back to the maximum policy version supported by libsepol if the kernel policy version falls outside of the supported range.- Update to latest from NSA * Changed getseuserbyname to fall back to the Linux username and NULL level if seusers config file doesn't exist unless REQUIRESEUSERS=1 is set in /etc/selinux/config. * Moved seusers.conf under $SELINUXTYPE and renamed to seusers.- Update to latest from NSA * Added selinux_init_load_policy() function as an even higher level interface for the initial policy load by /sbin/init. This obsoletes the load_policy() function in the sysvinit-selinux.patch. * Added selinux_mkload_policy() function as a higher level interface for loading policy than the security_load_policy() interface.- Update to latest from NSA * Merged fix for matchpathcon (regcomp error checking) from Johan Fischer. Also added use of regerror to obtain the error string for inclusion in the error message.- Update to latest from NSA * Changed getseuserbyname to not require (and ignore if present) the MLS level in seusers.conf if MLS is disabled, setting *level to NULL in this case.- Update to latest from NSA * Merged getseuserbyname patch from Dan Walsh.- Fix patch to satisfy upstream- Update to latest from NSA - Add getseuserbyname- Fix patch call- Fix strip_con call- Go back to original libsetrans code- Eliminate forth param from mls context when mls is not enabled.- Update from NSA * Merged modified form of patch to avoid dlopen/dlclose by the static libselinux from Dan Walsh. Users of the static libselinux will not have any context translation by default.- Update from NSA * Added public functions to export context translation to users of libselinux (selinux_trans_to_raw_context, selinux_raw_to_trans_context).- Update from NSA * Remove special definition for context_range_set; use common code.- Update from NSA * Hid translation-related symbols entirely and ensured that raw functions have hidden definitions for internal use. * Allowed setting NULL via context_set* functions. * Allowed whitespace in MLS component of context. * Changed rpm_execcon to use translated functions to workaround lack of MLS level on upgraded systems.- Allow set_comp on unset ranges- Merged context translation patch, originally by TCS, with modifications by Dan Walsh (Red Hat).- Apply translation patch- Update from NSA * Merged several fixes for error handling paths in the AVC sidtab, matchpathcon, booleans, context, and get_context_list code from Serge Hallyn (IBM). Bugs found by Coverity. * Removed setupns; migrated to pam. * Merged patches to rename checkPasswdAccess() from Joshua Brindle. Original symbol is temporarily retained for compatibility until all callers are updated.- Update makefiles- Update from NSA * Merged security_setupns() from Chad Sellers. - fix selinuxenabled man page- Update from NSA * Merged avcstat and selinux man page from Dan Walsh. * Changed security_load_booleans to process booleans.local even if booleans file doesn't exist.- Fix avcstat to clear totals- Add info to man page- Update from NSA * Merged set_selinuxmnt patch from Bill Nottingham (Red Hat). * Rewrote get_ordered_context_list and helpers, including changing logic to allow variable MLS fields.- Update from NSA- Add backin matchpathcon- Fix selinux_policy_root man page- Change assert(selinux_mnt) to if (!selinux_mnt) return -1;- Update from NSA * Fixed bug in matchpathcon_filespec_destroy.- Update from NSA * Fixed bug in rpm_execcon error handling path.- Update from NSA * Merged fix for set_matchpathcon* functions from Andreas Steinmetz. * Merged fix for getconlist utility from Andreas Steinmetz.- Update from NSA- Better handling of booleans- Update from NSA * Merged destructors patch from Tomas Mraz.- Update from NSA * Added set_matchpathcon_flags() function for setting flags controlling operation of matchpathcon. MATCHPATHCON_BASEONLY means only process the base file_contexts file, not file_contexts.homedirs or file_contexts.local, and is for use by setfiles -c. * Updated matchpathcon.3 man page.- Update from NSA- Update from NSA * Fixed bug in matchpathcon_filespec_add() - failure to clear fl_head.- Update from NSA * Changed matchpathcon_common to ignore any non-format bits in the mode.- Default matchpathcon to regular files if the user specifies a mode- Update from NSA * Merged several fixes from Ulrich Drepper.- Fix matchpathcon on eof.- Update from NSA * Merged matchpathcon patch for file_contexts.homedir from Dan Walsh. * Added selinux_users_path() for path to directory containing system.users and local.users.- Process file_context.homedir- Update from NSA * Changed relabel Makefile target to use restorecon.- Update from NSA * Regenerated av_permissions.h.- Update from NSA * Modified avc_dump_av to explicitly check for any permissions that cannot be mapped to string names and display them as a hex value. * Regenerated av_permissions.h.- Update from NSA * Generalized matchpathcon internals, exported more interfaces, and moved additional code from setfiles into libselinux so that setfiles can directly use matchpathcon.- Update from NSA * Prevent overflow of spec array in matchpathcon. * Fixed several uses of internal functions to avoid relocations. * Changed rpm_execcon to check is_selinux_enabled() and fallback to a regular execve if not enabled (or unable to determine due to a lack of /proc, e.g. chroot'd environment).- Update from NSA * Merged minor fix for avcstat from Dan Walsh.- rpmexeccon should not fail in permissive mode.- fix printf in avcstat- Update from NSA- Modify matchpathcon to also process file_contexts.local if it exists- Add is_customizable_types function call- Update to latest from upstream * Just changing version number to match upstream- Update to latest from upstream * Changed matchpathcon to return -1 with errno ENOENT for <> entries, and also for an empty file_contexts configuration.- Fix link devel libraries- Fix unitialized variable in avcstat.c- Upgrade to upstream * Removed some trivial utils that were not useful or redundant. * Changed BINDIR default to /usr/sbin to match change in Fedora. * Added security_compute_member. * Added man page for setcon.- Upgrade to upstream- Add avcstat program- Add lots of missing man pages- Fix output of getsebool.- Update from upstream, fix setsebool -P segfault- Add a patch from upstream. Fixes signed/unsigned issues, and incomplete structure copy.- More fixes from sgrubb, better syslog- Have setsebool and togglesebool log changes to syslog- Add patch to make setsebool update bool on disk - Make togglesebool have a rollback capability in case it blows up inflight- Upgrade to latest from NSA- Changed the location of the utilities to /usr/sbin since normal users can't use them anyways.- Updated various utilities, removed utilities that are for testing, added man pages.- Add -g flag to make - Upgrade to latest from NSA * Added rpm_execcon.- Upgrade to latest from NSA * Merged setenforce and removable context patch from Dan Walsh. * Merged build fix for alpha from Ulrich Drepper. * Removed copyright/license from selinux_netlink.h - definitions only.- Change setenforce to accept Enforcing and Permissive- Add alpha patch- Upgrade to latest from NSA- Add selinux_removable_context_path- Update from NSA * Add matchmediacon- Update from NSA * Merged in matchmediacon changes.- Update from NSA * Regenerated headers for new nscd permissions.- Add matchmediacon- Update from NSA * Added get_default_context_with_role.- Clean up spec file * Patch from Matthias Saou- Update from NSA * Added set_matchpathcon_printf.- Update from NSA * Reworked av_inherit.h to allow easier re-use by kernel.- Add strcasecmp in selinux_config - Update from NSA * Changed avc_has_perm_noaudit to not fail on netlink errors. * Changed avc netlink code to check pid based on patch by Steve Grubb. * Merged second optimization patch from Ulrich Drepper. * Changed matchpathcon to skip invalid file_contexts entries. * Made string tables private to libselinux. * Merged strcat->stpcpy patch from Ulrich Drepper. * Merged matchpathcon man page from Dan Walsh. * Merged patch to eliminate PLTs for local syms from Ulrich Drepper. * Autobind netlink socket. * Dropped compatibility code from security_compute_user. * Merged fix for context_range_set from Chad Hanson. * Merged allocation failure checking patch from Chad Hanson. * Merged avc netlink error message patch from Colin Walters.- Update from NSA * Merged second optimization patch from Ulrich Drepper. * Changed matchpathcon to skip invalid file_contexts entries. * Made string tables private to libselinux. * Merged strcat->stpcpy patch from Ulrich Drepper. * Merged matchpathcon man page from Dan Walsh. * Merged patch to eliminate PLTs for local syms from Ulrich Drepper. * Autobind netlink socket. * Dropped compatibility code from security_compute_user. * Merged fix for context_range_set from Chad Hanson. * Merged allocation failure checking patch from Chad Hanson. * Merged avc netlink error message patch from Colin Walters.- Update from NSA - Add optflags- Update from NSA- Add matchpathcon man page - Latest from NSA * Merged patch to eliminate PLTs for local syms from Ulrich Drepper. * Autobind netlink socket. * Dropped compatibility code from security_compute_user. * Merged fix for context_range_set from Chad Hanson. * Merged allocation failure checking patch from Chad Hanson. * Merged avc netlink error message patch from Colin Walters.- Latest from NSA * Autobind netlink socket. * Dropped compatibility code from security_compute_user. * Merged fix for context_range_set from Chad Hanson. * Merged allocation failure checking patch from Chad Hanson. * Merged avc netlink error message patch from Colin Walters.- Latest from NSA- New upstream version- Latest from Upstream- Fix man pages- Latest from Upstream- Latest from Upstream- Add man page for boolean functions and SELinux- Latest from NSA- Latest from NSA- uppercase getenforce returns, to make them match system-config-securitylevel- Remove old path patch- Update to latest from NSA - Add fix to only get old path if file_context file exists in old location- Update to latest from NSA- add nlclass patch - Update to latest from NSA- rebuilt- Fix selinux_config to break once it finds SELINUXTYPE.-Update with latest from NSA- Change to use new policy mechanism- add man patch- Update with latest from NSA- Update with latest from NSA- Add changes for relaxed policy - Update to match NSA- Add relaxed policy changes- Sync with NSA- Remove requires glibc>2.3.4- Fix selinuxenabled man page.- Upgrade to 1.11- Add memleaks patch- Upgrade to latest from NSA and add more man pages- Update to match NSA - Cleanup some man pages- Upgrade to latest from NSA- Add Russell's Man pages- Change getenforce to also check is_selinux_enabled- Add ownership to /usr/include/selinux- fix location of file_contexts file.- Fix matchpathcon to use BUFSIZ- rebuilt- add matchpathcon- rebuilt- Add rootok patch- Updated getpeernam patch- Add getpeernam patch- Add getpeercon patch- Put mntpoint patch, because found fix for SysVinit- Add remove mntpoint patch, because it breaks SysVinit- Add mntpoint patch for SysVinit- Add -r -u -t to getcon- Upgrade to latest from NSA- Fix x86_64 build- Latest tarball from NSA.- Update with latest changes from NSA- Change location of .so file- Break out into development library- Move location of libselinux.so to /lib- Add selinuxenabled patch- Update with final NSA 1.2 sources.- Update with latest from NSA.- Fix to build on x86_64- update for version 1.2- Initial version2.9-6.el82.9-6.el8.build-id13c67f50b8c269291fa9d6998a1acfa7785a6288selinux.so/usr/lib//usr/lib/.build-id//usr/lib/.build-id/13//usr/lib64/ruby/vendor_ruby/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protectioncpioxz2x86_64-redhat-linux-gnudirectoryELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=13c67f50b8c269291fa9d6998a1acfa7785a6288, strippedRRRRRRRR utf-84cc2c416181d9eebc425c975fe89f9598a03c35a579edd483a33584e6f59cdf7?@7zXZ !#,㷧] b2u jӫ`(y-67tN,Pwo&9naBgj~|FFz]U/Ju? ;`g--AɃd]Sd1 ]\RQ3$ndqUWH$=E0JE /{0Ja2) L'\{RJY(+eK<|#LcudFy<>lZ~c!rFe f ,^ДLuFUR[[@飺%Ǒp L2Rq!w|U}z-@ŧ`Ps NP{cR(cDޱ[1ξ<p,V`rKMgFѩs"nBLb(q=n=nT,Ц[I-Fvd $g>5U9$Ό}y{!\ϸwXаɹAa ]>K-@ݥA)m^m|M'=mI>cB9gPL"ˋIzϽK$ 跨HݗӪ/v+ \CG9p馺,5z>`-b4>ѥJi"XFa}6^*{qWZK#KPV7ATޝq38r(J^Ԏ5P"V[4mHːw"K@(6Sr%u# *{ӇD`.EqQlNuMq2ؖ0bli;W P MhARzOKFF'd,m$`RdC&zb*Ǎ8 a1Դe$_X%D;Ch SPEQhf=a`tmn2tverxU@Żg d돲ڽg`Fn zy4z'`mCV؟@< P}PGU>QY` (w%uNAߢ6'%Gkcޡenl;~;+ZzO 3Pi)XeZSqH̖k)9;{atrk &]qz9BL`cl>0tq KDQQe ;G0$\e.D|q}:х&sTfO O(Wp^?6u >*3%3)):}:dNײٮj;4bS ݈ZrC`Y G$pVEw;|wQI'<(+@~%;KW \<ǰ~b+hBN:TV)[s-;⾀zj-\ה0r?nnCqoTJ"Ϧs94DD塏3nf0toM_XXdDiGٽcEa8Q: 5V._P;l5n'ѫ_ĿEKyöJy"M7DC&S]ZBȪ1bq:n!Z) ЖjoܳN')''$diɿsk=0D%~ĄfOVmkH&+T{! ˸Kev#6G RAmd٤NY̨1_eW9{Jզd N|xj7$P$T0}c&5&`GhzHʝ:Ij_Se"rq勶G+2ǻrCC i-4ȗ[C\W~R h(,~vHqۦX>H &>MeBa_ Pd^1ޜpi^zcdrVd!|&|T@{pYnYa'"'q\i ~Y*gye R#$w9KL*1 2J{+"YzXO$uW|p#TULho5RFDL3V) }B;ӃR7P>͡|GwDOvDcqyjKćI6͚6 t9λ<' i91Yi"[o#8QJ8>>'#e.&rG9}~ptVxgǧ i~l }.=A3e?Lmi۽ S [*-D+:› ^eu 8bpo49H?vArQuɍ+d~ iO0͎gd}$k%{o,\#]0>ԛ#ϖ_>kk2xE BePE!RuiY-ErSoz'v^=[P \<ܓ'PmT))J0F7( wXa+\U:4RJԽ ɹm?;=Qdag{:#Dʛwp2t+Z4AةӲ:Y5e9,$JoZ5,_r3MZ|3y: dX,]ȣxP4Blݮ[Ntkޓ_o>u1lޔ֨&}VˡE4*jbÚi_B>- Ej"[buX|sلfn 3b~Y̳%w:(2-d (xq'2PSsT1_QBxˆ˜{ A~E .!$'Ѫi wv5] sk'.7ZiCDb* ƞ2m;"4 'WGL:%L?N"V9,rٓ}r}/3y͊J)~%W'b+BS2t5B[S9Ui~SGim>`)(q\2aI:w1J`׾IUQ?>e.19 !\]+3^ ϲ$Iރiܨt *Eͅ0nD8wsPZ8Lun#y<#Wli^K6hCkDv2!e4{-;YXQ1pPB Ycr!zw0+kNd㪊23s/$ra]av N[X^?5Rɠp{%l]B촸vf͑f8R5 ~ N +吀G0_x-w+9O,~Y6g.e%YuE窫=pt<؁d8W,2H1/6#H!I#i1gc?:/s4#{דkn^BȷᲕ)NG󞵉#[n=GӇF;Lsj\A F9񶨫@H)"[̑UrﶇFY:l'd9XLKBs3SZE3=<_6@ʥ*΃.F8\0GM($RvϬO%C JhİeؾI~)'lr:aNo0lU%;̺},B%7Qcy, S?(+S_i6ͲxHDËG$ st `>1>C."ąW^ NhPJ'it۾XN 놃0Q^B!%|{uؾsnx^,g\ ә=ƮqJ]>k-4u^u$] QF>ԫX?{ w$Ae,29Mܧy{jNUQ!<1揠y_ |jaML NcN7(+X F==on5GiW%{ %Ƃ0D=FQ *x<OHovx{?ToXqA!i]\B&0cݤl )a(C:E8]'-5R劉* $G e}Dmo7o F$uuVgBEdv ye$zsSiL3}O amXCJ%$X-T'$-To%R^y`Nj_;xWIcVbeM+BHzxIY,Ɲ Vr1rA,)T׃ܦr )`EѕzA? E0^<$h&ŞWeuѽ@ -9K&7 ^nJVQn3˖k"Dcq ta#S$Ns!Dhްø|r/W 8?E`#4s+u_PK!nLFJ}ZOk1"2OB3z~L^QsSp^{j=%-/.N?j>Fl#b3#ėC>nP ^1bV;?]q|hc[b1f13*KI0<(r%DM'-|!9p($XΛiD9mdȢBZ<6'OjO,gMDezc望`cʲ|8EqE"R]J`*8! yNřC^POjPAg|yI/Iajl&Xn~\[ !E<1,$#70`E/2}hX ?M;_:; 54ZF 2uxS;PXbZݨu=|nF+;ɭ(my ˤ8E|Mw9K UB3HqhCxC$ <;_L' P^s:R*35Y~GBAH*E>Zrk|D~Ŧ\'k[h`hu1,[ Lևİ2vR i?;~ܘؒC//+Q.xjBa)zFLh Ss(..cV|ҍRhc + 7=Oog楚h)9nCje/ }lQa"69vA qy=SұHX.Ø7CFY,׹Pu'ؕ4cUEI- o{~ Q"yushZ$AtAc{h`7qx62B@i-h뜝 ,Gnψ[+^?-Q3I~k2 Th`̃<#ɶmJTߡC t|gаgk|9.#]d|h5Ӝ~+eKz~ZpCiX?[-"[ b]X_0/-Nu>ŦB־@oe[wl={8~1ٺj ^/]ѷ&F/'(.[i7:#;KY_ 0nV1st4%Vgt͂pI{Y_]E;%!gVOzش#x .b$RYMPU{{6`bOk`qT$[RsV X`x{pʣYRNw-fK׌1.]BckBGV%vXQ.`k#rZ@ϴ;Ø5|1lG'5J:I?y\(`KUct enX2Ӂ*FXDWgI1(D0 &oЀuⳇoQ{~bP D񇤁t=F'^*oW7]i="yuUyf-ܠ&bȊfAMS - УlhP "5joY6߿r$HM#vCO,PM\ho(b.o8&!5s|Rh)'^Gaa"8ԘBZ)Z9n˺[ (^[H듄d́#y61&x?A::݇F{+({@;av=;>Rb2y-}{ T W1d??`{%p&L2 oz) Sn٦i%2#߉tVE+Rx$*%2smmp,Ȃj2Mg1 Fljz(\4e m&HU1ͨ$cpOZPe+YЎCavuo'įMlVּ xOUTed'&{ D큇!πl;o&|x2$)Yس(XP> Ԕ.q; fwcoAA9uMGLj B,B%C̯f}M) X՗; ̟In=#Br3ΦnO3[sBPHiM>|+Cqsv/)h#*u\~ءi*[p 70X{ rB}bIC}[2|カVc'5_(keDd:7ᷛ3N^ YL8/vYQq ׅ`fXt5,lo:HTA^{jKe-%WAaȬhga_URxi;j>8f#yuF@VN+{ͤ;:Az|{nx][NHerx7*yT$s#u+?% + oߎᤁ?ﺿ {<.`Fx)OW`}F٣}xwx}N׆O_0#lJZyfz="rDIPhOUit^i:lV<`hսSOGܨdC/NI sRg'p|od35vc<^MC@C4U6fE.ߚ ǷǠغ"~-_6W`7թ}K';mc-©bg0{F{{1wOlkCkpyU2u*#a>rZs9X7e'4= z.J{ &tKݯH|ZQ437q|ˑ&]i0qOiۍ;`Y@b?k`P#G{д_4hؒK%A$(OY?d_qjXM *Msi~uEG?NW>5tI렛MB'Th6 On^rdR 1lQJ Hemxӯ` V@2\*n,[ό $A2/GϦ GD\*Ų@!јr vgWb'Ꭺ2Y WSY* ʶ5>G(~WcO4llMΒVֈ. 26،v8(68,"w>رHpqi G=_˴i;C2m4(C:RYWDcI6g4[Oiq|8M!7/sD`A9,?SvpI5}o 2'3&6`)?%Xlx>V=%Eֻma-7{EGH|fnF)>AEDz+Jaӻo%g.w6~=GoҴ`~Ø'SrYz8e’;FųtwcqܽEpU"ژTSM y~%+ BļC2z1*R3m2~ 蘂vS-h}uqJC֯ ROm}TF[׉-PnK%ʢ8R}jӵPF9 Ipϙ``o]} }|[aHtP:Ov NN+T K3=AGdi0e0n}!UplN hc\n Ily3gQxj/M[G*t%8!muW#Ck1R&hn{zyiUDźfCcg(KΖL@g!8eNA@Cԧ_rrai6by:t /PJ ?Ab=xP\{,CDj>tԂ:$s]OkiJ{(9M{O6ZSznM'}(]LwҊD PH.kP/{9I_F$f%~Gc~xGlKFCCIEz~.SۏM'0A¸)o16I3 q\^Z1{&-WAm8) (9/ $̮qQLl(<:̚k9qiwgOt({u,%h;d hj[q2x`T;0S, Dlθ+Ď &k:_.;K0?Z䛬NOd%cO\O2K3[KPz|kjJ9GpֹaBx( yNiuaL` , c9!7>9wv_~_$Ypeԯwↈ+"zHĊ4@$TN ?ldЏ1?@p5|[܌St/UUo ٠0[ɣshJcʅ 'Y7,LWU!6`t3!$0W7×,سvXOˎhWU+.xFHZvDE {Q`P)NM?qSG~2scv-҅gA̗9ߗ~Δƌt+±i;`Uwj@*^':TF >R TY;4 ^J@1[!x3:oz;$yWHu?%M3ϓ{!2I)F{VzB2W7k4@Ib pMJrHѣTB dŎ3vMi5]bUs*< *0/'+ 2UTXQRmP#Oss&JYbl_}[q\&g+ݸ \[4v04b̫O$b@{dW4`J wi&k"‹у8aޑ$KJW66z0jc'iu'Tvq@L68hF)'W`ukp|܏H5JXffXQo |f[3gIǎnw_qCnoe+zkfLz ؈|knfbK86a\K`+?5Aou :1h þq=ȥ$3F R-&s74ؙ: [R/E%bxo+n9!2) ,Ă7ϱ>rd*w~A_0)w$S\6Dk[3ݭFP OEWe|)RKDzxC{hkES܂;qL"Y;bJ6'ZKƹx ^kh *0׈f 1|5V6ӷNBeΌFbg!vh֊06н8=Ms N:RfLv~!I7O,hM ΃{̇ t+!'ś2ubΦPT~wW(p# ^,1sv*eM LLZ{yDLӆikq4JxO,ɻyʇ@s~F?;qrbJ|8t,Q'hAWW ,͊$gDt%& -tCP:~#}>(;"N{)Xm!Ù.c9mCDs0%*m>8 =Gb>`b-y(]Sbi@;Bm3M5}- .J! t'84cQ4C#˨Z*Nankt!~Čg֨Y='`f!;*ñ ӳ26 3}?W9Q n؏g21JX)o3@>͠:q( !M#C>3Z ~;i' V==1,{t /CUй||^MmkC+;"o4tL iϪ5)\p 2T;mV>K`hvcfO XFȧ) fAY@T0jt}1~d(yk\u` ~$|W0kYQ?p  ?j i-Cͳ6Pw 4j5 {aTV[= Xbz>#e3YgyzGK]&2P5MXv] :f D$ݗըn@(e"פq"!è&tZH+_cagEg# ؑR,86,JJ0e&uBxVUlfX 1_zxL[t~껳'&5ɎRl'LxYlB&7 f`b}\Vc9ޟI#ξwRx 0@Gŭ鶇]=8x&;P|n5_BlWvSʁB'nIqV0a<+fWb#}Y=4-WyaVD!ʲZ=MW' =%rOXӰքIWmD"J \!Uk{Yow @3JͿd)Z\B\`$:^!N}8g(W2Q?:i[J?PWBfT V_ap$v7qG=Sv5Zp[b[h}m(mI>ln^SdyR}98h3`jY9ܒ D&p ƀ[gƒJY1kjHk\߅t/Pv=Gm|oӦ#X2[bO3_?:4^\Lz?tµeSp\̵H*J8:k iYr$`n?c2A0uDX,3ezCkݮ>[r;PiLla,㯠Xjœs0gtoD>w4,(Ku-9L sHdıXE 1i?hL:K@\ o젏 ZŸ:Z'GfV& \Pl9HO?Z!=x=0=^ev;zo,9C*x$ $~rڌ#.Kb-_ui{%E4]7TfcN| wftvcoˆ,ċ8je]Еv:Ca?KRǾ1l%sؓ#$l41:ښtR]a #W|JX&GW9}rIzY?C|~x E]O|ߑ'ݱ8Rj(9eЌJVB-qjdԿ}#S%Һx::r$dCƗu+[ v ~E'}WdY2םo7d{}Z$cS8!#Xь̚Lka`[H$knJqhuM܎$\3 r5b8)Uabv 1 ,@meRT~Ӌtlh(3@uPW 0Y7 A%f % ;t49PS{Y8SBe}#4k3 &*ǭOS`gzo(hX m<#$BdG(Rb/J5ʭ{ʂ)avyE`kWוZ+>*sȤCs )'s胟F]z|4g\X3)T*ӒIV3*a]hvtw~-fc H׻O+FJ/.(?ܷ2 {*r"~2={rFQLV)P?_-.( kȫW䊨O&OF3&|sKmdQ_-WIQq~$SFc^ E9DG= ä.Tʴ3Y/W GA;-#4sj!68S |L"kqS +9-;M|A2]̔*2jP,iSqű f 3wQ,2e^˰d,=cSa1UԗzhPT7qOMsC" 8}p4o2J7Ŏ؜w.CI)AK(*O#h_zFWIFě`N20's(aG Ƹ$%`r]rLub, *':ΫM5٬Tśl[BP+AU:iccg_4>9f F3"$kͤƧ;1 v?2"/dߦbOTa+[dĻ}֢"'VaDa4H`hMqL:0q#äi-K.?.`Y9fnuf%Loj”VgflC4'{. C) |l9nD{ZYTYdn_, N" ݒg+d+|/ EdWAMjy NTQӻbh`EbKvmxrK۩38#֞'rrhaů8a͸?:h"{M7I5pa}fBHM$ 3H(2v rЀ#Y,OyZPⵄ^@EAI'8!SپItJ_ibco\QrbS\ѼŊr7k77c/ሆ̥E*s!S: H~:{ZkCKu2 3C`O~i"p?F-x_ͳG[k h o!@;-k=xXW乫JV[_N0X4y{{h&NW\;*jqpfz_zOѧg%`Bt`jf?/F{}Rw[BzE8"R8ZU^475ةl03{Bz% ^F ;,?h녴vns{eQ)i|DIKW(iH Eopsw~ź'[|2ʦ,_ߘI'o)fBbzSM\Jjj(JPCQ;jo(iZe]R(sw .9UoW=Ed;ܔynvFP8[5n56?Xm cW,-bwlAr;;jʋS\+y[Xmy0,V>Q'? ,ha~vݵ6=CCFj(PI┬Q; "_LFQ)d!`%%8$f[isa;qߥtQ '8*uy94t[_l2k Y]O>plpw1#`GTgހ&N0P_ADfzATW<o tޡsObXm,rUNg*!J EOx?[F/VxNffFMYj8S⸕v^RC>p|ϔHA@j l P=* ?ă'x1T~C9;rRRDw8O~AYFqfS?OUQ?:З^?9#(|lE5F.)%&FnBC]kuZnpKJz@ :xʪtY]3_as| XtCD M[bfl~+@\!2emDSF~@X~ZEAN gÜqց*5Ǒ=twZ4Jnj`͆}hI"i}VFQ&N&T[ͤӆIރE8m Woc}7-9ʝۖYO&Cx&=PI00zHV;ݻ#WM w+x@kEȷA:+l8mܟKlE)\F}Grke|")XK_/`]xB(6f+a"ᄽ:߶`at!@tptѳSfHg鐏=笛0ӺU1*Yw}ưvEE' tgl_dy4;rѠ<$1LA gesx#hsJ]O ּ֤&9 lg# >& J3U޿H9b(EOgpM~*;z)n3Hh'wl?ӺoVm[cqL4:J-W] }%JTq]%W։Wp:.J/v#5p\Z:QD+A5q kEY }edQ.T=كC6"DI[,IWiNzHZgYGc,g7k̪rɻ n>M.On[BSy. b|y ;҅'ŮmwK#!)oKP֛%BvAUmb|#8zbEn|Nd26~Dƀ EmB.w~Y:: Y Կ ,L+x>%HwnCg ;@ ǬA7mk1[p.Q:`Tn\E{)bә륰:0TM*U4[ç?hھH%ҫK]"4Z}8TZxsƠ͇0#Tt *[VߴUyw c28 T#BŭdBve!|^BB'nK/ zq31H,X8`3F˝oY.V3% ȹd3 Q-tΖZ#jo؇o-*8AН@xi)re41Ɵݫ'r+D#ZL`7:q=tx%4Xv1FJֿEROy1HmjhNn 0 НSVoFznZIl\-oFXd^  YWaeNɎ\`5` )/_x$&=noML)@/ *n`Ta+^~r(.x D/8&HJ]$ zn9ܘEI{V0$z%$4&{/ N_q-Ew"N^ₒ兰nV>J?9DL它qNމY|gU+ldH؄b$ꏶ3X># OCn Yɢ2vUlCD6/]4;( Bq Niz =͜,߄m3r]H5Jy7H ![-s:(aQK Q]S/BT$w[ ?:p K^+`IvlTq|U)FtΪ9.l<*87S뤲\}?yTUα##1~~Ka+2!HFq><|8x%?zBP+,s ad`:~d%s|[[nV17Eߖ)l vTs!#{V?U]ń3mrpW<쌉}5ئ?5E;e (DoOm7b!vp2ú)I/L8pd4=gBe͞URi>rw~|Ag]"1'Uwk_HYXUqZ6kkߕ]›.%ǔ 5lmllpհNWy ͸H 5rB2?Xu@f-=x8}7w]bʚbŘ,k+2GxGGox|WYFy~<0!pZ)uԡ ۪.iU+ sdZat6C}b F>D,OyX)eFpóqs>05&7(j.HFpBPRu mahCoT^K ͢((LfA~or] ̍RɄP ?bjէ 3O7C-鼂s XTʳ{hYnT9 ` *("(fVsQ/46$)g7ZSD E;Pq%F"qXX`pYvgvQR{oVP_eŒD 7B<3f<S9naA{95$ũ H+T·Vμ47M؞Ks*0~#u !lYs;vݥ$7}^ͳ6!Q|]>\.vJClHsgiy}t`aEB.;抇;O¤< yu򔛟0PK*{ c-s[rYsCGiDqHx) Ua i %/deTrŪRϗ~ZrCM}_>Om.D:Nfb`0rZ,yiԢlp]CyA99UW^D}4K PxRz#HN%kohAoq6d!7rcmvIB q /A >S¡Ӵ3dYGd[rpN6 t.@^m?z3@2I{tifӶzU .M%>[ QqPo0qCX㢔 0%pevnCF7vR;}Jnj>/(}< hά)xRt,xt[ d+q"| nզh*(CVVw~{0y!OW%,cMfH Nc\:'ؓ ᫳}SԷ*2wV{9˱?w"5Y4ϊᡡ<Wl;sXWW79g*2fzߝM} M ,(sth`hq8?}]KnH$!1o~QqpqdCHy~? 9pF64O(3ɌNZƥh=P ;B#;G;V{]]Z#UlK䱆7gszS6qi&8+е2a9$e=;]"Tʭ\tV#BEI:3&hbiYy锔~h⃢QVS,WQr<1GFՀnjyx= KYkObqG<$POC?HME~f,pKlp |@<=R WhxC>EtbHkÙ:|o1Zρ`!LgSL@0Qdg^Xy([A+~X*^1RUy9KźzHR%Xr~ R  фz-dxs7"xQJQn2YyGFp1$xnHYt`tڭY[N 'ogOVփM&(Dm;7]fTӊ@Z:$)mlsK6|]lʪ d<xo-Tzqr Y`ƻ$Ε-H+Lٗ_ t%_أa95Gͫ8mC') x<:*) Mer\j8ILhGNF̛-d}ehTԋˉEܲ_ ZQ֯FXRB Am_ߥrN8C"Lri?~F(]Ƨr݃ =,Zq7ױqc@۞RJP|Y@'*z|o9B-qHD!x9.3@a\FgM {9[016gKkjIo(E[o.Y5τZOS1EY_vD͌kD>=9sR z'7Yc61d?%q1g~tB0}uQxSx,M<~ ѨK)9z,Aw|z2_H19zaz{|a73篿[O;ipY֟kdBpSqZ:#XQG۪ۥ{AI?+a-oiK32B cK#(8|=Up1,0o)׽p[@t WzQf1vk uj8Քt:a? !)s{M$1:^ջQtU%  $ThԤ݄/ 0IT ;[?ǯʕ2EYZRU7ΡjOk ,ֺQCL<,79 I+K @Vۉ9 3jɸs[J-N:2EB1EZ'&}$1r$%FeAT,IYK55@dԿpso)A1L 1pIHl?CX9QynR4je#@Ia+=XHYĿmVu`55-HJ;EiZbЖJhLd6AHJvJ VX΍,-j%NDQV֪vdiQ#q64i"lֺ49:&> l]p"wWyuP POC~ZwW h!nV忔7%e<|BE&tg>"@ڹ'y,ݯhK57[Py~˂o.KeH5枾[x[YEݖ ھF|VueJP9J@k2 s?TЄc4X`1l3#, i(3;hJIg S=e{TzP(!bb-T h.3k `&=[c,nF>V@)04ҿyNh{ ޷S~Lb j47{+ [Q j| 3n>j#TL7[\`) ~&ĥ _Te/d H&n ]֘ޒ6gVsJ߽1†_`;(kRE>ip IrVrnph{`1E UK+ g1}gǾ7xgg"nר.3agA)#9xL#xc- WaSh FYo*R/\V3K 1M-|RY$0tu^ɕyM~/Ѣ +XC4J%I6S0l VtTA *)8CD97} .HƑd/W' Y lGvRbмş{/wk&=#n 5qZcL{.ޝE'#1e{);DZ\D 꾬oU] RwE }l^L<Ñj:^8\O5Rۨc3lcZw=/ >ـQu`+ñ\Q:D'(QmnO =oN!@ؓ<;*Ьm^\2/.\.6m,_+ Vynz2k$Ѯ[왟pYtn1_u&/a`t9If 1(rZeӢ#@΀Ь < O"碌BLZJWK gۊ=G+vSC\ Aj9P}g$:Fs5 [夀iZ4 Q: qV')jE._+ ;T<*33nK}D:ږ{&J *)SZmb =]˙G͹_sσuԠ(/q]+=5GZRVií迸g/?\i.vxp _:x^r5/? =R4O Q5^'ezE Ww艨5=O/%K&SD3;(I)[.<J`&Y{\Yo ek7M* e=0W?2eQ}1X Vw7(& 1-m୞'P:z56c$}<=prB;/ôW7'qՈ!7)#iʒ |4b,;Bd =R] p0뮧[j})nƆ'r ՛fX[Ip u9#^inٻ\' CU^ (fC 4?9p544Ұ>* heN .ZZ`^6#,,txYatɮEb=He:}妷h R~9(e7jls2"-[Jt'Axhʗ߲wŠEZR-Tl`VZFYGȳG_GpAڳ*Jؿ!Gǰ1bΦGh 质Gn=%AeemBDʹ#29 iۆi{E;ܝEezR"6|d"ף2~ql zA[-4-7MMH)Zh|E/x4KΦBOHۀnH7&͘`ctPANTlAz(d$~,m FG'/Dr-!)HD}f}z!D.n?2)G{??I MSTn[`D랰ۥ^"?&(ӗUcC C!_$U}nCd0Vſ6=m,F.Q_EvjQ o4.uI.Bg_gA(n3򵙏\^T#7jTp_709P9<7q[(:,$r3H^)Cͺ w*~9oh4vi8!S fM!Vvp>65M5g؟@u''IIle6GB^yP(`Ŗ `e :=C];ADE9d.m?P&S:)lhf\TM8,!ϔ>qFS^l{-A q\- Ԗn}uZ5鞼4sx$Kz;2` @#U g[wzR. #p"*iPVYO$Ǜ΅oDdAXU 8qrT ^Dž)Gh{ڃbs =M bHv<SGz8ѳk@6P?=]w3O>D_bPhBb~aT[Kq$|lUFBΆW4mK'jbSKS bl1M8EHk?l-b Pa=քo]AT'tt_C?ܵZh'# ) Mʡ\3^}C##֔GeM*@a_c֫Q#KLG1v7hy h{-&*?+YB_I3}W|<^ \%"s"zљR81["8ww 5.Rs ^rΉfw|[$9agPj1J`dr/;x?U2l RyeiRW;x%rd37Uzx= +r_y'ӑblGc;5gtqq 1[IOnztBJ,^@f_?N lY4O => _D;Ha> >(WyuTy%"Hs? 4%_gN)kR~ qrǤ%ľI'w,UFW&Bz ˇ^R8HPk>"5$`@o* L뉃OW6Z d {K3]<lf]_͆ n;'Db2#4?l7SK^rih2bY^;尦Š7tYo8>e+\e@ ^e[1%?b;(›J̩$2 pEY#&OjMr6ɥ-d|ҧ ` ˄K`ӷ>TƃcE(@L3N{J6,j*̢WW? b 6(xw UL-XɩЁm9-hHgnGu+9UDKRy!:`]:A!_)z؇glKp]|?AQ!"f}팃&{e$Tmd}ѧ~nNah!3a \})sU'9Cq=]kti_0ΔDXTi7?viGZ̨9.V}< paް }y\_oњn;VmX]0%! >͒teYp"!\ug 9zQ=Ǐw7/Q2pYt0]|oڵUuoS 1l\O!zyv=ƆѨ8Bڠ0Q}>̽EWNU$J;G;oh4X_`Hj}P-4, fv0 ;Ɲ)K[~o%fL740PSfR*oHq0auבQ՟7]8ECHA o5)ؠ%% Wq333R`G{ 72 @ &w_GO*y*OYoEMߐ*uAU7 aOl yrx˦ N&|A sP[@mZ͇ؑ39bC:c xN0~Og-UH-Br d "*Б60W2N `]}myC __]cWJ%F Ѕ9wc,sV_Zl!:^('jѮH=4ppS]EKNSj,Q},@ڼG>~nİa6OsolqczsR-Өei&c׸$4Nj'"FKzɒ+?~;􋴂58Q}iY' hOl'|;nzf.$-?/zt?FyeB4D׈Y~ qYb_S& eI8l™" s#_m5 0m[cڣ.WG/`w*nTqӅ~a),/xOW#փM{'0Ʌ(ΤX7kvԖ\%)Eu/9F!d=oWs#1=63"Sr\3ra9T*_{cklLƬ O|n |݁meI7WGGꩌVMm o8,\grNh8}#MpfF%ǕwP|Zќq^c,h:K:R ,\d*;UX?@!MLG6G eȑƥVu]g0'wl,w%B`j ;/v1"c7`0`-IUhxȹXئ=:u U`ӱǙeG#'r K,{ao2"mex!Y!9mP!Z@9Ք4+jGjw )rӲWx_vot|IRr8uur>z|")dc d1rg IFw,p)tҹjSe|=C/;tq_P_!}Ԙe*1ʞ`('-Ȩʺėhf]uNɀ7=F#C| S3- *>"ln ebU78*oe:@-G1HhhN R~oMQw aʙ˿>A[/5)Nnsx`8Q~;x1t H[ 9wS W# } rOpʿ07S KMځt5A=̽8P,kH# Em|DKV^-'}HlӞ^Ksh$]/ѧTBܥy`,ԛF?0d'N8)v\Z a/z0 7rN,'"?4oWVN.$ѠyP]6at((:rr F+Yd_Bcٟ`?[hs>\g(`v /Cj-w 4mvP7/%AxYMNE[/Vw QˈY" .،p3k%@^fM}D*A2ՏkighK3l1K:Bk6R?S,bG)FԘIf2,Ӱ.f:G|f,?;]'*$aRBŢG`G!H:-eXw/Ue [1hlMd$q+[Bc24i F7r ܫǕQ'Z_akuJ@L1)=n$~%So@uc,: +-. μΟ,"~`U@:+ٔq.ao^/u'uU@pτE_ ʨLWQ*UZguqa5~:6к>G'SOWkˠkE09H.}>UnȲjxFTPZUC eDC-^ Ƙ*? r ] 8T;|N%WEi+0l`}JO/sċ.P+%ǝ8 ,Ƅ!Ŝ94)?Ah Y JQN-?thVPHT;|<@4<ǟ1Y7-2bk U7%Iy> o#?no^U@][9 $/)/K*2sch=@}%.@ۗKQEu_9}WsIRk8cEoٓeKX(r{Ov]Q+!hZX}r}SDP耢4FBEp=5k4{Eۗ>XmxrPas[k*>$8ip؄NO!G<PI=jUy+{/Q6J#)vg@!b-TFJ'۳oDtd9h&&Vc$ڲ>W3[ϯhoᡶ&eٕ3[ MgG扱+YĂUX2d(n*Mjq}n̩)8T z~5: z"8g:11`vrC tà`f'Roޥk?+{ dXaa@dA;6a%JZ٘*? J_T-^=-qjP)7k]jh6~lEi Ywʓj.ToX~>@8+"W n+ W]9l*&ѕYY X*dL'%vTFGjHYMqrz077l퀁0-Q!f˃HT8Ď̰vCS[V?wsyä=Βۙ@9P{B )wLPXڛ=}W3&A!üVz<_$AF ~M. xE1銬ю,O`Bo>6! e3=G,ΠB [ꁱ}{.~}o4P&͕-f >Z 8Q2_\ 0iWevTD>$5d§?Mf߲#Ѓ Kcʧ׊<՟Ba(yB_mC.݇~ם>H>oCeAI4[EKZ_sg))#x &=tS1*ҁx|E@'fOsC8ԣ.H3p :tj!ˍҢđ0ޛ_n!n-U7F~pv*siN@$^g3 ˻E"?{pऒsBR, PiOfnB=~ =9v#.>Qn' vhR84zBWCsvnBd^/tZɮ!eHq׌m8y|W(G!!R濯¹EW:ٓ>;ڌ|ps20\a0ED^1U2('J8u~y/sNN, R(Wr&kDEP`{Xyy#FKlraIr=c~|x#<« MLL=zeAk5qIG"̯ƢEq@% C]-u{^'0¹ 1`i>E2uI(($埈&Zx)_:5 hoP.h\r4]1>X9-]$cRӦj ‚3 =S_Vߡzv )W ܠS>YuԂ@VlC՞qƺl}r >whեE3;i@ٱTNE;Mz]`SqKH0AkI9hhe&V׳OJms;I:z>9 %.nPz~& Ɇ1)jj.$ޯ+jg)3/"&;.(fN 燰oTbҊ,&:{vzC6f~=70j s,ϮLbV\\G)--rd` l?83B7âeiX MxA';޲mŌ7'j 4f*ISh˹s{ ޹ͺJ^:=-9y ~եg2qҾSϩvE)C-ԜY[Pmwl,_h簃u`E"C8}GeJS65'{ZN[:ܐ+)-[d' #|(1rP,;9oes}ѱh.Lj3Au&/mXf; r( $.Pl''j"aP׏t/ S±Xϊ3L{w dq/tz$!2 3De9~81COn qo dϣ]_@94hm' }A7B0vF;ۓa6G?7ZV(w[+]qדȾ-ɋŅSBG77ic#٪c&dwz$eV|`u-aVN)$^%0̴MN{\ Eԯ^>SlP*:`?̸vIMy]CimDG'#P(>mL wG,.ft%Nr-LMٞFc(CM墚JG~^TB]> θ o2p y{mh9)cL%YlMG2`t/$2 vdD6xM )*b6IJJNz6fIAs1&gǩ$u|!>ZRv\OBMo lfd&r'jiL0]=P~1MM:* a{ݣW4uwЧ|H d19m flerI{[?\Wd qt׆wY*?zz:`fJ`d*,9&:& v8<((Hws~^q 1^v̼]y @pU y5ZI4'[㣦O  jVeMfafzLp'fvB[b=v΀FbыV B*#΋ȉ!KsCrA-y@JM_赛֘h~֧+鰛we9$|)'R #Jd4?&S&"ݟ!ǴbV_ y'$/QO%KٝN@慨i oȫd"iy=@ m&k-Y AU%k\``\B"uMФ bk._"©#70HV:f&<Թ%?״_1]2 \=03zvD(:W{VZAK-JfZ 1JShV˞ӅbkXQ .61Q]my?9~6E V.3J'\}t}/*mw1Q9g;TA,7kM3ȴe9<0ٞt%kFVxCEˊ\5_d؉eKd݄;? %\TrJ |ofW|:p>}5pզr*:ɕ*jPO~0H:#l·ݣVͶ %q"Ӣ*wLBzDanjJ6Y)mttW|[{[u]bRc*;g2C@- L!5aʶb1d1Dzê)纵ˋV:kL?ַ(Qc#ɾ,XT6&~w~m8ŒǺ!Byuf;x,l݈k{(%v BUNm<{DFbX*΁.K#Scy-Z BuJQz@8.t^3e08|pW 7<[1O,Be:7IX0ԑ*װ >*i2e ZAhRϛ=P/ Z鯠c_^#q+0O>6 B d[O氽t:pYw@iu]7x>ߟQ"+"~:q1ez\.ftj}'fS1&F̘OGLXl,>ܯ*YCȝIK=T}x!3\krlQl!A$:L ؊FM=<{fq=m uR: 0󋚳n\# l;uϏ!*A(AAB(y!, +]&Tŭ`U6 (GܓX5:9N\7{n%?T9ۦ_bQ%#h[Zk%`䥥*ynۭi˰ hr)qTnTk$4DrDEi^Mk*]\K]HGgoG.!b!'xcE_9ˋ,Ls-X!c_4"h &4 ڷ$V؁h9!CǘmaC[ JЦ32KF4 46"S~&O?_ܑQWޫaPejIc=31z9!cTALu LOa#ڄ.PvrwPe2w$Ż[ijk`" oEp@Q7to]n鵐UarV,\'%=Gt=A"WnarD!7-#1V!d \c"eVg ԍ@k{D1rELzƳ3^g&&9; Is5K^J1-@ ^{+:fA!^bCWJi|2/ m Sf~ ZVW:ßK_`W@h/m $ ¦M{Tj{5,S> :܀I&69Ge)2X{×7Euz"*yNO̰*IsF@L\NCv/_+FbxQY,%g]YXGά`@r6x B ۙg؎ɔBg NsNƿ{pZK%22 U^ZYL3;9y9cVPLڧ{9YgI޴R44a[:qpіN0t{)|LcUaߴ _ ǥcu?n8P}jlՀ!IpB$O1x ݦ8]NZQ#qz1(/;b`W$P[ϻb5WW3籟nuF97(f8AeHvBY=Mص,6MP#@anSB{yY9]LR.zxa!N@XUkv4OD׃CBoҊ^qz0&{zV(V?#h 5ﳌھ\؋ ,K' niC--4-g1ȂDOf%ƮF0t'&F]Z_~vy+۾Qf|M!SvG[ zLV$# Yc%/ SaPV x&~du](f~>`9A쳙8Q1.[cpK킲h~T&uj0)ke'9 z9d;w1hiĠ +fY@؏]`% [T0[.;}N+g n$CKK" +Xu*LK,%:0:æ^C&A /]Ğg\mgyӆ5C0# M9@fBHEId ~ 2^XtK~I;#8|h[#Ւt_\TgCzM0tHw/] VL <q08|ޢ~² w-,WhVm>i%wP{<.+8咔X{i>مV rƴ𓞗qQ5ys%#b398!a#׌&Jâ8,O&j6c%u0?HѴ.60$jbeyhVc>p9w*1#mWZ Lɫm0hD>EKz@ hR]Kn[&¥F?(wM&+~ۏ@"oAv:|X ‹ %ZjUP @Tk]Jw[uߙ߷]i>b&]SRe;^Uf'#p42o`%Hr)OhU1 RZGkx k hM;ޫk4{rZ;5;$$ aX~P7}WqJ; a$pM`;2:GV,kF R2|ۛ":JG} F_Ps3{nؖqT 'xe1lV WkyvA΄wS:?^"RkMZwwŞQ r>Oj%Us]y>fuYDe\!P~d~B4K 6p+XUF&WT)g4C qCE,oklqS& gEhXKDh,jw'i.|ɅYZ]n.2d_vE@Ѡ{p"@?ذAwe|X\L0M\˒2'ƊK q .gfIRS9_N!;$'H݃B`MI$BQz?*Joɬӽ n7$/Lh EnMT${~>;m>'dA~ -ec:5%|&d\`f۝!._dUlkzɍ1BJZ֤1ې^N".H^'eDN<{ ,,0lW=ytZxF)@{zrg=\K=J,-C՟2{Kh@4 " aAPۨUUfR}{uL>EWNK*$ÒTbz̠uST6[ F*y\\U#dyNք~V7eѓыy'Zm2U8l=QǦHzϛ%&6rRCDhg"˱<ȿ .;|?1Jʃ w:wg@i;X50x2/{NXE5Po|"Y5Gp9r.'2 wgܜR8ϝj4br34L Bh{n'f:// @xČ$yڻ=Y0;6Pxhj')tƖSF9t ѤqjE-*BW"TB瘕ֳy Z6V<2>@/1dS;o_FkD5Enbh&6Z``DvpӨLQe9dɓ<,YP@jX2 ncβ_&o;2?Cñ"e4#o*Fʦ9$-g 5<8W,aHG|U ?/?iZKKs>MfLNJN;28*Ϣ zjoʢXJD< D -^?F2)p6(}.L;˛-Q 8U ]揱o?< Uv֪]A}6ʹf}+c՘b<6$ Ǖe>ݓ׎+~J:KCOC6VQ !7cStf-^?@n{veX?M\[9u_y$zX̲ý=n׺s'޵'\2ќp YxYV4JOZx׆I߯v#EV&m\ o:w'rNIBl%; `39I.;cp҃K`NQpD5/ʂ's V'x;DByyp,$KL t񅢊]Y`!=ф:96Y o$bJYQk{D!s]L(X4=qOS:J\w_Uvqd10ٙ"Jǎj+{ x7WՇce \5+2ǗWp/dw@/HŶFu,S5!N¨rTK"I>Wʼn])[]P3`yb~t-VZh>Rfj#dy4MjXj~d15 W 7Z4omR9v!c(snNgA 6'Q F7jC, Uc&78?BM~gd]+!&1C'͌q +~"2qvm0A7ϨS\`1s (yFg DEAHωF=wv lbso73F[ۅaa0²iֲd{B䓣7[J19oN'{~k3GWӖhUJk"akUya ='Ʊ~T<֥9(rʳ̏)o !! 6,|BrLLj U20)\n#?c6N0B`y?Wk(uK9JT oA}p!0,VY Q/,&~:{*=;7Gb\L O;Iև›rm]Xy+Ns9~`BlyysEyPo^h߲s *]%!F}D0AUBM>jȿIIZ3+͢1rKazAĔ$?5&Z%FaWCpzK[$m7f6Uj6JB[ ~9C:Zσ hmZ] ҳZ6qPzIX*[?~=J(A=e(Oƕ*1à=AP#bqKFXRB ]:ןx1v`j;w !C{w3?E4hRRmoEDs0ەD ^ 6 uwP #+ `f(w,K2Bjˊ;IA u1a%Ũ~kQcx LBdԒfN/T7#gY_%'5"tRsFkuD QC`+Bd4/_2=a'ΊHy:m6wwRR7 IY/E*ZK]!wM'GY51\6^q%haxncz]f%w4~'h[&v R\,pfJK[ifЩJmڻ=!_UZ;T!2dQKG߹axO{IU!_z:YpV!䐚gJ)FnqCWK,pX_QҶQhV/ΐ?x0gφV;*n٥6Ԅ )dp.Ҽs^~j}̇ԣ':竎Sgd[a4aˍG/J؛1s;V)c-"J~(cs# W(>͋R,oaQ]1H ʁϚa$DG˙6h0cgfQm?j̍pvG9c32xkFq !K|`>lz=410ZCpsU=Rg2nh1? ޙc[A$KcQ:BIIKbP+h=e}/pF3n11XgI߼HjA TAX*0fWw &Eٔ ]\D:z)oUK r>ٶ ;$ aAi81]ϏvS2flmTLo h(-K݊`0$JwJE}_0 ׈p\-S)А(=9 GVN6'&Zir,煅%Ys ^7Qr@EjHsg =KrrSJ^#.M2zi?|18 {k!e^c䞁ȕ/:){7jT& C־Sbn߱=>f"% dqELaA/%R] 6+7SUe/$ 4<4g 扅YMq$å r9)g#0\"m#Y7^z GU9o7'xd5s.XਡJ5?ҰFu0Lvkh.Gx e RmT#Dn=QuE;2uc~ܹG9dIT۾RLc _":Z#g^J> 68ڞj{uLjT2rQ-nEBA:!fB{ꔳmtJ0m—]_B9skK4PwO! P uIP fruhY<Δ7=غH3٨ɾؓ%nїN)h\ʉr\Pߦ_mW*t77}#G Q'߀:6z)NW%ЫޕD*gwcz >~[ҠKd_:eD w>wynNݥ",VQ?0'Y)K0F9WI=]?6 LpZ`b'b@_~MoARR~xn!7uھ|*2_yz>F&#|-@G7@Ѽ(]eϬE:QuO(#ROn1g G!'P,0}`\Y5HIwΑ˹W˕?VHɄcoxl( *9V>HbnÛΨ]a K5 d D :>K9 c=## "Hx1R`y0[淁9M`z!X H Fnhtm?g\<#CK0yi*5͝FaS妝kWj"kM f+Aq p:v3<oDl1f_k|1v|} Nffm h SZyv+JQ;K)Jlk«<^ZG1 Rq:Yl}$AokrVjIOuD fXeFYh0h;E޴}J,!*hl"6%jZfYE9OD+7u >(W5+a:~ڴb7plZTwkǠO=F3콶$xNP(?Vy9]|nMޠKtRaDAEl>.+x@!ԺW=ؓ/u TO '/:*{*I6p,ϴr:KH(x1htZ B>4ݢ/mKtl4$! 'qk:{|$HMS_p- 3ŗj܋X϶d7e=QvK:7٫ڔP*zӢӞy"7Mu͑T7s5l_j MB|PO58u(I|qZܹ^Jg߭z15 ݩͧzcAk; Ee9b"şunzP I@&*PTY̳KpKhsCZC\={b/1IqF-B[`TuZfO8yUB֮Þag뉠3ӧ`c͚i{:lW,հӿFѓI6~ZbYf>$7ᄄ\6P K&eWXj)]qG]z:eM" }9Zhkq֜]ֳ*>O)5$U`)Ƙi3Hsc=pb>0t`YrPQ"N;`OǮKq@JH\=>KŚ9X._mRd/ zaEltK>b;3צnccb&rJ9U@RY|td8oNiSIK'VI e9AFS @]q Qu` En8~|ݧV=#Sֺ͗6e@!`Ӥe޺=NU3z]˦;osm/@Icg?$9Q2@!`q=DG7T4Q];fp=q)ކZǥmQ6F,fY*m"Uxdk+!Ԁ0xz4bdxQ/0^sX\Kuj$15ʓ3gSG? 3#l+幔uNaҦS.$uesE&zAX8M"n/=KD `z0Y%OxBޗFwء>/Eb o S iXX$V횼1`µN^U伫z"3`7sM7z[rlí KAM,˖Dp?Jl䬗EkQP7MǕ7*kmPuH?㌁(L9i~+1 8>YD] x;1%?q8H2ugކ#`;GEuVE:ثWI;|^W=o*:~D%?N"WP U13"`ui҃uqGs+np kD^Gqۯ)^ =ޟx !ђ8w)3j*rϻfT168#PrI} BݙRñGmVTy׌USi~scu. 0jCs?]qNw!X-{$~HO̓gt*K2a:3[$FYO&{#} M8\fOg\@)/UUu!x4?`rt/*Ii-P|&ɩ_B=1O>9K3bUrxe$++(vxx}*#W[}G.n94aj\zzGt4`D1 " ]E'֢i"ݴJ2)M|QP3T< nEC:RgB{\@]ӋSЯ\{50< O7©HD"ĻBFѵgu5  MSd~gN 6ȴ`"E~LIr:ƛ`OfY (jCsJ'ph#^wR7[xMN+v&,ɑ(z4DZ=]jB-vFw$O1^Wūl*lD +戧1tZm&h4O{ecyP7‹NR !~'K=yT) Ȧ\Xl>\SrꐑZ&0'ԳPl4ƅt]JIm7@e`E@dTf fZUrZ=Yy#A/tJ? K릖Yri3k$)J{k/>ۥea`pG"-;"&V+TSNqeM+Ӽ9}9no_0aSw~M]Q2#ݝP#-$R֋DkV o:f)*Y< /q NF`/3lܓ6n" Bb+wYe@B5 ;){xq^d͇;gauNW:PГ61 ||L_޶0p>8K٫^^AEhp_Q~ëS<{U\ `mk^'"XB1wMk[tlJ0xqűt6iQ-v<TYйl\Z\TQ}5a7> R 4lK;^7vؖomԙm4&F[N,mUx k'Q0YF^179x0b YZ