python311-firewall-2.0.1-150600.3.12.1<>,4hm6p9|3f\RR麣!]0j.g8>>%t?%dd ) Ktx  $*4,  $   7 8;?FBC$FF0 Fd Gc (G8GQ9HQ:NQFG4H,I$XY\]^K bcAdefluvw(x y"z%%%%%`Cpython311-firewall2.0.1150600.3.12.1Python3.11 bindings for FirewallDThe python3.11 bindings for firewalld.hm6h04-ch1a,SUSE Linux Enterprise 15SUSE LLC GPL-2.0-or-laterhttps://www.suse.com/Productivity/Networking/Securityhttps://www.firewalld.orglinuxnoarchnn7070oo޵`8   3434!!xxgg 9 9 B B99""~~ AAdd E E ; ;>2>2GvGvww1$`Y) 'b 3Wg$ <OOZZCCEE**""!z!zGGYY==,,>>``<62.&P /0'Og2qy?hfK $,J+}}bYbYQQhh2*2*  %%bb))2D*9I u_ȘYA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6hm6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855cfd301dfe612ca9c7723f3ada8e67d6287703a601e4b5188c0016b233595d123cfd301dfe612ca9c7723f3ada8e67d6287703a601e4b5188c0016b233595d123d102e48e01c149aa6fe1ce5526292c969d44cd465601b7922c5a1939cb87f443d102e48e01c149aa6fe1ce5526292c969d44cd465601b7922c5a1939cb87f4438df677b00ac71475bfaac5d779cd31426a72fc3a0365561d044ed5712922a0848df677b00ac71475bfaac5d779cd31426a72fc3a0365561d044ed5712922a0845ecf7d76dc43f428485b328f21d8d3a126e4c4f35a701ba5ac5b5af00ce083195ecf7d76dc43f428485b328f21d8d3a126e4c4f35a701ba5ac5b5af00ce083190bee494bdee24e2facf3313d20b567512660c6b8375fc785f74d68b0b3d64e300bee494bdee24e2facf3313d20b567512660c6b8375fc785f74d68b0b3d64e30dfa1c579b8703d2dd8368f81a07f890a3259c3cc10492ac46ca20c36a2742839dfa1c579b8703d2dd8368f81a07f890a3259c3cc10492ac46ca20c36a2742839cffe17de438c0bd4e11cb64b9d9343341d1a145758ffb3d8557c6598824180ebcffe17de438c0bd4e11cb64b9d9343341d1a145758ffb3d8557c6598824180eb63a869d3b08e011f13161b78b81dea7c93536a8c9103544226d92b96a29c5d7cbfc81df81bac3755e09bee20ce08a69f6ba6def849fde02b9256bb0cc499799fc5a6514f1b919b828422ecc7828e276d293e6e029cac11a62f506131c7f48f6b006f3b827353f9e1e521949f8fbaefb84196299496bf5e64c6b71b56e40c1778006f3b827353f9e1e521949f8fbaefb84196299496bf5e64c6b71b56e40c1778badbecf39fcd922614fc82ecc207d37b9ee5e685763749b970dc1fe8dd4608a8badbecf39fcd922614fc82ecc207d37b9ee5e685763749b970dc1fe8dd4608a806dd28a10d8d2596f4b137f25d460f8aa962aeb4b564d059041d4c558d66e6d6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855da39ace65e7bbd2606de77ce6d0de1b1c0ef88c99dab294c68f61015229d0378da39ace65e7bbd2606de77ce6d0de1b1c0ef88c99dab294c68f61015229d03783aacde84bbd08703b172b41cf5a56409692e7919fdcd64bc6ff86cd318bb85c53aacde84bbd08703b172b41cf5a56409692e7919fdcd64bc6ff86cd318bb85c5de4f3c3592160c2dbc5b1f4c39e460aac979f2ea04ff282e2403f281d3534ff6de4f3c3592160c2dbc5b1f4c39e460aac979f2ea04ff282e2403f281d3534ff6bd2ca0a3e8c8f5d1e38276a5f52e44b6f617c96a00e3a012936ba27ed259290cbd2ca0a3e8c8f5d1e38276a5f52e44b6f617c96a00e3a012936ba27ed259290c538d499cc94c7c84058e46feb58179818fdb0a44c96cc7b10f7e128219b3dfb2538d499cc94c7c84058e46feb58179818fdb0a44c96cc7b10f7e128219b3dfb2c21c974d332ce2f060ab75f16a7bff764912bc757047e7699db8bc1b2fd62011c21c974d332ce2f060ab75f16a7bff764912bc757047e7699db8bc1b2fd62011ccc1df50c18cdbe2b567dd5b01b95c947d3584c29d29a83dbce91cd48483a4b6ccc1df50c18cdbe2b567dd5b01b95c947d3584c29d29a83dbce91cd48483a4b651a26b59bb47f3569f242a6ee4c0256ca71b5886baff20658b98a9233021e24951a26b59bb47f3569f242a6ee4c0256ca71b5886baff20658b98a9233021e249c7448f91b012d66c6160f4beb8056affd85246bf30b9fb1ab584e1d6e3e3aaddc7448f91b012d66c6160f4beb8056affd85246bf30b9fb1ab584e1d6e3e3aadd3320e332a1f4bed5aa1c749f623639fd4e329e49de504ba3fb604444db85fede3320e332a1f4bed5aa1c749f623639fd4e329e49de504ba3fb604444db85fedefa3c7b5f0104e450d155296d7d05ab82e2750c98f35bb16346b200dd86389688fa3c7b5f0104e450d155296d7d05ab82e2750c98f35bb16346b200dd86389688006eba884f4d6ed1fdc6a956096d41c7051af29a8326edf86d4addd10c8ee8c1006eba884f4d6ed1fdc6a956096d41c7051af29a8326edf86d4addd10c8ee8c1c582748d3cf740b22b6f7e4e8d9992d74cd09cb447e39da885d7b8ebc5c2758fc582748d3cf740b22b6f7e4e8d9992d74cd09cb447e39da885d7b8ebc5c2758fa968675c572d179a2b689210cee3d63016a19213b3dd21739bdb2edbd3d1f1cca968675c572d179a2b689210cee3d63016a19213b3dd21739bdb2edbd3d1f1ccef17254c4c9e72636e362a1563933174f2f7c2a03bc4431a6eb2757f25cc257bef17254c4c9e72636e362a1563933174f2f7c2a03bc4431a6eb2757f25cc257b6b52fa4ae9cdb844238bc6c97f4c268b79e8ca8b860d8be55f932647f081999c6b52fa4ae9cdb844238bc6c97f4c268b79e8ca8b860d8be55f932647f081999ca1973631734a16735e7a03aa98b55b0933aff647f1f2bd31b762af082a9ffb59a1973631734a16735e7a03aa98b55b0933aff647f1f2bd31b762af082a9ffb590b626bb2cf76166cfe8f769fe3eb8dc293b46f2f8db8012fcf01304a149e8a0f0b626bb2cf76166cfe8f769fe3eb8dc293b46f2f8db8012fcf01304a149e8a0f2caf055991ffd23fa9b7837ff58d7ab3e681b6880dd695b903ddee1809ed9bcd2caf055991ffd23fa9b7837ff58d7ab3e681b6880dd695b903ddee1809ed9bcd2002147a1793bd0dad6119563c2eff192ca80f3d3a226f0c7b917a5e1696b2972002147a1793bd0dad6119563c2eff192ca80f3d3a226f0c7b917a5e1696b2970e061427cd95991f8e87d2805dc3a9fa8e47678af8f557f54260c73f18cd84be0e061427cd95991f8e87d2805dc3a9fa8e47678af8f557f54260c73f18cd84be47d8243e761623bef3ce7de467d59cc7af74859adda164d26af6459bff3ecf3347d8243e761623bef3ce7de467d59cc7af74859adda164d26af6459bff3ecf33661121ff0a09edffa61a06da9e5e721da79eab2c6e421d6bc5383c7c95b1bde6661121ff0a09edffa61a06da9e5e721da79eab2c6e421d6bc5383c7c95b1bde6b7d48e90e453bf3bc67d4f5b3f281110e9c13881f23c4b7b08092b41f253cf96b7d48e90e453bf3bc67d4f5b3f281110e9c13881f23c4b7b08092b41f253cf961fa12b99642c63486a76a2ddb283cbc09ac73e76774f38f550eb43c57edb7e511fa12b99642c63486a76a2ddb283cbc09ac73e76774f38f550eb43c57edb7e5128dd0dfcbb56b5c802fc399a5363eb899bd77eef4ae85202d7f9d01b7ad2f4c028dd0dfcbb56b5c802fc399a5363eb899bd77eef4ae85202d7f9d01b7ad2f4c09a71a59e95e431c7f6c314ce1be619d5574c731640a4a1a3eb0f0a7b39757b20a191b822ce8816819f3f5e05da9eb3d8fbcfec8d5ef551d79fe2724073259bd97f14c6f1ef237c6a2e8e55db01288a469add81bce955e5b661b4f6c0841af848b81d479d9dfd0aea5e1ead53d9cb6b67aa2a71a37c20246340db7330834f8b42174232b40702992e2abb77f185a78954271891336a43ebf2829d46aa93c4c6aa4fe976b93e18c8c36b3e8f0de0dd55ff96304094f0eece871efcf734aa8db1cc2b570262843f48cbd030d4ed8e6d6827e9dd661a930b064dd82b6277e8f411a9bf6f1be40bdada1c06eb773347abd8a04c4bab5222001f6fb17364c396c729706699b17f30bd19c9825dcfab6f4c2c26a6c939329b232ab2832117739c0073e1433940562c34fb5acb69937584ec10aed1a9bbd88f43eb568e16d065802248afc2a9f434961d189e215f4be965ee6b66e006b8712a7e2b8aa389972da51e7ee5966a3c3ace6f43f5ce4523726c2c7fde2070f22b5d5c24b67b92ce8d0e58ab50be0403376e263e7fce8fb637f1011a98eef5b440579da8a89d949d2a1146ea908b1383b78142e63ccbb58270032d876622531824830027fe193143054d944597b9451efaa86bf029689aec062a07078c9490cd052a6332e3566686e965ea33cf93175e8bb77e19d46143ec1be133a10df0e646e4775b781d539cb07f269b1665214ffde9b8de7374f97cb143979ed21bed5f098313fd08d6f9a6e1c502b12eef39d05eb9a81e7d9212202fd3cec6f27f39cbd18a662172436402dc46675745c53d3f36eb905009609e43b942a02fcd4eb27ac01eeb69d22e2f11dfcc8099223d3d3f36eb905009609e43b942a02fcd4eb27ac01eeb69d22e2f11dfcc8099223d03b64b035cba6492fb49d12b03b36ac4a5cafb07e34cf453b2fd6ed925f4645a03b64b035cba6492fb49d12b03b36ac4a5cafb07e34cf453b2fd6ed925f4645a82ee1021131c7baf58d99d7e5925a49439ddb77c2bdfbf698026d8fa3baeb76182ee1021131c7baf58d99d7e5925a49439ddb77c2bdfbf698026d8fa3baeb76116239725b3e77a7ff7895608072d83ba17a6adbf11cf35a2469ff1454776af1a16239725b3e77a7ff7895608072d83ba17a6adbf11cf35a2469ff1454776af1aa61f148447a36975455af79f1191cc57baf6b89d4767a790849bd9e2f1221b59a61f148447a36975455af79f1191cc57baf6b89d4767a790849bd9e2f1221b5998321cbfe13aa70bdd37280e673241905998f8aa9b540118bd157d7b4948b9be98321cbfe13aa70bdd37280e673241905998f8aa9b540118bd157d7b4948b9be59741a75a5aeb4e52b06f2cef88f5b861b636b616e3abc99b1f9ae5c8b14fa9c59741a75a5aeb4e52b06f2cef88f5b861b636b616e3abc99b1f9ae5c8b14fa9cc3ed629a54bf0cc7c26d0d5e83011b89c90f4ed1ac92ff98bddef4267db0cec0c3ed629a54bf0cc7c26d0d5e83011b89c90f4ed1ac92ff98bddef4267db0cec09c6048361b4a2217190b52931c0799d4e8af6367c79d0aa1805aa22269136a059c6048361b4a2217190b52931c0799d4e8af6367c79d0aa1805aa22269136a057de1396cd9303893566ccd37647b794f04b53810e7e3316957385acda59cb37b7de1396cd9303893566ccd37647b794f04b53810e7e3316957385acda59cb37bd3c3f01a9fb36e23279b5ad5724be19049c7d704a9c06d246ad3f7accd0e2cbcd3c3f01a9fb36e23279b5ad5724be19049c7d704a9c06d246ad3f7accd0e2cbc708674559393590fa2b94e9af81349b442b8c82c3889e7858419a6478f05aaad708674559393590fa2b94e9af81349b442b8c82c3889e7858419a6478f05aaad272ad83a582db90209604e3a35166329801c43f8fa9c14ed126bf8443102f5d6272ad83a582db90209604e3a35166329801c43f8fa9c14ed126bf8443102f5d637923c53419c95551a9b178c18dc9c910ef133bc8e09d32d1b11d2699dcbc120618c2ed814db529745a6cf59b4bb865cd9da1156acc924da71c93d2dc3f2abd15e33284e77d6cf493940169d595ab886bdc27a400bd95d6480608cffd8fccf894a3dd37dce1ffc8d067a70810871253f8736e8ca7f2b31574da8cada59ec6474f2cc3056bf1b8514e3cd9bebd22e2fb8ad9c2254c2f646a6c8f7964497d004d5dd4fe0c5ddb6697372a7b92abc690b1ff83e6937f96916a581524f0307a86f204bd45b39eff384a07fc0fae20218290fb9220be7b9441157015d464f37b81ead9eacd798fb94dcdb0f10118cd481703a33eaf6dc54fba8ba7fc3295382f405d9f74deec69308f9f3f440630e0b6db668b2e30aa69d1a19f4d0b20ceec58d4d6cb0af572b9a16811ed5936ce07bb6e8056419f7ba05f4b8a882ebc2e6b42c3dd572528868541e32b9870eff74ed1626599f72c5cca53716b5c520b4ae328da55a81ec8e10943186d9710c2fc34db08dfcb9c53064630768d564b5ea41e52c6c0db87e0fb5d4bfca6added971e070c3e542fb2f73ae8075f8f93a38bc2c2cf30d5379d9ad9335f925d1676daddab5499b06ad9389b79e7de3db2949b202d9ce967f5b639fa136f3e4cebf631ae00ecb00bf38cd3eaa35fb3803dfee45be95f87ebd9e857675d3cfa85025d5d437bbacfd7a4057b766866e61c17c90617b1f3dda263bb3817a0a225a840ebc28ce251a6475f8441384cddadf58a754e501ed344770e30d45b7709b3583d71b58a6b3caf903a3b1b82fcb102a17fed003661a9c69b184c335ce97c68103a2aaf2f74e96b53360ed56ab2c626a6f6704373c78f50a954ba1cef1f99f829cd45d7dd846c1b035e89eb8cba909ae3cb538ec1ecc15574174bf30ccdb37bca14859fe6ac90b4327fad59919331212ac371f61133bcbb1f039c15569b6675df4bd5dbcde277a56714fec4fe053e8e22e13950ec2123f1449ef930646a90398816abdd485551fe1c998d8bd27c432da3b7ff80cdf04c92d03290d5ac789a8152f47d283c516a6ccdbcfdfa9e802ffc573526044d932135efe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855df2c5b0b5384cc469d6d291beb9d7d2dbc333babfc7f6024b59a721cd8284598df2c5b0b5384cc469d6d291beb9d7d2dbc333babfc7f6024b59a721cd8284598df5ca2a5881e5215e226ec1d8184dd7491aee9e4f43907b1dc7c1946faa590c3df5ca2a5881e5215e226ec1d8184dd7491aee9e4f43907b1dc7c1946faa590c39e29d0caa67b93b517c03e2c908473a727e62db6c13384e7b945405f56c6ce1e9e29d0caa67b93b517c03e2c908473a727e62db6c13384e7b945405f56c6ce1ea3b4b362eb4bc661c48c18bf0ad41f7069ef1c43a37f88e1bf7ea674f78a8034a3b4b362eb4bc661c48c18bf0ad41f7069ef1c43a37f88e1bf7ea674f78a8034b8d4142849610b83995f3671b668f2bfc999c4422dc1f1c77cdc4dcd24868d8db8d4142849610b83995f3671b668f2bfc999c4422dc1f1c77cdc4dcd24868d8d1098834e58a51a23a0bd73c1eb2c75777682db9e1e45864a0fb8912a75810e1f1098834e58a51a23a0bd73c1eb2c75777682db9e1e45864a0fb8912a75810e1f3f191f250dd1efd72d6f4847d8f4bc21c1a3ae712b252f3871a848bc4724e7a33f191f250dd1efd72d6f4847d8f4bc21c1a3ae712b252f3871a848bc4724e7a333395e37ee67f35e3431c36ce57322fe8a17e8ce647cbaf10fb516e577acdcac33395e37ee67f35e3431c36ce57322fe8a17e8ce647cbaf10fb516e577acdcac334bf9668962bf14844c082c8e22ed97c9f345084b84dac85f904cccee6a4f0d334bf9668962bf14844c082c8e22ed97c9f345084b84dac85f904cccee6a4f0df28625cfcf004a93fb2f2ac474e13c6d1050938a19f490f00dfcd74cf4e8ec14f28625cfcf004a93fb2f2ac474e13c6d1050938a19f490f00dfcd74cf4e8ec149d90e7f28d8ccadbfed837bf326391fe6413a3b8f36052aef5ba5b1a662c7d559d90e7f28d8ccadbfed837bf326391fe6413a3b8f36052aef5ba5b1a662c7d555b1f5d8beb78192c9012ce96661decf41ea8a99b2ba68d7168d8dd7b5f5cb9ee5b1f5d8beb78192c9012ce96661decf41ea8a99b2ba68d7168d8dd7b5f5cb9ee900951791f219a9e00182c988746576c294c26b726f7fc8f38f103d1cf1aa1eda015e6c0d33822fe8c9ba2fc4ff55da3befa11ac38037dcb572ccde97b92f0d742553aa823f6d837dd6406075b12dddc60db788dbff0cca03b175b99397565ab1fccbe1d318d8c3945e7dc2913aa62bca4227b1cf56fa0ba664c9c4cf51be7fd928c1afd31f9fec849f4c3579bb3f49f145567c0db700354539d5407bc7dbb1b55952f9267b5909b80d9a77a197703d1cbcff83c8ebf70262cb6464872f9c8d33f327cfb204e1bd68ef831c1cab77fdf0c13f3e7401f61a39ac8f42022ff534c197e5aa487fb490de1d1072c9393ae58cf22a2dc9e6893b52e6241570a9fe73461c2948b35ca1de4f881542f71a63ed7325737568b3217f6c8c4c80d1e0ef719312b288ac1f3635f1d5c4acc1dca8e48571bed88a6f585640927987cca8356432d5848063c13fd1974912193718a60891d6372fe0ed682c78b43d465da7c34b9rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootfirewalld-2.0.1-150600.3.12.1.src.rpmpython311-firewall@     @@@dbus-1-python311python(abi)python311-dbus-pythonpython311-decoratorpython311-gobjectrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)typelib(GLib)typelib(Gio)typelib(NM)3.113.0.4-14.6.0-14.0.4-14.0-15.2-11.04.14.3hm@h0c@g#q@e@dD@cGby@bA@b1@b!@`m`@``2@_/@_[f_X_R,@_9_3^%@^d@^9\]p]@]4@]4@]v>\\\@\s\Z@\73[ā@[[@[[@[[qr[m~@[h8@[?YZz@Z3@ZZ@Zs@Zp^@Zk@Z;@Z@ZOZ@Zr@Z }Z ,@ZY6@XXXEVX)@X2@WiW@W{@WrfWj}WXWM|W,@W#LWV޾VՄ@V2V@V@VHfvogt@suse.commeissner@suse.comdavide.benini@suse.commohd.saquib@suse.commohd.saquib@suse.commohd.saquib@suse.comsflees@suse.dewitold.bedyk@suse.commrostecki@suse.commwilck@suse.commrostecki@suse.commrostecki@suse.commrostecki@suse.comrfrohl@suse.commrostecki@suse.comfbui@suse.commrostecki@suse.comcallumjfarmer13@gmail.comdmueller@suse.commrostecki@suse.comMathias.Homann@opensuse.orghpj@urpla.netbjorn.lie@gmail.comngompa13@gmail.comMathias.Homann@opensuse.orgMathias.Homann@opensuse.orgMathias.Homann@opensuse.orgmrostecki@opensuse.orgmrostecki@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgmrostecki@opensuse.orgmrostecki@opensuse.orgmrostecki@suse.demchandras@suse.demchandras@suse.deluizluca@gmail.commchandras@suse.demchandras@suse.deluc14n0@linuxmail.orgmchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.desbrabec@suse.commchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.dedimstar@opensuse.orgmchandras@suse.derbrown@suse.commpluskal@suse.commchandras@suse.demchandras@suse.dempluskal@suse.commchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.dejengelh@inai.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.demchandras@suse.dejslaby@suse.commchandras@suse.de- Do not recommend python311-firewalld (bsc#1246100)- added a python311 flavor- Fix for SG#69031, bsc#1231771: * 0001-fix-nftables-set-correctly-match-iifname-oifname.patch: [PATCH 1/2] fix(nftables): set: correctly match iifname/oifname * 0002-test-ipset-verify-match-with-iface.patch: [PATCH 2/2] test(ipset): verify match with iface- update to v2.0.1 (jsc#PED-5597) * fix(cli): all --list-all-zones output identical (d30bc61) * fix(cli): properly show default zone attribute (ea8d9a8) * fix(cli): properly show active attribute for zones and policies (b202403) * fix(cli): --get-active-zones should include the default zone (dae9112) * fix(nftables): always flush main table on start (cd20981) * fix(runtimeToPermanent): deepcopy settings before mangling (9c53639) * docs: fix reference to lockdown-whitelist.xml in SYNOPSIS section (1c77205) * fix(firewall-config): escape markup stored in bindings store (c876fd0) * fix(tests): avoid deprecated assertRaisesRegexp for assertRaisesRegex (2935119) * fix(icmp): fix check_icmpv6_name() to use correct IPv6 names (af3c35b) * fix(ipset): fix configuring IP range for ipsets with nftables (6a050ec) * fix(ipset): fix configuring "timeout","maxelem" values for ipsets with nftables (7d3340c) * fix(core): fix exception while parsing invalid "tcp-mss-clamp" in policy (ff61209) * docs(policy): fix wrong documentation of in man firewalld.policy (21026d9) * Correct Requires, python3-slip-dbus -> python3-dbus-python * This is a major release. The major version is being bumped symbolically to reflect significant changes done in commit f4d2b80 ("fix(policy): disallow zone drifting"). It does not contain any deliberate breaking changes * fix(reload): restore policy for old backend if it changed (de85849) * fix(io): rich: tcp mss: handle value=None (8016f10) * fix(firewall-config): rich: set destination address (f6641a9) * fix(policy): mixed IP families in ingress/egress (69ed4d6) - removed following patches: [- 0001-chore-fw_zone-call-permanent-config-checks-at-runtim.patch] [- 0003-firewall-offline-cmd-fail-fix.patch] [- 0004-fix_rich_source_address_with_netmask.patch] [- feature-upstream-new-check-config-1.patch] [- feature-upstream-new-check-config-2.patch]- Fix firewalld does not longer understand IPv4 network masks of type `255.255.255.0` Added following patch (boo#1212974) [+ 0004-fix_rich_source_address_with_netmask.patch]- Fix firewall-offline-cmd fails with ERROR: Calling pre func Added following patch (bsc#1206928) [+ 0003-firewall-offline-cmd-fail-fix.patch]- Fix regression introduced in previous patch (an api change to a function also needed backporting) (bsc#1198814) * feature-upstream-new-check-config-1.patch * feature-upstream-new-check-config-2.patch- Provide dummy firewalld-prometheus-config package (bsc#1197042)- Add patch which fixes the zone configuration (bsc#1191837) * 0001-chore-fw_zone-call-permanent-config-checks-at-runtim.patch- Fix modprobe.d directory for SLE15 SP3 - Always own %_modprobedir (bsc#1196275, jsc#SLE-20639)- Remove dependency on firewalld from firewall-macros (bsc#1183404)- Disable FlushAllOnReload option to not retain interface to zone assignments and direct rules when using --reload option. * 0002-Disable-FlushAllOnReload-option.patch- Update to 0.9.3 (jsc#SLE-17336): * docs(dbus): fix invalid method names * fix(forward): iptables: ipset used as zone source * fix(rich): non-printable characters removed from rich rules * docs(firewall-cmd): small description grammar fix * fix(rich): limit table to strip non-printables to C0 and C1 * fix(zone): add source with mac address- Add dependency for firewall-offline-cmd (bsc#1180883)- Remove the patch which enforces usage of iptables instead of nftables (jsc#SLE-16300): * 0001-firewall-backend-Switch-default-backend-to-iptables.patch - Add firewalld zone for the docker0 interface. This is the workaround for lack of nftables support in docker. Without that additional zone, containers have no Internet connectivity. (rhbz#1817022, jsc#SLE-16300) - Update to 0.9.1: * Bugfixes: * docs(firewall-cmd): clarify lockdown whitelist command paths * fix(dbus): getActivePolicies shouldn't return a policy if a zone is not active * fix(policy): zone interface/source changes should affect all using zone- Make use of %service_del_postun_without_restart And stop using DISABLE_RESTART_ON_UPDATE as this interface is obsolete.- Add python3-nftables as a requirement.- update to 0.9.0: * New major features * prevention of Zone Drifting * Intra Zone Forwarding * Policy Objects * For a full list of changes, see https://github.com/firewalld/firewalld/compare/v0.8.0...v0.9.0- update to 0.8.3: * nftables: convert to libnftables JSON interface * service: new “helper” element to replace “module” More accurately represents the conntrack helper. Deprecates “module”. * allow custom helpers using standard helper modules (rhbz 1733066) * testsuite is now shipped in the dist tarball * Typo in firewall-config(1) * Fix typo in TFTP service description * doc: README: add note about language translations * fix: rich: source/dest only matching with mark action * feat: AllowZoneDrifting config option * feat: nftables: support AllowZoneDrifting=yes * feat: ipXtables: support AllowZoneDrifting=yes * fix: firewall-offline-cmd: Don’t print warning about AllowZoneDrifting * fix: add logrotate policy * doc: direct: add CAVEATS section * fix: checkIP6: strip leading/trailing square brackets * fix: nftables: remove square brackets from IPv6 addresses * fix: ipXtables: remove square brackets from IPv6 addresses * fix: nftables: ipset types using “port” * fix: nftables: zone dispatch with multidimensional ipsets * fix: ipset: destroy runtime sets on reload/stop * fix: port: support querying sub ranges * fix: source_port: support querying sub ranges * doc: specify accepted characters for object names * fix: doc: address copy/paste mistakes in short/description * fix: configure: atlocal: quote variable values * fix: nftables: allow set intervals with concatenations * doc: clarify –set-target values “default” vs “reject” * fix: update dynamic DCE RPC ports in freeipa-trust service * fix: nftables: ipset: port ranges for non-default protocols * fix(systemd): Conflict with nftables.service * fix(direct): rule in a zone chain * fix(client): addService needs to reduce tuple size * fix(doc): dbus: signatures for zone tuple based APIs * fix(config): bool values in dict based import/export * fix(dbus): service: don’t cleanup config for old set APIs * fix(ipset): flush the set if IndividiualCalls=yes * fix(firewall-offline-cmd): remove instances of “[P]” in help text * fix(rich): source mac with nftables backend * docs: replace occurrences of the term blacklist with denylist * fix: core: rich: Catch ValueError on non-numeric priority values * docs(README): add libxslt for doc generation * fix(cli): add –zone is an invalid option with –direct * fix(cli): add ipset type hash:mac is incompatible with the family parameter- Update to version 0.7.5 (jsc#SLE-12281): * release: v0.7.5 * chore(translation): merge from master * fix(cli): add ipset type hash:mac is incompatible with the family parameter Fixes: rhbz1541077 * test(rhbz1483921): better test name * fix(cli): add --zone is an invalid option with --direct * fix: core: rich: Catch ValueError on non-numeric priority values * fix: update dynamic DCE RPC ports in freeipa-trust service * docs: replace occurrences of the term blacklist with denylist * docs(README): add libxslt for doc generation * test(rich): source mac with nftables backend * fix(firewall-offline-cmd): remove instances of "[P]" in help text * test(check-container): add support for centos8 stream * test(functions): use IndividualCalls if host doesn't support nft rule index * test(functions): add macro IF_HOST_SUPPORTS_NFT_RULE_INDEX * test(dbus): better way to check IPv6_rpfilter expected value * fix(ipset): flush the set if IndividiualCalls=yes * test(ipv6): skip square bracket address tests if ipv6 not available * test(gh509): only run test for nftables backend * fix(dbus): service: don't cleanup config for old set APIs * fix(config): bool values in dict based import/export * fix(doc): dbus: signatures for zone tuple based APIs * test(dbus): zone: fix zone runtime functional test title * test(dbus): zone: fix false failure due to list order * fix(client): addService needs to reduce tuple size * test(direct): rule in a zone chain * fix(direct): rule in a zone chain * test(dbus): zone: verify runtime config APIs * test(dbus): zone: verify permanent config APIs * fix(systemd): Conflict with nftables.service * fix: test/regression/gh599: use expr to be more portable * test: dbus: zone: verify runtime config API signatures * test: dbus: zone: verify permanent config API signatures * fix: test/regression/gh599: fix if not using debug output * test: log: verify logging still works after truncate * test: ipset: verify port ranges for non-default protocol- Update to 0.7.4 This is a bug fix only release. However, it does reintroduce the zone drifting bug as a feature. See #258 and #441. This behavior is disabled by default. * improvement: build: add an option to disable building documentation * Typo in firewall-config(1) * Fix typo in TFTP service description * doc: README: add note about language translations * fix: rich: source/dest only matching with mark action * feat: AllowZoneDrifting config option * feat: nftables: support AllowZoneDrifting=yes * feat: ipXtables: support AllowZoneDrifting=yes * fix: firewall-offline-cmd: Don't print warning about AllowZoneDrifting * fix: add logrotate policy * fix: tests: regenerate testsuite if .../{cli,python}/*.at changes * doc: direct: add CAVEATS section * fix: checkIP6: strip leading/trailing square brackets * fix: nftables: remove square brackets from IPv6 addresses * fix: ipXtables: remove square brackets from IPv6 addresses * fix: nftables: zone dispatch with multidimensional ipsets * fix: ipset: destroy runtime sets on reload/stop * fix: port: support querying sub ranges * fix: source_port: support querying sub ranges * doc: specify accepted characters for object names * fix: doc: address copy/paste mistakes in short/description * fix: configure: atlocal: quote variable values * fix: nftables: allow set intervals with concatenations * doc: clarify --set-target values "default" vs "reject"- Update to version 0.7.3: * release: v0.7.3 * chore: update translations * doc: README: add note about integration tests * test: check-container: also run check-integration * test: integration: NM zone overrides interface on reload * test: build: support integration tests * test: functions: add macro NMCLI_CHECK * test: functions: new macros for starting/stopping NetworkManager * fix: test: leave "cleanup" for tests cases * test: check-container: add support for fedora rawhide * test: check-container: add support for debian sid * test: build: add support for running in containers * fix: test/functions: FWD_END_TEST: improve grep for errors/warnings * fix: test: direct passthrough: no need to check for dummy module * fix: test: CHECK_NAT_COEXISTENCE: only check for kernel version * fix: reload: let NM interface assignments override permanent config * chore: tests: rename IF_IPV6_SUPPORTED to IF_HOST_SUPPORTS_IPV6_RULES * fix: tests: convert host ipv6 checks to runtime * fix: tests: convert ip6tables checks to runtime * fix: tests: convert probe of nft numeric args to runtime * fix: tests: convert nftables fib checks to runtime * fix: build: distribute testsuite * fix: don't probe for available kernel modules * fix: failure to load modules no longer fatal * fix: tests/functions: canonicalize XML output * chore: doc: update authors * fix: test: use debug output based on autotest variable * fix: src/tests/Makefile: distclean should clean atconfig- No longer recommend -lang: supplements are in use.- Replace incorrect usage of %_libexecdir with %_prefix/lib- rebased the original patch from revision 19- Added a patch to make iptables the default again on openSUSE- Update to version 0.7.2: This is a bug fix only release. * fix: direct: removeRules() was mistakenly removing all rules * fix: guarantee zone source dispatch is sorted by zone name * fix: nftables: fix zone dispatch using ipset sources in nat chains * doc: add --default-config and --system-config * fix: --add-masquerade should only affect ipv4 * fix: nftables: --forward-ports should only affect IPv4 * fix: direct: removeRules() not removing all rules in chain * dbus: service: fix service includes individual APIs * fix: allow custom helpers using standard helper modules * fix: service: usage of helpers with '-' in name * fix: Revert "ebtables: drop support for broute table" * fix: ebtables: don't use tables that aren't available * fix: fw: initialize _rfc3964_ipv4- Update to version 0.7.1: * Rich Rule Priorities * Service Definition Includes - Service definitions can now include lines like: which will include all the ports, etc from the https service. * RFC3964 IPv4 filtering - A new option RFC3964_IPv4 in firewalld.conf is available. It does filtering based on RFC3964 in regards to IPv4 addresses. This functionality was traditionally in network-scripts. * FlushAllOnReload - A new option FlushAllOnReload in firewalld.conf is available. Older release retained some settings (direct rules, interface to zone assignments) during a - -reload. With the introduction of this configuration option that is no longer the case. Old behavior can be restored by setting FlushAllOnReload=no. * 15 new service definitions * fix: firewall-offline-cmd: service: use dict based APIs * fix: client: service: use dict based dbus APIs * test: dbus: coverage for new service APIs * fix: dbus: new dict based APIs for services * test: dbus: service API coverage * test: functions: add macro DBUS_INTROSPECT * test: functions: add CHOMP macro for shell output * fix: tests/functions: use gdbus instead of dbus-send * fix: dbus: add missing APIs for service includes - Remove patch for using iptables instead of nftables - we should finally switch to nftables and fix its issues properly if they occur again: * 0001-firewall-backend-Switch-default-backend-to-iptables.patch - Remove patch which was released upstream: * 0002-Add-FlushAllOnReload-config-option.patch- Update to version 0.6.4: * chore: update translations * treewide: fix over indentation (flake8 E117) * test: travis: add another test matrix for omitting ip6tables * chore: travis: split test matrix by keywords * chore: tests: add AT_KEYWORDS for firewall-offline-cmd * improvement: tests: Use AT_KEYWORDS for backends * fix: tests: guard occurrences of IPv6 * fix: tests/functions: ignore warnings about missing ip6tables * test: add macro IF_IPV6_SUPPORTED- Move RPM macros to %_rpmmacrodir.- Revert last change: the macros DO reference firewall-cmd, but as they are expanded during build time of the package, not at runtime, the point in time is wrong to require firewalld. The consumer of the macro is responsible to ask for the right commands to be present at runtime of the scripts (boo#1125775#c9).- Add dependency between firewall-macros and firewalld. (boo#1125775)- Fix --with-ifcfgdir configure parameter. (boo#1124212)- Add upstream patch to make --reload/--complete-reload forget the runtime configuration and always load the permanent one (bsc#1121277) * 0002-Add-FlushAllOnReload-config-option.patch- Update to 0.6.3. Some of the changes are: * update translations * nftables: fix reject statement in "block" zone * shell-completion: bash: don't check firewalld state * firewalld: fix --runtime-to-permanent if NM not in use. * firewall-cmd: sort --list-protocols output * firewall-cmd: sort --list-services output * command: sort services/protocols in --list-all output * services: add audit * nftables: fix rich rule log/audit being added to wrong chain * nftables: fix destination checks not allowing masks * firewall/core/io/*.py: Let SAX handle the encoding of XML files (gh#firewalld/firewalld#395)(bsc#1083361) * fw_zone: expose _ipset_match_flags() * tests/firewall-cmd: exercise multiple interfaces and zones * fw_transaction: On clear zone transaction, must clear fw and other zones * Fix translating labels (gh#firewalld/firewalld#392) - Remove patches which have made it upstream: * 0001-Fix-translating-labels-392.patch * 0002-firewalld-0.6.x-rich-rule-with-ipset-regression.patch- Add upstream patch to mark more strings as translatable which is required by firewall UI when creating rich rules (bsc#1096542) * 0001-Fix-translating-labels-392.patch- Add upstream patch to fix rich rules that uses ipset (bsc#1104990) * 00002-firewalld-0.6.x-rich-rule-with-ipset-regression.patch- Update to 0.6.2. Some of the changes are: * update translations * nftables: fix log-denied with values other than "all" or "off" * fw_ipset: raise FirewallError if backend command fails * ipset: only use "-exist" on restore * fw_ipset: fix duplicate add of ipset entries * *tables: For opened ports/protocols/etc match ct state new,untracked (bsc#1105821) * ipXtables: increase wait lock to 10s * nftables: fix rich rules ports/protocols/source ports not considering ct state * ports: allow querying a single added by range * fw_zone: do not change rich rule errors into warnings * fw_zone: fix services with multiple destination IP versions (bsc#1105899) * fw_zone: consider destination for protocols * firewall/core/fw_nm: nm_get_zone_of_connection should return None or empty string instead of False (boo#1106319) * fw: If direct rules fail to apply add a "Direct" label to error msg * fw: if startup fails on reload, reapply non-perm config that survives reload * nftables: fix rich rule audit log * ebtables: replace RETURN policy with explicit RETURN at end of chain * direct backends: allow build_chain() to build multiple rules * fw: if failure occurs during startup set state to FAILED * fw: on restart set policy from same function * ebtables: drop support for broute table - Remove upstream patches * 0001-nftables-fix-rich-rules-ports-protocols-source-ports.patch * 0001-fw_zone-consider-destination-for-protocols.patch * 0002-fw_zone-fix-services-with-multiple-destination-IP-ve.patch * firewalld-fix-firewalld-config-crash.patch- Add upstream patch to fix Neighbor Discovery filtering for IPv6 (bsc#1105821) * 0001-nftables-fix-rich-rules-ports-protocols-source-ports.patch - Add upstream patch to fix building rules for multiple IP families (bsc#1105899) * 0001-fw_zone-consider-destination-for-protocols.patch * 0002-fw_zone-fix-services-with-multiple-destination-IP-ve.patch- Add firewalld-fix-firewalld-config-crash.patch: set nm_get_zone_of_connection to return 'None' instead of 'False' for automatically generated connections to avoid firewall-config crashes. Patch provided by upstream (boo#1106319, gh#firewalld/firewalld#370).- Also switch firewall backend fallback to 'iptables' (bsc#1102761) This ensures that existing configuration files will keep working even if FirewallBackend option is missing. * 0001-firewall-backend-Switch-default-backend-to-iptables.patch- Update to 0.6.1. Some of the changes are: * Correct source/destination in rich rule masquerade * Only modify ifcfg files for permanent configuration changes * Fix a backtrace when calling common_reverse_rule() * man firewalld.conf: Show nftables is the default FirewallBackend * firewall-config: fix some untranslated strings that caused a UI bug causing rich rules to not be modify-able (bsc#1096542) * fw_direct: avoid log for untracked passthrough queries * fixed many issues if iptables is actually iptables-nft * Use preferred location for AppData files * ipXtables: fix ICMP block inversion with set-log-denied * fixes ICMP block inversion with set-log-denied with IndividualCalls=yes * nftables: fix set-log-denied if target is not ACCEPT * fw_direct: strip _direct chain suffix if using nftables * NetworkManager integration bugfixes.- Switch back to 'iptables' backend as default (bsc#1102761)- Update to 0.6.0. Some of the changes are: * update translations * firewall-config: Add ipv6-icmp to the protocol dropdown box (#348, bsc#1099698) * core: logger: Remove world-readable bit from logfile (#349, bsc#1098986) * IPv6 rpfilter: explicitly allow neighbor solicitation * nftables backend (default) * Added loads of new services * firewall-cmd: add --check-config option * firewall-offline-cmd: add --check-config option * firewallctl: completely remove all code and references * dbus: expose FirewallBackend * dbus: fix erroneous fallback for AutomaticHelpers - Remove patches which have made it upstream * firewalld-add-additional-services.patch - spec-cleaner fixes- Update to 0.5.3 (bsc#1093120) * tests/regression: add test for ipset with timeout * ipset: allow adding entries to ipsets with timeout * translations: update * helpers: load helper module explicitly if no port given * helpers: nf_conntrack_proto-* helpers needs name cropped * config/Makefile: correct name of proto-gre helper * tests/regression: test helper nf_conntrack_proto_gre (#263) * functions: get_nf_nat_helpers() should look in other directories too * functions: Allow nf_conntrack_proto_* helpers * services: Add GRE * helpers: Add proto-gre * tests/regression: add test to verify ICMP block in forward chain * ipXtables: fix ICMP block not being present in FORWARD chain- Translations update (bsc#1081623).- Backport upstream patches to add additional services (bsc#1082033) * firewalld-add-additional-services.patch- Update to 0.5.2 * fix rule deduplication causing accidental removal of rules * log failure to parse direct rules xml as an error * firewall-config: Break infinite loop when firewalld is not running * fix set-log-denied not taking effect * po: update translations- Remove high-availability service. SUSE HA uses the cluster service provided by the yast2-cluster package (bsc#1078223)- Update to 0.5.1 * ipXtables: fix iptables-restore wait option detection * python3: use "foo in dict" not dict.has_key(foo) * Fix potential python3 keys() incompatibility in watcher * Fixed python3 compatibility * ebtables: fix missing default value to set_rule() * fw_zone: fix invalid reference to __icmp_block_inversion * zones: Correct and defer check_name for combined zones- Update to 0.5.0 * firewallctl: mark deprecated (gh#firewalld/firewalld##261) * Add nmea-0183 service * Add sycthing-gui service * Add syncthing service * Adding FirewallD jenkins service (gh#firewalld/firewalld#256) * services/high-availability: Add port 9929 * Fix and improve firewalld-sysctls.conf * firewalld: also reload dbus config interface for global options * Add MongoDB service definition * src: firewall: Add support for SUSE ifcfg scripts * Add UPnP client service * firewalld: Allow specifying log file location * firewalld/firewall-offline-cmd: Allow setting system config directories - Drop obsolete patch * 0001-suse-ifcfg-files.patch - Drop tests installation- Introduce new python3-firewall and firewall-macros subpackages. The first one contains the firewalld python3 bindings and the second one contains the RPM macros for firewalld.- Replace dbus-1-python requires with dbus-1-python3: since firewalld was migrated to python3, we also have to require the python3 dependencies (boo#1070310).- Add missing python3-gobject-Gdk dependency (boo#1069952)- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468)- Make sure to use python3 everywhere (boo#1068778)- Add combined upstream patch to support SUSE ifcfg network files. * 0001-suse-ifcfg-files.patch (gh#firewalld/firewalld#262, fate#323460)- Update to version 0.4.4.6 * firewall.core.fw_config: Fix check for icmp builtin name * config.services: docker-swarm: fix incorrect attribute * xmlschema/service.xsd: Fix protocol looking for name instead of value * Add docker swarm service (gh#firewalld/firewalld#230) * Adding FirewallD redis service (gh#firewalld/firewalld#248) * Adding firewalld zabbix server and agent services (gh#firewalld/firewalld#221) * firewall-offline-cmd: Don't require root for help output * doc: firewall-cmd: Document --query-* options return codes * firewall-cmd: Use colors only if output is a TTY * core: Log unsupported ICMP types as informational only * add bgp service to predefined services edit to config/Makefile.am * Add git service * Add kprop service * minidlna definitions (gh#firewalld/firewalld#236) * SpiderOak ONE listens on port 21327 and 21328 * autogen.sh: Allow skipping configure via NOCONFIGURE env var * Add missing ports to RH-Satellite-6 service * Reload nf_conntrack sysctls after the module is loaded * Add NFSv3 service. * config/Makefile.am: Add murmur service (a95eed1) * add new service IRC * firewall.core.prog: Simplify runProg output: Combine stderr and stdout * firewall.core.fw: Fix possible dict size change in for loop * firewall.core.fw: Use new firewalld git repo in firewalld organization * config/firewall-config.appdata.xml.in: Use new firewalld git repo in firewalld organization * firewall.core.fw_zone: Rich-rule ICMP type: Error only for conflicting family * firewall.core.rich: Add checks for Rich_Source validation * Handle also IPv6 with the zone masquerade flag * Add IPv6 support for forward-ports in zones * firewall.command: Enable parse_forward_port to work with IPv6 adresses * firewall.core.fw_zone: Fix IPv6 address in rich rule forward ports * add Murmur (Mumble server) service - spec file fixes to avoid rpmlint warnings about duplicate files.- Switch to python3 - Run spec cleaner - Move autogen to build section - Add systemd requirements- Update to version 0.4.4.5 * firewall-offline-cmd: Fix --remove-service-from-zone option (rh#1438127) * Support sctp and dccp in ports, source-ports, forward-ports, helpers and rich rules * firewall-cmd: Fix --{set,get}-{short,description} for zone * firewall.core.ipXtables: Use new wait option for restore commands if available * Adding ovirt-vmconsole service file * Adding oVirt storage-console service. * Adding ctdb service file. * Adding service file for nrpe. * Rename extension for policy choices (server and desktop) to .policy.choice (rh#1449754) * D-Bus interfaces: Fix GetAll for interfaces without properties (rh#1452017) * firewall.core.fw_config: Fix wrong variable use in repr output * firewall.core.fw_icmptype: Add missing import for copy * firewall.core.fw_test: Fix wrong format string in repr * firewall.core.io.zone: Fix getattr use on super(Zone) * firewall.functions: New function get_nf_nat_helpers * firewall.core.fw: Get NAT helpers and store them internally. * firewall.core.fw_zone: Load NAT helpers with conntrack helpers * firewalld.dbus: Add missing properties nf_conntrach_helper_setting and nf_conntrack_helpers * firewall.server.firewalld: New property for NAT helpers supported by the kernel- Update to version 0.4.4.4 * Drop references to fedorahosted.org from spec file and Makefile.am * firewall-config: Show invalid ipset type in the ipset dialog in the bad label * firewall.core.fw: Show icmptypes and ipsets with type errors in permanent env * firewall.server.firewalld: Provide information about the supported icmp types * firewall.core.fw_icmptype: Add ICMP type only if the type is supported * firewall.core.fw: New attributes ip{4,6}tables_supported_icmp_types * firewall.core.ipXtables: New method supported_icmp_types * firewall-config: Deactivate edit buttons if there are no items * firewall.core.io.zone: Fix permanent rich rules using icmp-type (rh#1434594) * firewall.core.fw_ipset: get_ipset may not ckeck if set is applied by default * firewall.core.fw_transaction: Use LastUpdatedOrderedDict for zone transactions - Remove upstream patch: * 0001-firewall.core.fw_ipset-get_ipset-may-not-ckeck-if-se.patch- Update to version 0.4.4.3 * New service freeipa-trust (rh#1411650) * Complete icmp types for IPv4 and IPv6 * New h323 helper container * Support helper container: h323 * firewall.server.decorators: ALREADY_ errors should be logged as warnings * firewall.command: ALREADY_SET should also result in zero exit code * tests/firewall-offline-cmd_test.sh: Only use firewall-offline-cmd * Support more ipset types: hash:ip,port, hash:ip,port,ip, hash:ip,port,net, hash:ip,mark, hash:net,net, hash:net,port, hash:net,port,net, hash:net,iface * New checks for ipset entry validation * Use ipset dimension for match * firewall.core.base: New ZONE_SOURCE_IPSET_TYPES list * New firewall.core.icmp providing names and types for icmp and icmpv6 values * firewall.core.fw_ipset: New methods to get ipset dimension and applied state * firewall.errors: New error NOT_APPLIED * firewall-cmd man page: Add missing --get-ipset-types * firewall.core.fw_nm: No trace back on failed get_connection call (rh#1413345) * firewall.core.prog: Fix addition of the error output in runProg * Speed up ipset handling, (re)loading and import from file * Support --family option for --new-ipset * Handle FirewallError for query sequences in command line tools * Fail to alter entries of ipsets with timeout * Extended tests for ipset options * Return empty list for ipsets using timeouts * firewall.functions: Fix checks in checkIPnMask and checkIP6nMask (gh#t-woerner/firewalld#186) * firewalld.conf man page: New section about AutomaticHelpers * firewall-offline-cmd man page: Added -v and -q options, fixed section ids * firewall{-cmd, ctl}: Fix scope of final return in try_set_zone_of_interface * firewall.core.fw_zone: Limit masquerading forward rule to new connections * firewall-config: Update active zones on reloaded signal * firewall-applet: Update active zones and tooltip on reloaded signal * firewall.core.fw_zone: Fix missing chain for helper in rich rules using service (rh#1416578) * Support icmp-type usage in rich rules (rh#1409544) * firewall[-offline]-cmd: Fix --{set,get}-{short,description} for ipset and helper (rh#1416325) * firewall.core.ipset: Solve ipset creation issues with -exist and more flag tests * Speed up start and restart for ipsets with lots of entries (rh#1416817) * Speed up of ipset alteration by adding and removing entries using a file (rh#1416817) * Code cleanup and minor bug fixes * firewall.core.prog: Fix addition of the error output in runProg * New services mssql, kibana, elasticsearch, quassel, bitcoin-rpc, bitcoin-testnet-rpc, bitcoin-testnet, bitcoin and spideroak-lansync * Translation updates - Add upstream patch to fix ipset overloading from /etc/firewalld/ipsets (gh#t-woerner/firewalld#206) * 0001-firewall.core.fw_ipset-get_ipset-may-not-ckeck-if-se.patch- Update to version 0.4.4.2 * firewalld.spec: Added helpers and ipsets paths to firewalld-filesystem * firewall.core.fw_nm: create NMClient lazily * Do not use hard-coded path for modinfo, use autofoo to detect it * firewall.core.io.ifcfg: Dropped invalid option warning with bad format string * firewall.core.io.ifcfg: Properly handle quoted ifcfg values * firewall.core.fw_zone: Do not reset ZONE with ifdown * Updated translations from zanata * firewall-config: Extra grid at bottom to visualize firewalld settings- Update to version 0.4.4.1 * Translation updates form zanata * firewallctl: New support for helpers * firewallctl: Use sys.excepthook to force exception_handler usage always * firewall-config: Use proper source check in sourceDialog- Update to version 0.4.4 * firewall-applet: Use PyQt5 * firewall-config: New nf_conntrack_select dialog, use nf_conntrack_helpers D-Bus property * New helpers Q.931 and RAS from nf_conntrack_h323 * firewall.core.fw_zone: Add zone bingings for PREROUTING in the raw table * firewall.core.ipXtables: Add PREROUTING default rules for zones in raw table * New helper configuration files for amanda, ftp, irc, netbios-ns, pptp, sane, sip, snmp and tftp * firewall-cmd: Fixed --{get,set}-{description,short} for permanent zones * firewall.command: Do not use error code 254 for {ALREADY,NOT}_ENABLED sequences * Misc bug fixes. * For the complete list of changes please see: https://github.com/t-woerner/firewalld/releases/tag/v0.4.4- Relax permissions for default installation files. The files in /usr/lib/firewalld are the default ones as shipped by the package and there is nothing secret in them.- Update to version 0.4.3.3 * Fixes CVE-2016-5410 (bsc#992772) * Standard error is now used for errors and warnings * Several fixes for use in change roots * Systemd service file changes * Fixed translations in firewall-config * Command line clients * Fixes infinite event handling loop in firewall-{config,applet} (bsc#992082)- Update to version 0.4.3.2 * Fix regression with unavailable optional commands * All missing backend messages should be warnings * Individual calls for missing restore commands * Only one authenticate call for add and remove options and also sequences * New service RH-Satellite-6- Update to version 0.4.3.1 * firewall.command: Fix python3 DBusException message not interable error * src/Makefile.am: Fix path in firewall-[offline-]cmd_test.sh while installing * firewallctl: Do not trace back on list command without further arguments * firewallctl (man1): Added remaining sections zone, service, .. * firewallctl: Added runtime-to-permanent, interface and source parser, IndividualCalls setting * firewall.server.config: Allow to set IndividualCalls property in config interface * Fix missing icmp rules for some zones * runProg: Fix issue with running programs * firewall-offline-cmd: Fix issues with missing system-config-firewall * firewall.core.ipXtables: Split up source and dest addresses for transaction * firewall.server.config: Log error in case of loading malformed files in watcher * Install and package the firewallctl man page * Translation updates- Update to version 0.4.3 * New firewallctl utility (rh#1147959) * doc.xml.seealso: Show firewalld.dbus in See Also sections * firewall.core.fw_config: Create backup on zone, service, ipset and icmptype removal (rh#1339251) * {zone,service,ipset,icmptype}_writer: Do not fail on failed backup * firewall-[offline-]cmd: Fix --new-X-from-file options for files in cwd * firewall-cmd: Dropped duplicate setType call in --new-ipset * radius service: Support also tcp ports (RBZ#1219717) * xmlschemas: Support source-port, protocol, icmp-block-inversion and ipset sources * config.xmlschema.service.xsd: Fix service destination conflicts (rh#1296573) * firewall-cmd, firewalld man: Information about new NetworkManager and ifcfg * firewall.command: Only print summary and description in print_X_info with verbose * firewall.command: print_msg should be able to print empty lines * firewall-config: No processing of runtime passthroughs signals in permanent * Landspace.io fixes and pylint calm downs * firewall.core.io.zone: Add zone_reader and zone_writer to all, pylint fixes * firewall-config: Fixed titles of command and context dialogs, also entry lenths * firewall-config: pylint calm downs * firewall.core.fw_zone: Fix use of MAC source in rich rules without ipv limit * firewall-config: Use self.active_zoens in conf_zone_added_cb * firewall.command: New parse_port, extended parse methods with more checks * firewall.command: Fixed parse_port to use the separator in the split call * firewall.command: New [de]activate_exception_handler, raise error in parse_X * services ha: Allow corosync-qnetd port * firewall-applet: Support for kde5-nm-connection-editor * tests/firewall-offline-cmd_test.sh: New tests for service and icmptype modifications * firewall-offline-cmd: Use FirewallCommand for simplification and sequence options * tests/firewall-cmd_test.sh: New tests for service and icmptype modifications * firewall-cmd: Fixed set, remove and query destination options for services * firewall.core.io.service: Source ports have not been checked in _check_config * firewall.core.fw_zone: Method check_source_port is not used, removed * firewall.core.base: Added default to ZONE_TARGETS * firewall.client: Allow to remove ipv:address pair for service destinations * tests/firewall-offline-cmd_test.sh: There is no timeout option in permanent * firewall-cmd: Landscape.io fixes, pylint calm downs * firewall-cmd: Use FirewallCommand for simplification and sequence options * firewall.command: New FirewallCommand for command line client simplification * New services: kshell, rsh, ganglia-master, ganglia-client * firewalld: Cleanup of unused imports, do not translate some deamon messages * firewalld: With fd close interation in runProg, it is not needed here anymore * firewall.core.prog: Add fd close iteration to runProg * firewall.core.fw_nm: Hide NM typelib import, new nm_get_dbus_interface function * firewalld.spec: Require NetworkManager-libnm instead of NetworkManager-glib * firewall-config: New add/remove ipset entries from file, remove all entries * firewall-applet: Fix tooltip after applet start with connection to firewalld * firewall-config: Select new zone, service or icmptype if the view was empty * firewalld.spec: Added build requires for iptables, ebtables and ipset * Adding nf_conntrack_sip module to the service SIP * firewall: core: fw_ifcfg: Quickly return if ifcfg directory does not exist * Drop unneeded python shebangs * Translation updates - Remove obsolete patches: * 0001-src-firewall-core-Drop-unneeded-python-shebangs.patch * 0002-firewall-core-fw_ifcfg-Quickly-return-if-ifcfg-direc.patch * 0003-firewall.core.fw_nm-Hide-NM-typelib-import-new-nm_ge.patch - Add missing %{?_smp_mflags} during install. This will speed up the installation phase as well as expose build system's problems due to higher level of parallelism. - Run make during %build to ensure missing documentation is generated. - spec file cleanups.- Add upstream patch to prevent unconditional dependencies to the NetworkManager typelib (gh#t-woerner/firewalld#119) * 0003-firewall.core.fw_nm-Hide-NM-typelib-import-new-nm_ge.patch- Update to version 0.4.2 * New module to search for and change ifcfg files for interfaces not under control of NM * firewall_config: Enhanced messages in status bar * firewall-config: New message window as overlay if not connected * firewall-config: Fix sentivity of option, view menus and main paned if not connected * firewall-applet: Quit on SIGINT (Ctrl-C), reduced D-Bus calls, some cleanup * firewall-[offline]cmd: Show target in zone information * D-Bus: Completed masquerade methods in FirewallClientZoneSettings * Fixed log-denied rules for icmp-blocks * Keep sorting of interfaces, services, icmp-blocks and other settings in zones * Fixed runtime-to-permanent not to save interfaces under control of NM * New icmp-block-inversion flag in the zones * ICMP type filtering in the zones * New services: sip, sips, managesieve * rich rules: Allow destination action (rh#1163428) * firewall-offline-cmd: New option -q/--quiet * firewall-[offline-]cmd: New --add-[zone,service,ipset,icmptype]-from-file * firewall-[offline-]cmd: Fix option for setting the destination address * firewall-config: Fixed resizing behaviour * New transaction model for speed ups in start, restart, stop and other actions * firewall-cmd: New options --load{zone,service,ipset,icmptype}-defaults * Fixed memory leak in dbus_introspection_add_properties * Landscape.io fixes, pylint calm downs * New D-Bus getXnames methods to speed up firewall-config and firewall-cmd * ebtables-restore: No support for COMMIT command * Source port support in services, zones and rich rules * firewall-offline-cmd: Added --{add,remove}-entries-from-file for ipsets * firewall-config: New active bindings side bar for simple binding changes * Reworked NetworkManager module * Proper default zone handling for NM connections * Try to set zone binding with NM if interface is under control of NM * Code cleanup and bug fixes * Include test suite in the release and install in /usr/share/firewalld/tests * New Travis-CI configuration file * Fixed more broken frensh translations * Translation updates - Add upstream patches * 0001-src-firewall-core-Drop-unneeded-python-shebangs.patch: Removes unneeded python shebangs * 0002-firewall-core-fw_ifcfg-Quickly-return-if-ifcfg-direc.patch: Do not try to access the network-scripts ifcfg directory. - Drop rejected patch * drop-standard-output-error-systemd.patch - Minor spec file clean-up- Avoid runtime dependency on systemd, the macros can all deal with its absence.- Suggest the susefirewall2-to-firewalld package which could assist in migrating the SuSEFirewall2 iptables rules to FirewallD.- Update to version 0.4.1.2 * Install fw_nm module * firewalld: Do not fail if log file could not be opened * Make ipsets visible per default in firewall-config * Fixed translations with python3 [changes in 0.4.1.1] * Fix for broken frensh translation [changes in 0.4.1] * Enhancements of ipset handling * No cleanup of ipsets using timeouts while reloading * Only destroy conflicting ipsets * Only use ipset types supported by the system * Add and remove several ipset entries in one call using a file * Reduce time frame where builtin chains are on policy DROP while reloading * Include descriptions in --info-X calls * Command line interface support to get and alter descriptions of zones, * services, ipsets and icmptypes with permanent option * Properly watch changes in combined zones * Fix logging in rich rule forward rules * Transformed direct.passthrough errors into warnings * Rework of import structures * Reduced calls to get ids for port and protocol names (rh#1305434) * Build and installation fixes by Markos Chandras * Provide D-Bus properties in introspection data * Fix for flaws found by landscape.io * Fix for repeated SUGHUP * New NetworkManager module to get and set zones of connections, used in firewall-applet and firewall-config * configure: Autodetect backend tools ({ip,ip6,eb}tables{,-restore}, ipset) * Code cleanups * Bug fixes - Fix drop-standard-output-error-systemd.patch tagging - Add libxslt-tools build dependency- Do not recommend a specific version for the lang subpackage- Move translations to a new subpackage- Set DISABLE_RESTART_ON_UPDATE to 'yes' instead of '1'. The macros in /etc/rpm/macros.systemd only check for the 'yes' value so fix it to properly prevent the firewalld service from being restarted during updates.- Drop typelib(NetworkManager), NetworkManager-glib, gtk3 and libnotify dependencies (see OBS SR#360792)- firewall-config needs typelib(NetworkManager) to run- Initial commit. Version 0.4.0 * drop-standard-output-error-systemd.patch (gh#t-woerner/firewalld/pull/67)h04-ch1a 1751987957 !!##%%''))++--//1133557799;;==??AACCEEGGIIKKMMOOQQSTUVWXYZ[\]^_`abcdefggiikkmmooqqssuuwwyy{{}}2.0.1-150600.3.12.1 firewall__init__.py__pycache____init__.cpython-311.opt-1.pyc__init__.cpython-311.pycclient.cpython-311.opt-1.pycclient.cpython-311.pyccommand.cpython-311.opt-1.pyccommand.cpython-311.pycdbus_utils.cpython-311.opt-1.pycdbus_utils.cpython-311.pycerrors.cpython-311.opt-1.pycerrors.cpython-311.pycfunctions.cpython-311.opt-1.pycfunctions.cpython-311.pycfw_types.cpython-311.opt-1.pycfw_types.cpython-311.pycclient.pycommand.pyconfig__init__.py__pycache____init__.cpython-311.opt-1.pyc__init__.cpython-311.pycdbus.cpython-311.opt-1.pycdbus.cpython-311.pycdbus.pycore__init__.py__pycache____init__.cpython-311.opt-1.pyc__init__.cpython-311.pycbase.cpython-311.opt-1.pycbase.cpython-311.pycebtables.cpython-311.opt-1.pycebtables.cpython-311.pycfw.cpython-311.opt-1.pycfw.cpython-311.pycfw_config.cpython-311.opt-1.pycfw_config.cpython-311.pycfw_direct.cpython-311.opt-1.pycfw_direct.cpython-311.pycfw_helper.cpython-311.opt-1.pycfw_helper.cpython-311.pycfw_icmptype.cpython-311.opt-1.pycfw_icmptype.cpython-311.pycfw_ifcfg.cpython-311.opt-1.pycfw_ifcfg.cpython-311.pycfw_ipset.cpython-311.opt-1.pycfw_ipset.cpython-311.pycfw_nm.cpython-311.opt-1.pycfw_nm.cpython-311.pycfw_policies.cpython-311.opt-1.pycfw_policies.cpython-311.pycfw_policy.cpython-311.opt-1.pycfw_policy.cpython-311.pycfw_service.cpython-311.opt-1.pycfw_service.cpython-311.pycfw_transaction.cpython-311.opt-1.pycfw_transaction.cpython-311.pycfw_zone.cpython-311.opt-1.pycfw_zone.cpython-311.pychelper.cpython-311.opt-1.pychelper.cpython-311.pycicmp.cpython-311.opt-1.pycicmp.cpython-311.pycipXtables.cpython-311.opt-1.pycipXtables.cpython-311.pycipset.cpython-311.opt-1.pycipset.cpython-311.pyclogger.cpython-311.opt-1.pyclogger.cpython-311.pycmodules.cpython-311.opt-1.pycmodules.cpython-311.pycnftables.cpython-311.opt-1.pycnftables.cpython-311.pycprog.cpython-311.opt-1.pycprog.cpython-311.pycrich.cpython-311.opt-1.pycrich.cpython-311.pycwatcher.cpython-311.opt-1.pycwatcher.cpython-311.pycbase.pyebtables.pyfw.pyfw_config.pyfw_direct.pyfw_helper.pyfw_icmptype.pyfw_ifcfg.pyfw_ipset.pyfw_nm.pyfw_policies.pyfw_policy.pyfw_service.pyfw_transaction.pyfw_zone.pyhelper.pyicmp.pyio__init__.py__pycache____init__.cpython-311.opt-1.pyc__init__.cpython-311.pycdirect.cpython-311.opt-1.pycdirect.cpython-311.pycfirewalld_conf.cpython-311.opt-1.pycfirewalld_conf.cpython-311.pycfunctions.cpython-311.opt-1.pycfunctions.cpython-311.pychelper.cpython-311.opt-1.pychelper.cpython-311.pycicmptype.cpython-311.opt-1.pycicmptype.cpython-311.pycifcfg.cpython-311.opt-1.pycifcfg.cpython-311.pycio_object.cpython-311.opt-1.pycio_object.cpython-311.pycipset.cpython-311.opt-1.pycipset.cpython-311.pyclockdown_whitelist.cpython-311.opt-1.pyclockdown_whitelist.cpython-311.pycpolicy.cpython-311.opt-1.pycpolicy.cpython-311.pycservice.cpython-311.opt-1.pycservice.cpython-311.pyczone.cpython-311.opt-1.pyczone.cpython-311.pycdirect.pyfirewalld_conf.pyfunctions.pyhelper.pyicmptype.pyifcfg.pyio_object.pyipset.pylockdown_whitelist.pypolicy.pyservice.pyzone.pyipXtables.pyipset.pylogger.pymodules.pynftables.pyprog.pyrich.pywatcher.pydbus_utils.pyerrors.pyfunctions.pyfw_types.pyserver__init__.py__pycache____init__.cpython-311.opt-1.pyc__init__.cpython-311.pycconfig.cpython-311.opt-1.pycconfig.cpython-311.pycconfig_helper.cpython-311.opt-1.pycconfig_helper.cpython-311.pycconfig_icmptype.cpython-311.opt-1.pycconfig_icmptype.cpython-311.pycconfig_ipset.cpython-311.opt-1.pycconfig_ipset.cpython-311.pycconfig_policy.cpython-311.opt-1.pycconfig_policy.cpython-311.pycconfig_service.cpython-311.opt-1.pycconfig_service.cpython-311.pycconfig_zone.cpython-311.opt-1.pycconfig_zone.cpython-311.pycdbus.cpython-311.opt-1.pycdbus.cpython-311.pycdecorators.cpython-311.opt-1.pycdecorators.cpython-311.pycfirewalld.cpython-311.opt-1.pycfirewalld.cpython-311.pycserver.cpython-311.opt-1.pycserver.cpython-311.pycconfig.pyconfig_helper.pyconfig_icmptype.pyconfig_ipset.pyconfig_policy.pyconfig_service.pyconfig_zone.pydbus.pydecorators.pyfirewalld.pyserver.py/usr/lib/python3.11/site-packages//usr/lib/python3.11/site-packages/firewall//usr/lib/python3.11/site-packages/firewall/__pycache__//usr/lib/python3.11/site-packages/firewall/config//usr/lib/python3.11/site-packages/firewall/config/__pycache__//usr/lib/python3.11/site-packages/firewall/core//usr/lib/python3.11/site-packages/firewall/core/__pycache__//usr/lib/python3.11/site-packages/firewall/core/io//usr/lib/python3.11/site-packages/firewall/core/io/__pycache__//usr/lib/python3.11/site-packages/firewall/server//usr/lib/python3.11/site-packages/firewall/server/__pycache__/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:39607/SUSE_SLE-15-SP6_Update/30896c5440622afb1d4ecaac012bf562-firewalld.SUSE_SLE-15-SP6_Update:python311drpmxz5noarch-suse-linuxdirectoryemptyPython script, ASCII text executableASCII text  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~RRRRRRRRRRRRRRRRR RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR RR RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR R RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR RR 8"Q@l(`P+utf-8cbe5b96e84d837ad32766e9e4ecc2bbd7559481fd94016b5e4689eb0cebce3ce? 7zXZ !t/! ]"k%a J:=6"jM*{5 ;O?lj*dnLjp9O]MBGƖIFBD ]%ToSk['ؤWҹWJƯ *>lr^R%FݏK*T oYSz2xF ör% C^# f 6LE(V$I.U޿7cΩSX/EzۄŜMw"As%0Iɯބ%&C#% _ Aɑq\>_ӆ, WD# ({پ"k4,}]__E /h_ͰC)MNٵʇ(aS,]%A<|xτ%7MU6j6eJE2 5JdCM^*$HJ-tP]#$q=w]׶r^H ?\oB;&*گa7 rwM;pj{+Dб@#YVJ^y)12pSqHZ 6T!`3}W"bZ;,+-arw:MC9s5:9Äo扁z )L7Qވ4<U툱x}}R£[:Xo_Df}ld"ې#\l.|pZ }&&c{/,4EmN}"!bуI7z`;3WTfIy˅$ӎV,%(.([0f)>M% ›'qXOO=F=_&\o7c/0)54XA 0FXΪ.}NhvcFKA(̭p]4C㼁p-n1(c(:jW(xkU_nl gv~1e'r$di,؆ӴGzV"e9'?D4PDxv$ V]ڏ^axnaO肍Rfw~4<,x5վyM!+q'+ܶeЗ)Etu1.b> Adv? J 6mybmjȁ3J QK\:Lr#FULFYFNbݥɢ=]>s!,JWMZ"YuE>Lw;On3;BXTk+1h ~X41Յi:7>;uTؑJW?%F[Ϲ!8N0 :d4|Jػ8aoTyoHl2×+5E3 Q2!Ч?PH ޖr;ĨқuBG-B g (|.-߲?ב{j'}s}=H 89rg5n ԓyQ >TyC›XqD8a":%Ww(5ⲱa26Ju*, ?3.9Ut!S#hzbÕpzŚ3բY6/1 J] RC YZ