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 X-Spam-Level: X-Spam-Status: No, score=-3.9 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DB56CC4741F for ; Tue, 22 Sep 2020 13:41:40 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 7167020936 for ; Tue, 22 Sep 2020 13:41:40 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=xen.org header.i=@xen.org header.b="dedpOWBH" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 7167020936 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=xen.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kKiXq-0004JO-Sf; Tue, 22 Sep 2020 13:41:22 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kKiVF-0001gf-9i for xen-devel@lists.xen.org; Tue, 22 Sep 2020 13:38:41 +0000 X-Inumbo-ID: cc05c3e9-28cc-4c45-890f-ffa67c39f595 Received: from mail.xenproject.org (unknown [104.130.215.37]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id cc05c3e9-28cc-4c45-890f-ffa67c39f595; Tue, 22 Sep 2020 13:37:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xen.org; s=20200302mail; h=Date:Message-Id:Subject:CC:From:To:MIME-Version: Content-Transfer-Encoding:Content-Type; bh=5EodKS5n302O7EkAVxpijzq7oQhWiVMBjP82S3AFsSM=; b=dedpOWBHRUjLBXaBxq+0SaJuzP es6fZyQ3j867Us3kEyyFVHZJ7j6JS10jk1tlIZNafraJFSlTIQtI4oUR/bD8rzClJCvtTFxcHTT+8 zFXuB8o3/beCbV57mCZAMjk1WYthkiz/SCF1muR78hTBFSixyrP59JImKGdQRoXXK6rk=; Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1kKiTs-0006pJ-BA; Tue, 22 Sep 2020 13:37:16 +0000 Received: from iwj by xenbits.xenproject.org with local (Exim 4.92) (envelope-from ) id 1kKiTs-0002K0-AD; Tue, 22 Sep 2020 13:37:16 +0000 Content-Type: multipart/mixed; boundary="=separator"; charset="utf-8" Content-Transfer-Encoding: binary MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) To: xen-announce@lists.xen.org, xen-devel@lists.xen.org, xen-users@lists.xen.org, oss-security@lists.openwall.com From: Xen.org security team CC: Xen.org security team Subject: Xen Security Advisory 337 v3 (CVE-2020-25595) - PCI passthrough code reading back hardware registers Message-Id: Date: Tue, 22 Sep 2020 13:37:16 +0000 X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" --=separator Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Xen Security Advisory CVE-2020-25595 / XSA-337 version 3 PCI passthrough code reading back hardware registers UPDATES IN VERSION 3 ==================== Public release. ISSUE DESCRIPTION ================= Code paths in Xen's MSI handling have been identified which act on unsanitized values read back from device hardware registers. While devices strictly compliant with PCI specifications shouldn't be able to affect these registers, experience shows that it's very common for devices to have out-of-spec "backdoor" operations which can affect the result of these reads. IMPACT ====== A not fully trusted guest may be able to crash Xen, leading to a Denial of Service (DoS) for the entire system. Privilege escalation and information leaks cannot be excluded. VULNERABLE SYSTEMS ================== All versions of Xen supporting PCI passthrough are affected. Only x86 systems are vulnerable. Arm systems are not vulnerable. Only guests with passed through PCI devices may be able to leverage the vulnerability. Only systems passing through devices with out-of-spec ("backdoor") functionality can cause issues. Experience shows that such out-of-spec functionality is common; unless you have reason to believe that your device does not have such functionality, it's better to assume that it does. REMINDER OF PCI PASSTHROUGH SUPPORT STATEMENT ============================================= The security team wishes to reiterate our support statement for PCI Device Passthrough (found in xen.git/SUPPORT.md): "Because of hardware limitations (affecting any operating system or hypervisor), it is generally not safe to use this feature to expose a physical device to completely untrusted guests. However, this feature can still confer significant security benefit when used to remove drivers and backends from domain 0 (i.e., Driver Domains)." The possibility of "backdoor" device functionality mentioned above is one of the major reasons for this stance. We issue this XSA to help maintain Driver Domains as a "defense-in-depth", and also on behalf of those who may have done full security audits of their particular hardware platform. It does not change our stance that passing through PCI devices to untrusted guests is in general not safe. MITIGATION ========== Not passing through physical devices to untrusted guests will avoid the vulnerability. CREDITS ======= This issue was discovered by Andrew Cooper of Citrix. RESOLUTION ========== Applying the appropriate pair of attached patches resolves this issue. Note that patches for released versions are generally prepared to apply to the stable branches, and may not apply cleanly to the most recent release tarball. Downstreams are encouraged to update to the tip of the stable branch before applying these patches. xsa337/xsa337-?.patch Xen 4.14 - xen-unstable xsa337/xsa337-4.13-?.patch Xen 4.13 xsa337/xsa337-4.12-?.patch Xen 4.10 - 4.12 $ sha256sum xsa337* xsa337*/* f027d07fb307f5441ee9d19b6385e421bba745059667d181031b0bfd7047a15b xsa337.meta 98c48781dd46bf6ff6cc46246c6c9f2e2be6ec696c0e7918d4b82845588ce04e xsa337/xsa337-1.patch 9e8ae24222371379f2ea62e14fcc7f7282e01c356dff230c22c9ab1d2fb941e2 xsa337/xsa337-2.patch a6744fdab01877e098f88dcd3bee10c3146aef66170a1422b3811cd09fc9faef xsa337/xsa337-4.12-1.patch a091652f1a3c0bf851e35b61d338d53b4690fab828b3c30f354c28c377af2aee xsa337/xsa337-4.12-2.patch fb27fd2508e017bf05131eb3d31bb8cc56c79690cbb7f1af76cb92fd568040a1 xsa337/xsa337-4.13-1.patch a25bc70ad55716ce3a0d9435fa2b0a492420a0eabfb0e3f94cd27de10242d98b xsa337/xsa337-4.13-2.patch $ DEPLOYMENT DURING EMBARGO ========================= Deployment of the patches described above (or others which are substantially similar) is permitted during the embargo, even on public-facing systems with untrusted guest users and administrators. HOWEVER, deployment of the mitigation is NOT permitted (except where all the affected systems and VMs are administered and used only by organisations which are members of the Xen Project Security Issues Predisclosure List). Specifically, deployment on public cloud systems is NOT permitted. This is because removing of pass-through devices or their replacement by emulated devices is a guest visible configuration change, which may lead to re-discovery of the issue. Deployment of this mitigation is permitted only AFTER the embargo ends. AND: Distribution of updated software is prohibited (except to other members of the predisclosure list). Predisclosure list members who wish to deploy significantly different patches and/or mitigations, please contact the Xen Project Security Team. (Note: this during-embargo deployment notice is retained in post-embargo publicly released Xen Project advisories, even though it is then no longer applicable. This is to enable the community to have oversight of the Xen Project Security Team's decisionmaking.) For more information about permissible uses of embargoed information, consult the Xen Project community's agreed Security Policy: http://www.xenproject.org/security-policy.html -----BEGIN PGP SIGNATURE----- iQFABAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAl9p/ecMHHBncEB4ZW4u b3JnAAoJEIP+FMlX6CvZlcIIAKtn9RdA/CjIRcodtfxnnFPQu9SRtmHfLNQ2Vjmu F1nIjjEklUNJSpGlEGjG1cq3oA/SZTm2jYXu2k4rcAyrl0bhaflSoL/N+Fmwo2Ym 898KA8gLdIckagxz5WKVv/vqc3x/h2IZgN4AUgt73buUOxEBFudqJKvnwtep5Z5R 60MDs+lp/5Mp6cXUukAWzPnmtJDWZ4s4QHXHNkKXTUpByZfmGJqqflL6yJDFHSxt vvGpvElApkMP4Ks+rPoCrdG/ObbQvgwMgSJ//tnnWayfs1asOxrRbFlLAt4yVvdt Y6Hi69hHB+ZWO36qy5dvjjKk0ftbrPAPDbDk27y/zuKXhko= =TzZR -----END PGP SIGNATURE----- --=separator Content-Type: application/octet-stream; name="xsa337.meta" Content-Disposition: attachment; filename="xsa337.meta" Content-Transfer-Encoding: base64 ewogICJYU0EiOiAzMzcsCiAgIlN1cHBvcnRlZFZlcnNpb25zIjogWwogICAg Im1hc3RlciIsCiAgICAiNC4xNCIsCiAgICAiNC4xMyIsCiAgICAiNC4xMiIs CiAgICAiNC4xMSIsCiAgICAiNC4xMCIKICBdLAogICJUcmVlcyI6IFsKICAg ICJ4ZW4iCiAgXSwKICAiUmVjaXBlcyI6IHsKICAgICI0LjEwIjogewogICAg ICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVuIjogewogICAgICAgICAgIlN0 YWJsZVJlZiI6ICI5M2JlOTQzZTdkNzU5MDE1YmQ1ZGI0MWE0OGY2ZGNlNThl NTgwZDVhIiwKICAgICAgICAgICJQcmVyZXFzIjogWwogICAgICAgICAgICAz MzYKICAgICAgICAgIF0sCiAgICAgICAgICAiUGF0Y2hlcyI6IFsKICAgICAg ICAgICAgInhzYTMzNy94c2EzMzctNC4xMi0/LnBhdGNoIgogICAgICAgICAg XQogICAgICAgIH0KICAgICAgfQogICAgfSwKICAgICI0LjExIjogewogICAg ICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVuIjogewogICAgICAgICAgIlN0 YWJsZVJlZiI6ICJkZGFhY2NiYmFiNmIxOWJmMjFlZDJjMDk3ZjMwNTVhM2My NTQ0YzhkIiwKICAgICAgICAgICJQcmVyZXFzIjogWwogICAgICAgICAgICAz MzMsCiAgICAgICAgICAgIDMzNgogICAgICAgICAgXSwKICAgICAgICAgICJQ YXRjaGVzIjogWwogICAgICAgICAgICAieHNhMzM3L3hzYTMzNy00LjEyLT8u cGF0Y2giCiAgICAgICAgICBdCiAgICAgICAgfQogICAgICB9CiAgICB9LAog ICAgIjQuMTIiOiB7CiAgICAgICJSZWNpcGVzIjogewogICAgICAgICJ4ZW4i OiB7CiAgICAgICAgICAiU3RhYmxlUmVmIjogIjEzMzZjYTE3NzQyNDcxZmM0 YTU5ODc5YWUyZjYzN2E1OTUzMGE5MzMiLAogICAgICAgICAgIlByZXJlcXMi OiBbCiAgICAgICAgICAgIDMzMywKICAgICAgICAgICAgMzM0LAogICAgICAg ICAgICAzMzYKICAgICAgICAgIF0sCiAgICAgICAgICAiUGF0Y2hlcyI6IFsK ICAgICAgICAgICAgInhzYTMzNy94c2EzMzctNC4xMi0/LnBhdGNoIgogICAg ICAgICAgXQogICAgICAgIH0KICAgICAgfQogICAgfSwKICAgICI0LjEzIjog ewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVuIjogewogICAgICAg ICAgIlN0YWJsZVJlZiI6ICI5YjM2N2IyYjBiNzE0ZjNmZmI2OWVkNmJlMGEx MThlOGQzZWFjMDdmIiwKICAgICAgICAgICJQcmVyZXFzIjogWwogICAgICAg ICAgICAzMzMsCiAgICAgICAgICAgIDMzNCwKICAgICAgICAgICAgMzM2CiAg ICAgICAgICBdLAogICAgICAgICAgIlBhdGNoZXMiOiBbCiAgICAgICAgICAg ICJ4c2EzMzcveHNhMzM3LTQuMTMtPy5wYXRjaCIKICAgICAgICAgIF0KICAg ICAgICB9CiAgICAgIH0KICAgIH0sCiAgICAiNC4xNCI6IHsKICAgICAgIlJl Y2lwZXMiOiB7CiAgICAgICAgInhlbiI6IHsKICAgICAgICAgICJTdGFibGVS ZWYiOiAiYzNhMGZjMjJhZjkwZWYyOGU2OGIxMTZjNmE0OWQ5Y2VjNTdmNzFj ZiIsCiAgICAgICAgICAiUHJlcmVxcyI6IFsKICAgICAgICAgICAgMzMzLAog ICAgICAgICAgICAzMzQsCiAgICAgICAgICAgIDMzNgogICAgICAgICAgXSwK ICAgICAgICAgICJQYXRjaGVzIjogWwogICAgICAgICAgICAieHNhMzM3L3hz YTMzNy0/LnBhdGNoIgogICAgICAgICAgXQogICAgICAgIH0KICAgICAgfQog ICAgfSwKICAgICJtYXN0ZXIiOiB7CiAgICAgICJSZWNpcGVzIjogewogICAg ICAgICJ4ZW4iOiB7CiAgICAgICAgICAiU3RhYmxlUmVmIjogImIxMTkxMDA4 MmQ5MGJiMTU5N2Y2Njc5NTI0ZWI3MjZhMzMzMDY2NzIiLAogICAgICAgICAg IlByZXJlcXMiOiBbCiAgICAgICAgICAgIDMzMywKICAgICAgICAgICAgMzM0 LAogICAgICAgICAgICAzMzYKICAgICAgICAgIF0sCiAgICAgICAgICAiUGF0 Y2hlcyI6IFsKICAgICAgICAgICAgInhzYTMzNy94c2EzMzctPy5wYXRjaCIK ICAgICAgICAgIF0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9Cn0= --=separator Content-Type: application/octet-stream; name="xsa337/xsa337-1.patch" Content-Disposition: attachment; filename="xsa337/xsa337-1.patch" Content-Transfer-Encoding: base64 RnJvbTogUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+ ClN1YmplY3Q6IHg4Ni9tc2k6IGdldCByaWQgb2YgcmVhZF9tc2lfbXNnCgpJ dCdzIHNhZmVyIGFuZCBmYXN0ZXIgdG8ganVzdCB1c2UgdGhlIGNhY2hlZCBs YXN0IHdyaXR0ZW4KKHVudHJhbnNsYXRlZCkgTVNJIG1lc3NhZ2Ugc3RvcmVk IGluIG1zaV9kZXNjIGZvciB0aGUgc2luZ2xlIHVzZXIgdGhhdApjYWxscyBy ZWFkX21zaV9tc2cuCgpUaGlzIGFsc28gcHJldmVudHMgcmVseWluZyBvbiB0 aGUgZGF0YSByZWFkIGZyb20gdGhlIGRldmljZSBNU0kKcmVnaXN0ZXJzIGlu IG9yZGVyIHRvIGZpZ3VyZSBvdXQgdGhlIGluZGV4IGludG8gdGhlIElPTU1V IGludGVycnVwdApyZW1hcHBpbmcgdGFibGUsIHdoaWNoIGlzIG5vdCBzYWZl LgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS0zMzcuCgpSZXBvcnRlZC1ieTogQW5k cmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KUmVxdWVz dGVkLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXgu Y29tPgpTaWduZWQtb2ZmLWJ5OiBSb2dlciBQYXUgTW9ubsOpIDxyb2dlci5w YXVAY2l0cml4LmNvbT4KUmV2aWV3ZWQtYnk6IEphbiBCZXVsaWNoIDxqYmV1 bGljaEBzdXNlLmNvbT4KCi0tLSBhL3hlbi9hcmNoL3g4Ni9tc2kuYworKysg Yi94ZW4vYXJjaC94ODYvbXNpLmMKQEAgLTE4NSw1NCArMTg1LDYgQEAgdm9p ZCBtc2lfY29tcG9zZV9tc2codW5zaWduZWQgdmVjdG9yLCBjbwogICAgICAg ICAgICAgICAgIE1TSV9EQVRBX1ZFQ1RPUih2ZWN0b3IpOwogfQoKLXN0YXRp YyBib29sIHJlYWRfbXNpX21zZyhzdHJ1Y3QgbXNpX2Rlc2MgKmVudHJ5LCBz dHJ1Y3QgbXNpX21zZyAqbXNnKQotewotICAgIHN3aXRjaCAoIGVudHJ5LT5t c2lfYXR0cmliLnR5cGUgKQotICAgIHsKLSAgICBjYXNlIFBDSV9DQVBfSURf TVNJOgotICAgIHsKLSAgICAgICAgc3RydWN0IHBjaV9kZXYgKmRldiA9IGVu dHJ5LT5kZXY7Ci0gICAgICAgIGludCBwb3MgPSBlbnRyeS0+bXNpX2F0dHJp Yi5wb3M7Ci0gICAgICAgIHVpbnQxNl90IGRhdGE7Ci0KLSAgICAgICAgbXNn LT5hZGRyZXNzX2xvID0gcGNpX2NvbmZfcmVhZDMyKGRldi0+c2JkZiwKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zaV9s b3dlcl9hZGRyZXNzX3JlZyhwb3MpKTsKLSAgICAgICAgaWYgKCBlbnRyeS0+ bXNpX2F0dHJpYi5pc182NCApCi0gICAgICAgIHsKLSAgICAgICAgICAgIG1z Zy0+YWRkcmVzc19oaSA9IHBjaV9jb25mX3JlYWQzMihkZXYtPnNiZGYsCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bXNpX3VwcGVyX2FkZHJlc3NfcmVnKHBvcykpOwotICAgICAgICAgICAgZGF0 YSA9IHBjaV9jb25mX3JlYWQxNihkZXYtPnNiZGYsIG1zaV9kYXRhX3JlZyhw b3MsIDEpKTsKLSAgICAgICAgfQotICAgICAgICBlbHNlCi0gICAgICAgIHsK LSAgICAgICAgICAgIG1zZy0+YWRkcmVzc19oaSA9IDA7Ci0gICAgICAgICAg ICBkYXRhID0gcGNpX2NvbmZfcmVhZDE2KGRldi0+c2JkZiwgbXNpX2RhdGFf cmVnKHBvcywgMCkpOwotICAgICAgICB9Ci0gICAgICAgIG1zZy0+ZGF0YSA9 IGRhdGE7Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLSAgICBjYXNlIFBDSV9D QVBfSURfTVNJWDoKLSAgICB7Ci0gICAgICAgIHZvaWQgX19pb21lbSAqYmFz ZSA9IGVudHJ5LT5tYXNrX2Jhc2U7Ci0KLSAgICAgICAgaWYgKCB1bmxpa2Vs eSghbXNpeF9tZW1vcnlfZGVjb2RlZChlbnRyeS0+ZGV2LAotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5LT5tc2lf YXR0cmliLnBvcykpICkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAg ICAgICAgbXNnLT5hZGRyZXNzX2xvID0gcmVhZGwoYmFzZSArIFBDSV9NU0lY X0VOVFJZX0xPV0VSX0FERFJfT0ZGU0VUKTsKLSAgICAgICAgbXNnLT5hZGRy ZXNzX2hpID0gcmVhZGwoYmFzZSArIFBDSV9NU0lYX0VOVFJZX1VQUEVSX0FE RFJfT0ZGU0VUKTsKLSAgICAgICAgbXNnLT5kYXRhID0gcmVhZGwoYmFzZSAr IFBDSV9NU0lYX0VOVFJZX0RBVEFfT0ZGU0VUKTsKLSAgICAgICAgYnJlYWs7 Ci0gICAgfQotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEJVRygpOwotICAgIH0K LQotICAgIGlmICggaW9tbXVfaW50cmVtYXAgKQotICAgICAgICBpb21tdV9y ZWFkX21zaV9mcm9tX2lyZShlbnRyeSwgbXNnKTsKLQotICAgIHJldHVybiB0 cnVlOwotfQotCiBzdGF0aWMgaW50IHdyaXRlX21zaV9tc2coc3RydWN0IG1z aV9kZXNjICplbnRyeSwgc3RydWN0IG1zaV9tc2cgKm1zZykKIHsKICAgICBl bnRyeS0+bXNnID0gKm1zZzsKQEAgLTMwNCwxMCArMjU2LDcgQEAgdm9pZCBz ZXRfbXNpX2FmZmluaXR5KHN0cnVjdCBpcnFfZGVzYyAqZAoKICAgICBBU1NF UlQoc3Bpbl9pc19sb2NrZWQoJmRlc2MtPmxvY2spKTsKCi0gICAgbWVtc2V0 KCZtc2csIDAsIHNpemVvZihtc2cpKTsKLSAgICBpZiAoICFyZWFkX21zaV9t c2cobXNpX2Rlc2MsICZtc2cpICkKLSAgICAgICAgcmV0dXJuOwotCisgICAg bXNnID0gbXNpX2Rlc2MtPm1zZzsKICAgICBtc2cuZGF0YSAmPSB+TVNJX0RB VEFfVkVDVE9SX01BU0s7CiAgICAgbXNnLmRhdGEgfD0gTVNJX0RBVEFfVkVD VE9SKGRlc2MtPmFyY2gudmVjdG9yKTsKICAgICBtc2cuYWRkcmVzc19sbyAm PSB+TVNJX0FERFJfREVTVF9JRF9NQVNLOwo= --=separator Content-Type: application/octet-stream; name="xsa337/xsa337-2.patch" Content-Disposition: attachment; filename="xsa337/xsa337-2.patch" Content-Transfer-Encoding: base64 RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0 OiB4ODYvTVNJLVg6IHJlc3RyaWN0IHJlYWRpbmcgb2YgdGFibGUvUEJBIGJh c2VzIGZyb20gQkFScwoKV2hlbiBhc3NpZ25lZCB0byBsZXNzIHRydXN0ZWQg b3IgdW4tdHJ1c3RlZCBndWVzdHMsIGRldmljZXMgbWF5IGNoYW5nZQpzdGF0 ZSBiZWhpbmQgb3VyIGJhY2tzICh0aGV5IG1heSBlLmcuIGdldCByZXNldCBi eSBtZWFucyB3ZSBtYXkgbm90IGtub3cKYWJvdXQpLiBUaGVyZWZvcmUgd2Ug c2hvdWxkIGF2b2lkIHJlYWRpbmcgQkFScyBmcm9tIGhhcmR3YXJlIG9uY2Ug YQpkZXZpY2UgaXMgbm8gbG9uZ2VyIG93bmVkIGJ5IERvbTAuIEZ1cnRoZXJt b3JlIHdoZW4gd2UgY2FuJ3QgcmVhZCBhIEJBUiwKb3Igd2hlbiB3ZSByZWFk IHplcm8sIHdlIHNob3VsZG4ndCBpbnN0ZWFkIHVzZSB0aGUgY2FsbGVyIHBy b3ZpZGVkCmFkZHJlc3MgdW5sZXNzIHRoYXQgY2FsbGVyIGNhbiBiZSB0cnVz dGVkLgoKUmUtYXJyYW5nZSB0aGUgbG9naWMgaW4gbXNpeF9jYXBhYmlsaXR5 X2luaXQoKSBzdWNoIHRoYXQgb25seSBEb20wIChhbmQKb25seSBpZiB0aGUg ZGV2aWNlIGlzbid0IERvbVUtb3duZWQgeWV0KSBvciBjYWxscyB0aHJvdWdo ClBIWVNERVZPUF9wcmVwYXJlX21zaXggd2lsbCBhY3R1YWxseSByZXN1bHQg aW4gdGhlIHJlYWRpbmcgb2YgdGhlCnJlc3BlY3RpdmUgQkFSIHJlZ2lzdGVy KHMpLiBBZGRpdGlvbmFsbHkgZG8gc28gb25seSBhcyBsb25nIGFzIGluLXVz ZQp0YWJsZSBlbnRyaWVzIGFyZSBrbm93biAobm90ZSB0aGF0IGludm9jYXRp b24gb2YgUEhZU0RFVk9QX3ByZXBhcmVfbXNpeApjb3VudHMgYXMgYSAicHNl dWRvIiBlbnRyeSkuIEluIGFsbCBvdGhlciB1c2VzIHRoZSB2YWx1ZSBhbHJl YWR5CnJlY29yZGVkIHdpbGwgZ2V0IHVzZWQgaW5zdGVhZC4KCkNsZWFyIHRo ZSByZWNvcmRlZCB2YWx1ZXMgaW4gX3BjaV9jbGVhbnVwX21zaXgoKSBhcyB3 ZWxsIGFzIG9uIHRoZSBvbmUKYWZmZWN0ZWQgZXJyb3IgcGF0aC4gKEFkanVz dCB0aGlzIGVycm9yIHBhdGggdG8gYWxzbyBhdm9pZCBibGluZGx5CmRpc2Fi bGluZyBNU0ktWCB3aGVuIGl0IHdhcyBlbmFibGVkIG9uIGVudHJ5IHRvIHRo ZSBmdW5jdGlvbi4pCgpXaGlsZSBtb3ZpbmcgYXJvdW5kIHZhcmlhYmxlIGRl Y2xhcmF0aW9ucyAoaW4gbWFueSBjYXNlcyB0byByZWR1Y2UgdGhlaXIKc2Nv cGVzKSwgYWxzbyBhZGp1c3Qgc29tZSBvZiB0aGVpciB0eXBlcy4KClRoaXMg aXMgcGFydCBvZiBYU0EtMzM3LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUm9nZXIgUGF1 IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+Ci0tLQp2MjogVXNlICJ1 bnNpZ25lZCBpbnQiIGZvciBtb3ZlZCBiaXIsIHBidXMsIGV0Yy4gRnVydGhl ciByZXN0cmljdCB1bmRlcgogICAgd2hhdCBjb25kaXRpb25zIHRvIHJlYWQg dGhlIEJBUihzKS4KCi0tLSBhL3hlbi9hcmNoL3g4Ni9tc2kuYworKysgYi94 ZW4vYXJjaC94ODYvbXNpLmMKQEAgLTc3MSwxNiArNzcxLDE0IEBAIHN0YXRp YyBpbnQgbXNpeF9jYXBhYmlsaXR5X2luaXQoc3RydWN0IHAKIHsKICAgICBz dHJ1Y3QgYXJjaF9tc2l4ICptc2l4ID0gZGV2LT5tc2l4OwogICAgIHN0cnVj dCBtc2lfZGVzYyAqZW50cnkgPSBOVUxMOwotICAgIGludCB2ZjsKICAgICB1 MTYgY29udHJvbDsKICAgICB1NjQgdGFibGVfcGFkZHI7CiAgICAgdTMyIHRh YmxlX29mZnNldDsKLSAgICB1OCBiaXIsIHBidXMsIHBzbG90LCBwZnVuYzsK ICAgICB1MTYgc2VnID0gZGV2LT5zZWc7CiAgICAgdTggYnVzID0gZGV2LT5i dXM7CiAgICAgdTggc2xvdCA9IFBDSV9TTE9UKGRldi0+ZGV2Zm4pOwogICAg IHU4IGZ1bmMgPSBQQ0lfRlVOQyhkZXYtPmRldmZuKTsKLSAgICBib29sIG1h c2thbGwgPSBtc2l4LT5ob3N0X21hc2thbGw7CisgICAgYm9vbCBtYXNrYWxs ID0gbXNpeC0+aG9zdF9tYXNrYWxsLCB6YXBfb25fZXJyb3IgPSBmYWxzZTsK ICAgICB1bnNpZ25lZCBpbnQgcG9zID0gcGNpX2ZpbmRfY2FwX29mZnNldChz ZWcsIGJ1cywgc2xvdCwgZnVuYywKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBQQ0lfQ0FQX0lEX01TSVgpOwogCkBAIC04 MjIsNDMgKzgyMCw0NSBAQCBzdGF0aWMgaW50IG1zaXhfY2FwYWJpbGl0eV9p bml0KHN0cnVjdCBwCiAKICAgICAvKiBMb2NhdGUgTVNJLVggdGFibGUgcmVn aW9uICovCiAgICAgdGFibGVfb2Zmc2V0ID0gcGNpX2NvbmZfcmVhZDMyKGRl di0+c2JkZiwgbXNpeF90YWJsZV9vZmZzZXRfcmVnKHBvcykpOwotICAgIGJp ciA9ICh1OCkodGFibGVfb2Zmc2V0ICYgUENJX01TSVhfQklSTUFTSyk7Ci0g ICAgdGFibGVfb2Zmc2V0ICY9IH5QQ0lfTVNJWF9CSVJNQVNLOworICAgIGlm ICggIW1zaXgtPnVzZWRfZW50cmllcyAmJgorICAgICAgICAgKCFtc2kgfHwK KyAgICAgICAgICAoaXNfaGFyZHdhcmVfZG9tYWluKGN1cnJlbnQtPmRvbWFp bikgJiYKKyAgICAgICAgICAgKGRldi0+ZG9tYWluID09IGN1cnJlbnQtPmRv bWFpbiB8fCBkZXYtPmRvbWFpbiA9PSBkb21faW8pKSkgKQorICAgIHsKKyAg ICAgICAgdW5zaWduZWQgaW50IGJpciA9IHRhYmxlX29mZnNldCAmIFBDSV9N U0lYX0JJUk1BU0ssIHBidXMsIHBzbG90LCBwZnVuYzsKKyAgICAgICAgaW50 IHZmOworICAgICAgICBwYWRkcl90IHBiYV9wYWRkcjsKKyAgICAgICAgdW5z aWduZWQgaW50IHBiYV9vZmZzZXQ7CiAKLSAgICBpZiAoICFkZXYtPmluZm8u aXNfdmlydGZuICkKLSAgICB7Ci0gICAgICAgIHBidXMgPSBidXM7Ci0gICAg ICAgIHBzbG90ID0gc2xvdDsKLSAgICAgICAgcGZ1bmMgPSBmdW5jOwotICAg ICAgICB2ZiA9IC0xOwotICAgIH0KLSAgICBlbHNlCi0gICAgewotICAgICAg ICBwYnVzID0gZGV2LT5pbmZvLnBoeXNmbi5idXM7Ci0gICAgICAgIHBzbG90 ID0gUENJX1NMT1QoZGV2LT5pbmZvLnBoeXNmbi5kZXZmbik7Ci0gICAgICAg IHBmdW5jID0gUENJX0ZVTkMoZGV2LT5pbmZvLnBoeXNmbi5kZXZmbik7Ci0g ICAgICAgIHZmID0gUENJX0JERjIoZGV2LT5idXMsIGRldi0+ZGV2Zm4pOwot ICAgIH0KLQotICAgIHRhYmxlX3BhZGRyID0gcmVhZF9wY2lfbWVtX2Jhcihz ZWcsIHBidXMsIHBzbG90LCBwZnVuYywgYmlyLCB2Zik7Ci0gICAgV0FSTl9P Tihtc2kgJiYgbXNpLT50YWJsZV9iYXNlICE9IHRhYmxlX3BhZGRyKTsKLSAg ICBpZiAoICF0YWJsZV9wYWRkciApCi0gICAgewotICAgICAgICBpZiAoICFt c2kgfHwgIW1zaS0+dGFibGVfYmFzZSApCisgICAgICAgIGlmICggIWRldi0+ aW5mby5pc192aXJ0Zm4gKQogICAgICAgICB7Ci0gICAgICAgICAgICBwY2lf Y29uZl93cml0ZTE2KGRldi0+c2JkZiwgbXNpeF9jb250cm9sX3JlZyhwb3Mp LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250cm9sICYgflBD SV9NU0lYX0ZMQUdTX0VOQUJMRSk7Ci0gICAgICAgICAgICB4ZnJlZShlbnRy eSk7Ci0gICAgICAgICAgICByZXR1cm4gLUVOWElPOworICAgICAgICAgICAg cGJ1cyA9IGJ1czsKKyAgICAgICAgICAgIHBzbG90ID0gc2xvdDsKKyAgICAg ICAgICAgIHBmdW5jID0gZnVuYzsKKyAgICAgICAgICAgIHZmID0gLTE7Cisg ICAgICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICB7CisgICAgICAgICAg ICBwYnVzID0gZGV2LT5pbmZvLnBoeXNmbi5idXM7CisgICAgICAgICAgICBw c2xvdCA9IFBDSV9TTE9UKGRldi0+aW5mby5waHlzZm4uZGV2Zm4pOworICAg ICAgICAgICAgcGZ1bmMgPSBQQ0lfRlVOQyhkZXYtPmluZm8ucGh5c2ZuLmRl dmZuKTsKKyAgICAgICAgICAgIHZmID0gUENJX0JERjIoZGV2LT5idXMsIGRl di0+ZGV2Zm4pOwogICAgICAgICB9Ci0gICAgICAgIHRhYmxlX3BhZGRyID0g bXNpLT50YWJsZV9iYXNlOwotICAgIH0KLSAgICB0YWJsZV9wYWRkciArPSB0 YWJsZV9vZmZzZXQ7CiAKLSAgICBpZiAoICFtc2l4LT51c2VkX2VudHJpZXMg KQotICAgIHsKLSAgICAgICAgdTY0IHBiYV9wYWRkcjsKLSAgICAgICAgdTMy IHBiYV9vZmZzZXQ7CisgICAgICAgIHRhYmxlX3BhZGRyID0gcmVhZF9wY2lf bWVtX2JhcihzZWcsIHBidXMsIHBzbG90LCBwZnVuYywgYmlyLCB2Zik7Cisg ICAgICAgIFdBUk5fT04obXNpICYmIG1zaS0+dGFibGVfYmFzZSAhPSB0YWJs ZV9wYWRkcik7CisgICAgICAgIGlmICggIXRhYmxlX3BhZGRyICkKKyAgICAg ICAgeworICAgICAgICAgICAgaWYgKCAhbXNpIHx8ICFtc2ktPnRhYmxlX2Jh c2UgKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHBjaV9jb25m X3dyaXRlMTYoZGV2LT5zYmRmLCBtc2l4X2NvbnRyb2xfcmVnKHBvcyksCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250cm9sICYgflBD SV9NU0lYX0ZMQUdTX0VOQUJMRSk7CisgICAgICAgICAgICAgICAgeGZyZWUo ZW50cnkpOworICAgICAgICAgICAgICAgIHJldHVybiAtRU5YSU87CisgICAg ICAgICAgICB9CisgICAgICAgICAgICB0YWJsZV9wYWRkciA9IG1zaS0+dGFi bGVfYmFzZTsKKyAgICAgICAgfQorICAgICAgICB0YWJsZV9wYWRkciArPSB0 YWJsZV9vZmZzZXQgJiB+UENJX01TSVhfQklSTUFTSzsKIAogICAgICAgICBt c2l4LT50YWJsZS5maXJzdCA9IFBGTl9ET1dOKHRhYmxlX3BhZGRyKTsKICAg ICAgICAgbXNpeC0+dGFibGUubGFzdCA9IFBGTl9ET1dOKHRhYmxlX3BhZGRy ICsKQEAgLTg3Nyw3ICs4NzcsMTggQEAgc3RhdGljIGludCBtc2l4X2NhcGFi aWxpdHlfaW5pdChzdHJ1Y3QgcAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEJJVFNfVE9fTE9OR1MobXNpeC0+bnJfZW50cmllcykgLSAx KTsKICAgICAgICAgV0FSTl9PTihyYW5nZXNldF9vdmVybGFwc19yYW5nZSht bWlvX3JvX3JhbmdlcywgbXNpeC0+cGJhLmZpcnN0LAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zaXgtPnBiYS5sYXN0KSk7 CisKKyAgICAgICAgemFwX29uX2Vycm9yID0gdHJ1ZTsKKyAgICB9CisgICAg ZWxzZSBpZiAoICFtc2l4LT50YWJsZS5maXJzdCApCisgICAgeworICAgICAg ICBwY2lfY29uZl93cml0ZTE2KGRldi0+c2JkZiwgbXNpeF9jb250cm9sX3Jl Zyhwb3MpLCBjb250cm9sKTsKKyAgICAgICAgeGZyZWUoZW50cnkpOworICAg ICAgICByZXR1cm4gLUVOT0RBVEE7CiAgICAgfQorICAgIGVsc2UKKyAgICAg ICAgdGFibGVfcGFkZHIgPSAobXNpeC0+dGFibGUuZmlyc3QgPDwgUEFHRV9T SElGVCkgKworICAgICAgICAgICAgICAgICAgICAgIFBBR0VfT0ZGU0VUKHRh YmxlX29mZnNldCAmIH5QQ0lfTVNJWF9CSVJNQVNLKTsKIAogICAgIGlmICgg ZW50cnkgKQogICAgIHsKQEAgLTg4OCw4ICs4OTksMTUgQEAgc3RhdGljIGlu dCBtc2l4X2NhcGFiaWxpdHlfaW5pdChzdHJ1Y3QgcAogCiAgICAgICAgIGlm ICggaWR4IDwgMCApCiAgICAgICAgIHsKLSAgICAgICAgICAgIHBjaV9jb25m X3dyaXRlMTYoZGV2LT5zYmRmLCBtc2l4X2NvbnRyb2xfcmVnKHBvcyksCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2wgJiB+UENJX01T SVhfRkxBR1NfRU5BQkxFKTsKKyAgICAgICAgICAgIGlmICggemFwX29uX2Vy cm9yICkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBtc2l4LT50 YWJsZS5maXJzdCA9IDA7CisgICAgICAgICAgICAgICAgbXNpeC0+cGJhLmZp cnN0ID0gMDsKKworICAgICAgICAgICAgICAgIGNvbnRyb2wgJj0gflBDSV9N U0lYX0ZMQUdTX0VOQUJMRTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAg ICAgcGNpX2NvbmZfd3JpdGUxNihkZXYtPnNiZGYsIG1zaXhfY29udHJvbF9y ZWcocG9zKSwgY29udHJvbCk7CiAgICAgICAgICAgICB4ZnJlZShlbnRyeSk7 CiAgICAgICAgICAgICByZXR1cm4gaWR4OwogICAgICAgICB9CkBAIC0xMDcy LDkgKzEwOTAsMTQgQEAgc3RhdGljIHZvaWQgX3BjaV9jbGVhbnVwX21zaXgo c3RydWN0IGFyYwogICAgICAgICBpZiAoIHJhbmdlc2V0X3JlbW92ZV9yYW5n ZShtbWlvX3JvX3JhbmdlcywgbXNpeC0+dGFibGUuZmlyc3QsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zaXgtPnRhYmxlLmxhc3Qp ICkKICAgICAgICAgICAgIFdBUk4oKTsKKyAgICAgICAgbXNpeC0+dGFibGUu Zmlyc3QgPSAwOworICAgICAgICBtc2l4LT50YWJsZS5sYXN0ID0gMDsKKwog ICAgICAgICBpZiAoIHJhbmdlc2V0X3JlbW92ZV9yYW5nZShtbWlvX3JvX3Jh bmdlcywgbXNpeC0+cGJhLmZpcnN0LAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBtc2l4LT5wYmEubGFzdCkgKQogICAgICAgICAgICAg V0FSTigpOworICAgICAgICBtc2l4LT5wYmEuZmlyc3QgPSAwOworICAgICAg ICBtc2l4LT5wYmEubGFzdCA9IDA7CiAgICAgfQogfQogCg== --=separator Content-Type: application/octet-stream; name="xsa337/xsa337-4.12-1.patch" Content-Disposition: attachment; filename="xsa337/xsa337-4.12-1.patch" Content-Transfer-Encoding: base64 RnJvbTogUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+ ClN1YmplY3Q6IHg4Ni9tc2k6IGdldCByaWQgb2YgcmVhZF9tc2lfbXNnCgpJ dCdzIHNhZmVyIGFuZCBmYXN0ZXIgdG8ganVzdCB1c2UgdGhlIGNhY2hlZCBs YXN0IHdyaXR0ZW4KKHVudHJhbnNsYXRlZCkgTVNJIG1lc3NhZ2Ugc3RvcmVk IGluIG1zaV9kZXNjIGZvciB0aGUgc2luZ2xlIHVzZXIgdGhhdApjYWxscyBy ZWFkX21zaV9tc2cuCgpUaGlzIGFsc28gcHJldmVudHMgcmVseWluZyBvbiB0 aGUgZGF0YSByZWFkIGZyb20gdGhlIGRldmljZSBNU0kKcmVnaXN0ZXJzIGlu IG9yZGVyIHRvIGZpZ3VyZSBvdXQgdGhlIGluZGV4IGludG8gdGhlIElPTU1V IGludGVycnVwdApyZW1hcHBpbmcgdGFibGUsIHdoaWNoIGlzIG5vdCBzYWZl LgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS0zMzcuCgpSZXBvcnRlZC1ieTogQW5k cmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KUmVxdWVz dGVkLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXgu Y29tPgpTaWduZWQtb2ZmLWJ5OiBSb2dlciBQYXUgTW9ubsOpIDxyb2dlci5w YXVAY2l0cml4LmNvbT4KUmV2aWV3ZWQtYnk6IEphbiBCZXVsaWNoIDxqYmV1 bGljaEBzdXNlLmNvbT4KCi0tLSBhL3hlbi9hcmNoL3g4Ni9tc2kuYworKysg Yi94ZW4vYXJjaC94ODYvbXNpLmMKQEAgLTE5Miw1OSArMTkyLDYgQEAgdm9p ZCBtc2lfY29tcG9zZV9tc2codW5zaWduZWQgdmVjdG9yLCBjbwogICAgICAg ICAgICAgICAgIE1TSV9EQVRBX1ZFQ1RPUih2ZWN0b3IpOwogfQoKLXN0YXRp YyBib29sIHJlYWRfbXNpX21zZyhzdHJ1Y3QgbXNpX2Rlc2MgKmVudHJ5LCBz dHJ1Y3QgbXNpX21zZyAqbXNnKQotewotICAgIHN3aXRjaCAoIGVudHJ5LT5t c2lfYXR0cmliLnR5cGUgKQotICAgIHsKLSAgICBjYXNlIFBDSV9DQVBfSURf TVNJOgotICAgIHsKLSAgICAgICAgc3RydWN0IHBjaV9kZXYgKmRldiA9IGVu dHJ5LT5kZXY7Ci0gICAgICAgIGludCBwb3MgPSBlbnRyeS0+bXNpX2F0dHJp Yi5wb3M7Ci0gICAgICAgIHUxNiBkYXRhLCBzZWcgPSBkZXYtPnNlZzsKLSAg ICAgICAgdTggYnVzID0gZGV2LT5idXM7Ci0gICAgICAgIHU4IHNsb3QgPSBQ Q0lfU0xPVChkZXYtPmRldmZuKTsKLSAgICAgICAgdTggZnVuYyA9IFBDSV9G VU5DKGRldi0+ZGV2Zm4pOwotCi0gICAgICAgIG1zZy0+YWRkcmVzc19sbyA9 IHBjaV9jb25mX3JlYWQzMihzZWcsIGJ1cywgc2xvdCwgZnVuYywKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zaV9sb3dl cl9hZGRyZXNzX3JlZyhwb3MpKTsKLSAgICAgICAgaWYgKCBlbnRyeS0+bXNp X2F0dHJpYi5pc182NCApCi0gICAgICAgIHsKLSAgICAgICAgICAgIG1zZy0+ YWRkcmVzc19oaSA9IHBjaV9jb25mX3JlYWQzMihzZWcsIGJ1cywgc2xvdCwg ZnVuYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBtc2lfdXBwZXJfYWRkcmVzc19yZWcocG9zKSk7Ci0gICAgICAg ICAgICBkYXRhID0gcGNpX2NvbmZfcmVhZDE2KHNlZywgYnVzLCBzbG90LCBm dW5jLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2lf ZGF0YV9yZWcocG9zLCAxKSk7Ci0gICAgICAgIH0KLSAgICAgICAgZWxzZQot ICAgICAgICB7Ci0gICAgICAgICAgICBtc2ctPmFkZHJlc3NfaGkgPSAwOwot ICAgICAgICAgICAgZGF0YSA9IHBjaV9jb25mX3JlYWQxNihzZWcsIGJ1cywg c2xvdCwgZnVuYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgbXNpX2RhdGFfcmVnKHBvcywgMCkpOwotICAgICAgICB9Ci0gICAgICAg IG1zZy0+ZGF0YSA9IGRhdGE7Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLSAg ICBjYXNlIFBDSV9DQVBfSURfTVNJWDoKLSAgICB7Ci0gICAgICAgIHZvaWQg X19pb21lbSAqYmFzZSA9IGVudHJ5LT5tYXNrX2Jhc2U7Ci0KLSAgICAgICAg aWYgKCB1bmxpa2VseSghbXNpeF9tZW1vcnlfZGVjb2RlZChlbnRyeS0+ZGV2 LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGVudHJ5LT5tc2lfYXR0cmliLnBvcykpICkKLSAgICAgICAgICAgIHJldHVy biBmYWxzZTsKLSAgICAgICAgbXNnLT5hZGRyZXNzX2xvID0gcmVhZGwoYmFz ZSArIFBDSV9NU0lYX0VOVFJZX0xPV0VSX0FERFJfT0ZGU0VUKTsKLSAgICAg ICAgbXNnLT5hZGRyZXNzX2hpID0gcmVhZGwoYmFzZSArIFBDSV9NU0lYX0VO VFJZX1VQUEVSX0FERFJfT0ZGU0VUKTsKLSAgICAgICAgbXNnLT5kYXRhID0g cmVhZGwoYmFzZSArIFBDSV9NU0lYX0VOVFJZX0RBVEFfT0ZGU0VUKTsKLSAg ICAgICAgYnJlYWs7Ci0gICAgfQotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEJV RygpOwotICAgIH0KLQotICAgIGlmICggaW9tbXVfaW50cmVtYXAgKQotICAg ICAgICBpb21tdV9yZWFkX21zaV9mcm9tX2lyZShlbnRyeSwgbXNnKTsKLQot ICAgIHJldHVybiB0cnVlOwotfQotCiBzdGF0aWMgaW50IHdyaXRlX21zaV9t c2coc3RydWN0IG1zaV9kZXNjICplbnRyeSwgc3RydWN0IG1zaV9tc2cgKm1z ZykKIHsKICAgICBlbnRyeS0+bXNnID0gKm1zZzsKQEAgLTMyMiwxMCArMjY5 LDcgQEAgdm9pZCBzZXRfbXNpX2FmZmluaXR5KHN0cnVjdCBpcnFfZGVzYyAq ZAoKICAgICBBU1NFUlQoc3Bpbl9pc19sb2NrZWQoJmRlc2MtPmxvY2spKTsK Ci0gICAgbWVtc2V0KCZtc2csIDAsIHNpemVvZihtc2cpKTsKLSAgICBpZiAo ICFyZWFkX21zaV9tc2cobXNpX2Rlc2MsICZtc2cpICkKLSAgICAgICAgcmV0 dXJuOwotCisgICAgbXNnID0gbXNpX2Rlc2MtPm1zZzsKICAgICBtc2cuZGF0 YSAmPSB+TVNJX0RBVEFfVkVDVE9SX01BU0s7CiAgICAgbXNnLmRhdGEgfD0g TVNJX0RBVEFfVkVDVE9SKGRlc2MtPmFyY2gudmVjdG9yKTsKICAgICBtc2cu YWRkcmVzc19sbyAmPSB+TVNJX0FERFJfREVTVF9JRF9NQVNLOwo= --=separator Content-Type: application/octet-stream; name="xsa337/xsa337-4.12-2.patch" Content-Disposition: attachment; filename="xsa337/xsa337-4.12-2.patch" Content-Transfer-Encoding: base64 RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0 OiB4ODYvTVNJLVg6IHJlc3RyaWN0IHJlYWRpbmcgb2YgdGFibGUvUEJBIGJh c2VzIGZyb20gQkFScwoKV2hlbiBhc3NpZ25lZCB0byBsZXNzIHRydXN0ZWQg b3IgdW4tdHJ1c3RlZCBndWVzdHMsIGRldmljZXMgbWF5IGNoYW5nZQpzdGF0 ZSBiZWhpbmQgb3VyIGJhY2tzICh0aGV5IG1heSBlLmcuIGdldCByZXNldCBi eSBtZWFucyB3ZSBtYXkgbm90IGtub3cKYWJvdXQpLiBUaGVyZWZvcmUgd2Ug c2hvdWxkIGF2b2lkIHJlYWRpbmcgQkFScyBmcm9tIGhhcmR3YXJlIG9uY2Ug YQpkZXZpY2UgaXMgbm8gbG9uZ2VyIG93bmVkIGJ5IERvbTAuIEZ1cnRoZXJt b3JlIHdoZW4gd2UgY2FuJ3QgcmVhZCBhIEJBUiwKb3Igd2hlbiB3ZSByZWFk IHplcm8sIHdlIHNob3VsZG4ndCBpbnN0ZWFkIHVzZSB0aGUgY2FsbGVyIHBy b3ZpZGVkCmFkZHJlc3MgdW5sZXNzIHRoYXQgY2FsbGVyIGNhbiBiZSB0cnVz dGVkLgoKUmUtYXJyYW5nZSB0aGUgbG9naWMgaW4gbXNpeF9jYXBhYmlsaXR5 X2luaXQoKSBzdWNoIHRoYXQgb25seSBEb20wIChhbmQKb25seSBpZiB0aGUg ZGV2aWNlIGlzbid0IERvbVUtb3duZWQgeWV0KSBvciBjYWxscyB0aHJvdWdo ClBIWVNERVZPUF9wcmVwYXJlX21zaXggd2lsbCBhY3R1YWxseSByZXN1bHQg aW4gdGhlIHJlYWRpbmcgb2YgdGhlCnJlc3BlY3RpdmUgQkFSIHJlZ2lzdGVy KHMpLiBBZGRpdGlvbmFsbHkgZG8gc28gb25seSBhcyBsb25nIGFzIGluLXVz ZQp0YWJsZSBlbnRyaWVzIGFyZSBrbm93biAobm90ZSB0aGF0IGludm9jYXRp b24gb2YgUEhZU0RFVk9QX3ByZXBhcmVfbXNpeApjb3VudHMgYXMgYSAicHNl dWRvIiBlbnRyeSkuIEluIGFsbCBvdGhlciB1c2VzIHRoZSB2YWx1ZSBhbHJl YWR5CnJlY29yZGVkIHdpbGwgZ2V0IHVzZWQgaW5zdGVhZC4KCkNsZWFyIHRo ZSByZWNvcmRlZCB2YWx1ZXMgaW4gX3BjaV9jbGVhbnVwX21zaXgoKSBhcyB3 ZWxsIGFzIG9uIHRoZSBvbmUKYWZmZWN0ZWQgZXJyb3IgcGF0aC4gKEFkanVz dCB0aGlzIGVycm9yIHBhdGggdG8gYWxzbyBhdm9pZCBibGluZGx5CmRpc2Fi bGluZyBNU0ktWCB3aGVuIGl0IHdhcyBlbmFibGVkIG9uIGVudHJ5IHRvIHRo ZSBmdW5jdGlvbi4pCgpXaGlsZSBtb3ZpbmcgYXJvdW5kIHZhcmlhYmxlIGRl Y2xhcmF0aW9ucyAoaW4gbWFueSBjYXNlcyB0byByZWR1Y2UgdGhlaXIKc2Nv cGVzKSwgYWxzbyBhZGp1c3Qgc29tZSBvZiB0aGVpciB0eXBlcy4KClRoaXMg aXMgcGFydCBvZiBYU0EtMzM3LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUm9nZXIgUGF1 IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+CgotLS0gYS94ZW4vYXJj aC94ODYvbXNpLmMKKysrIGIveGVuL2FyY2gveDg2L21zaS5jCkBAIC03OTAs MTYgKzc5MCwxNCBAQCBzdGF0aWMgaW50IG1zaXhfY2FwYWJpbGl0eV9pbml0 KHN0cnVjdCBwCiB7CiAgICAgc3RydWN0IGFyY2hfbXNpeCAqbXNpeCA9IGRl di0+bXNpeDsKICAgICBzdHJ1Y3QgbXNpX2Rlc2MgKmVudHJ5ID0gTlVMTDsK LSAgICBpbnQgdmY7CiAgICAgdTE2IGNvbnRyb2w7CiAgICAgdTY0IHRhYmxl X3BhZGRyOwogICAgIHUzMiB0YWJsZV9vZmZzZXQ7Ci0gICAgdTggYmlyLCBw YnVzLCBwc2xvdCwgcGZ1bmM7CiAgICAgdTE2IHNlZyA9IGRldi0+c2VnOwog ICAgIHU4IGJ1cyA9IGRldi0+YnVzOwogICAgIHU4IHNsb3QgPSBQQ0lfU0xP VChkZXYtPmRldmZuKTsKICAgICB1OCBmdW5jID0gUENJX0ZVTkMoZGV2LT5k ZXZmbik7Ci0gICAgYm9vbCBtYXNrYWxsID0gbXNpeC0+aG9zdF9tYXNrYWxs OworICAgIGJvb2wgbWFza2FsbCA9IG1zaXgtPmhvc3RfbWFza2FsbCwgemFw X29uX2Vycm9yID0gZmFsc2U7CiAKICAgICBBU1NFUlQocGNpZGV2c19sb2Nr ZWQoKSk7CiAKQEAgLTgzNyw0MyArODM1LDQ1IEBAIHN0YXRpYyBpbnQgbXNp eF9jYXBhYmlsaXR5X2luaXQoc3RydWN0IHAKICAgICAvKiBMb2NhdGUgTVNJ LVggdGFibGUgcmVnaW9uICovCiAgICAgdGFibGVfb2Zmc2V0ID0gcGNpX2Nv bmZfcmVhZDMyKHNlZywgYnVzLCBzbG90LCBmdW5jLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBtc2l4X3RhYmxlX29mZnNldF9yZWco cG9zKSk7Ci0gICAgYmlyID0gKHU4KSh0YWJsZV9vZmZzZXQgJiBQQ0lfTVNJ WF9CSVJNQVNLKTsKLSAgICB0YWJsZV9vZmZzZXQgJj0gflBDSV9NU0lYX0JJ Uk1BU0s7CisgICAgaWYgKCAhbXNpeC0+dXNlZF9lbnRyaWVzICYmCisgICAg ICAgICAoIW1zaSB8fAorICAgICAgICAgIChpc19oYXJkd2FyZV9kb21haW4o Y3VycmVudC0+ZG9tYWluKSAmJgorICAgICAgICAgICAoZGV2LT5kb21haW4g PT0gY3VycmVudC0+ZG9tYWluIHx8IGRldi0+ZG9tYWluID09IGRvbV9pbykp KSApCisgICAgeworICAgICAgICB1bnNpZ25lZCBpbnQgYmlyID0gdGFibGVf b2Zmc2V0ICYgUENJX01TSVhfQklSTUFTSywgcGJ1cywgcHNsb3QsIHBmdW5j OworICAgICAgICBpbnQgdmY7CisgICAgICAgIHBhZGRyX3QgcGJhX3BhZGRy OworICAgICAgICB1bnNpZ25lZCBpbnQgcGJhX29mZnNldDsKIAotICAgIGlm ICggIWRldi0+aW5mby5pc192aXJ0Zm4gKQotICAgIHsKLSAgICAgICAgcGJ1 cyA9IGJ1czsKLSAgICAgICAgcHNsb3QgPSBzbG90OwotICAgICAgICBwZnVu YyA9IGZ1bmM7Ci0gICAgICAgIHZmID0gLTE7Ci0gICAgfQotICAgIGVsc2UK LSAgICB7Ci0gICAgICAgIHBidXMgPSBkZXYtPmluZm8ucGh5c2ZuLmJ1czsK LSAgICAgICAgcHNsb3QgPSBQQ0lfU0xPVChkZXYtPmluZm8ucGh5c2ZuLmRl dmZuKTsKLSAgICAgICAgcGZ1bmMgPSBQQ0lfRlVOQyhkZXYtPmluZm8ucGh5 c2ZuLmRldmZuKTsKLSAgICAgICAgdmYgPSBQQ0lfQkRGMihkZXYtPmJ1cywg ZGV2LT5kZXZmbik7Ci0gICAgfQotCi0gICAgdGFibGVfcGFkZHIgPSByZWFk X3BjaV9tZW1fYmFyKHNlZywgcGJ1cywgcHNsb3QsIHBmdW5jLCBiaXIsIHZm KTsKLSAgICBXQVJOX09OKG1zaSAmJiBtc2ktPnRhYmxlX2Jhc2UgIT0gdGFi bGVfcGFkZHIpOwotICAgIGlmICggIXRhYmxlX3BhZGRyICkKLSAgICB7Ci0g ICAgICAgIGlmICggIW1zaSB8fCAhbXNpLT50YWJsZV9iYXNlICkKKyAgICAg ICAgaWYgKCAhZGV2LT5pbmZvLmlzX3ZpcnRmbiApCiAgICAgICAgIHsKLSAg ICAgICAgICAgIHBjaV9jb25mX3dyaXRlMTYoc2VnLCBidXMsIHNsb3QsIGZ1 bmMsIG1zaXhfY29udHJvbF9yZWcocG9zKSwKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29udHJvbCAmIH5QQ0lfTVNJWF9GTEFHU19FTkFCTEUp OwotICAgICAgICAgICAgeGZyZWUoZW50cnkpOwotICAgICAgICAgICAgcmV0 dXJuIC1FTlhJTzsKKyAgICAgICAgICAgIHBidXMgPSBidXM7CisgICAgICAg ICAgICBwc2xvdCA9IHNsb3Q7CisgICAgICAgICAgICBwZnVuYyA9IGZ1bmM7 CisgICAgICAgICAgICB2ZiA9IC0xOworICAgICAgICB9CisgICAgICAgIGVs c2UKKyAgICAgICAgeworICAgICAgICAgICAgcGJ1cyA9IGRldi0+aW5mby5w aHlzZm4uYnVzOworICAgICAgICAgICAgcHNsb3QgPSBQQ0lfU0xPVChkZXYt PmluZm8ucGh5c2ZuLmRldmZuKTsKKyAgICAgICAgICAgIHBmdW5jID0gUENJ X0ZVTkMoZGV2LT5pbmZvLnBoeXNmbi5kZXZmbik7CisgICAgICAgICAgICB2 ZiA9IFBDSV9CREYyKGRldi0+YnVzLCBkZXYtPmRldmZuKTsKICAgICAgICAg fQotICAgICAgICB0YWJsZV9wYWRkciA9IG1zaS0+dGFibGVfYmFzZTsKLSAg ICB9Ci0gICAgdGFibGVfcGFkZHIgKz0gdGFibGVfb2Zmc2V0OwogCi0gICAg aWYgKCAhbXNpeC0+dXNlZF9lbnRyaWVzICkKLSAgICB7Ci0gICAgICAgIHU2 NCBwYmFfcGFkZHI7Ci0gICAgICAgIHUzMiBwYmFfb2Zmc2V0OworICAgICAg ICB0YWJsZV9wYWRkciA9IHJlYWRfcGNpX21lbV9iYXIoc2VnLCBwYnVzLCBw c2xvdCwgcGZ1bmMsIGJpciwgdmYpOworICAgICAgICBXQVJOX09OKG1zaSAm JiBtc2ktPnRhYmxlX2Jhc2UgIT0gdGFibGVfcGFkZHIpOworICAgICAgICBp ZiAoICF0YWJsZV9wYWRkciApCisgICAgICAgIHsKKyAgICAgICAgICAgIGlm ICggIW1zaSB8fCAhbXNpLT50YWJsZV9iYXNlICkKKyAgICAgICAgICAgIHsK KyAgICAgICAgICAgICAgICBwY2lfY29uZl93cml0ZTE2KHNlZywgYnVzLCBz bG90LCBmdW5jLCBtc2l4X2NvbnRyb2xfcmVnKHBvcyksCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb250cm9sICYgflBDSV9NU0lYX0ZM QUdTX0VOQUJMRSk7CisgICAgICAgICAgICAgICAgeGZyZWUoZW50cnkpOwor ICAgICAgICAgICAgICAgIHJldHVybiAtRU5YSU87CisgICAgICAgICAgICB9 CisgICAgICAgICAgICB0YWJsZV9wYWRkciA9IG1zaS0+dGFibGVfYmFzZTsK KyAgICAgICAgfQorICAgICAgICB0YWJsZV9wYWRkciArPSB0YWJsZV9vZmZz ZXQgJiB+UENJX01TSVhfQklSTUFTSzsKIAogICAgICAgICBtc2l4LT5ucl9l bnRyaWVzID0gbnJfZW50cmllczsKICAgICAgICAgbXNpeC0+dGFibGUuZmly c3QgPSBQRk5fRE9XTih0YWJsZV9wYWRkcik7CkBAIC04OTQsNyArODk0LDE5 IEBAIHN0YXRpYyBpbnQgbXNpeF9jYXBhYmlsaXR5X2luaXQoc3RydWN0IHAK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCSVRTX1RPX0xP TkdTKG5yX2VudHJpZXMpIC0gMSk7CiAgICAgICAgIFdBUk5fT04ocmFuZ2Vz ZXRfb3ZlcmxhcHNfcmFuZ2UobW1pb19yb19yYW5nZXMsIG1zaXgtPnBiYS5m aXJzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBtc2l4LT5wYmEubGFzdCkpOworCisgICAgICAgIHphcF9vbl9lcnJvciA9 IHRydWU7CiAgICAgfQorICAgIGVsc2UgaWYgKCAhbXNpeC0+dGFibGUuZmly c3QgKQorICAgIHsKKyAgICAgICAgcGNpX2NvbmZfd3JpdGUxNihzZWcsIGJ1 cywgc2xvdCwgZnVuYywgbXNpeF9jb250cm9sX3JlZyhwb3MpLAorICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnRyb2wpOworICAgICAgICB4ZnJlZShl bnRyeSk7CisgICAgICAgIHJldHVybiAtRU5PREFUQTsKKyAgICB9CisgICAg ZWxzZQorICAgICAgICB0YWJsZV9wYWRkciA9IChtc2l4LT50YWJsZS5maXJz dCA8PCBQQUdFX1NISUZUKSArCisgICAgICAgICAgICAgICAgICAgICAgKHRh YmxlX29mZnNldCAmIH5QQ0lfTVNJWF9CSVJNQVNLICYgflBBR0VfTUFTSyk7 CiAKICAgICBpZiAoIGVudHJ5ICkKICAgICB7CkBAIC05MDUsOCArOTE3LDE2 IEBAIHN0YXRpYyBpbnQgbXNpeF9jYXBhYmlsaXR5X2luaXQoc3RydWN0IHAK IAogICAgICAgICBpZiAoIGlkeCA8IDAgKQogICAgICAgICB7CisgICAgICAg ICAgICBpZiAoIHphcF9vbl9lcnJvciApCisgICAgICAgICAgICB7CisgICAg ICAgICAgICAgICAgbXNpeC0+dGFibGUuZmlyc3QgPSAwOworICAgICAgICAg ICAgICAgIG1zaXgtPnBiYS5maXJzdCA9IDA7CisKKyAgICAgICAgICAgICAg ICBjb250cm9sICY9IH5QQ0lfTVNJWF9GTEFHU19FTkFCTEU7CisgICAgICAg ICAgICB9CisKICAgICAgICAgICAgIHBjaV9jb25mX3dyaXRlMTYoc2VnLCBi dXMsIHNsb3QsIGZ1bmMsIG1zaXhfY29udHJvbF9yZWcocG9zKSwKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbCAmIH5QQ0lfTVNJWF9G TEFHU19FTkFCTEUpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj b250cm9sKTsKICAgICAgICAgICAgIHhmcmVlKGVudHJ5KTsKICAgICAgICAg ICAgIHJldHVybiBpZHg7CiAgICAgICAgIH0KQEAgLTExMDIsOSArMTEyMiwx NCBAQCBzdGF0aWMgdm9pZCBfcGNpX2NsZWFudXBfbXNpeChzdHJ1Y3QgYXJj CiAgICAgICAgIGlmICggcmFuZ2VzZXRfcmVtb3ZlX3JhbmdlKG1taW9fcm9f cmFuZ2VzLCBtc2l4LT50YWJsZS5maXJzdCwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbXNpeC0+dGFibGUubGFzdCkgKQogICAgICAg ICAgICAgV0FSTigpOworICAgICAgICBtc2l4LT50YWJsZS5maXJzdCA9IDA7 CisgICAgICAgIG1zaXgtPnRhYmxlLmxhc3QgPSAwOworCiAgICAgICAgIGlm ICggcmFuZ2VzZXRfcmVtb3ZlX3JhbmdlKG1taW9fcm9fcmFuZ2VzLCBtc2l4 LT5wYmEuZmlyc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIG1zaXgtPnBiYS5sYXN0KSApCiAgICAgICAgICAgICBXQVJOKCk7Cisg ICAgICAgIG1zaXgtPnBiYS5maXJzdCA9IDA7CisgICAgICAgIG1zaXgtPnBi YS5sYXN0ID0gMDsKICAgICB9CiB9CiAK --=separator Content-Type: application/octet-stream; name="xsa337/xsa337-4.13-1.patch" Content-Disposition: attachment; filename="xsa337/xsa337-4.13-1.patch" Content-Transfer-Encoding: base64 RnJvbTogUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+ ClN1YmplY3Q6IHg4Ni9tc2k6IGdldCByaWQgb2YgcmVhZF9tc2lfbXNnCgpJ dCdzIHNhZmVyIGFuZCBmYXN0ZXIgdG8ganVzdCB1c2UgdGhlIGNhY2hlZCBs YXN0IHdyaXR0ZW4KKHVudHJhbnNsYXRlZCkgTVNJIG1lc3NhZ2Ugc3RvcmVk IGluIG1zaV9kZXNjIGZvciB0aGUgc2luZ2xlIHVzZXIgdGhhdApjYWxscyBy ZWFkX21zaV9tc2cuCgpUaGlzIGFsc28gcHJldmVudHMgcmVseWluZyBvbiB0 aGUgZGF0YSByZWFkIGZyb20gdGhlIGRldmljZSBNU0kKcmVnaXN0ZXJzIGlu IG9yZGVyIHRvIGZpZ3VyZSBvdXQgdGhlIGluZGV4IGludG8gdGhlIElPTU1V IGludGVycnVwdApyZW1hcHBpbmcgdGFibGUsIHdoaWNoIGlzIG5vdCBzYWZl LgoKVGhpcyBpcyBwYXJ0IG9mIFhTQS0zMzcuCgpSZXBvcnRlZC1ieTogQW5k cmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KUmVxdWVz dGVkLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXgu Y29tPgpTaWduZWQtb2ZmLWJ5OiBSb2dlciBQYXUgTW9ubsOpIDxyb2dlci5w YXVAY2l0cml4LmNvbT4KUmV2aWV3ZWQtYnk6IEphbiBCZXVsaWNoIDxqYmV1 bGljaEBzdXNlLmNvbT4KCi0tLSBhL3hlbi9hcmNoL3g4Ni9tc2kuYworKysg Yi94ZW4vYXJjaC94ODYvbXNpLmMKQEAgLTE4Myw1NCArMTgzLDYgQEAgdm9p ZCBtc2lfY29tcG9zZV9tc2codW5zaWduZWQgdmVjdG9yLCBjbwogICAgICAg ICAgICAgICAgIE1TSV9EQVRBX1ZFQ1RPUih2ZWN0b3IpOwogfQoKLXN0YXRp YyBib29sIHJlYWRfbXNpX21zZyhzdHJ1Y3QgbXNpX2Rlc2MgKmVudHJ5LCBz dHJ1Y3QgbXNpX21zZyAqbXNnKQotewotICAgIHN3aXRjaCAoIGVudHJ5LT5t c2lfYXR0cmliLnR5cGUgKQotICAgIHsKLSAgICBjYXNlIFBDSV9DQVBfSURf TVNJOgotICAgIHsKLSAgICAgICAgc3RydWN0IHBjaV9kZXYgKmRldiA9IGVu dHJ5LT5kZXY7Ci0gICAgICAgIGludCBwb3MgPSBlbnRyeS0+bXNpX2F0dHJp Yi5wb3M7Ci0gICAgICAgIHVpbnQxNl90IGRhdGE7Ci0KLSAgICAgICAgbXNn LT5hZGRyZXNzX2xvID0gcGNpX2NvbmZfcmVhZDMyKGRldi0+c2JkZiwKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zaV9s b3dlcl9hZGRyZXNzX3JlZyhwb3MpKTsKLSAgICAgICAgaWYgKCBlbnRyeS0+ bXNpX2F0dHJpYi5pc182NCApCi0gICAgICAgIHsKLSAgICAgICAgICAgIG1z Zy0+YWRkcmVzc19oaSA9IHBjaV9jb25mX3JlYWQzMihkZXYtPnNiZGYsCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bXNpX3VwcGVyX2FkZHJlc3NfcmVnKHBvcykpOwotICAgICAgICAgICAgZGF0 YSA9IHBjaV9jb25mX3JlYWQxNihkZXYtPnNiZGYsIG1zaV9kYXRhX3JlZyhw b3MsIDEpKTsKLSAgICAgICAgfQotICAgICAgICBlbHNlCi0gICAgICAgIHsK LSAgICAgICAgICAgIG1zZy0+YWRkcmVzc19oaSA9IDA7Ci0gICAgICAgICAg ICBkYXRhID0gcGNpX2NvbmZfcmVhZDE2KGRldi0+c2JkZiwgbXNpX2RhdGFf cmVnKHBvcywgMCkpOwotICAgICAgICB9Ci0gICAgICAgIG1zZy0+ZGF0YSA9 IGRhdGE7Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLSAgICBjYXNlIFBDSV9D QVBfSURfTVNJWDoKLSAgICB7Ci0gICAgICAgIHZvaWQgX19pb21lbSAqYmFz ZSA9IGVudHJ5LT5tYXNrX2Jhc2U7Ci0KLSAgICAgICAgaWYgKCB1bmxpa2Vs eSghbXNpeF9tZW1vcnlfZGVjb2RlZChlbnRyeS0+ZGV2LAotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudHJ5LT5tc2lf YXR0cmliLnBvcykpICkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAg ICAgICAgbXNnLT5hZGRyZXNzX2xvID0gcmVhZGwoYmFzZSArIFBDSV9NU0lY X0VOVFJZX0xPV0VSX0FERFJfT0ZGU0VUKTsKLSAgICAgICAgbXNnLT5hZGRy ZXNzX2hpID0gcmVhZGwoYmFzZSArIFBDSV9NU0lYX0VOVFJZX1VQUEVSX0FE RFJfT0ZGU0VUKTsKLSAgICAgICAgbXNnLT5kYXRhID0gcmVhZGwoYmFzZSAr IFBDSV9NU0lYX0VOVFJZX0RBVEFfT0ZGU0VUKTsKLSAgICAgICAgYnJlYWs7 Ci0gICAgfQotICAgIGRlZmF1bHQ6Ci0gICAgICAgIEJVRygpOwotICAgIH0K LQotICAgIGlmICggaW9tbXVfaW50cmVtYXAgKQotICAgICAgICBpb21tdV9y ZWFkX21zaV9mcm9tX2lyZShlbnRyeSwgbXNnKTsKLQotICAgIHJldHVybiB0 cnVlOwotfQotCiBzdGF0aWMgaW50IHdyaXRlX21zaV9tc2coc3RydWN0IG1z aV9kZXNjICplbnRyeSwgc3RydWN0IG1zaV9tc2cgKm1zZykKIHsKICAgICBl bnRyeS0+bXNnID0gKm1zZzsKQEAgLTMwMiwxMCArMjU0LDcgQEAgdm9pZCBz ZXRfbXNpX2FmZmluaXR5KHN0cnVjdCBpcnFfZGVzYyAqZAoKICAgICBBU1NF UlQoc3Bpbl9pc19sb2NrZWQoJmRlc2MtPmxvY2spKTsKCi0gICAgbWVtc2V0 KCZtc2csIDAsIHNpemVvZihtc2cpKTsKLSAgICBpZiAoICFyZWFkX21zaV9t c2cobXNpX2Rlc2MsICZtc2cpICkKLSAgICAgICAgcmV0dXJuOwotCisgICAg bXNnID0gbXNpX2Rlc2MtPm1zZzsKICAgICBtc2cuZGF0YSAmPSB+TVNJX0RB VEFfVkVDVE9SX01BU0s7CiAgICAgbXNnLmRhdGEgfD0gTVNJX0RBVEFfVkVD VE9SKGRlc2MtPmFyY2gudmVjdG9yKTsKICAgICBtc2cuYWRkcmVzc19sbyAm PSB+TVNJX0FERFJfREVTVF9JRF9NQVNLOwo= --=separator Content-Type: application/octet-stream; name="xsa337/xsa337-4.13-2.patch" Content-Disposition: attachment; filename="xsa337/xsa337-4.13-2.patch" Content-Transfer-Encoding: base64 RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0 OiB4ODYvTVNJLVg6IHJlc3RyaWN0IHJlYWRpbmcgb2YgdGFibGUvUEJBIGJh c2VzIGZyb20gQkFScwoKV2hlbiBhc3NpZ25lZCB0byBsZXNzIHRydXN0ZWQg b3IgdW4tdHJ1c3RlZCBndWVzdHMsIGRldmljZXMgbWF5IGNoYW5nZQpzdGF0 ZSBiZWhpbmQgb3VyIGJhY2tzICh0aGV5IG1heSBlLmcuIGdldCByZXNldCBi eSBtZWFucyB3ZSBtYXkgbm90IGtub3cKYWJvdXQpLiBUaGVyZWZvcmUgd2Ug c2hvdWxkIGF2b2lkIHJlYWRpbmcgQkFScyBmcm9tIGhhcmR3YXJlIG9uY2Ug YQpkZXZpY2UgaXMgbm8gbG9uZ2VyIG93bmVkIGJ5IERvbTAuIEZ1cnRoZXJt b3JlIHdoZW4gd2UgY2FuJ3QgcmVhZCBhIEJBUiwKb3Igd2hlbiB3ZSByZWFk IHplcm8sIHdlIHNob3VsZG4ndCBpbnN0ZWFkIHVzZSB0aGUgY2FsbGVyIHBy b3ZpZGVkCmFkZHJlc3MgdW5sZXNzIHRoYXQgY2FsbGVyIGNhbiBiZSB0cnVz dGVkLgoKUmUtYXJyYW5nZSB0aGUgbG9naWMgaW4gbXNpeF9jYXBhYmlsaXR5 X2luaXQoKSBzdWNoIHRoYXQgb25seSBEb20wIChhbmQKb25seSBpZiB0aGUg ZGV2aWNlIGlzbid0IERvbVUtb3duZWQgeWV0KSBvciBjYWxscyB0aHJvdWdo ClBIWVNERVZPUF9wcmVwYXJlX21zaXggd2lsbCBhY3R1YWxseSByZXN1bHQg aW4gdGhlIHJlYWRpbmcgb2YgdGhlCnJlc3BlY3RpdmUgQkFSIHJlZ2lzdGVy KHMpLiBBZGRpdGlvbmFsbHkgZG8gc28gb25seSBhcyBsb25nIGFzIGluLXVz ZQp0YWJsZSBlbnRyaWVzIGFyZSBrbm93biAobm90ZSB0aGF0IGludm9jYXRp b24gb2YgUEhZU0RFVk9QX3ByZXBhcmVfbXNpeApjb3VudHMgYXMgYSAicHNl dWRvIiBlbnRyeSkuIEluIGFsbCBvdGhlciB1c2VzIHRoZSB2YWx1ZSBhbHJl YWR5CnJlY29yZGVkIHdpbGwgZ2V0IHVzZWQgaW5zdGVhZC4KCkNsZWFyIHRo ZSByZWNvcmRlZCB2YWx1ZXMgaW4gX3BjaV9jbGVhbnVwX21zaXgoKSBhcyB3 ZWxsIGFzIG9uIHRoZSBvbmUKYWZmZWN0ZWQgZXJyb3IgcGF0aC4gKEFkanVz dCB0aGlzIGVycm9yIHBhdGggdG8gYWxzbyBhdm9pZCBibGluZGx5CmRpc2Fi bGluZyBNU0ktWCB3aGVuIGl0IHdhcyBlbmFibGVkIG9uIGVudHJ5IHRvIHRo ZSBmdW5jdGlvbi4pCgpXaGlsZSBtb3ZpbmcgYXJvdW5kIHZhcmlhYmxlIGRl Y2xhcmF0aW9ucyAoaW4gbWFueSBjYXNlcyB0byByZWR1Y2UgdGhlaXIKc2Nv cGVzKSwgYWxzbyBhZGp1c3Qgc29tZSBvZiB0aGVpciB0eXBlcy4KClRoaXMg aXMgcGFydCBvZiBYU0EtMzM3LgoKU2lnbmVkLW9mZi1ieTogSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPgpSZXZpZXdlZC1ieTogUm9nZXIgUGF1 IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+CgotLS0gYS94ZW4vYXJj aC94ODYvbXNpLmMKKysrIGIveGVuL2FyY2gveDg2L21zaS5jCkBAIC03Njks MTYgKzc2OSwxNCBAQCBzdGF0aWMgaW50IG1zaXhfY2FwYWJpbGl0eV9pbml0 KHN0cnVjdCBwCiB7CiAgICAgc3RydWN0IGFyY2hfbXNpeCAqbXNpeCA9IGRl di0+bXNpeDsKICAgICBzdHJ1Y3QgbXNpX2Rlc2MgKmVudHJ5ID0gTlVMTDsK LSAgICBpbnQgdmY7CiAgICAgdTE2IGNvbnRyb2w7CiAgICAgdTY0IHRhYmxl X3BhZGRyOwogICAgIHUzMiB0YWJsZV9vZmZzZXQ7Ci0gICAgdTggYmlyLCBw YnVzLCBwc2xvdCwgcGZ1bmM7CiAgICAgdTE2IHNlZyA9IGRldi0+c2VnOwog ICAgIHU4IGJ1cyA9IGRldi0+YnVzOwogICAgIHU4IHNsb3QgPSBQQ0lfU0xP VChkZXYtPmRldmZuKTsKICAgICB1OCBmdW5jID0gUENJX0ZVTkMoZGV2LT5k ZXZmbik7Ci0gICAgYm9vbCBtYXNrYWxsID0gbXNpeC0+aG9zdF9tYXNrYWxs OworICAgIGJvb2wgbWFza2FsbCA9IG1zaXgtPmhvc3RfbWFza2FsbCwgemFw X29uX2Vycm9yID0gZmFsc2U7CiAgICAgdW5zaWduZWQgaW50IHBvcyA9IHBj aV9maW5kX2NhcF9vZmZzZXQoc2VnLCBidXMsIHNsb3QsIGZ1bmMsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUENJX0NB UF9JRF9NU0lYKTsKIApAQCAtODIwLDQzICs4MTgsNDUgQEAgc3RhdGljIGlu dCBtc2l4X2NhcGFiaWxpdHlfaW5pdChzdHJ1Y3QgcAogCiAgICAgLyogTG9j YXRlIE1TSS1YIHRhYmxlIHJlZ2lvbiAqLwogICAgIHRhYmxlX29mZnNldCA9 IHBjaV9jb25mX3JlYWQzMihkZXYtPnNiZGYsIG1zaXhfdGFibGVfb2Zmc2V0 X3JlZyhwb3MpKTsKLSAgICBiaXIgPSAodTgpKHRhYmxlX29mZnNldCAmIFBD SV9NU0lYX0JJUk1BU0spOwotICAgIHRhYmxlX29mZnNldCAmPSB+UENJX01T SVhfQklSTUFTSzsKKyAgICBpZiAoICFtc2l4LT51c2VkX2VudHJpZXMgJiYK KyAgICAgICAgICghbXNpIHx8CisgICAgICAgICAgKGlzX2hhcmR3YXJlX2Rv bWFpbihjdXJyZW50LT5kb21haW4pICYmCisgICAgICAgICAgIChkZXYtPmRv bWFpbiA9PSBjdXJyZW50LT5kb21haW4gfHwgZGV2LT5kb21haW4gPT0gZG9t X2lvKSkpICkKKyAgICB7CisgICAgICAgIHVuc2lnbmVkIGludCBiaXIgPSB0 YWJsZV9vZmZzZXQgJiBQQ0lfTVNJWF9CSVJNQVNLLCBwYnVzLCBwc2xvdCwg cGZ1bmM7CisgICAgICAgIGludCB2ZjsKKyAgICAgICAgcGFkZHJfdCBwYmFf cGFkZHI7CisgICAgICAgIHVuc2lnbmVkIGludCBwYmFfb2Zmc2V0OwogCi0g ICAgaWYgKCAhZGV2LT5pbmZvLmlzX3ZpcnRmbiApCi0gICAgewotICAgICAg ICBwYnVzID0gYnVzOwotICAgICAgICBwc2xvdCA9IHNsb3Q7Ci0gICAgICAg IHBmdW5jID0gZnVuYzsKLSAgICAgICAgdmYgPSAtMTsKLSAgICB9Ci0gICAg ZWxzZQotICAgIHsKLSAgICAgICAgcGJ1cyA9IGRldi0+aW5mby5waHlzZm4u YnVzOwotICAgICAgICBwc2xvdCA9IFBDSV9TTE9UKGRldi0+aW5mby5waHlz Zm4uZGV2Zm4pOwotICAgICAgICBwZnVuYyA9IFBDSV9GVU5DKGRldi0+aW5m by5waHlzZm4uZGV2Zm4pOwotICAgICAgICB2ZiA9IFBDSV9CREYyKGRldi0+ YnVzLCBkZXYtPmRldmZuKTsKLSAgICB9Ci0KLSAgICB0YWJsZV9wYWRkciA9 IHJlYWRfcGNpX21lbV9iYXIoc2VnLCBwYnVzLCBwc2xvdCwgcGZ1bmMsIGJp ciwgdmYpOwotICAgIFdBUk5fT04obXNpICYmIG1zaS0+dGFibGVfYmFzZSAh PSB0YWJsZV9wYWRkcik7Ci0gICAgaWYgKCAhdGFibGVfcGFkZHIgKQotICAg IHsKLSAgICAgICAgaWYgKCAhbXNpIHx8ICFtc2ktPnRhYmxlX2Jhc2UgKQor ICAgICAgICBpZiAoICFkZXYtPmluZm8uaXNfdmlydGZuICkKICAgICAgICAg ewotICAgICAgICAgICAgcGNpX2NvbmZfd3JpdGUxNihkZXYtPnNiZGYsIG1z aXhfY29udHJvbF9yZWcocG9zKSwKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY29udHJvbCAmIH5QQ0lfTVNJWF9GTEFHU19FTkFCTEUpOwotICAg ICAgICAgICAgeGZyZWUoZW50cnkpOwotICAgICAgICAgICAgcmV0dXJuIC1F TlhJTzsKKyAgICAgICAgICAgIHBidXMgPSBidXM7CisgICAgICAgICAgICBw c2xvdCA9IHNsb3Q7CisgICAgICAgICAgICBwZnVuYyA9IGZ1bmM7CisgICAg ICAgICAgICB2ZiA9IC0xOworICAgICAgICB9CisgICAgICAgIGVsc2UKKyAg ICAgICAgeworICAgICAgICAgICAgcGJ1cyA9IGRldi0+aW5mby5waHlzZm4u YnVzOworICAgICAgICAgICAgcHNsb3QgPSBQQ0lfU0xPVChkZXYtPmluZm8u cGh5c2ZuLmRldmZuKTsKKyAgICAgICAgICAgIHBmdW5jID0gUENJX0ZVTkMo ZGV2LT5pbmZvLnBoeXNmbi5kZXZmbik7CisgICAgICAgICAgICB2ZiA9IFBD SV9CREYyKGRldi0+YnVzLCBkZXYtPmRldmZuKTsKICAgICAgICAgfQotICAg ICAgICB0YWJsZV9wYWRkciA9IG1zaS0+dGFibGVfYmFzZTsKLSAgICB9Ci0g ICAgdGFibGVfcGFkZHIgKz0gdGFibGVfb2Zmc2V0OwogCi0gICAgaWYgKCAh bXNpeC0+dXNlZF9lbnRyaWVzICkKLSAgICB7Ci0gICAgICAgIHU2NCBwYmFf cGFkZHI7Ci0gICAgICAgIHUzMiBwYmFfb2Zmc2V0OworICAgICAgICB0YWJs ZV9wYWRkciA9IHJlYWRfcGNpX21lbV9iYXIoc2VnLCBwYnVzLCBwc2xvdCwg cGZ1bmMsIGJpciwgdmYpOworICAgICAgICBXQVJOX09OKG1zaSAmJiBtc2kt PnRhYmxlX2Jhc2UgIT0gdGFibGVfcGFkZHIpOworICAgICAgICBpZiAoICF0 YWJsZV9wYWRkciApCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmICggIW1z aSB8fCAhbXNpLT50YWJsZV9iYXNlICkKKyAgICAgICAgICAgIHsKKyAgICAg ICAgICAgICAgICBwY2lfY29uZl93cml0ZTE2KGRldi0+c2JkZiwgbXNpeF9j b250cm9sX3JlZyhwb3MpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY29udHJvbCAmIH5QQ0lfTVNJWF9GTEFHU19FTkFCTEUpOworICAg ICAgICAgICAgICAgIHhmcmVlKGVudHJ5KTsKKyAgICAgICAgICAgICAgICBy ZXR1cm4gLUVOWElPOworICAgICAgICAgICAgfQorICAgICAgICAgICAgdGFi bGVfcGFkZHIgPSBtc2ktPnRhYmxlX2Jhc2U7CisgICAgICAgIH0KKyAgICAg ICAgdGFibGVfcGFkZHIgKz0gdGFibGVfb2Zmc2V0ICYgflBDSV9NU0lYX0JJ Uk1BU0s7CiAKICAgICAgICAgbXNpeC0+dGFibGUuZmlyc3QgPSBQRk5fRE9X Tih0YWJsZV9wYWRkcik7CiAgICAgICAgIG1zaXgtPnRhYmxlLmxhc3QgPSBQ Rk5fRE9XTih0YWJsZV9wYWRkciArCkBAIC04NzUsNyArODc1LDE4IEBAIHN0 YXRpYyBpbnQgbXNpeF9jYXBhYmlsaXR5X2luaXQoc3RydWN0IHAKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCSVRTX1RPX0xPTkdTKG1z aXgtPm5yX2VudHJpZXMpIC0gMSk7CiAgICAgICAgIFdBUk5fT04ocmFuZ2Vz ZXRfb3ZlcmxhcHNfcmFuZ2UobW1pb19yb19yYW5nZXMsIG1zaXgtPnBiYS5m aXJzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBtc2l4LT5wYmEubGFzdCkpOworCisgICAgICAgIHphcF9vbl9lcnJvciA9 IHRydWU7CisgICAgfQorICAgIGVsc2UgaWYgKCAhbXNpeC0+dGFibGUuZmly c3QgKQorICAgIHsKKyAgICAgICAgcGNpX2NvbmZfd3JpdGUxNihkZXYtPnNi ZGYsIG1zaXhfY29udHJvbF9yZWcocG9zKSwgY29udHJvbCk7CisgICAgICAg IHhmcmVlKGVudHJ5KTsKKyAgICAgICAgcmV0dXJuIC1FTk9EQVRBOwogICAg IH0KKyAgICBlbHNlCisgICAgICAgIHRhYmxlX3BhZGRyID0gKG1zaXgtPnRh YmxlLmZpcnN0IDw8IFBBR0VfU0hJRlQpICsKKyAgICAgICAgICAgICAgICAg ICAgICAodGFibGVfb2Zmc2V0ICYgflBDSV9NU0lYX0JJUk1BU0sgJiB+UEFH RV9NQVNLKTsKIAogICAgIGlmICggZW50cnkgKQogICAgIHsKQEAgLTg4Niw4 ICs4OTcsMTUgQEAgc3RhdGljIGludCBtc2l4X2NhcGFiaWxpdHlfaW5pdChz dHJ1Y3QgcAogCiAgICAgICAgIGlmICggaWR4IDwgMCApCiAgICAgICAgIHsK LSAgICAgICAgICAgIHBjaV9jb25mX3dyaXRlMTYoZGV2LT5zYmRmLCBtc2l4 X2NvbnRyb2xfcmVnKHBvcyksCi0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGNvbnRyb2wgJiB+UENJX01TSVhfRkxBR1NfRU5BQkxFKTsKKyAgICAg ICAgICAgIGlmICggemFwX29uX2Vycm9yICkKKyAgICAgICAgICAgIHsKKyAg ICAgICAgICAgICAgICBtc2l4LT50YWJsZS5maXJzdCA9IDA7CisgICAgICAg ICAgICAgICAgbXNpeC0+cGJhLmZpcnN0ID0gMDsKKworICAgICAgICAgICAg ICAgIGNvbnRyb2wgJj0gflBDSV9NU0lYX0ZMQUdTX0VOQUJMRTsKKyAgICAg ICAgICAgIH0KKworICAgICAgICAgICAgcGNpX2NvbmZfd3JpdGUxNihkZXYt PnNiZGYsIG1zaXhfY29udHJvbF9yZWcocG9zKSwgY29udHJvbCk7CiAgICAg ICAgICAgICB4ZnJlZShlbnRyeSk7CiAgICAgICAgICAgICByZXR1cm4gaWR4 OwogICAgICAgICB9CkBAIC0xMDc2LDkgKzEwOTQsMTQgQEAgc3RhdGljIHZv aWQgX3BjaV9jbGVhbnVwX21zaXgoc3RydWN0IGFyYwogICAgICAgICBpZiAo IHJhbmdlc2V0X3JlbW92ZV9yYW5nZShtbWlvX3JvX3JhbmdlcywgbXNpeC0+ dGFibGUuZmlyc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIG1zaXgtPnRhYmxlLmxhc3QpICkKICAgICAgICAgICAgIFdBUk4oKTsK KyAgICAgICAgbXNpeC0+dGFibGUuZmlyc3QgPSAwOworICAgICAgICBtc2l4 LT50YWJsZS5sYXN0ID0gMDsKKwogICAgICAgICBpZiAoIHJhbmdlc2V0X3Jl bW92ZV9yYW5nZShtbWlvX3JvX3JhbmdlcywgbXNpeC0+cGJhLmZpcnN0LAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2l4LT5wYmEu bGFzdCkgKQogICAgICAgICAgICAgV0FSTigpOworICAgICAgICBtc2l4LT5w YmEuZmlyc3QgPSAwOworICAgICAgICBtc2l4LT5wYmEubGFzdCA9IDA7CiAg ICAgfQogfQogCg== --=separator--