From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 0B74DC433EF for ; Tue, 14 Dec 2021 18:50:13 +0000 (UTC) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-583-FnX9MjoaMs-cQUWYGdbITg-1; Tue, 14 Dec 2021 13:50:11 -0500 X-MC-Unique: FnX9MjoaMs-cQUWYGdbITg-1 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 86761801AAB; Tue, 14 Dec 2021 18:50:07 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 417427FB8F; Tue, 14 Dec 2021 18:50:07 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 7BA26180BAAE; Tue, 14 Dec 2021 18:50:05 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx09.intmail.prod.int.rdu2.redhat.com [10.11.54.9]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 1BEIo16q031833 for ; Tue, 14 Dec 2021 13:50:02 -0500 Received: by smtp.corp.redhat.com (Postfix) id C5935492D19; Tue, 14 Dec 2021 18:50:01 +0000 (UTC) Received: from mimecast-mx02.redhat.com (mimecast01.extmail.prod.ext.rdu2.redhat.com [10.11.55.17]) by smtp.corp.redhat.com (Postfix) with ESMTPS id BB84C492D18 for ; Tue, 14 Dec 2021 18:50:01 +0000 (UTC) Received: from us-smtp-1.mimecast.com (us-smtp-1.mimecast.com [207.211.31.81]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 97BB785A5A8 for ; Tue, 14 Dec 2021 18:50:01 +0000 (UTC) Received: from sonic306-27.consmr.mail.ne1.yahoo.com (sonic306-27.consmr.mail.ne1.yahoo.com [66.163.189.89]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-235-NmhplDKBNFupxJLv52dcrg-1; Tue, 14 Dec 2021 13:49:56 -0500 X-MC-Unique: NmhplDKBNFupxJLv52dcrg-1 X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1639507785; bh=CKo7PaV495aSnDyY+D0yOkyTBhcOJlqi2rusHkkSyOo=; h=X-Sonic-MF:Date:Subject:To:From:From:Subject; b=Lz/8rjXejGnWdeb6B+khjvflnYhdrdOqAJiOT+zt1QAceHDqJEUGS/8cDGlBo6RZmR25oXiHYy6HpVAnoXosd+Sla/WsGuze1yB80IUm/cLaBbN1w+60k+32sI/cXzVuwdNsmi4YXhC41B9OM5Hv3mIHNOXPC0H1h8tTbNtGaSG2N/rdC6yIrSYHsdTrT0M5Z7HQaJJG5A+oMcmuFo5ssfm4fun0Q1NAohTefmKEjDN1YnE5j0bBXIXBJFN2ZCgmL1A+We4qlSksouWzeVlT7XlqQaZwHowEE4iUsI+q+fKNIWMsORFKqoG6+yanr6/pHKfvIiFEOcDu1SI0Ks1tdA== X-YMail-OSG: vVWM8rwVM1mjhn7aE1o8PvrE2m3SICFE8qAT3ahwLJuBmUPYJkjCl94PozWukCU 58p0pMyZQay2pVR1uIOYmwbDMU3Ypw_Z6rX9.i11MEKh2LDbfWuBWNLlGGj1nIvzyPUUu3ARtli2 C5N.KuPnpkFrnlTiuK2B9qjpXAqPvOZNthkL9vzdZHEJsS0vdEWiX.FFK2Onr.2PpmlSpJxCeUCc S2mjbf58EGqGBiiFmBPJj.sL9gxKSvowVtqr2QhexY_87EHlc0nmJZBIURODmDTt3etJ9trBYN2W vCwrSFYk3AKXA802X.AQ5VPoRZONNDDcip4PQBMNagrwgKtpcwfXZrY0ReBJBKhfBIcIabmq93nH yA.CpcOVfFMH6UO9etvftb5N043e0UvEEGrUY8tzOBj5ees19qsVezPk3sAejlhz4waxAEILDJWy 3lJuu6WHAOZ9NmGGMBg9P8t6jhi3Fuw4UuxBgvhSbviOjzBOL0iHB.DjhmtebTRXaz4mUIP7CJJi VgHZ2rXJgMtC363WPK878F4muxqjaHB1DrJ0eWTe2W9vmrEi.Mth2aRJV2kn72ayBlbWLTf73nwU IEk7gtmphpO4KUSnrBXKHuw5FloUrzKhhneNOlVoXucUMRIo.4Z6fe719iFSCD3F5Z0TCRpZsdfp LsYxPRKJVP_lFNdpEcR1nysU4qzJ_OPbbEJOzsXPPJ.d408j.t7SWmdshIMN9rVs.3k36WyDPPNb yS4qB4..bv.7H1XAgnl8ylg.L3XYwUFebteRef9gO9NrGCBa5bp6NlqHhVSklIlQj._Lf55f2qh2 l1yfJGnvtzo3RIQqQSDhTP7r0IRsmYVrdd8j5i1rL.b1AhN6CkkbkncsACx1YvTQlPiYX7.8eMXW EYrjMVAzzFx8UoV_W72TF1PefTEKVeGwRM17Pn2_HsN3Lw9eiQJJsUaKHnyWwn2h2sqsLFTerg_U Lez3mTF2hPD25jL9ytLYrEp2xUQ70VKhZuZD3ArxYrULD8bFwKRDPdFb_T_KsxYjwu2.NdoY3ufN ff.uvLNzSAyztm972_PXJj_vTY4oG0ja1bFvT7suMwVlVjmMP5A7foCX1M.VraeQFS4EEo7YwXS8 ACuqH74fXP8J3VlVDckiA1goLNPpH2WpDrMEBkVQ8SAVyuJb9iECUG6e48EyXLb.AcR0aE8SEiB_ JQXPIn5id3pNXOvLbGnOYOPW5igNqiYWTJADivMb3QSChB8zRZ0bLQm3_2ejysqon87EQoUN2RqV qpQWC7vcyF3GpgxHorG6xOk9K4B05UyoATSGi30aeCh4euZ5LHFFYekF502aBlNKxnRWeaSI3IZi JCoiaEUWvzH4o4SRAAe6fJ5wC.SmHgYmdyyRmuQ6pU8esLHjY852yOrIENaNUNJyDzAWeFKcpN55 UPtZe.UV_zRb1ljxAVWvBsT3Xtz0.mhIixOTIJkd0t4oFGd3zqUnl5azLirddnzwQUMjlheCJZKS ZsHS9KkUeY_12kioz7BT4BgW2tHciOFamtrdzKdIPAOOg1b7LAqfwT7XwfOiMEE_hg4UjVgRy5ni QsSnFE0u3D0xkiC0MCe59FY_bg2bq4oqL9CTdzIVl6ebqgH4B5u8QpSkMSd4wjN4LYcDMFLUQcOV C2hM4z47e8L14m5PQtfdt3npWlto87ttRM8WfVLgTrrV0hq5rNDPeAiTLy4JAgluAKgTcjVYTsD4 GUSXZpIwiBEnVoLNC7dnyvme4sTumvyT3hsHlGysSPedlNULEeF5ZUTmPITUbCEOZegYHju9c9jY cwghBGgONy7fv086qCed0OOc6VC_YNLjprOr0v8sSOLXHNUUGuORaPvR0NdJ.bqLJbgmv6rtAKqJ WKkyXCiQl8v0G.GZIYuyN2oif_hS2M7x87VQinkjy9An6rFLyLcemhyuT8B6A27hI.sUqbY4gykG WMxm4n6eGJBZVOlmM12T8AtmSNZDjT2c0g3.laAPPm96dULBdJmdCPXZcoJpFkn97uF.39SaTTyX uzYYXAcyox7liQAXoLYzm_DtiH37DUailNzBxwemjza7kXYN_q9CXZ6miwNjIgMNdnDPw4jsrLFe 8d9sYFtvGQqtmm_ILh4YyrqA6rVs2iD_8NjvOqtlxFqH8TIkQVjwzA8AoRRZTITjuQUQASHcREWe whaUUPMdpGS9NM0eOiG3NrDLh7ryhx1Qwe4gFnsY.SMIZJ3D1AVDQQcAK4Om8bP2KU6Dg4oYIOfq sbucuXG91A1Fz.nwd7lKGRaFdnfl9ptZqtu9J23TFB5c7gEHdANrww54Y.b4ZuyvGxJkCx3XT6He Z X-Sonic-MF: Received: from sonic.gate.mail.ne1.yahoo.com by sonic306.consmr.mail.ne1.yahoo.com with HTTP; Tue, 14 Dec 2021 18:49:45 +0000 Received: by kubenode516.mail-prod1.omega.ne1.yahoo.com (VZM Hermes SMTP Server) with ESMTPA ID d1ec1b0c730e4212d5606a5c05361bcd; Tue, 14 Dec 2021 18:49:41 +0000 (UTC) Message-ID: <52758e36-63aa-a8e8-7aa7-e7217b81cbfe@schaufler-ca.com> Date: Tue, 14 Dec 2021 10:49:39 -0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.4.0 Subject: Re: [PATCH v31 14/28] LSM: Specify which LSM to display To: =?UTF-8?Q?Christian_G=c3=b6ttsche?= References: <20211213234034.111891-1-casey@schaufler-ca.com> <20211213234034.111891-15-casey@schaufler-ca.com> From: Casey Schaufler In-Reply-To: X-Mimecast-Impersonation-Protect: Policy=CLT - Impersonation Protection Definition; Similar Internal Domain=false; Similar Monitored External Domain=false; Custom External Domain=false; Mimecast External Domain=false; Newly Observed Domain=false; Internal User Name=false; Custom Display Name List=false; Reply-to Address Mismatch=false; Targeted Threat Dictionary=false; Mimecast Threat Dictionary=false; Custom Threat Dictionary=false X-Scanned-By: MIMEDefang 2.85 on 10.11.54.9 X-loop: linux-audit@redhat.com Cc: john.johansen@canonical.com, linux-doc@vger.kernel.org, SElinux list , Greg Kroah-Hartman , jmorris@namei.org, linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, linux-audit@redhat.com, linux-api@vger.kernel.org, casey.schaufler@intel.com, Stephen Smalley X-BeenThere: linux-audit@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Linux Audit Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linux-audit-bounces@redhat.com Errors-To: linux-audit-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=linux-audit-bounces@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" T24gMTIvMTQvMjAyMSAxMDozOCBBTSwgQ2hyaXN0aWFuIEfDtnR0c2NoZSB3cm90ZToKPiBPbiBU dWUsIDE0IERlYyAyMDIxIGF0IDAwOjU2LCBDYXNleSBTY2hhdWZsZXIgPGNhc2V5QHNjaGF1Zmxl ci1jYS5jb20+IHdyb3RlOgo+PiBDcmVhdGUgYSBuZXcgZW50cnkgImludGVyZmFjZV9sc20iIGlu IHRoZSBwcm9jZnMgYXR0ciBkaXJlY3RvcnkgZm9yCj4+IGNvbnRyb2xsaW5nIHdoaWNoIExTTSBz ZWN1cml0eSBpbmZvcm1hdGlvbiBpcyBkaXNwbGF5ZWQgZm9yIGEKPj4gcHJvY2Vzcy4gQSBwcm9j ZXNzIGNhbiBvbmx5IHJlYWQgb3Igd3JpdGUgaXRzIG93biBkaXNwbGF5IHZhbHVlLgo+Pgo+PiBU aGUgbmFtZSBvZiBhbiBhY3RpdmUgTFNNIHRoYXQgc3VwcGxpZXMgaG9va3MgZm9yCj4+IGh1bWFu IHJlYWRhYmxlIGRhdGEgbWF5IGJlIHdyaXR0ZW4gdG8gImludGVyZmFjZV9sc20iIHRvIHNldCB0 aGUKPj4gdmFsdWUuIFRoZSBuYW1lIG9mIHRoZSBMU00gY3VycmVudGx5IGluIHVzZSBjYW4gYmUg cmVhZCBmcm9tCj4+ICJpbnRlcmZhY2VfbHNtIi4gQXQgdGhpcyBwb2ludCB0aGVyZSBjYW4gb25s eSBiZSBvbmUgTFNNIGNhcGFibGUKPj4gb2YgZGlzcGxheSBhY3RpdmUuIEEgaGVscGVyIGZ1bmN0 aW9uIGxzbV90YXNrX2lsc20oKSBpcwo+PiBwcm92aWRlZCB0byBnZXQgdGhlIGludGVyZmFjZSBs c20gc2xvdCBmb3IgYSB0YXNrX3N0cnVjdC4KPj4KPj4gU2V0dGluZyB0aGUgImludGVyZmFjZV9s c20iIHJlcXVpcmVzIHRoYXQgYWxsIHNlY3VyaXR5IG1vZHVsZXMgdXNpbmcKPj4gc2V0cHJvY2F0 dHIgaG9va3MgYWxsb3cgdGhlIGFjdGlvbi4gRWFjaCBzZWN1cml0eSBtb2R1bGUgaXMKPj4gcmVz cG9uc2libGUgZm9yIGRlZmluaW5nIGl0cyBwb2xpY3kuCj4+Cj4+IEFwcEFybW9yIGhvb2sgcHJv dmlkZWQgYnkgSm9obiBKb2hhbnNlbiA8am9obi5qb2hhbnNlbkBjYW5vbmljYWwuY29tPgo+PiBT RUxpbnV4IGhvb2sgcHJvdmlkZWQgYnkgU3RlcGhlbiBTbWFsbGV5IDxzdGVwaGVuLnNtYWxsZXku d29ya0BnbWFpbC5jb20+Cj4+Cj4+IFNpZ25lZC1vZmYtYnk6IENhc2V5IFNjaGF1ZmxlciA8Y2Fz ZXlAc2NoYXVmbGVyLWNhLmNvbT4KPj4gQ2M6IEtlZXMgQ29vayA8a2Vlc2Nvb2tAY2hyb21pdW0u b3JnPgo+PiBDYzogU3RlcGhlbiBTbWFsbGV5IDxzdGVwaGVuLnNtYWxsZXkud29ya0BnbWFpbC5j b20+Cj4+IENjOiBQYXVsIE1vb3JlIDxwYXVsQHBhdWwtbW9vcmUuY29tPgo+PiBDYzogSm9obiBK b2hhbnNlbiA8am9obi5qb2hhbnNlbkBjYW5vbmljYWwuY29tPgo+PiBDYzogR3JlZyBLcm9haC1I YXJ0bWFuIDxncmVna2hAbGludXhmb3VuZGF0aW9uLm9yZz4KPj4gQ2M6IGxpbnV4LWFwaUB2Z2Vy Lmtlcm5lbC5vcmcKPj4gQ2M6IGxpbnV4LWRvY0B2Z2VyLmtlcm5lbC5vcmcKPj4gLS0tCj4+ICAg Li4uL0FCSS90ZXN0aW5nL3Byb2Nmcy1hdHRyLWxzbV9kaXNwbGF5ICAgICAgIHwgIDIyICsrKwo+ PiAgIERvY3VtZW50YXRpb24vc2VjdXJpdHkvbHNtLnJzdCAgICAgICAgICAgICAgICB8ICAxNCAr Kwo+PiAgIGZzL3Byb2MvYmFzZS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg MSArCj4+ICAgaW5jbHVkZS9saW51eC9zZWN1cml0eS5oICAgICAgICAgICAgICAgICAgICAgIHwg IDE3ICsrCj4+ICAgc2VjdXJpdHkvYXBwYXJtb3IvaW5jbHVkZS9hcHBhcm1vci5oICAgICAgICAg IHwgICAzICstCj4+ICAgc2VjdXJpdHkvYXBwYXJtb3IvbHNtLmMgICAgICAgICAgICAgICAgICAg ICAgIHwgIDMyICsrKysKPj4gICBzZWN1cml0eS9zZWN1cml0eS5jICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAxNjYgKysrKysrKysrKysrKysrKy0tCj4+ICAgc2VjdXJpdHkvc2VsaW51eC9o b29rcy5jICAgICAgICAgICAgICAgICAgICAgIHwgIDExICsrCj4+ICAgc2VjdXJpdHkvc2VsaW51 eC9pbmNsdWRlL2NsYXNzbWFwLmggICAgICAgICAgIHwgICAyICstCj4+ICAgc2VjdXJpdHkvc21h Y2svc21hY2tfbHNtLmMgICAgICAgICAgICAgICAgICAgIHwgICA3ICsKPj4gICAxMCBmaWxlcyBj aGFuZ2VkLCAyNTYgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCj4+ICAgY3JlYXRlIG1v ZGUgMTAwNjQ0IERvY3VtZW50YXRpb24vQUJJL3Rlc3RpbmcvcHJvY2ZzLWF0dHItbHNtX2Rpc3Bs YXkKPj4KPj4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vQUJJL3Rlc3RpbmcvcHJvY2ZzLWF0 dHItbHNtX2Rpc3BsYXkgYi9Eb2N1bWVudGF0aW9uL0FCSS90ZXN0aW5nL3Byb2Nmcy1hdHRyLWxz bV9kaXNwbGF5Cj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4+IGluZGV4IDAwMDAwMDAwMDAwMC4u MGY2MDAwNWMyMzVjCj4+IC0tLSAvZGV2L251bGwKPj4gKysrIGIvRG9jdW1lbnRhdGlvbi9BQkkv dGVzdGluZy9wcm9jZnMtYXR0ci1sc21fZGlzcGxheQo+PiBAQCAtMCwwICsxLDIyIEBACj4+ICtX aGF0OiAgICAgICAgICAvcHJvYy8qL2F0dHIvbHNtX2Rpc3BsYXkKPj4gK0NvbnRhY3Q6ICAgICAg IGxpbnV4LXNlY3VyaXR5LW1vZHVsZUB2Z2VyLmtlcm5lbC5vcmcsCj4+ICtEZXNjcmlwdGlvbjog ICBUaGUgbmFtZSBvZiB0aGUgTGludXggc2VjdXJpdHkgbW9kdWxlIChMU00pIHRoYXQgd2lsbAo+ PiArICAgICAgICAgICAgICAgcHJvdmlkZSBpbmZvcm1hdGlvbiBpbiB0aGUgL3Byb2MvKi9hdHRy L2N1cnJlbnQsCj4+ICsgICAgICAgICAgICAgICAvcHJvYy8qL2F0dHIvcHJldiBhbmQgL3Byb2Mv Ki9hdHRyL2V4ZWMgaW50ZXJmYWNlcy4KPj4gKyAgICAgICAgICAgICAgIFRoZSBkZXRhaWxzIG9m IHBlcm1pc3Npb25zIHJlcXVpcmVkIHRvIHJlYWQgZnJvbQo+PiArICAgICAgICAgICAgICAgdGhp cyBpbnRlcmZhY2UgYXJlIGRlcGVuZGVudCBvbiB0aGUgTFNNcyBhY3RpdmUgb24gdGhlCj4+ICsg ICAgICAgICAgICAgICBzeXN0ZW0uCj4+ICsgICAgICAgICAgICAgICBBIHByb2Nlc3MgY2Fubm90 IHdyaXRlIHRvIHRoaXMgaW50ZXJmYWNlIHVubGVzcyBpdAo+PiArICAgICAgICAgICAgICAgcmVm ZXJzIHRvIGl0c2VsZi4KPj4gKyAgICAgICAgICAgICAgIFRoZSBvdGhlciBkZXRhaWxzIG9mIHBl cm1pc3Npb25zIHJlcXVpcmVkIHRvIHdyaXRlIHRvCj4+ICsgICAgICAgICAgICAgICB0aGlzIGlu dGVyZmFjZSBhcmUgZGVwZW5kZW50IG9uIHRoZSBMU01zIGFjdGl2ZSBvbiB0aGUKPj4gKyAgICAg ICAgICAgICAgIHN5c3RlbS4KPj4gKyAgICAgICAgICAgICAgIFRoZSBmb3JtYXQgb2YgdGhlIGRh dGEgdXNlZCBieSB0aGlzIGludGVyZmFjZSBpcyBhCj4+ICsgICAgICAgICAgICAgICB0ZXh0IHN0 cmluZyBpZGVudGlmeWluZyB0aGUgbmFtZSBvZiBhbiBMU00uIFRoZSB2YWx1ZXMKPj4gKyAgICAg ICAgICAgICAgIGFjY2VwdGVkIGFyZToKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgc2VsaW51 eCAgICAgICAgIC0gdGhlIFNFTGludXggTFNNCj4+ICsgICAgICAgICAgICAgICAgICAgICAgIHNt YWNrICAgICAgICAgICAtIHRoZSBTbWFjayBMU00KPj4gKyAgICAgICAgICAgICAgICAgICAgICAg YXBwYXJtb3IgICAgICAgIC0gVGhlIEFwcEFybW9yIExTTQo+PiArICAgICAgICAgICAgICAgQnkg Y29udmVudGlvbiB0aGUgTFNNIG5hbWVzIGFyZSBsb3dlciBjYXNlIGFuZCBkbyBub3QKPj4gKyAg ICAgICAgICAgICAgIGNvbnRhaW4gc3BlY2lhbCBjaGFyYWN0ZXJzLgo+PiArVXNlcnM6ICAgICAg ICAgTFNNIHVzZXItc3BhY2UKPj4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vc2VjdXJpdHkv bHNtLnJzdCBiL0RvY3VtZW50YXRpb24vc2VjdXJpdHkvbHNtLnJzdAo+PiBpbmRleCA2YTJhMmU5 NzMwODAuLmI3N2I0YTU0MDM5MSAxMDA2NDQKPj4gLS0tIGEvRG9jdW1lbnRhdGlvbi9zZWN1cml0 eS9sc20ucnN0Cj4+ICsrKyBiL0RvY3VtZW50YXRpb24vc2VjdXJpdHkvbHNtLnJzdAo+PiBAQCAt MTI5LDMgKzEyOSwxNyBAQCB0byBpZGVudGlmeSBpdCBhcyB0aGUgZmlyc3Qgc2VjdXJpdHkgbW9k dWxlIHRvIGJlIHJlZ2lzdGVyZWQuCj4+ICAgVGhlIGNhcGFiaWxpdGllcyBzZWN1cml0eSBtb2R1 bGUgZG9lcyBub3QgdXNlIHRoZSBnZW5lcmFsIHNlY3VyaXR5Cj4+ICAgYmxvYnMsIHVubGlrZSBv dGhlciBtb2R1bGVzLiBUaGUgcmVhc29ucyBhcmUgaGlzdG9yaWNhbCBhbmQgYXJlCj4+ICAgYmFz ZWQgb24gb3ZlcmhlYWQsIGNvbXBsZXhpdHkgYW5kIHBlcmZvcm1hbmNlIGNvbmNlcm5zLgo+PiAr Cj4+ICtMU00gRXh0ZXJuYWwgSW50ZXJmYWNlcwo+PiArPT09PT09PT09PT09PT09PT09PT09PT0K Pj4gKwo+PiArVGhlIExTTSBpbmZyYXN0cnVjdHVyZSBkb2VzIG5vdCBnZW5lcmFsbHkgcHJvdmlk ZSBleHRlcm5hbCBpbnRlcmZhY2VzLgo+PiArVGhlIGluZGl2aWR1YWwgc2VjdXJpdHkgbW9kdWxl cyBwcm92aWRlIHdoYXQgZXh0ZXJuYWwgaW50ZXJmYWNlcyB0aGV5Cj4+ICtyZXF1aXJlLgo+PiAr Cj4+ICtUaGUgZmlsZSBgYC9zeXMva2VybmVsL3NlY3VyaXR5L2xzbWBgIHByb3ZpZGVzIGEgY29t bWEKPj4gK3NlcGFyYXRlZCBsaXN0IG9mIHRoZSBhY3RpdmUgc2VjdXJpdHkgbW9kdWxlcy4KPj4g Kwo+PiArVGhlIGZpbGUgYGAvcHJvYy9waWQvYXR0ci9pbnRlcmZhY2VfbHNtYGAgY29udGFpbnMg dGhlIG5hbWUgb2YgdGhlIHNlY3VyaXR5Cj4+ICttb2R1bGUgZm9yIHdoaWNoIHRoZSBgYC9wcm9j L3BpZC9hdHRyL2N1cnJlbnRgYCBpbnRlcmZhY2Ugd2lsbAo+PiArYXBwbHkuIFRoaXMgaW50ZXJm YWNlIGNhbiBiZSB3cml0dGVuIHRvLgo+PiBkaWZmIC0tZ2l0IGEvZnMvcHJvYy9iYXNlLmMgYi9m cy9wcm9jL2Jhc2UuYwo+PiBpbmRleCAxM2VkYThkZTI5OTguLjUwZGJlNTYxMmEyNiAxMDA2NDQK Pj4gLS0tIGEvZnMvcHJvYy9iYXNlLmMKPj4gKysrIGIvZnMvcHJvYy9iYXNlLmMKPj4gQEAgLTI4 MjgsNiArMjgyOCw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcGlkX2VudHJ5IGF0dHJfZGlyX3N0 dWZmW10gPSB7Cj4+ICAgICAgICAgIEFUVFIoTlVMTCwgImZzY3JlYXRlIiwgICAgICAgICAgMDY2 NiksCj4+ICAgICAgICAgIEFUVFIoTlVMTCwgImtleWNyZWF0ZSIsICAgICAgICAgMDY2NiksCj4+ ICAgICAgICAgIEFUVFIoTlVMTCwgInNvY2tjcmVhdGUiLCAgICAgICAgMDY2NiksCj4+ICsgICAg ICAgQVRUUihOVUxMLCAiaW50ZXJmYWNlX2xzbSIsICAgICAwNjY2KSwKPj4gICAjaWZkZWYgQ09O RklHX1NFQ1VSSVRZX1NNQUNLCj4+ICAgICAgICAgIERJUigic21hY2siLCAgICAgICAgICAgICAg ICAgICAgMDU1NSwKPj4gICAgICAgICAgICAgIHByb2Nfc21hY2tfYXR0cl9kaXJfaW5vZGVfb3Bz LCBwcm9jX3NtYWNrX2F0dHJfZGlyX29wcyksCj4+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4 L3NlY3VyaXR5LmggYi9pbmNsdWRlL2xpbnV4L3NlY3VyaXR5LmgKPj4gaW5kZXggM2I2NTNmZTMz MWRkLi44NzJlNTQzZDM3ZGQgMTAwNjQ0Cj4+IC0tLSBhL2luY2x1ZGUvbGludXgvc2VjdXJpdHku aAo+PiArKysgYi9pbmNsdWRlL2xpbnV4L3NlY3VyaXR5LmgKPj4gQEAgLTIxOSw2ICsyMTksMjMg QEAgc3RhdGljIGlubGluZSB1MzIgbHNtYmxvYl92YWx1ZShjb25zdCBzdHJ1Y3QgbHNtYmxvYiAq YmxvYikKPj4gICAgICAgICAgcmV0dXJuIDA7Cj4+ICAgfQo+Pgo+PiArLyoqCj4+ICsgKiBsc21f dGFza19pbHNtIC0gdGhlICJpbnRlcmZhY2VfbHNtIiBmb3IgdGhpcyB0YXNrCj4+ICsgKiBAdGFz azogVGhlIHRhc2sgdG8gcmVwb3J0IG9uCj4+ICsgKgo+PiArICogUmV0dXJucyB0aGUgdGFzaydz IGludGVyZmFjZSBMU00gc2xvdC4KPj4gKyAqLwo+PiArc3RhdGljIGlubGluZSBpbnQgbHNtX3Rh c2tfaWxzbShzdHJ1Y3QgdGFza19zdHJ1Y3QgKnRhc2spCj4+ICt7Cj4+ICsjaWZkZWYgQ09ORklH X1NFQ1VSSVRZCj4+ICsgICAgICAgaW50ICppbHNtID0gdGFzay0+c2VjdXJpdHk7Cj4+ICsKPj4g KyAgICAgICBpZiAoaWxzbSkKPj4gKyAgICAgICAgICAgICAgIHJldHVybiAqaWxzbTsKPj4gKyNl bmRpZgo+PiArICAgICAgIHJldHVybiBMU01CTE9CX0lOVkFMSUQ7Cj4+ICt9Cj4+ICsKPj4gICAv KiBUaGVzZSBmdW5jdGlvbnMgYXJlIGluIHNlY3VyaXR5L2NvbW1vbmNhcC5jICovCj4+ICAgZXh0 ZXJuIGludCBjYXBfY2FwYWJsZShjb25zdCBzdHJ1Y3QgY3JlZCAqY3JlZCwgc3RydWN0IHVzZXJf bmFtZXNwYWNlICpucywKPj4gICAgICAgICAgICAgICAgICAgICAgICAgaW50IGNhcCwgdW5zaWdu ZWQgaW50IG9wdHMpOwo+PiBkaWZmIC0tZ2l0IGEvc2VjdXJpdHkvYXBwYXJtb3IvaW5jbHVkZS9h cHBhcm1vci5oIGIvc2VjdXJpdHkvYXBwYXJtb3IvaW5jbHVkZS9hcHBhcm1vci5oCj4+IGluZGV4 IDFmYmFiZGI1NjVhOC4uYjE2MjJmY2I0Mzk0IDEwMDY0NAo+PiAtLS0gYS9zZWN1cml0eS9hcHBh cm1vci9pbmNsdWRlL2FwcGFybW9yLmgKPj4gKysrIGIvc2VjdXJpdHkvYXBwYXJtb3IvaW5jbHVk ZS9hcHBhcm1vci5oCj4+IEBAIC0yOCw4ICsyOCw5IEBACj4+ICAgI2RlZmluZSBBQV9DTEFTU19T SUdOQUwgICAgICAgICAgICAgICAgMTAKPj4gICAjZGVmaW5lIEFBX0NMQVNTX05FVCAgICAgICAg ICAgMTQKPj4gICAjZGVmaW5lIEFBX0NMQVNTX0xBQkVMICAgICAgICAgMTYKPj4gKyNkZWZpbmUg QUFfQ0xBU1NfRElTUExBWV9MU00gICAxNwo+Pgo+PiAtI2RlZmluZSBBQV9DTEFTU19MQVNUICAg ICAgICAgIEFBX0NMQVNTX0xBQkVMCj4+ICsjZGVmaW5lIEFBX0NMQVNTX0xBU1QgICAgICAgICAg QUFfQ0xBU1NfRElTUExBWV9MU00KPj4KPj4gICAvKiBDb250cm9sIHBhcmFtZXRlcnMgc2V0dGFi bGUgdGhyb3VnaCBtb2R1bGUvYm9vdCBmbGFncyAqLwo+PiAgIGV4dGVybiBlbnVtIGF1ZGl0X21v ZGUgYWFfZ19hdWRpdDsKPj4gZGlmZiAtLWdpdCBhL3NlY3VyaXR5L2FwcGFybW9yL2xzbS5jIGIv c2VjdXJpdHkvYXBwYXJtb3IvbHNtLmMKPj4gaW5kZXggMjQyNDFkYjhlYzU0Li41ZWQ0MGZkOTNj ZTkgMTAwNjQ0Cj4+IC0tLSBhL3NlY3VyaXR5L2FwcGFybW9yL2xzbS5jCj4+ICsrKyBiL3NlY3Vy aXR5L2FwcGFybW9yL2xzbS5jCj4+IEBAIC02MjEsNiArNjIxLDI1IEBAIHN0YXRpYyBpbnQgYXBw YXJtb3JfZ2V0cHJvY2F0dHIoc3RydWN0IHRhc2tfc3RydWN0ICp0YXNrLCBjaGFyICpuYW1lLAo+ PiAgICAgICAgICByZXR1cm4gZXJyb3I7Cj4+ICAgfQo+Pgo+PiArCj4+ICtzdGF0aWMgaW50IHBy b2ZpbGVfaW50ZXJmYWNlX2xzbShzdHJ1Y3QgYWFfcHJvZmlsZSAqcHJvZmlsZSwKPj4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGNvbW1vbl9hdWRpdF9kYXRhICpzYSkK Pj4gK3sKPj4gKyAgICAgICBzdHJ1Y3QgYWFfcGVybXMgcGVybXMgPSB7IH07Cj4+ICsgICAgICAg dW5zaWduZWQgaW50IHN0YXRlOwo+PiArCj4+ICsgICAgICAgc3RhdGUgPSBQUk9GSUxFX01FRElB VEVTKHByb2ZpbGUsIEFBX0NMQVNTX0RJU1BMQVlfTFNNKTsKPj4gKyAgICAgICBpZiAoc3RhdGUp IHsKPj4gKyAgICAgICAgICAgICAgIGFhX2NvbXB1dGVfcGVybXMocHJvZmlsZS0+cG9saWN5LmRm YSwgc3RhdGUsICZwZXJtcyk7Cj4+ICsgICAgICAgICAgICAgICBhYV9hcHBseV9tb2Rlc190b19w ZXJtcyhwcm9maWxlLCAmcGVybXMpOwo+PiArICAgICAgICAgICAgICAgYWFkKHNhKS0+bGFiZWwg PSAmcHJvZmlsZS0+bGFiZWw7Cj4+ICsKPj4gKyAgICAgICAgICAgICAgIHJldHVybiBhYV9jaGVj a19wZXJtcyhwcm9maWxlLCAmcGVybXMsIEFBX01BWV9XUklURSwgc2EsIE5VTEwpOwo+PiArICAg ICAgIH0KPj4gKwo+PiArICAgICAgIHJldHVybiAwOwo+PiArfQo+PiArCj4+ICAgc3RhdGljIGlu dCBhcHBhcm1vcl9zZXRwcm9jYXR0cihjb25zdCBjaGFyICpuYW1lLCB2b2lkICp2YWx1ZSwKPj4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IHNpemUpCj4+ICAgewo+PiBA QCAtNjMyLDYgKzY1MSwxOSBAQCBzdGF0aWMgaW50IGFwcGFybW9yX3NldHByb2NhdHRyKGNvbnN0 IGNoYXIgKm5hbWUsIHZvaWQgKnZhbHVlLAo+PiAgICAgICAgICBpZiAoc2l6ZSA9PSAwKQo+PiAg ICAgICAgICAgICAgICAgIHJldHVybiAtRUlOVkFMOwo+Pgo+PiArICAgICAgIC8qIExTTSBpbmZy YXN0cnVjdHVyZSBkb2VzIGFjdHVhbCBzZXR0aW5nIG9mIGludGVyZmFjZV9sc20gaWYgYWxsb3dl ZCAqLwo+PiArICAgICAgIGlmICghc3RyY21wKG5hbWUsICJpbnRlcmZhY2VfbHNtIikpIHsKPj4g KyAgICAgICAgICAgICAgIHN0cnVjdCBhYV9wcm9maWxlICpwcm9maWxlOwo+PiArICAgICAgICAg ICAgICAgc3RydWN0IGFhX2xhYmVsICpsYWJlbDsKPj4gKwo+PiArICAgICAgICAgICAgICAgYWFk KCZzYSktPmluZm8gPSAic2V0IGludGVyZmFjZSBsc20iOwo+PiArICAgICAgICAgICAgICAgbGFi ZWwgPSBiZWdpbl9jdXJyZW50X2xhYmVsX2NyaXRfc2VjdGlvbigpOwo+PiArICAgICAgICAgICAg ICAgZXJyb3IgPSBmbl9mb3JfZWFjaF9jb25maW5lZChsYWJlbCwgcHJvZmlsZSwKPj4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2ZpbGVfaW50ZXJmYWNlX2xzbShw cm9maWxlLCAmc2EpKTsKPj4gKyAgICAgICAgICAgICAgIGVuZF9jdXJyZW50X2xhYmVsX2NyaXRf c2VjdGlvbihsYWJlbCk7Cj4+ICsgICAgICAgICAgICAgICByZXR1cm4gZXJyb3I7Cj4+ICsgICAg ICAgfQo+PiArCj4+ICAgICAgICAgIC8qIEFwcEFybW9yIHJlcXVpcmVzIHRoYXQgdGhlIGJ1ZmZl ciBtdXN0IGJlIG51bGwgdGVybWluYXRlZCBhdG0gKi8KPj4gICAgICAgICAgaWYgKGFyZ3Nbc2l6 ZSAtIDFdICE9ICdcMCcpIHsKPj4gICAgICAgICAgICAgICAgICAvKiBudWxsIHRlcm1pbmF0ZSAq Lwo+PiBkaWZmIC0tZ2l0IGEvc2VjdXJpdHkvc2VjdXJpdHkuYyBiL3NlY3VyaXR5L3NlY3VyaXR5 LmMKPj4gaW5kZXggMGUxNzYyMGE2MGUyLi4xZDczNGQ5NTc5ZjEgMTAwNjQ0Cj4+IC0tLSBhL3Nl Y3VyaXR5L3NlY3VyaXR5LmMKPj4gKysrIGIvc2VjdXJpdHkvc2VjdXJpdHkuYwo+PiBAQCAtNzgs NyArNzgsMTYgQEAgc3RhdGljIHN0cnVjdCBrbWVtX2NhY2hlICpsc21fZmlsZV9jYWNoZTsKPj4g ICBzdGF0aWMgc3RydWN0IGttZW1fY2FjaGUgKmxzbV9pbm9kZV9jYWNoZTsKPj4KPj4gICBjaGFy ICpsc21fbmFtZXM7Cj4+IC1zdGF0aWMgc3RydWN0IGxzbV9ibG9iX3NpemVzIGJsb2Jfc2l6ZXMg X19sc21fcm9fYWZ0ZXJfaW5pdDsKPj4gKwo+PiArLyoKPj4gKyAqIFRoZSB0YXNrIGJsb2IgaW5j bHVkZXMgdGhlICJpbnRlcmZhY2VfbHNtIiBzbG90IHVzZWQgZm9yCj4+ICsgKiBjaG9zaW5nIHdo aWNoIG1vZHVsZSBwcmVzZW50cyBjb250ZXh0cy4KPj4gKyAqIFVzaW5nIGEgbG9uZyB0byBhdm9p ZCBwb3RlbnRpYWwgYWxpZ25tZW50IGlzc3VlcyB3aXRoCj4+ICsgKiBtb2R1bGUgYXNzaWduZWQg dGFzayBibG9icy4KPj4gKyAqLwo+PiArc3RhdGljIHN0cnVjdCBsc21fYmxvYl9zaXplcyBibG9i X3NpemVzIF9fbHNtX3JvX2FmdGVyX2luaXQgPSB7Cj4+ICsgICAgICAgLmxic190YXNrID0gc2l6 ZW9mKGxvbmcpLAo+PiArfTsKPj4KPj4gICAvKiBCb290LXRpbWUgTFNNIHVzZXIgY2hvaWNlICov Cj4+ICAgc3RhdGljIF9faW5pdGRhdGEgY29uc3QgY2hhciAqY2hvc2VuX2xzbV9vcmRlcjsKPj4g QEAgLTY3Miw2ICs2ODEsOCBAQCBpbnQgbHNtX2lub2RlX2FsbG9jKHN0cnVjdCBpbm9kZSAqaW5v ZGUpCj4+ICAgICovCj4+ICAgc3RhdGljIGludCBsc21fdGFza19hbGxvYyhzdHJ1Y3QgdGFza19z dHJ1Y3QgKnRhc2spCj4+ICAgewo+PiArICAgICAgIGludCAqaWxzbTsKPj4gKwo+PiAgICAgICAg ICBpZiAoYmxvYl9zaXplcy5sYnNfdGFzayA9PSAwKSB7Cj4+ICAgICAgICAgICAgICAgICAgdGFz ay0+c2VjdXJpdHkgPSBOVUxMOwo+PiAgICAgICAgICAgICAgICAgIHJldHVybiAwOwo+PiBAQCAt NjgwLDYgKzY5MSwxNSBAQCBzdGF0aWMgaW50IGxzbV90YXNrX2FsbG9jKHN0cnVjdCB0YXNrX3N0 cnVjdCAqdGFzaykKPj4gICAgICAgICAgdGFzay0+c2VjdXJpdHkgPSBremFsbG9jKGJsb2Jfc2l6 ZXMubGJzX3Rhc2ssIEdGUF9LRVJORUwpOwo+PiAgICAgICAgICBpZiAodGFzay0+c2VjdXJpdHkg PT0gTlVMTCkKPj4gICAgICAgICAgICAgICAgICByZXR1cm4gLUVOT01FTTsKPj4gKwo+PiArICAg ICAgIC8qCj4+ICsgICAgICAgICogVGhlIHN0YXJ0IG9mIHRoZSB0YXNrIGJsb2IgY29udGFpbnMg dGhlICJpbnRlcmZhY2UiIExTTSBzbG90IG51bWJlci4KPj4gKyAgICAgICAgKiBTdGFydCB3aXRo IGl0IHNldCB0byB0aGUgaW52YWxpZCBzbG90IG51bWJlciwgaW5kaWNhdGluZyB0aGF0IHRoZQo+ PiArICAgICAgICAqIGRlZmF1bHQgZmlyc3QgcmVnaXN0ZXJlZCBMU00gYmUgZGlzcGxheWVkLgo+ PiArICAgICAgICAqLwo+PiArICAgICAgIGlsc20gPSB0YXNrLT5zZWN1cml0eTsKPj4gKyAgICAg ICAqaWxzbSA9IExTTUJMT0JfSU5WQUxJRDsKPj4gKwo+PiAgICAgICAgICByZXR1cm4gMDsKPj4g ICB9Cj4+Cj4+IEBAIC0xNzM2LDE0ICsxNzU2LDI2IEBAIGludCBzZWN1cml0eV9maWxlX29wZW4o c3RydWN0IGZpbGUgKmZpbGUpCj4+Cj4+ICAgaW50IHNlY3VyaXR5X3Rhc2tfYWxsb2Moc3RydWN0 IHRhc2tfc3RydWN0ICp0YXNrLCB1bnNpZ25lZCBsb25nIGNsb25lX2ZsYWdzKQo+PiAgIHsKPj4g KyAgICAgICBpbnQgKm9pbHNtID0gY3VycmVudC0+c2VjdXJpdHk7Cj4+ICsgICAgICAgaW50ICpu aWxzbTsKPj4gICAgICAgICAgaW50IHJjID0gbHNtX3Rhc2tfYWxsb2ModGFzayk7Cj4+Cj4+IC0g ICAgICAgaWYgKHJjKQo+PiArICAgICAgIGlmICh1bmxpa2VseShyYykpCj4+ICAgICAgICAgICAg ICAgICAgcmV0dXJuIHJjOwo+PiArCj4+ICAgICAgICAgIHJjID0gY2FsbF9pbnRfaG9vayh0YXNr X2FsbG9jLCAwLCB0YXNrLCBjbG9uZV9mbGFncyk7Cj4+IC0gICAgICAgaWYgKHVubGlrZWx5KHJj KSkKPj4gKyAgICAgICBpZiAodW5saWtlbHkocmMpKSB7Cj4+ICAgICAgICAgICAgICAgICAgc2Vj dXJpdHlfdGFza19mcmVlKHRhc2spOwo+PiAtICAgICAgIHJldHVybiByYzsKPj4gKyAgICAgICAg ICAgICAgIHJldHVybiByYzsKPj4gKyAgICAgICB9Cj4+ICsKPj4gKyAgICAgICBpZiAob2lsc20p IHsKPj4gKyAgICAgICAgICAgICAgIG5pbHNtID0gdGFzay0+c2VjdXJpdHk7Cj4+ICsgICAgICAg ICAgICAgICBpZiAobmlsc20pCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICpuaWxzbSA9ICpv aWxzbTsKPj4gKyAgICAgICB9Cj4+ICsKPj4gKyAgICAgICByZXR1cm4gMDsKPj4gICB9Cj4+Cj4+ ICAgdm9pZCBzZWN1cml0eV90YXNrX2ZyZWUoc3RydWN0IHRhc2tfc3RydWN0ICp0YXNrKQo+PiBA QCAtMjE3NSwyMyArMjIwNywxMTAgQEAgaW50IHNlY3VyaXR5X2dldHByb2NhdHRyKHN0cnVjdCB0 YXNrX3N0cnVjdCAqcCwgY29uc3QgY2hhciAqbHNtLCBjaGFyICpuYW1lLAo+PiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjaGFyICoqdmFsdWUpCj4+ICAgewo+PiAgICAgICAgICBz dHJ1Y3Qgc2VjdXJpdHlfaG9va19saXN0ICpocDsKPj4gKyAgICAgICBpbnQgaWxzbSA9IGxzbV90 YXNrX2lsc20oY3VycmVudCk7Cj4+ICsgICAgICAgaW50IHNsb3QgPSAwOwo+PiArCj4+ICsgICAg ICAgaWYgKCFzdHJjbXAobmFtZSwgImludGVyZmFjZV9sc20iKSkgewo+PiArICAgICAgICAgICAg ICAgLyoKPj4gKyAgICAgICAgICAgICAgICAqIGxzbV9zbG90IHdpbGwgYmUgMCBpZiB0aGVyZSBh cmUgbm8gZGlzcGxheWluZyBtb2R1bGVzLgo+PiArICAgICAgICAgICAgICAgICovCj4+ICsgICAg ICAgICAgICAgICBpZiAobHNtX3Nsb3QgPT0gMCkKPj4gKyAgICAgICAgICAgICAgICAgICAgICAg cmV0dXJuIC1FSU5WQUw7Cj4+ICsKPj4gKyAgICAgICAgICAgICAgIC8qCj4+ICsgICAgICAgICAg ICAgICAgKiBPbmx5IGFsbG93IGdldHRpbmcgdGhlIGN1cnJlbnQgcHJvY2VzcycgaW50ZXJmYWNl X2xzbS4KPj4gKyAgICAgICAgICAgICAgICAqIFRoZXJlIGFyZSB0b28gZmV3IHJlYXNvbnMgdG8g Z2V0IGFub3RoZXIgcHJvY2VzcycKPj4gKyAgICAgICAgICAgICAgICAqIGludGVyZmFjZV9sc20g YW5kIHRvbyBtYW55IExTTSBwb2xpY3kgaXNzdWVzLgo+PiArICAgICAgICAgICAgICAgICovCj4+ ICsgICAgICAgICAgICAgICBpZiAoY3VycmVudCAhPSBwKQo+PiArICAgICAgICAgICAgICAgICAg ICAgICByZXR1cm4gLUVJTlZBTDsKPj4gKwo+PiArICAgICAgICAgICAgICAgaWxzbSA9IGxzbV90 YXNrX2lsc20ocCk7Cj4+ICsgICAgICAgICAgICAgICBpZiAoaWxzbSAhPSBMU01CTE9CX0lOVkFM SUQpCj4+ICsgICAgICAgICAgICAgICAgICAgICAgIHNsb3QgPSBpbHNtOwo+PiArICAgICAgICAg ICAgICAgKnZhbHVlID0ga3N0cmR1cChsc21fc2xvdGxpc3Rbc2xvdF0tPmxzbSwgR0ZQX0tFUk5F TCk7Cj4+ICsgICAgICAgICAgICAgICBpZiAoKnZhbHVlKQo+PiArICAgICAgICAgICAgICAgICAg ICAgICByZXR1cm4gc3RybGVuKCp2YWx1ZSk7Cj4+ICsgICAgICAgICAgICAgICByZXR1cm4gLUVO T01FTTsKPj4gKyAgICAgICB9Cj4+Cj4+ICAgICAgICAgIGhsaXN0X2Zvcl9lYWNoX2VudHJ5KGhw LCAmc2VjdXJpdHlfaG9va19oZWFkcy5nZXRwcm9jYXR0ciwgbGlzdCkgewo+PiAgICAgICAgICAg ICAgICAgIGlmIChsc20gIT0gTlVMTCAmJiBzdHJjbXAobHNtLCBocC0+bHNtaWQtPmxzbSkpCj4+ ICAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKPj4gKyAgICAgICAgICAgICAgIGlm IChsc20gPT0gTlVMTCAmJiBpbHNtICE9IExTTUJMT0JfSU5WQUxJRCAmJgo+PiArICAgICAgICAg ICAgICAgICAgIGlsc20gIT0gaHAtPmxzbWlkLT5zbG90KQo+PiArICAgICAgICAgICAgICAgICAg ICAgICBjb250aW51ZTsKPj4gICAgICAgICAgICAgICAgICByZXR1cm4gaHAtPmhvb2suZ2V0cHJv Y2F0dHIocCwgbmFtZSwgdmFsdWUpOwo+PiAgICAgICAgICB9Cj4+ICAgICAgICAgIHJldHVybiBM U01fUkVUX0RFRkFVTFQoZ2V0cHJvY2F0dHIpOwo+PiAgIH0KPj4KPj4gKy8qKgo+PiArICogc2Vj dXJpdHlfc2V0cHJvY2F0dHIgLSBTZXQgcHJvY2VzcyBhdHRyaWJ1dGVzIHZpYSAvcHJvYwo+PiAr ICogQGxzbTogbmFtZSBvZiBtb2R1bGUgaW52b2x2ZWQsIG9yIE5VTEwKPj4gKyAqIEBuYW1lOiBu YW1lIG9mIHRoZSBhdHRyaWJ1dGUKPj4gKyAqIEB2YWx1ZTogdmFsdWUgdG8gc2V0IHRoZSBhdHRy aWJ1dGUgdG8KPj4gKyAqIEBzaXplOiBzaXplIG9mIHRoZSB2YWx1ZQo+PiArICoKPj4gKyAqIFNl dCB0aGUgcHJvY2VzcyBhdHRyaWJ1dGUgZm9yIHRoZSBzcGVjaWZpZWQgc2VjdXJpdHkgbW9kdWxl Cj4+ICsgKiB0byB0aGUgc3BlY2lmaWVkIHZhbHVlLiBOb3RlIHRoYXQgdGhpcyBjYW4gb25seSBi ZSB1c2VkIHRvIHNldAo+PiArICogdGhlIHByb2Nlc3MgYXR0cmlidXRlcyBmb3IgdGhlIGN1cnJl bnQsIG9yICJzZWxmIiBwcm9jZXNzLgo+PiArICogVGhlIC9wcm9jIGNvZGUgaGFzIGFscmVhZHkg ZG9uZSB0aGlzIGNoZWNrLgo+PiArICoKPj4gKyAqIFJldHVybnMgMCBvbiBzdWNjZXNzLCBhbiBh cHByb3ByaWF0ZSBjb2RlIG90aGVyd2lzZS4KPj4gKyAqLwo+PiAgIGludCBzZWN1cml0eV9zZXRw cm9jYXR0cihjb25zdCBjaGFyICpsc20sIGNvbnN0IGNoYXIgKm5hbWUsIHZvaWQgKnZhbHVlLAo+ PiAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBzaXplKQo+PiAgIHsKPj4gICAgICAg ICAgc3RydWN0IHNlY3VyaXR5X2hvb2tfbGlzdCAqaHA7Cj4+ICsgICAgICAgY2hhciAqdGVybWVk Owo+PiArICAgICAgIGNoYXIgKmNvcHk7Cj4+ICsgICAgICAgaW50ICppbHNtID0gY3VycmVudC0+ c2VjdXJpdHk7Cj4+ICsgICAgICAgaW50IHJjID0gLUVJTlZBTDsKPj4gKyAgICAgICBpbnQgc2xv dCA9IDA7Cj4+ICsKPj4gKyAgICAgICBpZiAoIXN0cmNtcChuYW1lLCAiaW50ZXJmYWNlX2xzbSIp KSB7Cj4+ICsgICAgICAgICAgICAgICAvKgo+PiArICAgICAgICAgICAgICAgICogQ2hhbmdlIHRo ZSAiaW50ZXJmYWNlX2xzbSIgdmFsdWUgb25seSBpZiBhbGwgdGhlIHNlY3VyaXR5Cj4+ICsgICAg ICAgICAgICAgICAgKiBtb2R1bGVzIHRoYXQgc3VwcG9ydCBzZXR0aW5nIGEgcHJvY2F0dHIgYWxs b3cgaXQuCj4+ICsgICAgICAgICAgICAgICAgKiBJdCBpcyBhc3N1bWVkIHRoYXQgYWxsIHN1Y2gg c2VjdXJpdHkgbW9kdWxlcyB3aWxsIGJlCj4+ICsgICAgICAgICAgICAgICAgKiBjb29wZXJhdGl2 ZS4KPj4gKyAgICAgICAgICAgICAgICAqLwo+PiArICAgICAgICAgICAgICAgaWYgKHNpemUgPT0g MCkKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC1FSU5WQUw7Cj4+ICsKPj4gKyAg ICAgICAgICAgICAgIGhsaXN0X2Zvcl9lYWNoX2VudHJ5KGhwLCAmc2VjdXJpdHlfaG9va19oZWFk cy5zZXRwcm9jYXR0ciwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxp c3QpIHsKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgcmMgPSBocC0+aG9vay5zZXRwcm9jYXR0 cihuYW1lLCB2YWx1ZSwgc2l6ZSk7Cj4+ICsgICAgICAgICAgICAgICAgICAgICAgIGlmIChyYyA8 IDApCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJjOwo+PiArICAg ICAgICAgICAgICAgfQo+PiArCj4+ICsgICAgICAgICAgICAgICByYyA9IC1FSU5WQUw7Cj4+ICsK Pj4gKyAgICAgICAgICAgICAgIGNvcHkgPSBrbWVtZHVwX251bCh2YWx1ZSwgc2l6ZSwgR0ZQX0tF Uk5FTCk7Cj4+ICsgICAgICAgICAgICAgICBpZiAoY29weSA9PSBOVUxMKQo+PiArICAgICAgICAg ICAgICAgICAgICAgICByZXR1cm4gLUVOT01FTTsKPj4gKwo+PiArICAgICAgICAgICAgICAgdGVy bWVkID0gc3Ryc2VwKCZjb3B5LCAiIFxuIik7Cj4+ICsKPj4gKyAgICAgICAgICAgICAgIGZvciAo c2xvdCA9IDA7IHNsb3QgPCBsc21fc2xvdDsgc2xvdCsrKQo+PiArICAgICAgICAgICAgICAgICAg ICAgICBpZiAoIXN0cmNtcCh0ZXJtZWQsIGxzbV9zbG90bGlzdFtzbG90XS0+bHNtKSkgewo+PiAr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICppbHNtID0gbHNtX3Nsb3RsaXN0W3Nsb3Rd LT5zbG90Owo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJjID0gc2l6ZTsKPj4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKPj4gKyAgICAgICAgICAgICAg ICAgICAgICAgfQo+PiArCj4+ICsgICAgICAgICAgICAgICBrZnJlZSh0ZXJtZWQpOwo+PiArICAg ICAgICAgICAgICAgcmV0dXJuIHJjOwo+PiArICAgICAgIH0KPj4KPj4gICAgICAgICAgaGxpc3Rf Zm9yX2VhY2hfZW50cnkoaHAsICZzZWN1cml0eV9ob29rX2hlYWRzLnNldHByb2NhdHRyLCBsaXN0 KSB7Cj4+ICAgICAgICAgICAgICAgICAgaWYgKGxzbSAhPSBOVUxMICYmIHN0cmNtcChsc20sIGhw LT5sc21pZC0+bHNtKSkKPj4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwo+PiAr ICAgICAgICAgICAgICAgaWYgKGxzbSA9PSBOVUxMICYmICppbHNtICE9IExTTUJMT0JfSU5WQUxJ RCAmJgo+PiArICAgICAgICAgICAgICAgICAgICppbHNtICE9IGhwLT5sc21pZC0+c2xvdCkKPj4g KyAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7Cj4+ICAgICAgICAgICAgICAgICAgcmV0 dXJuIGhwLT5ob29rLnNldHByb2NhdHRyKG5hbWUsIHZhbHVlLCBzaXplKTsKPj4gICAgICAgICAg fQo+PiAgICAgICAgICByZXR1cm4gTFNNX1JFVF9ERUZBVUxUKHNldHByb2NhdHRyKTsKPj4gQEAg LTIyMTEsMTUgKzIzMzAsMTUgQEAgRVhQT1JUX1NZTUJPTChzZWN1cml0eV9pc21hY2xhYmVsKTsK Pj4gICBpbnQgc2VjdXJpdHlfc2VjaWRfdG9fc2VjY3R4KHN0cnVjdCBsc21ibG9iICpibG9iLCBj aGFyICoqc2VjZGF0YSwgdTMyICpzZWNsZW4pCj4+ICAgewo+PiAgICAgICAgICBzdHJ1Y3Qgc2Vj dXJpdHlfaG9va19saXN0ICpocDsKPj4gLSAgICAgICBpbnQgcmM7Cj4+ICsgICAgICAgaW50IGls c20gPSBsc21fdGFza19pbHNtKGN1cnJlbnQpOwo+Pgo+PiAgICAgICAgICBobGlzdF9mb3JfZWFj aF9lbnRyeShocCwgJnNlY3VyaXR5X2hvb2tfaGVhZHMuc2VjaWRfdG9fc2VjY3R4LCBsaXN0KSB7 Cj4+ICAgICAgICAgICAgICAgICAgaWYgKFdBUk5fT04oaHAtPmxzbWlkLT5zbG90IDwgMCB8fCBo cC0+bHNtaWQtPnNsb3QgPj0gbHNtX3Nsb3QpKQo+PiAgICAgICAgICAgICAgICAgICAgICAgICAg Y29udGludWU7Cj4+IC0gICAgICAgICAgICAgICByYyA9IGhwLT5ob29rLnNlY2lkX3RvX3NlY2N0 eChibG9iLT5zZWNpZFtocC0+bHNtaWQtPnNsb3RdLAo+PiAtICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc2VjZGF0YSwgc2VjbGVuKTsKPj4gLSAgICAgICAgICAg ICAgIGlmIChyYyAhPSBMU01fUkVUX0RFRkFVTFQoc2VjaWRfdG9fc2VjY3R4KSkKPj4gLSAgICAg ICAgICAgICAgICAgICAgICAgcmV0dXJuIHJjOwo+PiArICAgICAgICAgICAgICAgaWYgKGlsc20g PT0gTFNNQkxPQl9JTlZBTElEIHx8IGlsc20gPT0gaHAtPmxzbWlkLT5zbG90KQo+PiArICAgICAg ICAgICAgICAgICAgICAgICByZXR1cm4gaHAtPmhvb2suc2VjaWRfdG9fc2VjY3R4KAo+PiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvYi0+c2VjaWRbaHAtPmxzbWlk LT5zbG90XSwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlY2Rh dGEsIHNlY2xlbik7Cj4+ICAgICAgICAgIH0KPj4KPj4gICAgICAgICAgcmV0dXJuIExTTV9SRVRf REVGQVVMVChzZWNpZF90b19zZWNjdHgpOwo+PiBAQCAtMjIzMCwxNiArMjM0OSwxNSBAQCBpbnQg c2VjdXJpdHlfc2VjY3R4X3RvX3NlY2lkKGNvbnN0IGNoYXIgKnNlY2RhdGEsIHUzMiBzZWNsZW4s Cj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBsc21ibG9iICpibG9iKQo+ PiAgIHsKPj4gICAgICAgICAgc3RydWN0IHNlY3VyaXR5X2hvb2tfbGlzdCAqaHA7Cj4+IC0gICAg ICAgaW50IHJjOwo+PiArICAgICAgIGludCBpbHNtID0gbHNtX3Rhc2tfaWxzbShjdXJyZW50KTsK Pj4KPj4gICAgICAgICAgbHNtYmxvYl9pbml0KGJsb2IsIDApOwo+PiAgICAgICAgICBobGlzdF9m b3JfZWFjaF9lbnRyeShocCwgJnNlY3VyaXR5X2hvb2tfaGVhZHMuc2VjY3R4X3RvX3NlY2lkLCBs aXN0KSB7Cj4+ICAgICAgICAgICAgICAgICAgaWYgKFdBUk5fT04oaHAtPmxzbWlkLT5zbG90IDwg MCB8fCBocC0+bHNtaWQtPnNsb3QgPj0gbHNtX3Nsb3QpKQo+PiAgICAgICAgICAgICAgICAgICAg ICAgICAgY29udGludWU7Cj4+IC0gICAgICAgICAgICAgICByYyA9IGhwLT5ob29rLnNlY2N0eF90 b19zZWNpZChzZWNkYXRhLCBzZWNsZW4sCj4+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAmYmxvYi0+c2VjaWRbaHAtPmxzbWlkLT5zbG90XSk7Cj4+IC0gICAg ICAgICAgICAgICBpZiAocmMgIT0gMCkKPj4gLSAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJu IHJjOwo+PiArICAgICAgICAgICAgICAgaWYgKGlsc20gPT0gTFNNQkxPQl9JTlZBTElEIHx8IGls c20gPT0gaHAtPmxzbWlkLT5zbG90KQo+PiArICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4g aHAtPmhvb2suc2VjY3R4X3RvX3NlY2lkKHNlY2RhdGEsIHNlY2xlbiwKPj4gKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmJsb2ItPnNlY2lkW2hwLT5sc21p ZC0+c2xvdF0pOwo+PiAgICAgICAgICB9Cj4+ICAgICAgICAgIHJldHVybiAwOwo+PiAgIH0KPj4g QEAgLTIyNDcsNyArMjM2NSwxNCBAQCBFWFBPUlRfU1lNQk9MKHNlY3VyaXR5X3NlY2N0eF90b19z ZWNpZCk7Cj4+Cj4+ICAgdm9pZCBzZWN1cml0eV9yZWxlYXNlX3NlY2N0eChjaGFyICpzZWNkYXRh LCB1MzIgc2VjbGVuKQo+PiAgIHsKPj4gLSAgICAgICBjYWxsX3ZvaWRfaG9vayhyZWxlYXNlX3Nl Y2N0eCwgc2VjZGF0YSwgc2VjbGVuKTsKPj4gKyAgICAgICBzdHJ1Y3Qgc2VjdXJpdHlfaG9va19s aXN0ICpocDsKPj4gKyAgICAgICBpbnQgaWxzbSA9IGxzbV90YXNrX2lsc20oY3VycmVudCk7Cj4+ ICsKPj4gKyAgICAgICBobGlzdF9mb3JfZWFjaF9lbnRyeShocCwgJnNlY3VyaXR5X2hvb2tfaGVh ZHMucmVsZWFzZV9zZWNjdHgsIGxpc3QpCj4+ICsgICAgICAgICAgICAgICBpZiAoaWxzbSA9PSBM U01CTE9CX0lOVkFMSUQgfHwgaWxzbSA9PSBocC0+bHNtaWQtPnNsb3QpIHsKPj4gKyAgICAgICAg ICAgICAgICAgICAgICAgaHAtPmhvb2sucmVsZWFzZV9zZWNjdHgoc2VjZGF0YSwgc2VjbGVuKTsK Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwo+PiArICAgICAgICAgICAgICAgfQo+ PiAgIH0KPj4gICBFWFBPUlRfU1lNQk9MKHNlY3VyaXR5X3JlbGVhc2Vfc2VjY3R4KTsKPj4KPj4g QEAgLTIzODgsOCArMjUxMywxNSBAQCBFWFBPUlRfU1lNQk9MKHNlY3VyaXR5X3NvY2tfcmN2X3Nr Yik7Cj4+ICAgaW50IHNlY3VyaXR5X3NvY2tldF9nZXRwZWVyc2VjX3N0cmVhbShzdHJ1Y3Qgc29j a2V0ICpzb2NrLCBjaGFyIF9fdXNlciAqb3B0dmFsLAo+PiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBpbnQgX191c2VyICpvcHRsZW4sIHVuc2lnbmVkIGxlbikKPj4gICB7 Cj4+IC0gICAgICAgcmV0dXJuIGNhbGxfaW50X2hvb2soc29ja2V0X2dldHBlZXJzZWNfc3RyZWFt LCAtRU5PUFJPVE9PUFQsIHNvY2ssCj4+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg b3B0dmFsLCBvcHRsZW4sIGxlbik7Cj4+ICsgICAgICAgaW50IGlsc20gPSBsc21fdGFza19pbHNt KGN1cnJlbnQpOwo+PiArICAgICAgIHN0cnVjdCBzZWN1cml0eV9ob29rX2xpc3QgKmhwOwo+PiAr Cj4+ICsgICAgICAgaGxpc3RfZm9yX2VhY2hfZW50cnkoaHAsICZzZWN1cml0eV9ob29rX2hlYWRz LnNvY2tldF9nZXRwZWVyc2VjX3N0cmVhbSwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICBsaXN0KQo+PiArICAgICAgICAgICAgICAgaWYgKGlsc20gPT0gTFNNQkxPQl9JTlZBTElEIHx8 IGlsc20gPT0gaHAtPmxzbWlkLT5zbG90KQo+PiArICAgICAgICAgICAgICAgICAgICAgICByZXR1 cm4gaHAtPmhvb2suc29ja2V0X2dldHBlZXJzZWNfc3RyZWFtKHNvY2ssIG9wdHZhbCwKPj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBvcHRsZW4sIGxlbik7Cj4+ICsgICAgICAgcmV0dXJuIC1FTk9QUk9UT09QVDsKPj4gICB9 Cj4+Cj4+ICAgaW50IHNlY3VyaXR5X3NvY2tldF9nZXRwZWVyc2VjX2RncmFtKHN0cnVjdCBzb2Nr ZXQgKnNvY2ssIHN0cnVjdCBza19idWZmICpza2IsCj4+IGRpZmYgLS1naXQgYS9zZWN1cml0eS9z ZWxpbnV4L2hvb2tzLmMgYi9zZWN1cml0eS9zZWxpbnV4L2hvb2tzLmMKPj4gaW5kZXggYzI5NWIx MDM1YmM2Li44MjRhNmU0ZmIxMjYgMTAwNjQ0Cj4+IC0tLSBhL3NlY3VyaXR5L3NlbGludXgvaG9v a3MuYwo+PiArKysgYi9zZWN1cml0eS9zZWxpbnV4L2hvb2tzLmMKPj4gQEAgLTY0NDEsNiArNjQ0 MSwxNyBAQCBzdGF0aWMgaW50IHNlbGludXhfc2V0cHJvY2F0dHIoY29uc3QgY2hhciAqbmFtZSwg dm9pZCAqdmFsdWUsIHNpemVfdCBzaXplKQo+PiAgICAgICAgICAvKgo+PiAgICAgICAgICAgKiBC YXNpYyBjb250cm9sIG92ZXIgYWJpbGl0eSB0byBzZXQgdGhlc2UgYXR0cmlidXRlcyBhdCBhbGwu Cj4+ICAgICAgICAgICAqLwo+PiArCj4+ICsgICAgICAgLyoKPj4gKyAgICAgICAgKiBGb3Igc2V0 dGluZyBpbnRlcmZhY2VfbHNtLCB3ZSBvbmx5IHBlcmZvcm0gYSBwZXJtaXNzaW9uIGNoZWNrOwo+ PiArICAgICAgICAqIHRoZSBhY3R1YWwgdXBkYXRlIHRvIHRoZSBpbnRlcmZhY2VfbHNtIHZhbHVl IGlzIGhhbmRsZWQgYnkgdGhlCj4+ICsgICAgICAgICogTFNNIGZyYW1ld29yay4KPj4gKyAgICAg ICAgKi8KPj4gKyAgICAgICBpZiAoIXN0cmNtcChuYW1lLCAiaW50ZXJmYWNlX2xzbSIpKQo+PiAr ICAgICAgICAgICAgICAgcmV0dXJuIGF2Y19oYXNfcGVybSgmc2VsaW51eF9zdGF0ZSwKPj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXlzaWQsIG15c2lkLCBTRUNDTEFTU19Q Uk9DRVNTMiwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUFJPQ0VTUzJf X1NFVERJU1BMQVksIE5VTEwpOwo+PiArCj4+ICAgICAgICAgIGlmICghc3RyY21wKG5hbWUsICJl eGVjIikpCj4+ICAgICAgICAgICAgICAgICAgZXJyb3IgPSBhdmNfaGFzX3Blcm0oJnNlbGludXhf c3RhdGUsCj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXlzaWQsIG15 c2lkLCBTRUNDTEFTU19QUk9DRVNTLAo+PiBkaWZmIC0tZ2l0IGEvc2VjdXJpdHkvc2VsaW51eC9p bmNsdWRlL2NsYXNzbWFwLmggYi9zZWN1cml0eS9zZWxpbnV4L2luY2x1ZGUvY2xhc3NtYXAuaAo+ PiBpbmRleCAzNWFhYzYyYTY2MmUuLjQ2YTdjZmFmMzkyZCAxMDA2NDQKPj4gLS0tIGEvc2VjdXJp dHkvc2VsaW51eC9pbmNsdWRlL2NsYXNzbWFwLmgKPj4gKysrIGIvc2VjdXJpdHkvc2VsaW51eC9p bmNsdWRlL2NsYXNzbWFwLmgKPj4gQEAgLTUzLDcgKzUzLDcgQEAgc3RydWN0IHNlY3VyaXR5X2Ns YXNzX21hcHBpbmcgc2VjY2xhc3NfbWFwW10gPSB7Cj4+ICAgICAgICAgICAgICAiZXhlY21lbSIs ICJleGVjc3RhY2siLCAiZXhlY2hlYXAiLCAic2V0a2V5Y3JlYXRlIiwKPj4gICAgICAgICAgICAg ICJzZXRzb2NrY3JlYXRlIiwgImdldHJsaW1pdCIsIE5VTEwgfSB9LAo+PiAgICAgICAgICB7ICJw cm9jZXNzMiIsCj4+IC0gICAgICAgICB7ICJubnBfdHJhbnNpdGlvbiIsICJub3N1aWRfdHJhbnNp dGlvbiIsIE5VTEwgfSB9LAo+PiArICAgICAgICAgeyAibm5wX3RyYW5zaXRpb24iLCAibm9zdWlk X3RyYW5zaXRpb24iLCAic2V0ZGlzcGxheSIsIE5VTEwgfSB9LAo+IFdhcyB0aGUgc3VnZ2VzdGlv biB0byB1c2UgYSBtb3JlIGRlc2NyaXB0aXZlIHBlcm1pc3Npb24gdmVyYlsxXQo+IGFjY2VudGRl bnRpYWxseSBmb3Jnb3R0ZW4gb3IgZGljYXJkZWQgZm9yIHNvbWUgcmVhc29uPwoKVGhlIGZvcm1l ci4gSSByZWFsaXplZCBJIGhhZCBtaXNzZWQgaXQgd2hpbGUgdGhlIHBvc3Rpbmcgd2FzCmluIHBy b2dyZXNzLgoKPgo+IFsxXTogaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvc2VsaW51eC82Y2ZjMjYy Yy0xOTgxLWVkY2YtMzliZi0xOTdhODFjZGViZjNAc2NoYXVmbGVyLWNhLmNvbS9ULyNtNjZkODY4 Y2YyNTA5MjhmMGU4ZmRhZTZmZmQ1ZGY3NzUyMjUwMzZiOAo+Cj4+ICAgICAgICAgIHsgInN5c3Rl bSIsCj4+ICAgICAgICAgICAgeyAiaXBjX2luZm8iLCAic3lzbG9nX3JlYWQiLCAic3lzbG9nX21v ZCIsCj4+ICAgICAgICAgICAgICAic3lzbG9nX2NvbnNvbGUiLCAibW9kdWxlX3JlcXVlc3QiLCAi bW9kdWxlX2xvYWQiLCBOVUxMIH0gfSwKPj4gZGlmZiAtLWdpdCBhL3NlY3VyaXR5L3NtYWNrL3Nt YWNrX2xzbS5jIGIvc2VjdXJpdHkvc21hY2svc21hY2tfbHNtLmMKPj4gaW5kZXggOWM0NDMyN2Q4 ZWE3Li4xMDY5YmE3YWJmNDAgMTAwNjQ0Cj4+IC0tLSBhL3NlY3VyaXR5L3NtYWNrL3NtYWNrX2xz bS5jCj4+ICsrKyBiL3NlY3VyaXR5L3NtYWNrL3NtYWNrX2xzbS5jCj4+IEBAIC0zNTE3LDYgKzM1 MTcsMTMgQEAgc3RhdGljIGludCBzbWFja19zZXRwcm9jYXR0cihjb25zdCBjaGFyICpuYW1lLCB2 b2lkICp2YWx1ZSwgc2l6ZV90IHNpemUpCj4+ICAgICAgICAgIHN0cnVjdCBzbWFja19rbm93bl9s aXN0X2VsZW0gKnNrbGVwOwo+PiAgICAgICAgICBpbnQgcmM7Cj4+Cj4+ICsgICAgICAgLyoKPj4g KyAgICAgICAgKiBBbGxvdyB0aGUgL3Byb2MvLi4uL2F0dHIvY3VycmVudCBhbmQgU09fUEVFUlNF QyAiaW50ZXJmYWNlX2xzbSIKPj4gKyAgICAgICAgKiB0byBiZSByZXNldCBhdCB3aWxsLgo+PiAr ICAgICAgICAqLwo+PiArICAgICAgIGlmIChzdHJjbXAobmFtZSwgImludGVyZmFjZV9sc20iKSA9 PSAwKQo+PiArICAgICAgICAgICAgICAgcmV0dXJuIDA7Cj4+ICsKPj4gICAgICAgICAgaWYgKCFz bWFja19wcml2aWxlZ2VkKENBUF9NQUNfQURNSU4pICYmIGxpc3RfZW1wdHkoJnRzcC0+c21rX3Jl bGFiZWwpKQo+PiAgICAgICAgICAgICAgICAgIHJldHVybiAtRVBFUk07Cj4+Cj4+IC0tCj4+IDIu MzEuMQo+PgoKLS0KTGludXgtYXVkaXQgbWFpbGluZyBsaXN0CkxpbnV4LWF1ZGl0QHJlZGhhdC5j b20KaHR0cHM6Ly9saXN0bWFuLnJlZGhhdC5jb20vbWFpbG1hbi9saXN0aW5mby9saW51eC1hdWRp dA==