From nobody Fri May 17 02:41:28 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org ARC-Seal: i=1; a=rsa-sha256; t=1667304128; cv=none; d=zohomail.com; s=zohoarc; b=dFp67/rp1fn7jKIxtzbg9LN9WVvaVE2X0np2sgaNzpmWkd9WvDzdmSV+UsLA1lbw7o/52ikZIdUYB4ycGcv7sJxau9ml3bJxKXIOr2DWIyDgJoVA9umrq7l2L8i9eVkjbxgwQFSyMBqWWwQmI1MaXmQcWPvK49iUWxjD1M2iZn0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667304128; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:To; bh=GylNXLxh0WKf8ueCpUP0PjKoFAT0J9e6v1pJlyo4sNo=; b=fr4t0tbcbMU4sRBWOfieK6eNSDWXzQG1fNZOhJDQluaSeE1dyXg1QbRptZOZ2TffXP5Zyhvbt4j5DOFsa4IYS+20VG901o2Ga5Q7ocyTrPF0eE3f/d3GgWqTu/vqO+40uzYXiSh8QsWHlyYT2TGSAGGLm3ivYutWHRf7SyEhlqE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1667304127566720.2794564912675; Tue, 1 Nov 2022 05:02:07 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.433487.686558 (Exim 4.92) (envelope-from ) id 1oppx6-0007Vf-Mn; Tue, 01 Nov 2022 12:01:08 +0000 Received: by outflank-mailman (output) from mailman id 433487.686558; Tue, 01 Nov 2022 12:01:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1oppx5-0007Rc-Se; Tue, 01 Nov 2022 12:01:07 +0000 Received: by outflank-mailman (input) for mailman id 433487; Tue, 01 Nov 2022 12:01:02 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1oppx0-0004y3-Bo for xen-devel@lists.xen.org; Tue, 01 Nov 2022 12:01:02 +0000 Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d8049bf5-59dc-11ed-8fd0-01056ac49cbb; Tue, 01 Nov 2022 13:00:57 +0100 (CET) Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1oppwk-0005Ye-Il; Tue, 01 Nov 2022 12:00:46 +0000 Received: from jgross by xenbits.xenproject.org with local (Exim 4.92) (envelope-from ) id 1oppwk-0005VB-Hi; Tue, 01 Nov 2022 12:00:46 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d8049bf5-59dc-11ed-8fd0-01056ac49cbb 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=GylNXLxh0WKf8ueCpUP0PjKoFAT0J9e6v1pJlyo4sNo=; b=xMhsMVbaoDArcp8i/UPYaagm7M Mm3+V7arD+1CqKkCWlvA7+OvsKc1xpnMUT1h84IoeCroYtf+8GdupKnsaZi7XbC/N0qECkjcuVYoL 9mlaPjd8nPr+p4T1Xbh0Rr90x8X9qq1puE59MBhpkrZokOli4rw0STy7DpLWp1W+MYXs=; 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 418 v2 (CVE-2022-42321) - Xenstore: Guests can crash xenstored via exhausting the stack Message-Id: Date: Tue, 01 Nov 2022 12:00:46 +0000 X-Zoho-Virus-Status: 1 X-ZohoMail-DKIM: pass (identity @xen.org) X-ZM-MESSAGEID: 1667304129717100002 --=separator Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Acked-by: Julien Grall Reported-by: Julien Grall Reviewed-by: Julien Grall -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Xen Security Advisory CVE-2022-42321 / XSA-418 version 2 Xenstore: Guests can crash xenstored via exhausting the stack UPDATES IN VERSION 2 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Public release. ISSUE DESCRIPTION =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Xenstored is using recursion for some Xenstore operations (e.g. for deleting a sub-tree of Xenstore nodes). With sufficiently deep nesting levels this can result in stack exhaustion on xenstored, leading to a crash of xenstored. IMPACT =3D=3D=3D=3D=3D=3D A malicious guest creating very deep nesting levels of Xenstore nodes might be able to crash xenstored, resulting in a Denial of Service (DoS) of Xenstore. This will inhibit creation of new guests or changing the configuration of already running guests. VULNERABLE SYSTEMS =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D All versions of Xen are affected. Only systems running the C variant of Xenstore (xenstored or xenstore- stubdom) are vulnerable. Systems using the Ocaml variant of Xenstore (oxenstored) are not vulnerable. MITIGATION =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Running oxenstored instead of xenstored will avoid the vulnerability. CREDITS =3D=3D=3D=3D=3D=3D=3D This issue was discovered by David Vrabel of Amazon. RESOLUTION =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Applying the appropriate attached patch 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. xsa418/xsa418-??.patch xen-unstable xsa418/xsa418-4.16-??.patch Xen 4.16.x xsa418/xsa418-4.15-??.patch Xen 4.15.x xsa418/xsa418-4.14-??.patch Xen 4.14.x - 4.13.x $ sha256sum xsa418* xsa418*/* dba8cf354728d5b9248d9649d042835b2f5f96dd995d0fe23a07a157cba68500 xsa418.me= ta d13f084bbca78d35b991fe5347297d13f77b4e49ad816344363a61a8335e6632 xsa418/xs= a418-01.patch ac9acb8cda844e3873ec0a77fb9bd58581d6f1084f8a38fa494bff548c9232ae xsa418/xs= a418-02.patch bc29743d71eed3ba41d1ec732e5c0011107dcc06d945ec554ef04314e0272898 xsa418/xs= a418-03.patch bba67ab17c8c132258b0cfbc701e2b79ae6ea5ef507f4c09e103c19a9c729b03 xsa418/xs= a418-4.14-01.patch 79eadfee1eeae340256331b5e189f1c8514106dae5ca208b0f4965ba6f6e9e51 xsa418/xs= a418-4.14-02.patch 6a96c8636fc3c2a1539b9c21d3af4e0a68124dc4a7219c5eacd685f7d0543dd7 xsa418/xs= a418-4.14-03.patch fe4ad75c34ceba6427c6f2ea7ad86af4a25ba3f5f9dc42fdd4ef7bf4fa60d39d xsa418/xs= a418-4.14-04.patch 7884b7850d991d098409a3a9a27050f3d34486a3b459e0c2047d1dc43e13515f xsa418/xs= a418-4.14-05.patch 27c070655bf27a2ca84506703d76ab5b3c9fd22155a29af5c882013cd5580640 xsa418/xs= a418-4.14-06.patch 313707f2b0738680015a38ec50d93f149c386c72c809cd17de8f52e2d883b8e0 xsa418/xs= a418-4.15-01.patch 4628506b3f4407034b7c6e0159a6719225f6a4c70fe12b30375f515bb6ce5d93 xsa418/xs= a418-4.15-02.patch a59fed27d614de06a8d508da6345dda7260d2ac7ff9762372b34c4e6a5dfa432 xsa418/xs= a418-4.15-03.patch 99ea45e5f877afe01af189ebfe3114edc8d3283829424adc53760d385b8a202e xsa418/xs= a418-4.15-04.patch dd10d3c3af942fd941604029a5b5262ae6d8f7c7a9071b243904bc34c8d14ab2 xsa418/xs= a418-4.15-05.patch 1a50edee9d3a04a982ba22bcf150475f396494c03b4b6eaf18b45561f0d005fc xsa418/xs= a418-4.15-06.patch 042cf55472e911b871a8062613b604e7a4641505bae4e6505a176b2976906739 xsa418/xs= a418-4.15-07.patch 669e8fc1637b92846ad7b72eb510c05920b267bc54340e83b3f1c8df2092ecbc xsa418/xs= a418-4.16-01.patch b382431343ab873d6ab88557b09891dc821a497200c1b61e7b64286bba899ea9 xsa418/xs= a418-4.16-02.patch 27737bfa0d3e475ba0e468ab3dcf0274bde40948e5f669f179d2964f6cfab4cf xsa418/xs= a418-4.16-03.patch 5677156c12063d0cbad273d45800bb25176308ffd7b660d73aac3a36e4099055 xsa418/xs= a418-4.16-04.patch 3c3b0282cbc50da485f6b7a871e0cc318725db2b3debf098b0fc6d0598488a48 xsa418/xs= a418-4.16-05.patch d871d0e38f6db4cc86591c63cb37c63aed9ed0ba88429236eb91d142090da529 xsa418/xs= a418-4.16-06.patch 145a98f2540b5c17c7d262e1df80103c4478d622a4eeba07d1566679d81a4542 xsa418/xs= a418-4.16-07.patch 70874f345806b376fea1b02b0ed4d493d792a43f5c6fc29c13e0658350086f92 xsa418/xs= a418-04.patch 8d94a7c6e9e484569c6eb98f274fa7489e68a9f16d12092839bb519cfc32a7b3 xsa418/xs= a418-05.patch e5ecc6d3756a485114b57e0d02ff53d6eb3b312fac117a99c05bc392faa45d27 xsa418/xs= a418-06.patch 77695fa2f1bfeee051d4a0e0d1e0b654f5177ce104a72635c2f1bafb1d6631cb xsa418/xs= a418-07.patch $ DEPLOYMENT DURING EMBARGO =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Deployment of the patches and/or mitigations described above (or others which are substantially similar) is permitted during the embargo, even on public-facing systems with untrusted guest users and administrators. But: 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/4UyVfoK9kFAmNg+6sMHHBncEB4ZW4u b3JnAAoJEIP+FMlX6CvZ0wAH/36wusPv68bogxxnnNwL6eFmZZ1Rd90mAMfw6Qyt OYo3tOWhnZVVH3uC84S7s/zWsZWJaaWxTnGW03Gxnep3GstufnWnV0m/VsmXsI9L /W0C23SgWxao+Bc819TRWF3JTcSb/wdbBbgHOJbu8gzLQc7T8xsgUeOr34fpAtZv qr2fExhKrlxdWYodDJLdZryZRBQ1ZKbO+Rihpv23FKst4HhlQvCvWr99oK6/ubkp 2mzLjeotWxT2G+RnQNJp4JqgXaYr6972/Q5h75lCxQZWxw7baIS62gTaFfK8cD4p j4gVo2zYtMBivUZngmTF36iRN743NAOz3HsvU1pEphbc24o=3D =3D6SQq -----END PGP SIGNATURE----- --=separator Content-Type: application/octet-stream; name="xsa418.meta" Content-Disposition: attachment; filename="xsa418.meta" Content-Transfer-Encoding: base64 ewogICJYU0EiOiA0MTgsCiAgIlN1cHBvcnRlZFZlcnNpb25zIjogWwogICAg Im1hc3RlciIsCiAgICAiNC4xNiIsCiAgICAiNC4xNSIsCiAgICAiNC4xNCIs CiAgICAiNC4xMyIKICBdLAogICJUcmVlcyI6IFsKICAgICJ4ZW4iCiAgXSwK ICAiUmVjaXBlcyI6IHsKICAgICI0LjEzIjogewogICAgICAiUmVjaXBlcyI6 IHsKICAgICAgICAieGVuIjogewogICAgICAgICAgIlN0YWJsZVJlZiI6ICIw YmU2M2MyNjE1YjI2ODAwMWY3Y2M5YjcyY2UyNWVlZDk1MjczN2RjIiwKICAg ICAgICAgICJQcmVyZXFzIjogWwogICAgICAgICAgICA0MTQsCiAgICAgICAg ICAgIDQxNSwKICAgICAgICAgICAgMzI2LAogICAgICAgICAgICA0MTYsCiAg ICAgICAgICAgIDQxNwogICAgICAgICAgXSwKICAgICAgICAgICJQYXRjaGVz IjogWwogICAgICAgICAgICAieHNhNDE4L3hzYTQxOC00LjE0LT8/LnBhdGNo IgogICAgICAgICAgXQogICAgICAgIH0KICAgICAgfQogICAgfSwKICAgICI0 LjE0IjogewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVuIjogewog ICAgICAgICAgIlN0YWJsZVJlZiI6ICIwMTZkZTYyNzQ3YjI2ZWFkNWE1Yzc2 M2I2NDBmZThlMjA1Y2QxODJiIiwKICAgICAgICAgICJQcmVyZXFzIjogWwog ICAgICAgICAgICA0MTQsCiAgICAgICAgICAgIDQxNSwKICAgICAgICAgICAg MzI2LAogICAgICAgICAgICA0MTYsCiAgICAgICAgICAgIDQxNwogICAgICAg ICAgXSwKICAgICAgICAgICJQYXRjaGVzIjogWwogICAgICAgICAgICAieHNh NDE4L3hzYTQxOC00LjE0LT8/LnBhdGNoIgogICAgICAgICAgXQogICAgICAg IH0KICAgICAgfQogICAgfSwKICAgICI0LjE1IjogewogICAgICAiUmVjaXBl cyI6IHsKICAgICAgICAieGVuIjogewogICAgICAgICAgIlN0YWJsZVJlZiI6 ICI4MTY1ODBhZmRkMTczMGQ0Zjg1ZjY0NDc3YTI0MmE0MzlhZjFjZGY4IiwK ICAgICAgICAgICJQcmVyZXFzIjogWwogICAgICAgICAgICA0MTQsCiAgICAg ICAgICAgIDQxNSwKICAgICAgICAgICAgMzI2LAogICAgICAgICAgICA0MTYs CiAgICAgICAgICAgIDQxNwogICAgICAgICAgXSwKICAgICAgICAgICJQYXRj aGVzIjogWwogICAgICAgICAgICAieHNhNDE4L3hzYTQxOC00LjE1LT8/LnBh dGNoIgogICAgICAgICAgXQogICAgICAgIH0KICAgICAgfQogICAgfSwKICAg ICI0LjE2IjogewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVuIjog ewogICAgICAgICAgIlN0YWJsZVJlZiI6ICIxYmNlN2ZiMWY3MDJkYTRmN2E3 NDljNmYxNDU3ZWNiMjBiZjc0ZmNhIiwKICAgICAgICAgICJQcmVyZXFzIjog WwogICAgICAgICAgICA0MTIsCiAgICAgICAgICAgIDQxNCwKICAgICAgICAg ICAgNDE1LAogICAgICAgICAgICAzMjYsCiAgICAgICAgICAgIDQxNiwKICAg ICAgICAgICAgNDE3CiAgICAgICAgICBdLAogICAgICAgICAgIlBhdGNoZXMi OiBbCiAgICAgICAgICAgICJ4c2E0MTgveHNhNDE4LTQuMTYtPz8ucGF0Y2gi CiAgICAgICAgICBdCiAgICAgICAgfQogICAgICB9CiAgICB9LAogICAgIm1h c3RlciI6IHsKICAgICAgIlJlY2lwZXMiOiB7CiAgICAgICAgInhlbiI6IHsK ICAgICAgICAgICJTdGFibGVSZWYiOiAiY2M0NzQ3YmU4YmExNTdhM2IzMTA5 MjFlOWVlMDdmYjg1NDVhYTIwNiIsCiAgICAgICAgICAiUHJlcmVxcyI6IFsK ICAgICAgICAgICAgNDEyLAogICAgICAgICAgICA0MTQsCiAgICAgICAgICAg IDQxNSwKICAgICAgICAgICAgMzI2LAogICAgICAgICAgICA0MTYsCiAgICAg ICAgICAgIDQxNwogICAgICAgICAgXSwKICAgICAgICAgICJQYXRjaGVzIjog WwogICAgICAgICAgICAieHNhNDE4L3hzYTQxOC0/Py5wYXRjaCIKICAgICAg ICAgIF0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9Cn0= --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-01.patch" Content-Disposition: attachment; filename="xsa418/xsa418-01.patch" Content-Transfer-Encoding: base64 RnJvbSA5OTIzYzA2YTRmMTljNWE0NjkyN2UzNWYxMDNlYzY1YjY1ZTQxNmMy IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTEgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHJlbW92ZSBy ZWN1cnNpb24gZnJvbSBjb25zdHJ1Y3Rfbm9kZSgpCgpJbiBvcmRlciB0byBy ZWR1Y2Ugc3RhY2sgdXNhZ2UgZHVlIHRvIHJlY3Vyc2lvbiwgc3dpdGNoCmNv bnN0cnVjdF9ub2RlKCkgdG8gdXNlIGEgbG9vcCBpbnN0ZWFkLgoKVGhpcyBp cyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9ydGVk LWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpTaWdu ZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ClJl dmlld2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoK ZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMg Yi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IGEwYzE3 NmZhMjAzZS4uY2I1MmY2OGQ0ZGRmIDEwMDY0NAotLS0gYS90b29scy94ZW5z dG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hl bnN0b3JlZF9jb3JlLmMKQEAgLTEzNzMsNDUgKzEzNzMsNjkgQEAgc3RhdGlj IGludCBhZGRfY2hpbGQoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3Qgbm9kZSAq cGFyZW50LCBjb25zdCBjaGFyICpuYW1lKQogc3RhdGljIHN0cnVjdCBub2Rl ICpjb25zdHJ1Y3Rfbm9kZShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgY29u c3Qgdm9pZCAqY3R4LAogCQkJCSAgIGNvbnN0IGNoYXIgKm5hbWUpCiB7Ci0J c3RydWN0IG5vZGUgKnBhcmVudCwgKm5vZGU7Ci0JY2hhciAqcGFyZW50bmFt ZSA9IGdldF9wYXJlbnQoY3R4LCBuYW1lKTsKKwljb25zdCBjaGFyICoqbmFt ZXMgPSBOVUxMOworCXVuc2lnbmVkIGludCBsZXZlbHMgPSAwOworCXN0cnVj dCBub2RlICpub2RlID0gTlVMTDsKKwlzdHJ1Y3Qgbm9kZSAqcGFyZW50ID0g TlVMTDsKKwljb25zdCBjaGFyICpwYXJlbnRuYW1lID0gdGFsbG9jX3N0cmR1 cChjdHgsIG5hbWUpOwogCiAJaWYgKCFwYXJlbnRuYW1lKQogCQlyZXR1cm4g TlVMTDsKIAotCS8qIElmIHBhcmVudCBkb2Vzbid0IGV4aXN0LCBjcmVhdGUg aXQuICovCi0JcGFyZW50ID0gcmVhZF9ub2RlKGNvbm4sIHBhcmVudG5hbWUs IHBhcmVudG5hbWUpOwotCWlmICghcGFyZW50ICYmIGVycm5vID09IEVOT0VO VCkKLQkJcGFyZW50ID0gY29uc3RydWN0X25vZGUoY29ubiwgY3R4LCBwYXJl bnRuYW1lKTsKLQlpZiAoIXBhcmVudCkKLQkJcmV0dXJuIE5VTEw7CisJLyog V2FsayB0aGUgcGF0aCB1cCB1bnRpbCBhbiBleGlzdGluZyBub2RlIGlzIGZv dW5kLiAqLworCXdoaWxlICghcGFyZW50KSB7CisJCW5hbWVzID0gdGFsbG9j X3JlYWxsb2MoY3R4LCBuYW1lcywgY29uc3QgY2hhciAqLCBsZXZlbHMgKyAx KTsKKwkJaWYgKCFuYW1lcykKKwkJCWdvdG8gbm9tZW07CiAKLQkvKiBBZGQg Y2hpbGQgdG8gcGFyZW50LiAqLwotCWlmIChhZGRfY2hpbGQoY3R4LCBwYXJl bnQsIG5hbWUpKQotCQlnb3RvIG5vbWVtOworCQkvKgorCQkgKiBuYW1lc1sw XSBpcyB0aGUgbmFtZSBvZiB0aGUgbm9kZSB0byBjb25zdHJ1Y3QgaW5pdGlh bGx5LAorCQkgKiBuYW1lc1sxXSBpcyBpdHMgcGFyZW50LCBhbmQgc28gb24u CisJCSAqLworCQluYW1lc1tsZXZlbHNdID0gcGFyZW50bmFtZTsKKwkJcGFy ZW50bmFtZSA9IGdldF9wYXJlbnQoY3R4LCBwYXJlbnRuYW1lKTsKKwkJaWYg KCFwYXJlbnRuYW1lKQorCQkJcmV0dXJuIE5VTEw7CiAKLQkvKiBBbGxvY2F0 ZSBub2RlICovCi0Jbm9kZSA9IHRhbGxvYyhjdHgsIHN0cnVjdCBub2RlKTsK LQlpZiAoIW5vZGUpCi0JCWdvdG8gbm9tZW07Ci0Jbm9kZS0+bmFtZSA9IHRh bGxvY19zdHJkdXAobm9kZSwgbmFtZSk7Ci0JaWYgKCFub2RlLT5uYW1lKQot CQlnb3RvIG5vbWVtOworCQkvKiBUcnkgdG8gcmVhZCBwYXJlbnQgbm9kZSB1 bnRpbCB3ZSBmb3VuZCBhbiBleGlzdGluZyBvbmUuICovCisJCXBhcmVudCA9 IHJlYWRfbm9kZShjb25uLCBjdHgsIHBhcmVudG5hbWUpOworCQlpZiAoIXBh cmVudCAmJiAoZXJybm8gIT0gRU5PRU5UIHx8ICFzdHJjbXAocGFyZW50bmFt ZSwgIi8iKSkpCisJCQlyZXR1cm4gTlVMTDsKIAotCS8qIEluaGVyaXQgcGVy bWlzc2lvbnMsIGV4Y2VwdCB1bnByaXZpbGVnZWQgZG9tYWlucyBvd24gd2hh dCB0aGV5IGNyZWF0ZSAqLwotCW5vZGUtPnBlcm1zLm51bSA9IHBhcmVudC0+ cGVybXMubnVtOwotCW5vZGUtPnBlcm1zLnAgPSB0YWxsb2NfbWVtZHVwKG5v ZGUsIHBhcmVudC0+cGVybXMucCwKLQkJCQkgICAgICBub2RlLT5wZXJtcy5u dW0gKiBzaXplb2YoKm5vZGUtPnBlcm1zLnApKTsKLQlpZiAoIW5vZGUtPnBl cm1zLnApCi0JCWdvdG8gbm9tZW07Ci0JaWYgKGRvbWFpbl9pc191bnByaXZp bGVnZWQoY29ubikpCi0JCW5vZGUtPnBlcm1zLnBbMF0uaWQgPSBjb25uLT5p ZDsKKwkJbGV2ZWxzKys7CisJfQorCisJLyogV2FsayB0aGUgcGF0aCBkb3du IGFnYWluIGNvbnN0cnVjdGluZyB0aGUgbWlzc2luZyBub2Rlcy4gKi8KKwlm b3IgKDsgbGV2ZWxzID4gMDsgbGV2ZWxzLS0pIHsKKwkJLyogQWRkIGNoaWxk IHRvIHBhcmVudC4gKi8KKwkJaWYgKGFkZF9jaGlsZChjdHgsIHBhcmVudCwg bmFtZXNbbGV2ZWxzIC0gMV0pKQorCQkJZ290byBub21lbTsKKworCQkvKiBB bGxvY2F0ZSBub2RlICovCisJCW5vZGUgPSB0YWxsb2MoY3R4LCBzdHJ1Y3Qg bm9kZSk7CisJCWlmICghbm9kZSkKKwkJCWdvdG8gbm9tZW07CisJCW5vZGUt Pm5hbWUgPSB0YWxsb2Nfc3RlYWwobm9kZSwgbmFtZXNbbGV2ZWxzIC0gMV0p OworCisJCS8qIEluaGVyaXQgcGVybWlzc2lvbnMsIHVucHJpdiBkb21haW5z IG93biB3aGF0IHRoZXkgY3JlYXRlLiAqLworCQlub2RlLT5wZXJtcy5udW0g PSBwYXJlbnQtPnBlcm1zLm51bTsKKwkJbm9kZS0+cGVybXMucCA9IHRhbGxv Y19tZW1kdXAobm9kZSwgcGFyZW50LT5wZXJtcy5wLAorCQkJCQkgICAgICBu b2RlLT5wZXJtcy5udW0gKgorCQkJCQkgICAgICBzaXplb2YoKm5vZGUtPnBl cm1zLnApKTsKKwkJaWYgKCFub2RlLT5wZXJtcy5wKQorCQkJZ290byBub21l bTsKKwkJaWYgKGRvbWFpbl9pc191bnByaXZpbGVnZWQoY29ubikpCisJCQlu b2RlLT5wZXJtcy5wWzBdLmlkID0gY29ubi0+aWQ7CisKKwkJLyogTm8gY2hp bGRyZW4sIG5vIGRhdGEgKi8KKwkJbm9kZS0+Y2hpbGRyZW4gPSBub2RlLT5k YXRhID0gTlVMTDsKKwkJbm9kZS0+Y2hpbGRsZW4gPSBub2RlLT5kYXRhbGVu ID0gMDsKKwkJbm9kZS0+YWNjLm1lbW9yeSA9IDA7CisJCW5vZGUtPnBhcmVu dCA9IHBhcmVudDsKKworCQlwYXJlbnQgPSBub2RlOworCX0KIAotCS8qIE5v IGNoaWxkcmVuLCBubyBkYXRhICovCi0Jbm9kZS0+Y2hpbGRyZW4gPSBub2Rl LT5kYXRhID0gTlVMTDsKLQlub2RlLT5jaGlsZGxlbiA9IG5vZGUtPmRhdGFs ZW4gPSAwOwotCW5vZGUtPmFjYy5tZW1vcnkgPSAwOwotCW5vZGUtPnBhcmVu dCA9IHBhcmVudDsKIAlyZXR1cm4gbm9kZTsKIAogbm9tZW06Cg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-02.patch" Content-Disposition: attachment; filename="xsa418/xsa418-02.patch" Content-Transfer-Encoding: base64 RnJvbSA4NmM2ZWU0ODM1NDdhNjEzNTViMzIxMTdlNDM5ZDQ3YjRkYWNjYmRj IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTEgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IGRvbid0IGxl dCByZW1vdmVfY2hpbGRfZW50cnkoKSBjYWxsIGNvcnJ1cHQoKQoKSW4gY2Fz ZSBvZiB3cml0ZV9ub2RlKCkgcmV0dXJuaW5nIGFuIGVycm9yLCByZW1vdmVf Y2hpbGRfZW50cnkoKSB3aWxsCmNhbGwgY29ycnVwdCgpIHRvZGF5LiBUaGlz IGNvdWxkIHJlc3VsdCBpbiBhbiBlbmRsZXNzIHJlY3Vyc2lvbiwgYXMKcmVt b3ZlX2NoaWxkX2VudHJ5KCkgaXMgY2FsbGVkIGJ5IGNvcnJ1cHQoKSwgdG9v OgoKY29ycnVwdCgpCiAgY2hlY2tfc3RvcmUoKQogICAgY2hlY2tfc3RvcmVf KCkKICAgICAgcmVtb3ZlX2NoaWxkX2VudHJ5KCkKCkZpeCB0aGF0IGJ5IGxl dHRpbmcgcmVtb3ZlX2NoaWxkX2VudHJ5KCkgcmV0dXJuIGFuIGVycm9yIGlu c3RlYWQgYW5kCmxldCB0aGUgY2FsbGVyIGRlY2lkZSB3aGF0IHRvIGRvLgoK VGhpcyBpcyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJl cG9ydGVkLWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVr PgpTaWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5j b20+ClJldmlld2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24u Y29tPgoKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9j b3JlLmMgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4 IGNiNTJmNjhkNGRkZi4uNTY0MjkxN2U2N2RiIDEwMDY0NAotLS0gYS90b29s cy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0 b3JlL3hlbnN0b3JlZF9jb3JlLmMKQEAgLTE2MDQsMTUgKzE2MDQsMTUgQEAg c3RhdGljIHZvaWQgbWVtZGVsKHZvaWQgKm1lbSwgdW5zaWduZWQgb2ZmLCB1 bnNpZ25lZCBsZW4sIHVuc2lnbmVkIHRvdGFsKQogCW1lbW1vdmUobWVtICsg b2ZmLCBtZW0gKyBvZmYgKyBsZW4sIHRvdGFsIC0gb2ZmIC0gbGVuKTsKIH0K IAotc3RhdGljIHZvaWQgcmVtb3ZlX2NoaWxkX2VudHJ5KHN0cnVjdCBjb25u ZWN0aW9uICpjb25uLCBzdHJ1Y3Qgbm9kZSAqbm9kZSwKLQkJCSAgICAgICBz aXplX3Qgb2Zmc2V0KQorc3RhdGljIGludCByZW1vdmVfY2hpbGRfZW50cnko c3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIHN0cnVjdCBub2RlICpub2RlLAor CQkJICAgICAgc2l6ZV90IG9mZnNldCkKIHsKIAlzaXplX3QgY2hpbGRsZW4g PSBzdHJsZW4obm9kZS0+Y2hpbGRyZW4gKyBvZmZzZXQpOwogCiAJbWVtZGVs KG5vZGUtPmNoaWxkcmVuLCBvZmZzZXQsIGNoaWxkbGVuICsgMSwgbm9kZS0+ Y2hpbGRsZW4pOwogCW5vZGUtPmNoaWxkbGVuIC09IGNoaWxkbGVuICsgMTsK LQlpZiAod3JpdGVfbm9kZShjb25uLCBub2RlLCB0cnVlKSkKLQkJY29ycnVw dChjb25uLCAiQ2FuJ3QgdXBkYXRlIHBhcmVudCBub2RlICclcyciLCBub2Rl LT5uYW1lKTsKKworCXJldHVybiB3cml0ZV9ub2RlKGNvbm4sIG5vZGUsIHRy dWUpOwogfQogCiBzdGF0aWMgdm9pZCBkZWxldGVfY2hpbGQoc3RydWN0IGNv bm5lY3Rpb24gKmNvbm4sCkBAIC0xNjIyLDcgKzE2MjIsOSBAQCBzdGF0aWMg dm9pZCBkZWxldGVfY2hpbGQoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sCiAK IAlmb3IgKGkgPSAwOyBpIDwgbm9kZS0+Y2hpbGRsZW47IGkgKz0gc3RybGVu KG5vZGUtPmNoaWxkcmVuK2kpICsgMSkgewogCQlpZiAoc3RyZXEobm9kZS0+ Y2hpbGRyZW4raSwgY2hpbGRuYW1lKSkgewotCQkJcmVtb3ZlX2NoaWxkX2Vu dHJ5KGNvbm4sIG5vZGUsIGkpOworCQkJaWYgKHJlbW92ZV9jaGlsZF9lbnRy eShjb25uLCBub2RlLCBpKSkKKwkJCQljb3JydXB0KGNvbm4sICJDYW4ndCB1 cGRhdGUgcGFyZW50IG5vZGUgJyVzJyIsCisJCQkJCW5vZGUtPm5hbWUpOwog CQkJcmV0dXJuOwogCQl9CiAJfQpAQCAtMjMwNCw2ICsyMzA2LDE3IEBAIGlu dCByZW1lbWJlcl9zdHJpbmcoc3RydWN0IGhhc2h0YWJsZSAqaGFzaCwgY29u c3QgY2hhciAqc3RyKQogCXJldHVybiBoYXNodGFibGVfaW5zZXJ0KGhhc2gs IGssICh2b2lkICopMSk7CiB9CiAKK3N0YXRpYyBpbnQgcm1fY2hpbGRfZW50 cnkoc3RydWN0IG5vZGUgKm5vZGUsIHNpemVfdCBvZmYsIHNpemVfdCBsZW4p Cit7CisJaWYgKCFyZWNvdmVyeSkKKwkJcmV0dXJuIG9mZjsKKworCWlmIChy ZW1vdmVfY2hpbGRfZW50cnkoTlVMTCwgbm9kZSwgb2ZmKSkKKwkJbG9nKCJj aGVja19zdG9yZTogY2hpbGQgZW50cnkgY291bGQgbm90IGJlIHJlbW92ZWQg ZnJvbSAnJXMnIiwKKwkJICAgIG5vZGUtPm5hbWUpOworCisJcmV0dXJuIG9m ZiAtIGxlbiAtIDE7Cit9CiAKIC8qKgogICogQSBub2RlIGhhcyBhIGNoaWxk cmVuIGZpZWxkIHRoYXQgbmFtZXMgdGhlIGNoaWxkcmVuIG9mIHRoZSBub2Rl LCBzZXBhcmF0ZWQKQEAgLTIzNTYsMTIgKzIzNjksNyBAQCBzdGF0aWMgaW50 IGNoZWNrX3N0b3JlXyhjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3QgaGFzaHRh YmxlICpyZWFjaGFibGUpCiAJCQkJaWYgKGhhc2h0YWJsZV9zZWFyY2goY2hp bGRyZW4sIGNoaWxkbmFtZSkpIHsKIAkJCQkJbG9nKCJjaGVja19zdG9yZTog JyVzJyBpcyBkdXBsaWNhdGVkISIsCiAJCQkJCSAgICBjaGlsZG5hbWUpOwot Ci0JCQkJCWlmIChyZWNvdmVyeSkgewotCQkJCQkJcmVtb3ZlX2NoaWxkX2Vu dHJ5KE5VTEwsIG5vZGUsCi0JCQkJCQkJCSAgIGkpOwotCQkJCQkJaSAtPSBj aGlsZGxlbiArIDE7Ci0JCQkJCX0KKwkJCQkJaSA9IHJtX2NoaWxkX2VudHJ5 KG5vZGUsIGksIGNoaWxkbGVuKTsKIAkJCQl9CiAJCQkJZWxzZSB7CiAJCQkJ CWlmICghcmVtZW1iZXJfc3RyaW5nKGNoaWxkcmVuLApAQCAtMjM3OCwxMSAr MjM4Niw3IEBAIHN0YXRpYyBpbnQgY2hlY2tfc3RvcmVfKGNvbnN0IGNoYXIg Km5hbWUsIHN0cnVjdCBoYXNodGFibGUgKnJlYWNoYWJsZSkKIAkJCX0gZWxz ZSBpZiAoZXJybm8gIT0gRU5PTUVNKSB7CiAJCQkJbG9nKCJjaGVja19zdG9y ZTogTm8gY2hpbGQgJyVzJyBmb3VuZCFcbiIsCiAJCQkJICAgIGNoaWxkbmFt ZSk7Ci0KLQkJCQlpZiAocmVjb3ZlcnkpIHsKLQkJCQkJcmVtb3ZlX2NoaWxk X2VudHJ5KE5VTEwsIG5vZGUsIGkpOwotCQkJCQlpIC09IGNoaWxkbGVuICsg MTsKLQkJCQl9CisJCQkJaSA9IHJtX2NoaWxkX2VudHJ5KG5vZGUsIGksIGNo aWxkbGVuKTsKIAkJCX0gZWxzZSB7CiAJCQkJbG9nKCJjaGVja19zdG9yZTog RU5PTUVNIik7CiAJCQkJcmV0ID0gRU5PTUVNOwo= --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-03.patch" Content-Disposition: attachment; filename="xsa418/xsa418-03.patch" Content-Transfer-Encoding: base64 RnJvbSA1NjdhYzI1MWE2NTdmOGMxODQ3YWJiNWExNWZmYTY4NmI1YWVkNmZi IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTEgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IGFkZCBnZW5l cmljIHRyZWV3YWxrIGZ1bmN0aW9uCgpBZGQgYSBnZW5lcmljIGZ1bmN0aW9u IHRvIHdhbGsgdGhlIGNvbXBsZXRlIG5vZGUgdHJlZS4gSXQgd2lsbCBzdGFy dAphdCAiLyIgYW5kIGRlc2NlbmQgcmVjdXJzaXZlbHkgaW50byBlYWNoIGNo aWxkLCBjYWxsaW5nIGEgZnVuY3Rpb24Kc3BlY2lmaWVkIGJ5IHRoZSBjYWxs ZXIuIERlcGVuZGluZyBvbiB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoZSB1c2Vy CnNwZWNpZmllZCBmdW5jdGlvbiB0aGUgd2FsayB3aWxsIGJlIGFib3J0ZWQs IGNvbnRpbnVlZCwgb3IgdGhlIGN1cnJlbnQKY2hpbGQgd2lsbCBiZSBza2lw cGVkIGJ5IG5vdCBkZXNjZW5kaW5nIGludG8gaXRzIGNoaWxkcmVuLgoKVGhp cyBpcyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9y dGVkLWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpT aWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ CkFja2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoK ZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMg Yi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IDU2NDI5 MTdlNjdkYi4uZjc4ZmFmMGMzZTA2IDEwMDY0NAotLS0gYS90b29scy94ZW5z dG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hl bnN0b3JlZF9jb3JlLmMKQEAgLTE4MzQsNiArMTgzNCwxMzUgQEAgc3RhdGlj IGludCBkb19zZXRfcGVybXMoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29u bmVjdGlvbiAqY29ubiwKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIGNoYXIg KmNoaWxkX25hbWUoY29uc3Qgdm9pZCAqY3R4LCBjb25zdCBjaGFyICpzMSwg Y29uc3QgY2hhciAqczIpCit7CisJaWYgKHN0cmNtcChzMSwgIi8iKSkKKwkJ cmV0dXJuIHRhbGxvY19hc3ByaW50ZihjdHgsICIlcy8lcyIsIHMxLCBzMik7 CisJcmV0dXJuIHRhbGxvY19hc3ByaW50ZihjdHgsICIvJXMiLCBzMik7Cit9 CisKK3N0YXRpYyBpbnQgcm1fZnJvbV9wYXJlbnQoc3RydWN0IGNvbm5lY3Rp b24gKmNvbm4sIHN0cnVjdCBub2RlICpwYXJlbnQsCisJCQkgIGNvbnN0IGNo YXIgKm5hbWUpCit7CisJc2l6ZV90IG9mZjsKKworCWlmICghcGFyZW50KQor CQlyZXR1cm4gV0FMS19UUkVFX0VSUk9SX1NUT1A7CisKKwlmb3IgKG9mZiA9 IHBhcmVudC0+Y2hpbGRvZmYgLSAxOyBvZmYgJiYgcGFyZW50LT5jaGlsZHJl bltvZmYgLSAxXTsKKwkgICAgIG9mZi0tKTsKKwlpZiAocmVtb3ZlX2NoaWxk X2VudHJ5KGNvbm4sIHBhcmVudCwgb2ZmKSkgeworCQlsb2coInRyZWV3YWxr OiBjaGlsZCBlbnRyeSBjb3VsZCBub3QgYmUgcmVtb3ZlZCBmcm9tICclcyci LAorCQkgICAgcGFyZW50LT5uYW1lKTsKKwkJcmV0dXJuIFdBTEtfVFJFRV9F UlJPUl9TVE9QOworCX0KKwlwYXJlbnQtPmNoaWxkb2ZmID0gb2ZmOworCisJ cmV0dXJuIFdBTEtfVFJFRV9PSzsKK30KKworc3RhdGljIGludCB3YWxrX2Nh bGxfZnVuYyhjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpj b25uLAorCQkJICBzdHJ1Y3Qgbm9kZSAqbm9kZSwgc3RydWN0IG5vZGUgKnBh cmVudCwgdm9pZCAqYXJnLAorCQkJICBpbnQgKCpmdW5jKShjb25zdCB2b2lk ICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpjb25uLAorCQkJCSAgICAgIHN0 cnVjdCBub2RlICpub2RlLCB2b2lkICphcmcpKQoreworCWludCByZXQ7CisK KwlpZiAoIWZ1bmMpCisJCXJldHVybiBXQUxLX1RSRUVfT0s7CisKKwlyZXQg PSBmdW5jKGN0eCwgY29ubiwgbm9kZSwgYXJnKTsKKwlpZiAocmV0ID09IFdB TEtfVFJFRV9STV9DSElMREVOVFJZICYmIHBhcmVudCkKKwkJcmV0ID0gcm1f ZnJvbV9wYXJlbnQoY29ubiwgcGFyZW50LCBub2RlLT5uYW1lKTsKKworCXJl dHVybiByZXQ7Cit9CisKK2ludCB3YWxrX25vZGVfdHJlZShjb25zdCB2b2lk ICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBjb25zdCBjaGFyICpy b290LAorCQkgICBzdHJ1Y3Qgd2Fsa19mdW5jcyAqZnVuY3MsIHZvaWQgKmFy ZykKK3sKKwlpbnQgcmV0ID0gMDsKKwl2b2lkICp0bXBjdHg7CisJY2hhciAq bmFtZTsKKwlzdHJ1Y3Qgbm9kZSAqbm9kZSA9IE5VTEw7CisJc3RydWN0IG5v ZGUgKnBhcmVudCA9IE5VTEw7CisKKwl0bXBjdHggPSB0YWxsb2NfbmV3KGN0 eCk7CisJaWYgKCF0bXBjdHgpIHsKKwkJZXJybm8gPSBFTk9NRU07CisJCXJl dHVybiBXQUxLX1RSRUVfRVJST1JfU1RPUDsKKwl9CisJbmFtZSA9IHRhbGxv Y19zdHJkdXAodG1wY3R4LCByb290KTsKKwlpZiAoIW5hbWUpIHsKKwkJZXJy bm8gPSBFTk9NRU07CisJCXRhbGxvY19mcmVlKHRtcGN0eCk7CisJCXJldHVy biBXQUxLX1RSRUVfRVJST1JfU1RPUDsKKwl9CisKKwkvKiBDb250aW51ZSB0 aGUgd2FsayB1bnRpbCBhbiBlcnJvciBpcyByZXR1cm5lZC4gKi8KKwl3aGls ZSAocmV0ID49IDApIHsKKwkJLyogbm9kZSA9PSBOVUxMIHBvc3NpYmxlIG9u bHkgZm9yIHRoZSBpbml0aWFsIGxvb3AgaXRlcmF0aW9uLiAqLworCQlpZiAo bm9kZSkgeworCQkJLyogR28gb25lIHN0ZXAgdXAgaWYgcmV0IG9yIGlmIGxh c3QgY2hpbGQgZmluaXNoZWQuICovCisJCQlpZiAocmV0IHx8IG5vZGUtPmNo aWxkb2ZmID49IG5vZGUtPmNoaWxkbGVuKSB7CisJCQkJcGFyZW50ID0gbm9k ZS0+cGFyZW50OworCQkJCS8qIENhbGwgZnVuY3Rpb24gQUZURVIgcHJvY2Vz c2luZyBhIG5vZGUuICovCisJCQkJcmV0ID0gd2Fsa19jYWxsX2Z1bmMoY3R4 LCBjb25uLCBub2RlLCBwYXJlbnQsCisJCQkJCQkgICAgIGFyZywgZnVuY3Mt PmV4aXQpOworCQkJCS8qIExhc3Qgbm9kZSwgc28gZXhpdCBsb29wLiAqLwor CQkJCWlmICghcGFyZW50KQorCQkJCQlicmVhazsKKwkJCQl0YWxsb2NfZnJl ZShub2RlKTsKKwkJCQkvKiBDb250aW51ZSB3aXRoIHBhcmVudC4gKi8KKwkJ CQlub2RlID0gcGFyZW50OworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJLyog R2V0IG5leHQgY2hpbGQgb2YgY3VycmVudCBub2RlLiAqLworCQkJbmFtZSA9 IGNoaWxkX25hbWUodG1wY3R4LCBub2RlLT5uYW1lLAorCQkJCQkgIG5vZGUt PmNoaWxkcmVuICsgbm9kZS0+Y2hpbGRvZmYpOworCQkJaWYgKCFuYW1lKSB7 CisJCQkJcmV0ID0gV0FMS19UUkVFX0VSUk9SX1NUT1A7CisJCQkJYnJlYWs7 CisJCQl9CisJCQkvKiBQb2ludCB0byBuZXh0IGNoaWxkLiAqLworCQkJbm9k ZS0+Y2hpbGRvZmYgKz0gc3RybGVuKG5vZGUtPmNoaWxkcmVuICsKKwkJCQkJ CSBub2RlLT5jaGlsZG9mZikgKyAxOworCQkJLyogRGVzY2VudCBpbnRvIGNo aWxkcmVuLiAqLworCQkJcGFyZW50ID0gbm9kZTsKKwkJfQorCQkvKiBSZWFk IG5leHQgbm9kZSAocm9vdCBub2RlIG9yIG5leHQgY2hpbGQpLiAqLworCQlu b2RlID0gcmVhZF9ub2RlKGNvbm4sIHRtcGN0eCwgbmFtZSk7CisJCWlmICgh bm9kZSkgeworCQkJLyogQ2hpbGQgbm90IGZvdW5kIC0gc2hvdWxkIG5vdCBo YXBwZW4hICovCisJCQkvKiBFTk9FTlQgY2FzZSBjYW4gYmUgaGFuZGxlZCBi eSBzdXBwbGllZCBmdW5jdGlvbi4gKi8KKwkJCWlmIChlcnJubyA9PSBFTk9F TlQgJiYgZnVuY3MtPmVub2VudCkKKwkJCQlyZXQgPSBmdW5jcy0+ZW5vZW50 KGN0eCwgY29ubiwgcGFyZW50LCBuYW1lLAorCQkJCQkJICAgIGFyZyk7CisJ CQllbHNlCisJCQkJcmV0ID0gV0FMS19UUkVFX0VSUk9SX1NUT1A7CisJCQlp ZiAoIXBhcmVudCkKKwkJCQlicmVhazsKKwkJCWlmIChyZXQgPT0gV0FMS19U UkVFX1JNX0NISUxERU5UUlkpCisJCQkJcmV0ID0gcm1fZnJvbV9wYXJlbnQo Y29ubiwgcGFyZW50LCBuYW1lKTsKKwkJCWlmIChyZXQgPCAwKQorCQkJCWJy ZWFrOworCQkJdGFsbG9jX2ZyZWUobmFtZSk7CisJCQlub2RlID0gcGFyZW50 OworCQkJY29udGludWU7CisJCX0KKwkJdGFsbG9jX2ZyZWUobmFtZSk7CisJ CW5vZGUtPnBhcmVudCA9IHBhcmVudDsKKwkJbm9kZS0+Y2hpbGRvZmYgPSAw OworCQkvKiBDYWxsIGZ1bmN0aW9uIEJFRk9SRSBwcm9jZXNzaW5nIGEgbm9k ZS4gKi8KKwkJcmV0ID0gd2Fsa19jYWxsX2Z1bmMoY3R4LCBjb25uLCBub2Rl LCBwYXJlbnQsIGFyZywKKwkJCQkgICAgIGZ1bmNzLT5lbnRlcik7CisJfQor CisJdGFsbG9jX2ZyZWUodG1wY3R4KTsKKworCXJldHVybiByZXQgPCAwID8g cmV0IDogV0FMS19UUkVFX09LOworfQorCiBzdGF0aWMgc3RydWN0IHsKIAlj b25zdCBjaGFyICpzdHI7CiAJaW50ICgqZnVuYykoY29uc3Qgdm9pZCAqY3R4 LCBzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwKQEAgLTIyODQsMTggKzI0MTMs NiBAQCBzdGF0aWMgaW50IGtleXNfZXF1YWxfZm4odm9pZCAqa2V5MSwgdm9p ZCAqa2V5MikKIAlyZXR1cm4gMCA9PSBzdHJjbXAoKGNoYXIgKilrZXkxLCAo Y2hhciAqKWtleTIpOwogfQogCi0KLXN0YXRpYyBjaGFyICpjaGlsZF9uYW1l KGNvbnN0IGNoYXIgKnMxLCBjb25zdCBjaGFyICpzMikKLXsKLQlpZiAoc3Ry Y21wKHMxLCAiLyIpKSB7Ci0JCXJldHVybiB0YWxsb2NfYXNwcmludGYoTlVM TCwgIiVzLyVzIiwgczEsIHMyKTsKLQl9Ci0JZWxzZSB7Ci0JCXJldHVybiB0 YWxsb2NfYXNwcmludGYoTlVMTCwgIi8lcyIsIHMyKTsKLQl9Ci19Ci0KLQog aW50IHJlbWVtYmVyX3N0cmluZyhzdHJ1Y3QgaGFzaHRhYmxlICpoYXNoLCBj b25zdCBjaGFyICpzdHIpCiB7CiAJY2hhciAqayA9IG1hbGxvYyhzdHJsZW4o c3RyKSArIDEpOwpAQCAtMjM1NSw3ICsyNDcyLDcgQEAgc3RhdGljIGludCBj aGVja19zdG9yZV8oY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IGhhc2h0YWJs ZSAqcmVhY2hhYmxlKQogCQl3aGlsZSAoaSA8IG5vZGUtPmNoaWxkbGVuICYm ICFyZXQpIHsKIAkJCXN0cnVjdCBub2RlICpjaGlsZG5vZGU7CiAJCQlzaXpl X3QgY2hpbGRsZW4gPSBzdHJsZW4obm9kZS0+Y2hpbGRyZW4gKyBpKTsKLQkJ CWNoYXIgKiBjaGlsZG5hbWUgPSBjaGlsZF9uYW1lKG5vZGUtPm5hbWUsCisJ CQljaGFyICogY2hpbGRuYW1lID0gY2hpbGRfbmFtZShOVUxMLCBub2RlLT5u YW1lLAogCQkJCQkJICAgICAgbm9kZS0+Y2hpbGRyZW4gKyBpKTsKIAogCQkJ aWYgKCFjaGlsZG5hbWUpIHsKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3Jl L3hlbnN0b3JlZF9jb3JlLmggYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRf Y29yZS5oCmluZGV4IGY3YzM3ZmUzYjU2NS4uYWNiMDBhZDk2OTE0IDEwMDY0 NAotLS0gYS90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5oCisrKyBi L3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmgKQEAgLTIwMiw2ICsy MDIsNyBAQCBzdHJ1Y3Qgbm9kZSB7CiAKIAkvKiBDaGlsZHJlbiwgZWFjaCBu dWwtdGVybWluYXRlZC4gKi8KIAl1bnNpZ25lZCBpbnQgY2hpbGRsZW47CisJ dW5zaWduZWQgaW50IGNoaWxkb2ZmOwkvKiBVc2VkIGJ5IHdhbGtfbm9kZV90 cmVlKCkgaW50ZXJuYWxseS4gKi8KIAljaGFyICpjaGlsZHJlbjsKIAogCS8q IEFsbG9jYXRpb24gaW5mb3JtYXRpb24gZm9yIG5vZGUgY3VycmVudGx5IGlu IHN0b3JlLiAqLwpAQCAtMzMzLDYgKzMzNCw0NSBAQCB2b2lkIHJlYWRfc3Rh dGVfYnVmZmVyZWRfZGF0YShjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBjb25u ZWN0aW9uICpjb25uLAogCQkJICAgICAgY29uc3Qgc3RydWN0IHhzX3N0YXRl X2Nvbm5lY3Rpb24gKnNjKTsKIHZvaWQgcmVhZF9zdGF0ZV9ub2RlKGNvbnN0 IHZvaWQgKmN0eCwgY29uc3Qgdm9pZCAqc3RhdGUpOwogCisvKgorICogV2Fs ayB0aGUgbm9kZSB0cmVlIGJlbG93IHJvb3QgY2FsbGluZyBmdW5jcy0+ZW50 ZXIoKSBhbmQgZnVuY3MtPmV4aXQoKSBmb3IKKyAqIGVhY2ggbm9kZS4gZnVu Y3MtPmVudGVyKCkgaXMgYmVpbmcgY2FsbGVkIHdoZW4gZW50ZXJpbmcgYSBu b2RlLCBzbyBiZWZvcmUKKyAqIGFueSBvZiB0aGUgY2hpbGRyZW4gb2YgdGhl IG5vZGUgaXMgcHJvY2Vzc2VkLiBmdW5jcy0+ZXhpdCgpIGlzIGJlaW5nCisg KiBjYWxsZWQgd2hlbiBsZWF2aW5nIHRoZSBub2RlLCBzbyBhZnRlciBhbGwg Y2hpbGRyZW4gaGF2ZSBiZWVuIHByb2Nlc3NlZC4KKyAqIGZ1bmNzLT5lbm9l bnQoKSBpcyBiZWluZyBjYWxsZWQgd2hlbiBhIG5vZGUgaXNuJ3QgZXhpc3Rp bmcuCisgKiBmdW5jcy0+KigpIHJldHVybiB2YWx1ZXM6CisgKiAgPCAwOiB0 cmVlIHdhbGsgaXMgc3RvcHBlZCwgd2Fsa19ub2RlX3RyZWUoKSByZXR1cm5z IGZ1bmNzLT4qKCkgcmV0dXJuIHZhbHVlCisgKiAgICAgICBpbiBjYXNlIFdB TEtfVFJFRV9FUlJPUl9TVE9QIGlzIHJldHVybmVkLCBlcnJubyBzaG91bGQg YmUgc2V0CisgKiAgV0FMS19UUkVFX09LOiB0cmVlIHdhbGsgaXMgY29udGlu dWluZworICogIFdBTEtfVFJFRV9TS0lQX0NISUxEUkVOOiB0cmVlIHdhbGsg d29uJ3QgZGVzY2VuZCBiZWxvdyBjdXJyZW50IG5vZGUsIGJ1dAorICogICAg ICAgd2FsayBjb250aW51ZXMKKyAqICBXQUxLX1RSRUVfUk1fQ0hJTERFTlRS WTogUmVtb3ZlIHRoZSBjaGlsZCBlbnRyeSBmcm9tIGl0cyBwYXJlbnQgYW5k IHdyaXRlCisgKiAgICAgICB0aGUgbW9kaWZpZWQgcGFyZW50IG5vZGUgYmFj ayB0byB0aGUgZGF0YSBiYXNlLCBpbXBsaWVzIHRvIG5vdCBkZXNjZW5kCisg KiAgICAgICBiZWxvdyB0aGUgY3VycmVudCBub2RlLCBidXQgdG8gY29udGlu dWUgdGhlIHdhbGsKKyAqIGZ1bmNzLT4qKCkgaXMgYWxsb3dlZCB0byBtb2Rp ZnkgdGhlIG5vZGUgaXQgaXMgY2FsbGVkIGZvciBpbiB0aGUgZGF0YSBiYXNl LgorICogSW4gY2FzZSBmdW5jcy0+ZW50ZXIoKSBpcyBkZWxldGluZyB0aGUg bm9kZSwgaXQgbXVzdCBub3QgcmV0dXJuIFdBTEtfVFJFRV9PSworICogaW4g b3JkZXIgdG8gYXZvaWQgZGVzY2VuZGluZyBpbnRvIG5vIGxvbmdlciBleGlz dGluZyBjaGlsZHJlbi4KKyAqLworLyogUmV0dXJuIHZhbHVlcyBmb3IgZnVu Y3MtPiooKSBhbmQgd2Fsa19ub2RlX3RyZWUoKS4gKi8KKyNkZWZpbmUgV0FM S19UUkVFX1NVQ0NFU1NfU1RPUCAgLTEwMCAgICAvKiBTdG9wIHdhbGsgZWFy bHksIG5vIGVycm9yLiAqLworI2RlZmluZSBXQUxLX1RSRUVfRVJST1JfU1RP UCAgICAtMSAgICAgIC8qIFN0b3Agd2FsayBkdWUgdG8gZXJyb3IuICovCisj ZGVmaW5lIFdBTEtfVFJFRV9PSyAgICAgICAgICAgIDAgICAgICAgLyogTm8g ZXJyb3IuICovCisvKiBSZXR1cm4gdmFsdWUgZm9yIGZ1bmNzLT4qKCkgb25s eS4gKi8KKyNkZWZpbmUgV0FMS19UUkVFX1NLSVBfQ0hJTERSRU4gMSAgICAg ICAvKiBEb24ndCByZWN1cnNlIGJlbG93IGN1cnJlbnQgbm9kZS4gKi8KKyNk ZWZpbmUgV0FMS19UUkVFX1JNX0NISUxERU5UUlkgMiAgICAgICAvKiBSZW1v dmUgY2hpbGQgZW50cnkgZnJvbSBwYXJlbnQuICovCisKK3N0cnVjdCB3YWxr X2Z1bmNzIHsKKwlpbnQgKCplbnRlcikoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1 Y3QgY29ubmVjdGlvbiAqY29ubiwKKwkJICAgICBzdHJ1Y3Qgbm9kZSAqbm9k ZSwgdm9pZCAqYXJnKTsKKwlpbnQgKCpleGl0KShjb25zdCB2b2lkICpjdHgs IHN0cnVjdCBjb25uZWN0aW9uICpjb25uLAorCQkgICAgc3RydWN0IG5vZGUg Km5vZGUsIHZvaWQgKmFyZyk7CisJaW50ICgqZW5vZW50KShjb25zdCB2b2lk ICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpjb25uLAorCQkgICAgICBzdHJ1 Y3Qgbm9kZSAqcGFyZW50LCBjaGFyICpuYW1lLCB2b2lkICphcmcpOworfTsK KworaW50IHdhbGtfbm9kZV90cmVlKGNvbnN0IHZvaWQgKmN0eCwgc3RydWN0 IGNvbm5lY3Rpb24gKmNvbm4sIGNvbnN0IGNoYXIgKnJvb3QsCisJCSAgIHN0 cnVjdCB3YWxrX2Z1bmNzICpmdW5jcywgdm9pZCAqYXJnKTsKKwogI2VuZGlm IC8qIF9YRU5TVE9SRURfQ09SRV9IICovCiAKIC8qCg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.14-01.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.14-01.patch" Content-Transfer-Encoding: base64 RnJvbSAwZDRmNDQyYjg4M2EyNzk4NjExMWZjNTI0ZDQ1NzVhMzU2OTU5YmFl IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTEgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHJlbW92ZSBy ZWN1cnNpb24gZnJvbSBjb25zdHJ1Y3Rfbm9kZSgpCgpJbiBvcmRlciB0byBy ZWR1Y2Ugc3RhY2sgdXNhZ2UgZHVlIHRvIHJlY3Vyc2lvbiwgc3dpdGNoCmNv bnN0cnVjdF9ub2RlKCkgdG8gdXNlIGEgbG9vcCBpbnN0ZWFkLgoKVGhpcyBp cyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9ydGVk LWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpTaWdu ZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ClJl dmlld2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoK ZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMg Yi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IDM0YTg0 NjlkZDY5ZC4uZTc5NzFjODI4ZThiIDEwMDY0NAotLS0gYS90b29scy94ZW5z dG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hl bnN0b3JlZF9jb3JlLmMKQEAgLTEyNTQsNTcgKzEyNTQsOTEgQEAgc3RhdGlj IGNoYXIgKmJhc2VuYW1lKGNvbnN0IGNoYXIgKm5hbWUpCiAJcmV0dXJuIHN0 cnJjaHIobmFtZSwgJy8nKSArIDE7CiB9CiAKLXN0YXRpYyBzdHJ1Y3Qgbm9k ZSAqY29uc3RydWN0X25vZGUoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIGNv bnN0IHZvaWQgKmN0eCwKLQkJCQkgICBjb25zdCBjaGFyICpuYW1lKQorc3Rh dGljIGludCBhZGRfY2hpbGQoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3Qgbm9k ZSAqcGFyZW50LCBjb25zdCBjaGFyICpuYW1lKQogewogCWNvbnN0IGNoYXIg KmJhc2U7CiAJdW5zaWduZWQgaW50IGJhc2VsZW47Ci0Jc3RydWN0IG5vZGUg KnBhcmVudCwgKm5vZGU7Ci0JY2hhciAqY2hpbGRyZW4sICpwYXJlbnRuYW1l ID0gZ2V0X3BhcmVudChjdHgsIG5hbWUpOwotCi0JaWYgKCFwYXJlbnRuYW1l KQotCQlyZXR1cm4gTlVMTDsKKwljaGFyICpjaGlsZHJlbjsKIAotCS8qIElm IHBhcmVudCBkb2Vzbid0IGV4aXN0LCBjcmVhdGUgaXQuICovCi0JcGFyZW50 ID0gcmVhZF9ub2RlKGNvbm4sIHBhcmVudG5hbWUsIHBhcmVudG5hbWUpOwot CWlmICghcGFyZW50ICYmIGVycm5vID09IEVOT0VOVCkKLQkJcGFyZW50ID0g Y29uc3RydWN0X25vZGUoY29ubiwgY3R4LCBwYXJlbnRuYW1lKTsKLQlpZiAo IXBhcmVudCkKLQkJcmV0dXJuIE5VTEw7Ci0KLQkvKiBBZGQgY2hpbGQgdG8g cGFyZW50LiAqLwogCWJhc2UgPSBiYXNlbmFtZShuYW1lKTsKIAliYXNlbGVu ID0gc3RybGVuKGJhc2UpICsgMTsKIAljaGlsZHJlbiA9IHRhbGxvY19hcnJh eShjdHgsIGNoYXIsIHBhcmVudC0+Y2hpbGRsZW4gKyBiYXNlbGVuKTsKIAlp ZiAoIWNoaWxkcmVuKQotCQlnb3RvIG5vbWVtOworCQlyZXR1cm4gRU5PTUVN OwogCW1lbWNweShjaGlsZHJlbiwgcGFyZW50LT5jaGlsZHJlbiwgcGFyZW50 LT5jaGlsZGxlbik7CiAJbWVtY3B5KGNoaWxkcmVuICsgcGFyZW50LT5jaGls ZGxlbiwgYmFzZSwgYmFzZWxlbik7CiAJcGFyZW50LT5jaGlsZHJlbiA9IGNo aWxkcmVuOwogCXBhcmVudC0+Y2hpbGRsZW4gKz0gYmFzZWxlbjsKIAotCS8q IEFsbG9jYXRlIG5vZGUgKi8KLQlub2RlID0gdGFsbG9jKGN0eCwgc3RydWN0 IG5vZGUpOwotCWlmICghbm9kZSkKLQkJZ290byBub21lbTsKLQlub2RlLT5u YW1lID0gdGFsbG9jX3N0cmR1cChub2RlLCBuYW1lKTsKLQlpZiAoIW5vZGUt Pm5hbWUpCi0JCWdvdG8gbm9tZW07Ci0KLQkvKiBJbmhlcml0IHBlcm1pc3Np b25zLCBleGNlcHQgdW5wcml2aWxlZ2VkIGRvbWFpbnMgb3duIHdoYXQgdGhl eSBjcmVhdGUgKi8KLQlub2RlLT5wZXJtcy5udW0gPSBwYXJlbnQtPnBlcm1z Lm51bTsKLQlub2RlLT5wZXJtcy5wID0gdGFsbG9jX21lbWR1cChub2RlLCBw YXJlbnQtPnBlcm1zLnAsCi0JCQkJICAgICAgbm9kZS0+cGVybXMubnVtICog c2l6ZW9mKCpub2RlLT5wZXJtcy5wKSk7Ci0JaWYgKCFub2RlLT5wZXJtcy5w KQotCQlnb3RvIG5vbWVtOwotCWlmIChkb21haW5faXNfdW5wcml2aWxlZ2Vk KGNvbm4pKQotCQlub2RlLT5wZXJtcy5wWzBdLmlkID0gY29ubi0+aWQ7Ci0K LQkvKiBObyBjaGlsZHJlbiwgbm8gZGF0YSAqLwotCW5vZGUtPmNoaWxkcmVu ID0gbm9kZS0+ZGF0YSA9IE5VTEw7Ci0Jbm9kZS0+Y2hpbGRsZW4gPSBub2Rl LT5kYXRhbGVuID0gMDsKLQlub2RlLT5hY2MubWVtb3J5ID0gMDsKLQlub2Rl LT5wYXJlbnQgPSBwYXJlbnQ7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBz dHJ1Y3Qgbm9kZSAqY29uc3RydWN0X25vZGUoc3RydWN0IGNvbm5lY3Rpb24g KmNvbm4sIGNvbnN0IHZvaWQgKmN0eCwKKwkJCQkgICBjb25zdCBjaGFyICpu YW1lKQoreworCWNvbnN0IGNoYXIgKipuYW1lcyA9IE5VTEw7CisJdW5zaWdu ZWQgaW50IGxldmVscyA9IDA7CisJc3RydWN0IG5vZGUgKm5vZGUgPSBOVUxM OworCXN0cnVjdCBub2RlICpwYXJlbnQgPSBOVUxMOworCWNvbnN0IGNoYXIg KnBhcmVudG5hbWUgPSB0YWxsb2Nfc3RyZHVwKGN0eCwgbmFtZSk7CisKKwlp ZiAoIXBhcmVudG5hbWUpCisJCXJldHVybiBOVUxMOworCisJLyogV2FsayB0 aGUgcGF0aCB1cCB1bnRpbCBhbiBleGlzdGluZyBub2RlIGlzIGZvdW5kLiAq LworCXdoaWxlICghcGFyZW50KSB7CisJCW5hbWVzID0gdGFsbG9jX3JlYWxs b2MoY3R4LCBuYW1lcywgY29uc3QgY2hhciAqLCBsZXZlbHMgKyAxKTsKKwkJ aWYgKCFuYW1lcykKKwkJCWdvdG8gbm9tZW07CisKKwkJLyoKKwkJICogbmFt ZXNbMF0gaXMgdGhlIG5hbWUgb2YgdGhlIG5vZGUgdG8gY29uc3RydWN0IGlu aXRpYWxseSwKKwkJICogbmFtZXNbMV0gaXMgaXRzIHBhcmVudCwgYW5kIHNv IG9uLgorCQkgKi8KKwkJbmFtZXNbbGV2ZWxzXSA9IHBhcmVudG5hbWU7CisJ CXBhcmVudG5hbWUgPSBnZXRfcGFyZW50KGN0eCwgcGFyZW50bmFtZSk7CisJ CWlmICghcGFyZW50bmFtZSkKKwkJCXJldHVybiBOVUxMOworCisJCS8qIFRy eSB0byByZWFkIHBhcmVudCBub2RlIHVudGlsIHdlIGZvdW5kIGFuIGV4aXN0 aW5nIG9uZS4gKi8KKwkJcGFyZW50ID0gcmVhZF9ub2RlKGNvbm4sIGN0eCwg cGFyZW50bmFtZSk7CisJCWlmICghcGFyZW50ICYmIChlcnJubyAhPSBFTk9F TlQgfHwgIXN0cmNtcChwYXJlbnRuYW1lLCAiLyIpKSkKKwkJCXJldHVybiBO VUxMOworCisJCWxldmVscysrOworCX0KKworCS8qIFdhbGsgdGhlIHBhdGgg ZG93biBhZ2FpbiBjb25zdHJ1Y3RpbmcgdGhlIG1pc3Npbmcgbm9kZXMuICov CisJZm9yICg7IGxldmVscyA+IDA7IGxldmVscy0tKSB7CisJCS8qIEFkZCBj aGlsZCB0byBwYXJlbnQuICovCisJCWlmIChhZGRfY2hpbGQoY3R4LCBwYXJl bnQsIG5hbWVzW2xldmVscyAtIDFdKSkKKwkJCWdvdG8gbm9tZW07CisKKwkJ LyogQWxsb2NhdGUgbm9kZSAqLworCQlub2RlID0gdGFsbG9jKGN0eCwgc3Ry dWN0IG5vZGUpOworCQlpZiAoIW5vZGUpCisJCQlnb3RvIG5vbWVtOworCQlu b2RlLT5uYW1lID0gdGFsbG9jX3N0ZWFsKG5vZGUsIG5hbWVzW2xldmVscyAt IDFdKTsKKworCQkvKiBJbmhlcml0IHBlcm1pc3Npb25zLCB1bnByaXYgZG9t YWlucyBvd24gd2hhdCB0aGV5IGNyZWF0ZS4gKi8KKwkJbm9kZS0+cGVybXMu bnVtID0gcGFyZW50LT5wZXJtcy5udW07CisJCW5vZGUtPnBlcm1zLnAgPSB0 YWxsb2NfbWVtZHVwKG5vZGUsIHBhcmVudC0+cGVybXMucCwKKwkJCQkJICAg ICAgbm9kZS0+cGVybXMubnVtICoKKwkJCQkJICAgICAgc2l6ZW9mKCpub2Rl LT5wZXJtcy5wKSk7CisJCWlmICghbm9kZS0+cGVybXMucCkKKwkJCWdvdG8g bm9tZW07CisJCWlmIChkb21haW5faXNfdW5wcml2aWxlZ2VkKGNvbm4pKQor CQkJbm9kZS0+cGVybXMucFswXS5pZCA9IGNvbm4tPmlkOworCisJCS8qIE5v IGNoaWxkcmVuLCBubyBkYXRhICovCisJCW5vZGUtPmNoaWxkcmVuID0gbm9k ZS0+ZGF0YSA9IE5VTEw7CisJCW5vZGUtPmNoaWxkbGVuID0gbm9kZS0+ZGF0 YWxlbiA9IDA7CisJCW5vZGUtPmFjYy5tZW1vcnkgPSAwOworCQlub2RlLT5w YXJlbnQgPSBwYXJlbnQ7CisKKwkJcGFyZW50ID0gbm9kZTsKKwl9CisKIAly ZXR1cm4gbm9kZTsKIAogbm9tZW06Cg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.14-02.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.14-02.patch" Content-Transfer-Encoding: base64 RnJvbSBiODA3NTU1M2VhYjllZGQ4ZTQwZjRjNmRhNmM0NDM5ODM1YWExZWVh IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTEgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IGRvbid0IGxl dCByZW1vdmVfY2hpbGRfZW50cnkoKSBjYWxsIGNvcnJ1cHQoKQoKSW4gY2Fz ZSBvZiB3cml0ZV9ub2RlKCkgcmV0dXJuaW5nIGFuIGVycm9yLCByZW1vdmVf Y2hpbGRfZW50cnkoKSB3aWxsCmNhbGwgY29ycnVwdCgpIHRvZGF5LiBUaGlz IGNvdWxkIHJlc3VsdCBpbiBhbiBlbmRsZXNzIHJlY3Vyc2lvbiwgYXMKcmVt b3ZlX2NoaWxkX2VudHJ5KCkgaXMgY2FsbGVkIGJ5IGNvcnJ1cHQoKSwgdG9v OgoKY29ycnVwdCgpCiAgY2hlY2tfc3RvcmUoKQogICAgY2hlY2tfc3RvcmVf KCkKICAgICAgcmVtb3ZlX2NoaWxkX2VudHJ5KCkKCkZpeCB0aGF0IGJ5IGxl dHRpbmcgcmVtb3ZlX2NoaWxkX2VudHJ5KCkgcmV0dXJuIGFuIGVycm9yIGlu c3RlYWQgYW5kCmxldCB0aGUgY2FsbGVyIGRlY2lkZSB3aGF0IHRvIGRvLgoK VGhpcyBpcyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJl cG9ydGVkLWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVr PgpTaWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5j b20+ClJldmlld2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24u Y29tPgoKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9j b3JlLmMgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4 IGU3OTcxYzgyOGU4Yi4uY2VmOWZjMWMxZTEyIDEwMDY0NAotLS0gYS90b29s cy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0 b3JlL3hlbnN0b3JlZF9jb3JlLmMKQEAgLTE1MDUsMTUgKzE1MDUsMTUgQEAg c3RhdGljIHZvaWQgbWVtZGVsKHZvaWQgKm1lbSwgdW5zaWduZWQgb2ZmLCB1 bnNpZ25lZCBsZW4sIHVuc2lnbmVkIHRvdGFsKQogCW1lbW1vdmUobWVtICsg b2ZmLCBtZW0gKyBvZmYgKyBsZW4sIHRvdGFsIC0gb2ZmIC0gbGVuKTsKIH0K IAotc3RhdGljIHZvaWQgcmVtb3ZlX2NoaWxkX2VudHJ5KHN0cnVjdCBjb25u ZWN0aW9uICpjb25uLCBzdHJ1Y3Qgbm9kZSAqbm9kZSwKLQkJCSAgICAgICBz aXplX3Qgb2Zmc2V0KQorc3RhdGljIGludCByZW1vdmVfY2hpbGRfZW50cnko c3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIHN0cnVjdCBub2RlICpub2RlLAor CQkJICAgICAgc2l6ZV90IG9mZnNldCkKIHsKIAlzaXplX3QgY2hpbGRsZW4g PSBzdHJsZW4obm9kZS0+Y2hpbGRyZW4gKyBvZmZzZXQpOwogCiAJbWVtZGVs KG5vZGUtPmNoaWxkcmVuLCBvZmZzZXQsIGNoaWxkbGVuICsgMSwgbm9kZS0+ Y2hpbGRsZW4pOwogCW5vZGUtPmNoaWxkbGVuIC09IGNoaWxkbGVuICsgMTsK LQlpZiAod3JpdGVfbm9kZShjb25uLCBub2RlLCB0cnVlKSkKLQkJY29ycnVw dChjb25uLCAiQ2FuJ3QgdXBkYXRlIHBhcmVudCBub2RlICclcyciLCBub2Rl LT5uYW1lKTsKKworCXJldHVybiB3cml0ZV9ub2RlKGNvbm4sIG5vZGUsIHRy dWUpOwogfQogCiBzdGF0aWMgdm9pZCBkZWxldGVfY2hpbGQoc3RydWN0IGNv bm5lY3Rpb24gKmNvbm4sCkBAIC0xNTIzLDcgKzE1MjMsOSBAQCBzdGF0aWMg dm9pZCBkZWxldGVfY2hpbGQoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sCiAK IAlmb3IgKGkgPSAwOyBpIDwgbm9kZS0+Y2hpbGRsZW47IGkgKz0gc3RybGVu KG5vZGUtPmNoaWxkcmVuK2kpICsgMSkgewogCQlpZiAoc3RyZXEobm9kZS0+ Y2hpbGRyZW4raSwgY2hpbGRuYW1lKSkgewotCQkJcmVtb3ZlX2NoaWxkX2Vu dHJ5KGNvbm4sIG5vZGUsIGkpOworCQkJaWYgKHJlbW92ZV9jaGlsZF9lbnRy eShjb25uLCBub2RlLCBpKSkKKwkJCQljb3JydXB0KGNvbm4sICJDYW4ndCB1 cGRhdGUgcGFyZW50IG5vZGUgJyVzJyIsCisJCQkJCW5vZGUtPm5hbWUpOwog CQkJcmV0dXJuOwogCQl9CiAJfQpAQCAtMjEyNSw2ICsyMTI3LDE3IEBAIGlu dCByZW1lbWJlcl9zdHJpbmcoc3RydWN0IGhhc2h0YWJsZSAqaGFzaCwgY29u c3QgY2hhciAqc3RyKQogCXJldHVybiBoYXNodGFibGVfaW5zZXJ0KGhhc2gs IGssICh2b2lkICopMSk7CiB9CiAKK3N0YXRpYyBpbnQgcm1fY2hpbGRfZW50 cnkoc3RydWN0IG5vZGUgKm5vZGUsIHNpemVfdCBvZmYsIHNpemVfdCBsZW4p Cit7CisJaWYgKCFyZWNvdmVyeSkKKwkJcmV0dXJuIG9mZjsKKworCWlmIChy ZW1vdmVfY2hpbGRfZW50cnkoTlVMTCwgbm9kZSwgb2ZmKSkKKwkJbG9nKCJj aGVja19zdG9yZTogY2hpbGQgZW50cnkgY291bGQgbm90IGJlIHJlbW92ZWQg ZnJvbSAnJXMnIiwKKwkJICAgIG5vZGUtPm5hbWUpOworCisJcmV0dXJuIG9m ZiAtIGxlbiAtIDE7Cit9CiAKIC8qKgogICogQSBub2RlIGhhcyBhIGNoaWxk cmVuIGZpZWxkIHRoYXQgbmFtZXMgdGhlIGNoaWxkcmVuIG9mIHRoZSBub2Rl LCBzZXBhcmF0ZWQKQEAgLTIxNzMsMTIgKzIxODYsNyBAQCBzdGF0aWMgaW50 IGNoZWNrX3N0b3JlXyhjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3QgaGFzaHRh YmxlICpyZWFjaGFibGUpCiAJCQkJaWYgKGhhc2h0YWJsZV9zZWFyY2goY2hp bGRyZW4sIGNoaWxkbmFtZSkpIHsKIAkJCQkJbG9nKCJjaGVja19zdG9yZTog JyVzJyBpcyBkdXBsaWNhdGVkISIsCiAJCQkJCSAgICBjaGlsZG5hbWUpOwot Ci0JCQkJCWlmIChyZWNvdmVyeSkgewotCQkJCQkJcmVtb3ZlX2NoaWxkX2Vu dHJ5KE5VTEwsIG5vZGUsCi0JCQkJCQkJCSAgIGkpOwotCQkJCQkJaSAtPSBj aGlsZGxlbiArIDE7Ci0JCQkJCX0KKwkJCQkJaSA9IHJtX2NoaWxkX2VudHJ5 KG5vZGUsIGksIGNoaWxkbGVuKTsKIAkJCQl9CiAJCQkJZWxzZSB7CiAJCQkJ CWlmICghcmVtZW1iZXJfc3RyaW5nKGNoaWxkcmVuLApAQCAtMjE5NSwxMSAr MjIwMyw3IEBAIHN0YXRpYyBpbnQgY2hlY2tfc3RvcmVfKGNvbnN0IGNoYXIg Km5hbWUsIHN0cnVjdCBoYXNodGFibGUgKnJlYWNoYWJsZSkKIAkJCX0gZWxz ZSBpZiAoZXJybm8gIT0gRU5PTUVNKSB7CiAJCQkJbG9nKCJjaGVja19zdG9y ZTogTm8gY2hpbGQgJyVzJyBmb3VuZCFcbiIsCiAJCQkJICAgIGNoaWxkbmFt ZSk7Ci0KLQkJCQlpZiAocmVjb3ZlcnkpIHsKLQkJCQkJcmVtb3ZlX2NoaWxk X2VudHJ5KE5VTEwsIG5vZGUsIGkpOwotCQkJCQlpIC09IGNoaWxkbGVuICsg MTsKLQkJCQl9CisJCQkJaSA9IHJtX2NoaWxkX2VudHJ5KG5vZGUsIGksIGNo aWxkbGVuKTsKIAkJCX0gZWxzZSB7CiAJCQkJbG9nKCJjaGVja19zdG9yZTog RU5PTUVNIik7CiAJCQkJcmV0ID0gRU5PTUVNOwo= --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.14-03.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.14-03.patch" Content-Transfer-Encoding: base64 RnJvbSA2MGU1YTFkZDQzNmEwZDU3NzgyMDhkZjczNDA0NGU2YzYxMGI4YTgx IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTEgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IGFkZCBnZW5l cmljIHRyZWV3YWxrIGZ1bmN0aW9uCgpBZGQgYSBnZW5lcmljIGZ1bmN0aW9u IHRvIHdhbGsgdGhlIGNvbXBsZXRlIG5vZGUgdHJlZS4gSXQgd2lsbCBzdGFy dAphdCAiLyIgYW5kIGRlc2NlbmQgcmVjdXJzaXZlbHkgaW50byBlYWNoIGNo aWxkLCBjYWxsaW5nIGEgZnVuY3Rpb24Kc3BlY2lmaWVkIGJ5IHRoZSBjYWxs ZXIuIERlcGVuZGluZyBvbiB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoZSB1c2Vy CnNwZWNpZmllZCBmdW5jdGlvbiB0aGUgd2FsayB3aWxsIGJlIGFib3J0ZWQs IGNvbnRpbnVlZCwgb3IgdGhlIGN1cnJlbnQKY2hpbGQgd2lsbCBiZSBza2lw cGVkIGJ5IG5vdCBkZXNjZW5kaW5nIGludG8gaXRzIGNoaWxkcmVuLgoKVGhp cyBpcyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9y dGVkLWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpT aWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ CkFja2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoK ZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMg Yi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IGNlZjlm YzFjMWUxMi4uNDc1NTlhODVkNGMyIDEwMDY0NAotLS0gYS90b29scy94ZW5z dG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hl bnN0b3JlZF9jb3JlLmMKQEAgLTE3MzMsNiArMTczMywxMzUgQEAgc3RhdGlj IGludCBkb19zZXRfcGVybXMoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29u bmVjdGlvbiAqY29ubiwKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIGNoYXIg KmNoaWxkX25hbWUoY29uc3Qgdm9pZCAqY3R4LCBjb25zdCBjaGFyICpzMSwg Y29uc3QgY2hhciAqczIpCit7CisJaWYgKHN0cmNtcChzMSwgIi8iKSkKKwkJ cmV0dXJuIHRhbGxvY19hc3ByaW50ZihjdHgsICIlcy8lcyIsIHMxLCBzMik7 CisJcmV0dXJuIHRhbGxvY19hc3ByaW50ZihjdHgsICIvJXMiLCBzMik7Cit9 CisKK3N0YXRpYyBpbnQgcm1fZnJvbV9wYXJlbnQoc3RydWN0IGNvbm5lY3Rp b24gKmNvbm4sIHN0cnVjdCBub2RlICpwYXJlbnQsCisJCQkgIGNvbnN0IGNo YXIgKm5hbWUpCit7CisJc2l6ZV90IG9mZjsKKworCWlmICghcGFyZW50KQor CQlyZXR1cm4gV0FMS19UUkVFX0VSUk9SX1NUT1A7CisKKwlmb3IgKG9mZiA9 IHBhcmVudC0+Y2hpbGRvZmYgLSAxOyBvZmYgJiYgcGFyZW50LT5jaGlsZHJl bltvZmYgLSAxXTsKKwkgICAgIG9mZi0tKTsKKwlpZiAocmVtb3ZlX2NoaWxk X2VudHJ5KGNvbm4sIHBhcmVudCwgb2ZmKSkgeworCQlsb2coInRyZWV3YWxr OiBjaGlsZCBlbnRyeSBjb3VsZCBub3QgYmUgcmVtb3ZlZCBmcm9tICclcyci LAorCQkgICAgcGFyZW50LT5uYW1lKTsKKwkJcmV0dXJuIFdBTEtfVFJFRV9F UlJPUl9TVE9QOworCX0KKwlwYXJlbnQtPmNoaWxkb2ZmID0gb2ZmOworCisJ cmV0dXJuIFdBTEtfVFJFRV9PSzsKK30KKworc3RhdGljIGludCB3YWxrX2Nh bGxfZnVuYyhjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpj b25uLAorCQkJICBzdHJ1Y3Qgbm9kZSAqbm9kZSwgc3RydWN0IG5vZGUgKnBh cmVudCwgdm9pZCAqYXJnLAorCQkJICBpbnQgKCpmdW5jKShjb25zdCB2b2lk ICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpjb25uLAorCQkJCSAgICAgIHN0 cnVjdCBub2RlICpub2RlLCB2b2lkICphcmcpKQoreworCWludCByZXQ7CisK KwlpZiAoIWZ1bmMpCisJCXJldHVybiBXQUxLX1RSRUVfT0s7CisKKwlyZXQg PSBmdW5jKGN0eCwgY29ubiwgbm9kZSwgYXJnKTsKKwlpZiAocmV0ID09IFdB TEtfVFJFRV9STV9DSElMREVOVFJZICYmIHBhcmVudCkKKwkJcmV0ID0gcm1f ZnJvbV9wYXJlbnQoY29ubiwgcGFyZW50LCBub2RlLT5uYW1lKTsKKworCXJl dHVybiByZXQ7Cit9CisKK2ludCB3YWxrX25vZGVfdHJlZShjb25zdCB2b2lk ICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBjb25zdCBjaGFyICpy b290LAorCQkgICBzdHJ1Y3Qgd2Fsa19mdW5jcyAqZnVuY3MsIHZvaWQgKmFy ZykKK3sKKwlpbnQgcmV0ID0gMDsKKwl2b2lkICp0bXBjdHg7CisJY2hhciAq bmFtZTsKKwlzdHJ1Y3Qgbm9kZSAqbm9kZSA9IE5VTEw7CisJc3RydWN0IG5v ZGUgKnBhcmVudCA9IE5VTEw7CisKKwl0bXBjdHggPSB0YWxsb2NfbmV3KGN0 eCk7CisJaWYgKCF0bXBjdHgpIHsKKwkJZXJybm8gPSBFTk9NRU07CisJCXJl dHVybiBXQUxLX1RSRUVfRVJST1JfU1RPUDsKKwl9CisJbmFtZSA9IHRhbGxv Y19zdHJkdXAodG1wY3R4LCByb290KTsKKwlpZiAoIW5hbWUpIHsKKwkJZXJy bm8gPSBFTk9NRU07CisJCXRhbGxvY19mcmVlKHRtcGN0eCk7CisJCXJldHVy biBXQUxLX1RSRUVfRVJST1JfU1RPUDsKKwl9CisKKwkvKiBDb250aW51ZSB0 aGUgd2FsayB1bnRpbCBhbiBlcnJvciBpcyByZXR1cm5lZC4gKi8KKwl3aGls ZSAocmV0ID49IDApIHsKKwkJLyogbm9kZSA9PSBOVUxMIHBvc3NpYmxlIG9u bHkgZm9yIHRoZSBpbml0aWFsIGxvb3AgaXRlcmF0aW9uLiAqLworCQlpZiAo bm9kZSkgeworCQkJLyogR28gb25lIHN0ZXAgdXAgaWYgcmV0IG9yIGlmIGxh c3QgY2hpbGQgZmluaXNoZWQuICovCisJCQlpZiAocmV0IHx8IG5vZGUtPmNo aWxkb2ZmID49IG5vZGUtPmNoaWxkbGVuKSB7CisJCQkJcGFyZW50ID0gbm9k ZS0+cGFyZW50OworCQkJCS8qIENhbGwgZnVuY3Rpb24gQUZURVIgcHJvY2Vz c2luZyBhIG5vZGUuICovCisJCQkJcmV0ID0gd2Fsa19jYWxsX2Z1bmMoY3R4 LCBjb25uLCBub2RlLCBwYXJlbnQsCisJCQkJCQkgICAgIGFyZywgZnVuY3Mt PmV4aXQpOworCQkJCS8qIExhc3Qgbm9kZSwgc28gZXhpdCBsb29wLiAqLwor CQkJCWlmICghcGFyZW50KQorCQkJCQlicmVhazsKKwkJCQl0YWxsb2NfZnJl ZShub2RlKTsKKwkJCQkvKiBDb250aW51ZSB3aXRoIHBhcmVudC4gKi8KKwkJ CQlub2RlID0gcGFyZW50OworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJLyog R2V0IG5leHQgY2hpbGQgb2YgY3VycmVudCBub2RlLiAqLworCQkJbmFtZSA9 IGNoaWxkX25hbWUodG1wY3R4LCBub2RlLT5uYW1lLAorCQkJCQkgIG5vZGUt PmNoaWxkcmVuICsgbm9kZS0+Y2hpbGRvZmYpOworCQkJaWYgKCFuYW1lKSB7 CisJCQkJcmV0ID0gV0FMS19UUkVFX0VSUk9SX1NUT1A7CisJCQkJYnJlYWs7 CisJCQl9CisJCQkvKiBQb2ludCB0byBuZXh0IGNoaWxkLiAqLworCQkJbm9k ZS0+Y2hpbGRvZmYgKz0gc3RybGVuKG5vZGUtPmNoaWxkcmVuICsKKwkJCQkJ CSBub2RlLT5jaGlsZG9mZikgKyAxOworCQkJLyogRGVzY2VudCBpbnRvIGNo aWxkcmVuLiAqLworCQkJcGFyZW50ID0gbm9kZTsKKwkJfQorCQkvKiBSZWFk IG5leHQgbm9kZSAocm9vdCBub2RlIG9yIG5leHQgY2hpbGQpLiAqLworCQlu b2RlID0gcmVhZF9ub2RlKGNvbm4sIHRtcGN0eCwgbmFtZSk7CisJCWlmICgh bm9kZSkgeworCQkJLyogQ2hpbGQgbm90IGZvdW5kIC0gc2hvdWxkIG5vdCBo YXBwZW4hICovCisJCQkvKiBFTk9FTlQgY2FzZSBjYW4gYmUgaGFuZGxlZCBi eSBzdXBwbGllZCBmdW5jdGlvbi4gKi8KKwkJCWlmIChlcnJubyA9PSBFTk9F TlQgJiYgZnVuY3MtPmVub2VudCkKKwkJCQlyZXQgPSBmdW5jcy0+ZW5vZW50 KGN0eCwgY29ubiwgcGFyZW50LCBuYW1lLAorCQkJCQkJICAgIGFyZyk7CisJ CQllbHNlCisJCQkJcmV0ID0gV0FMS19UUkVFX0VSUk9SX1NUT1A7CisJCQlp ZiAoIXBhcmVudCkKKwkJCQlicmVhazsKKwkJCWlmIChyZXQgPT0gV0FMS19U UkVFX1JNX0NISUxERU5UUlkpCisJCQkJcmV0ID0gcm1fZnJvbV9wYXJlbnQo Y29ubiwgcGFyZW50LCBuYW1lKTsKKwkJCWlmIChyZXQgPCAwKQorCQkJCWJy ZWFrOworCQkJdGFsbG9jX2ZyZWUobmFtZSk7CisJCQlub2RlID0gcGFyZW50 OworCQkJY29udGludWU7CisJCX0KKwkJdGFsbG9jX2ZyZWUobmFtZSk7CisJ CW5vZGUtPnBhcmVudCA9IHBhcmVudDsKKwkJbm9kZS0+Y2hpbGRvZmYgPSAw OworCQkvKiBDYWxsIGZ1bmN0aW9uIEJFRk9SRSBwcm9jZXNzaW5nIGEgbm9k ZS4gKi8KKwkJcmV0ID0gd2Fsa19jYWxsX2Z1bmMoY3R4LCBjb25uLCBub2Rl LCBwYXJlbnQsIGFyZywKKwkJCQkgICAgIGZ1bmNzLT5lbnRlcik7CisJfQor CisJdGFsbG9jX2ZyZWUodG1wY3R4KTsKKworCXJldHVybiByZXQgPCAwID8g cmV0IDogV0FMS19UUkVFX09LOworfQorCiBzdGF0aWMgc3RydWN0IHsKIAlj b25zdCBjaGFyICpzdHI7CiAJaW50ICgqZnVuYykoY29uc3Qgdm9pZCAqY3R4 LCBzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwKQEAgLTIxMDUsMTggKzIyMzQs NiBAQCBzdGF0aWMgaW50IGtleXNfZXF1YWxfZm4odm9pZCAqa2V5MSwgdm9p ZCAqa2V5MikKIAlyZXR1cm4gMCA9PSBzdHJjbXAoKGNoYXIgKilrZXkxLCAo Y2hhciAqKWtleTIpOwogfQogCi0KLXN0YXRpYyBjaGFyICpjaGlsZF9uYW1l KGNvbnN0IGNoYXIgKnMxLCBjb25zdCBjaGFyICpzMikKLXsKLQlpZiAoc3Ry Y21wKHMxLCAiLyIpKSB7Ci0JCXJldHVybiB0YWxsb2NfYXNwcmludGYoTlVM TCwgIiVzLyVzIiwgczEsIHMyKTsKLQl9Ci0JZWxzZSB7Ci0JCXJldHVybiB0 YWxsb2NfYXNwcmludGYoTlVMTCwgIi8lcyIsIHMyKTsKLQl9Ci19Ci0KLQog aW50IHJlbWVtYmVyX3N0cmluZyhzdHJ1Y3QgaGFzaHRhYmxlICpoYXNoLCBj b25zdCBjaGFyICpzdHIpCiB7CiAJY2hhciAqayA9IG1hbGxvYyhzdHJsZW4o c3RyKSArIDEpOwpAQCAtMjE3Miw3ICsyMjg5LDcgQEAgc3RhdGljIGludCBj aGVja19zdG9yZV8oY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IGhhc2h0YWJs ZSAqcmVhY2hhYmxlKQogCQl3aGlsZSAoaSA8IG5vZGUtPmNoaWxkbGVuICYm ICFyZXQpIHsKIAkJCXN0cnVjdCBub2RlICpjaGlsZG5vZGU7CiAJCQlzaXpl X3QgY2hpbGRsZW4gPSBzdHJsZW4obm9kZS0+Y2hpbGRyZW4gKyBpKTsKLQkJ CWNoYXIgKiBjaGlsZG5hbWUgPSBjaGlsZF9uYW1lKG5vZGUtPm5hbWUsCisJ CQljaGFyICogY2hpbGRuYW1lID0gY2hpbGRfbmFtZShOVUxMLCBub2RlLT5u YW1lLAogCQkJCQkJICAgICAgbm9kZS0+Y2hpbGRyZW4gKyBpKTsKIAogCQkJ aWYgKCFjaGlsZG5hbWUpIHsKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3Jl L3hlbnN0b3JlZF9jb3JlLmggYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRf Y29yZS5oCmluZGV4IDVhYmYwNmMyMWM5OC4uZmM5ODgyYWMzN2Q1IDEwMDY0 NAotLS0gYS90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5oCisrKyBi L3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmgKQEAgLTE2Nyw2ICsx NjcsNyBAQCBzdHJ1Y3Qgbm9kZSB7CiAKIAkvKiBDaGlsZHJlbiwgZWFjaCBu dWwtdGVybWluYXRlZC4gKi8KIAl1bnNpZ25lZCBpbnQgY2hpbGRsZW47CisJ dW5zaWduZWQgaW50IGNoaWxkb2ZmOwkvKiBVc2VkIGJ5IHdhbGtfbm9kZV90 cmVlKCkgaW50ZXJuYWxseS4gKi8KIAljaGFyICpjaGlsZHJlbjsKIAogCS8q IEFsbG9jYXRpb24gaW5mb3JtYXRpb24gZm9yIG5vZGUgY3VycmVudGx5IGlu IHN0b3JlLiAqLwpAQCAtMjc4LDYgKzI3OSw0NSBAQCBpbnQgZG9fdGRiX2Rl bGV0ZShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgVERCX0RBVEEgKmtleSwK IAogdm9pZCBjb25uX2ZyZWVfYnVmZmVyZWRfZGF0YShzdHJ1Y3QgY29ubmVj dGlvbiAqY29ubik7CiAKKy8qCisgKiBXYWxrIHRoZSBub2RlIHRyZWUgYmVs b3cgcm9vdCBjYWxsaW5nIGZ1bmNzLT5lbnRlcigpIGFuZCBmdW5jcy0+ZXhp dCgpIGZvcgorICogZWFjaCBub2RlLiBmdW5jcy0+ZW50ZXIoKSBpcyBiZWlu ZyBjYWxsZWQgd2hlbiBlbnRlcmluZyBhIG5vZGUsIHNvIGJlZm9yZQorICog YW55IG9mIHRoZSBjaGlsZHJlbiBvZiB0aGUgbm9kZSBpcyBwcm9jZXNzZWQu IGZ1bmNzLT5leGl0KCkgaXMgYmVpbmcKKyAqIGNhbGxlZCB3aGVuIGxlYXZp bmcgdGhlIG5vZGUsIHNvIGFmdGVyIGFsbCBjaGlsZHJlbiBoYXZlIGJlZW4g cHJvY2Vzc2VkLgorICogZnVuY3MtPmVub2VudCgpIGlzIGJlaW5nIGNhbGxl ZCB3aGVuIGEgbm9kZSBpc24ndCBleGlzdGluZy4KKyAqIGZ1bmNzLT4qKCkg cmV0dXJuIHZhbHVlczoKKyAqICA8IDA6IHRyZWUgd2FsayBpcyBzdG9wcGVk LCB3YWxrX25vZGVfdHJlZSgpIHJldHVybnMgZnVuY3MtPiooKSByZXR1cm4g dmFsdWUKKyAqICAgICAgIGluIGNhc2UgV0FMS19UUkVFX0VSUk9SX1NUT1Ag aXMgcmV0dXJuZWQsIGVycm5vIHNob3VsZCBiZSBzZXQKKyAqICBXQUxLX1RS RUVfT0s6IHRyZWUgd2FsayBpcyBjb250aW51aW5nCisgKiAgV0FMS19UUkVF X1NLSVBfQ0hJTERSRU46IHRyZWUgd2FsayB3b24ndCBkZXNjZW5kIGJlbG93 IGN1cnJlbnQgbm9kZSwgYnV0CisgKiAgICAgICB3YWxrIGNvbnRpbnVlcwor ICogIFdBTEtfVFJFRV9STV9DSElMREVOVFJZOiBSZW1vdmUgdGhlIGNoaWxk IGVudHJ5IGZyb20gaXRzIHBhcmVudCBhbmQgd3JpdGUKKyAqICAgICAgIHRo ZSBtb2RpZmllZCBwYXJlbnQgbm9kZSBiYWNrIHRvIHRoZSBkYXRhIGJhc2Us IGltcGxpZXMgdG8gbm90IGRlc2NlbmQKKyAqICAgICAgIGJlbG93IHRoZSBj dXJyZW50IG5vZGUsIGJ1dCB0byBjb250aW51ZSB0aGUgd2FsaworICogZnVu Y3MtPiooKSBpcyBhbGxvd2VkIHRvIG1vZGlmeSB0aGUgbm9kZSBpdCBpcyBj YWxsZWQgZm9yIGluIHRoZSBkYXRhIGJhc2UuCisgKiBJbiBjYXNlIGZ1bmNz LT5lbnRlcigpIGlzIGRlbGV0aW5nIHRoZSBub2RlLCBpdCBtdXN0IG5vdCBy ZXR1cm4gV0FMS19UUkVFX09LCisgKiBpbiBvcmRlciB0byBhdm9pZCBkZXNj ZW5kaW5nIGludG8gbm8gbG9uZ2VyIGV4aXN0aW5nIGNoaWxkcmVuLgorICov CisvKiBSZXR1cm4gdmFsdWVzIGZvciBmdW5jcy0+KigpIGFuZCB3YWxrX25v ZGVfdHJlZSgpLiAqLworI2RlZmluZSBXQUxLX1RSRUVfU1VDQ0VTU19TVE9Q ICAtMTAwICAgIC8qIFN0b3Agd2FsayBlYXJseSwgbm8gZXJyb3IuICovCisj ZGVmaW5lIFdBTEtfVFJFRV9FUlJPUl9TVE9QICAgIC0xICAgICAgLyogU3Rv cCB3YWxrIGR1ZSB0byBlcnJvci4gKi8KKyNkZWZpbmUgV0FMS19UUkVFX09L ICAgICAgICAgICAgMCAgICAgICAvKiBObyBlcnJvci4gKi8KKy8qIFJldHVy biB2YWx1ZSBmb3IgZnVuY3MtPiooKSBvbmx5LiAqLworI2RlZmluZSBXQUxL X1RSRUVfU0tJUF9DSElMRFJFTiAxICAgICAgIC8qIERvbid0IHJlY3Vyc2Ug YmVsb3cgY3VycmVudCBub2RlLiAqLworI2RlZmluZSBXQUxLX1RSRUVfUk1f Q0hJTERFTlRSWSAyICAgICAgIC8qIFJlbW92ZSBjaGlsZCBlbnRyeSBmcm9t IHBhcmVudC4gKi8KKworc3RydWN0IHdhbGtfZnVuY3MgeworCWludCAoKmVu dGVyKShjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpjb25u LAorCQkgICAgIHN0cnVjdCBub2RlICpub2RlLCB2b2lkICphcmcpOworCWlu dCAoKmV4aXQpKGNvbnN0IHZvaWQgKmN0eCwgc3RydWN0IGNvbm5lY3Rpb24g KmNvbm4sCisJCSAgICBzdHJ1Y3Qgbm9kZSAqbm9kZSwgdm9pZCAqYXJnKTsK KwlpbnQgKCplbm9lbnQpKGNvbnN0IHZvaWQgKmN0eCwgc3RydWN0IGNvbm5l Y3Rpb24gKmNvbm4sCisJCSAgICAgIHN0cnVjdCBub2RlICpwYXJlbnQsIGNo YXIgKm5hbWUsIHZvaWQgKmFyZyk7Cit9OworCitpbnQgd2Fsa19ub2RlX3Ry ZWUoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwg Y29uc3QgY2hhciAqcm9vdCwKKwkJICAgc3RydWN0IHdhbGtfZnVuY3MgKmZ1 bmNzLCB2b2lkICphcmcpOworCiAjZW5kaWYgLyogX1hFTlNUT1JFRF9DT1JF X0ggKi8KIAogLyoK --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.14-04.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.14-04.patch" Content-Transfer-Encoding: base64 RnJvbSBkNThkMDY5YjBhZjVlNjRiNjY3NjA5NzIzYmEyNGFkNTI0MmZjOTIw IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHNpbXBsaWZ5 IGNoZWNrX3N0b3JlKCkKCmNoZWNrX3N0b3JlKCkgaXMgdXNpbmcgYSBoYXNo IHRhYmxlIGZvciBzdG9yaW5nIGFsbCBub2RlIG5hbWVzIGl0IGhhcwpmb3Vu ZCB2aWEgd2Fsa2luZyB0aGUgdHJlZS4gQWRkaXRpb25hbGx5IGl0IHVzaW5n IGFub3RoZXIgaGFzaCB0YWJsZQpmb3IgYWxsIGNoaWxkcmVuIG9mIGEgbm9k ZSB0byBkZXRlY3QgZHVwbGljYXRlIGNoaWxkIG5hbWVzLgoKU2ltcGxpZnkg dGhhdCBieSBkcm9wcGluZyB0aGUgc2Vjb25kIGhhc2ggdGFibGUgYXMgdGhl IGZpcnN0IG9uZSBpcwphbHJlYWR5IGhvbGRpbmcgYWxsIHRoZSBuZWVkZWQg aW5mb3JtYXRpb24uCgpUaGlzIGlzIHBhcnQgb2YgWFNBLTQxOCAvIENWRS0y MDIyLTQyMzIxLgoKUmVwb3J0ZWQtYnk6IEp1bGllbiBHcmFsbCA8ZHZyYWJl bEBhbWF6b24uY28udWs+ClNpZ25lZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3Mg PGpncm9zc0BzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IEp1bGllbiBHcmFsbCA8 amdyYWxsQGFtYXpvbi5jb20+CgpkaWZmIC0tZ2l0IGEvdG9vbHMveGVuc3Rv cmUveGVuc3RvcmVkX2NvcmUuYyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3Jl ZF9jb3JlLmMKaW5kZXggNDc1NTlhODVkNGMyLi4zMDJmYjViOTNjOWIgMTAw NjQ0Ci0tLSBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMKKysr IGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYwpAQCAtMjI3Nyw0 NiArMjI3NywzNCBAQCBzdGF0aWMgaW50IGNoZWNrX3N0b3JlXyhjb25zdCBj aGFyICpuYW1lLCBzdHJ1Y3QgaGFzaHRhYmxlICpyZWFjaGFibGUpCiAJaWYg KG5vZGUpIHsKIAkJc2l6ZV90IGkgPSAwOwogCi0JCXN0cnVjdCBoYXNodGFi bGUgKiBjaGlsZHJlbiA9Ci0JCQljcmVhdGVfaGFzaHRhYmxlKDE2LCBoYXNo X2Zyb21fa2V5X2ZuLCBrZXlzX2VxdWFsX2ZuKTsKLQogCQlpZiAoIXJlbWVt YmVyX3N0cmluZyhyZWFjaGFibGUsIG5hbWUpKSB7Ci0JCQloYXNodGFibGVf ZGVzdHJveShjaGlsZHJlbiwgMCk7CiAJCQlsb2coImNoZWNrX3N0b3JlOiBF Tk9NRU0iKTsKIAkJCXJldHVybiBFTk9NRU07CiAJCX0KIAogCQl3aGlsZSAo aSA8IG5vZGUtPmNoaWxkbGVuICYmICFyZXQpIHsKLQkJCXN0cnVjdCBub2Rl ICpjaGlsZG5vZGU7CisJCQlzdHJ1Y3Qgbm9kZSAqY2hpbGRub2RlID0gTlVM TDsKIAkJCXNpemVfdCBjaGlsZGxlbiA9IHN0cmxlbihub2RlLT5jaGlsZHJl biArIGkpOwotCQkJY2hhciAqIGNoaWxkbmFtZSA9IGNoaWxkX25hbWUoTlVM TCwgbm9kZS0+bmFtZSwKLQkJCQkJCSAgICAgIG5vZGUtPmNoaWxkcmVuICsg aSk7CisJCQljaGFyICpjaGlsZG5hbWUgPSBjaGlsZF9uYW1lKE5VTEwsIG5v ZGUtPm5hbWUsCisJCQkJCQkgICAgIG5vZGUtPmNoaWxkcmVuICsgaSk7CiAK IAkJCWlmICghY2hpbGRuYW1lKSB7CiAJCQkJbG9nKCJjaGVja19zdG9yZTog RU5PTUVNIik7CiAJCQkJcmV0ID0gRU5PTUVNOwogCQkJCWJyZWFrOwogCQkJ fQorCisJCQlpZiAoaGFzaHRhYmxlX3NlYXJjaChyZWFjaGFibGUsIGNoaWxk bmFtZSkpIHsKKwkJCQlsb2coImNoZWNrX3N0b3JlOiAnJXMnIGlzIGR1cGxp Y2F0ZWQhIiwKKwkJCQkgICAgY2hpbGRuYW1lKTsKKwkJCQlpID0gcm1fY2hp bGRfZW50cnkobm9kZSwgaSwgY2hpbGRsZW4pOworCQkJCWdvdG8gbmV4dDsK KwkJCX0KKwogCQkJY2hpbGRub2RlID0gcmVhZF9ub2RlKE5VTEwsIGNoaWxk bmFtZSwgY2hpbGRuYW1lKTsKLQkJCQorCiAJCQlpZiAoY2hpbGRub2RlKSB7 Ci0JCQkJaWYgKGhhc2h0YWJsZV9zZWFyY2goY2hpbGRyZW4sIGNoaWxkbmFt ZSkpIHsKLQkJCQkJbG9nKCJjaGVja19zdG9yZTogJyVzJyBpcyBkdXBsaWNh dGVkISIsCi0JCQkJCSAgICBjaGlsZG5hbWUpOwotCQkJCQlpID0gcm1fY2hp bGRfZW50cnkobm9kZSwgaSwgY2hpbGRsZW4pOwotCQkJCX0KLQkJCQllbHNl IHsKLQkJCQkJaWYgKCFyZW1lbWJlcl9zdHJpbmcoY2hpbGRyZW4sCi0JCQkJ CQkJICAgICBjaGlsZG5hbWUpKSB7Ci0JCQkJCQlsb2coImNoZWNrX3N0b3Jl OiBFTk9NRU0iKTsKLQkJCQkJCXRhbGxvY19mcmVlKGNoaWxkbm9kZSk7Ci0J CQkJCQl0YWxsb2NfZnJlZShjaGlsZG5hbWUpOwotCQkJCQkJcmV0ID0gRU5P TUVNOwotCQkJCQkJYnJlYWs7Ci0JCQkJCX0KLQkJCQkJcmV0ID0gY2hlY2tf c3RvcmVfKGNoaWxkbmFtZSwKLQkJCQkJCQkgICByZWFjaGFibGUpOwotCQkJ CX0KKwkJCQlyZXQgPSBjaGVja19zdG9yZV8oY2hpbGRuYW1lLCByZWFjaGFi bGUpOwogCQkJfSBlbHNlIGlmIChlcnJubyAhPSBFTk9NRU0pIHsKIAkJCQls b2coImNoZWNrX3N0b3JlOiBObyBjaGlsZCAnJXMnIGZvdW5kIVxuIiwKIAkJ CQkgICAgY2hpbGRuYW1lKTsKQEAgLTIzMjYsMTkgKzIzMTQsMTggQEAgc3Rh dGljIGludCBjaGVja19zdG9yZV8oY29uc3QgY2hhciAqbmFtZSwgc3RydWN0 IGhhc2h0YWJsZSAqcmVhY2hhYmxlKQogCQkJCXJldCA9IEVOT01FTTsKIAkJ CX0KIAorIG5leHQ6CiAJCQl0YWxsb2NfZnJlZShjaGlsZG5vZGUpOwogCQkJ dGFsbG9jX2ZyZWUoY2hpbGRuYW1lKTsKIAkJCWkgKz0gY2hpbGRsZW4gKyAx OwogCQl9CiAKLQkJaGFzaHRhYmxlX2Rlc3Ryb3koY2hpbGRyZW4sIDAgLyog RG9uJ3QgZnJlZSB2YWx1ZXMgKHRoZXkgYXJlCi0JCQkJCQkgYWxsICh2b2lk ICopMSkgKi8pOwogCQl0YWxsb2NfZnJlZShub2RlKTsKIAl9IGVsc2UgaWYg KGVycm5vICE9IEVOT01FTSkgewogCQkvKiBJbXBvc3NpYmxlLCBiZWNhdXNl IG5vIGRhdGFiYXNlIHNob3VsZCBldmVyIGJlIHdpdGhvdXQgdGhlCiAJCSAg IHJvb3QsIGFuZCBvdGhlcndpc2UsIHdlJ3ZlIGp1c3QgY2hlY2tlZCBpbiBv dXIgY2FsbGVyCiAJCSAgICh3aGljaCBtYWRlIGEgcmVjdXJzaXZlIGNhbGwg dG8gZ2V0IGhlcmUpLiAqLwotCQkgICAKKwogCQlsb2coImNoZWNrX3N0b3Jl OiBObyBjaGlsZCAnJXMnIGZvdW5kOiBpbXBvc3NpYmxlISIsIG5hbWUpOwog CX0gZWxzZSB7CiAJCWxvZygiY2hlY2tfc3RvcmU6IEVOT01FTSIpOwo= --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.14-05.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.14-05.patch" Content-Transfer-Encoding: base64 RnJvbSBhYzI0ZGEzZmRlMTYyMTViNGJhNWYwY2M4ZDk2ODY4ODFlOTdiYjQy IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHVzZSB0cmVl d2FsayBmb3IgY2hlY2tfc3RvcmUoKQoKSW5zdGVhZCBvZiBkb2luZyBhbiBv cGVuIHRyZWUgd2FsayB1c2luZyBjYWxsIHJlY3Vyc2lvbiwgdXNlCndhbGtf bm9kZV90cmVlKCkgd2hlbiBjaGVja2luZyB0aGUgc3RvcmUgZm9yIGluY29u c2lzdGVuY2llcy4KClRoaXMgd2lsbCByZWR1Y2UgY29kZSBzaXplIGFuZCBh dm9pZCBtYW55IG5lc3RpbmcgbGV2ZWxzIG9mIGZ1bmN0aW9uCmNhbGxzIHdo aWNoIGNvdWxkIHBvdGVudGlhbGx5IGV4aGF1c3QgdGhlIHN0YWNrLgoKVGhp cyBpcyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9y dGVkLWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpT aWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ ClJldmlld2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29t PgoKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3Jl LmMgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IDMw MmZiNWI5M2M5Yi4uMWNjMTFkMGIxYzMwIDEwMDY0NAotLS0gYS90b29scy94 ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3Jl L3hlbnN0b3JlZF9jb3JlLmMKQEAgLTIyNDQsMTggKzIyNDQsNiBAQCBpbnQg cmVtZW1iZXJfc3RyaW5nKHN0cnVjdCBoYXNodGFibGUgKmhhc2gsIGNvbnN0 IGNoYXIgKnN0cikKIAlyZXR1cm4gaGFzaHRhYmxlX2luc2VydChoYXNoLCBr LCAodm9pZCAqKTEpOwogfQogCi1zdGF0aWMgaW50IHJtX2NoaWxkX2VudHJ5 KHN0cnVjdCBub2RlICpub2RlLCBzaXplX3Qgb2ZmLCBzaXplX3QgbGVuKQot ewotCWlmICghcmVjb3ZlcnkpCi0JCXJldHVybiBvZmY7Ci0KLQlpZiAocmVt b3ZlX2NoaWxkX2VudHJ5KE5VTEwsIG5vZGUsIG9mZikpCi0JCWxvZygiY2hl Y2tfc3RvcmU6IGNoaWxkIGVudHJ5IGNvdWxkIG5vdCBiZSByZW1vdmVkIGZy b20gJyVzJyIsCi0JCSAgICBub2RlLT5uYW1lKTsKLQotCXJldHVybiBvZmYg LSBsZW4gLSAxOwotfQotCiAvKioKICAqIEEgbm9kZSBoYXMgYSBjaGlsZHJl biBmaWVsZCB0aGF0IG5hbWVzIHRoZSBjaGlsZHJlbiBvZiB0aGUgbm9kZSwg c2VwYXJhdGVkCiAgKiBieSBOVUxzLiAgV2UgY2hlY2sgd2hldGhlciB0aGVy ZSBhcmUgZW50cmllcyBpbiB0aGVyZSB0aGF0IGFyZSBkdXBsaWNhdGVkCkBA IC0yMjY5LDcwICsyMjU3LDI5IEBAIHN0YXRpYyBpbnQgcm1fY2hpbGRfZW50 cnkoc3RydWN0IG5vZGUgKm5vZGUsIHNpemVfdCBvZmYsIHNpemVfdCBsZW4p CiAgKiBBcyB3ZSBnbywgd2UgcmVjb3JkIGVhY2ggbm9kZSBpbiB0aGUgZ2l2 ZW4gcmVhY2hhYmxlIGhhc2h0YWJsZS4gIFRoZXNlCiAgKiBlbnRyaWVzIHdp bGwgYmUgdXNlZCBsYXRlciBpbiBjbGVhbl9zdG9yZS4KICAqLwotc3RhdGlj IGludCBjaGVja19zdG9yZV8oY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IGhh c2h0YWJsZSAqcmVhY2hhYmxlKQorc3RhdGljIGludCBjaGVja19zdG9yZV9z dGVwKGNvbnN0IHZvaWQgKmN0eCwgc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4s CisJCQkgICAgc3RydWN0IG5vZGUgKm5vZGUsIHZvaWQgKmFyZykKIHsKLQlz dHJ1Y3Qgbm9kZSAqbm9kZSA9IHJlYWRfbm9kZShOVUxMLCBuYW1lLCBuYW1l KTsKLQlpbnQgcmV0ID0gMDsKLQotCWlmIChub2RlKSB7Ci0JCXNpemVfdCBp ID0gMDsKLQotCQlpZiAoIXJlbWVtYmVyX3N0cmluZyhyZWFjaGFibGUsIG5h bWUpKSB7Ci0JCQlsb2coImNoZWNrX3N0b3JlOiBFTk9NRU0iKTsKLQkJCXJl dHVybiBFTk9NRU07Ci0JCX0KLQotCQl3aGlsZSAoaSA8IG5vZGUtPmNoaWxk bGVuICYmICFyZXQpIHsKLQkJCXN0cnVjdCBub2RlICpjaGlsZG5vZGUgPSBO VUxMOwotCQkJc2l6ZV90IGNoaWxkbGVuID0gc3RybGVuKG5vZGUtPmNoaWxk cmVuICsgaSk7Ci0JCQljaGFyICpjaGlsZG5hbWUgPSBjaGlsZF9uYW1lKE5V TEwsIG5vZGUtPm5hbWUsCi0JCQkJCQkgICAgIG5vZGUtPmNoaWxkcmVuICsg aSk7Ci0KLQkJCWlmICghY2hpbGRuYW1lKSB7Ci0JCQkJbG9nKCJjaGVja19z dG9yZTogRU5PTUVNIik7Ci0JCQkJcmV0ID0gRU5PTUVNOwotCQkJCWJyZWFr OwotCQkJfQotCi0JCQlpZiAoaGFzaHRhYmxlX3NlYXJjaChyZWFjaGFibGUs IGNoaWxkbmFtZSkpIHsKLQkJCQlsb2coImNoZWNrX3N0b3JlOiAnJXMnIGlz IGR1cGxpY2F0ZWQhIiwKLQkJCQkgICAgY2hpbGRuYW1lKTsKLQkJCQlpID0g cm1fY2hpbGRfZW50cnkobm9kZSwgaSwgY2hpbGRsZW4pOwotCQkJCWdvdG8g bmV4dDsKLQkJCX0KKwlzdHJ1Y3QgaGFzaHRhYmxlICpyZWFjaGFibGUgPSBh cmc7CiAKLQkJCWNoaWxkbm9kZSA9IHJlYWRfbm9kZShOVUxMLCBjaGlsZG5h bWUsIGNoaWxkbmFtZSk7Ci0KLQkJCWlmIChjaGlsZG5vZGUpIHsKLQkJCQly ZXQgPSBjaGVja19zdG9yZV8oY2hpbGRuYW1lLCByZWFjaGFibGUpOwotCQkJ fSBlbHNlIGlmIChlcnJubyAhPSBFTk9NRU0pIHsKLQkJCQlsb2coImNoZWNr X3N0b3JlOiBObyBjaGlsZCAnJXMnIGZvdW5kIVxuIiwKLQkJCQkgICAgY2hp bGRuYW1lKTsKLQkJCQlpID0gcm1fY2hpbGRfZW50cnkobm9kZSwgaSwgY2hp bGRsZW4pOwotCQkJfSBlbHNlIHsKLQkJCQlsb2coImNoZWNrX3N0b3JlOiBF Tk9NRU0iKTsKLQkJCQlyZXQgPSBFTk9NRU07Ci0JCQl9CisJaWYgKGhhc2h0 YWJsZV9zZWFyY2gocmVhY2hhYmxlLCAodm9pZCAqKW5vZGUtPm5hbWUpKSB7 CisJCWxvZygiY2hlY2tfc3RvcmU6ICclcycgaXMgZHVwbGljYXRlZCEiLCBu b2RlLT5uYW1lKTsKKwkJcmV0dXJuIHJlY292ZXJ5ID8gV0FMS19UUkVFX1JN X0NISUxERU5UUlkKKwkJCQk6IFdBTEtfVFJFRV9TS0lQX0NISUxEUkVOOwor CX0KIAotIG5leHQ6Ci0JCQl0YWxsb2NfZnJlZShjaGlsZG5vZGUpOwotCQkJ dGFsbG9jX2ZyZWUoY2hpbGRuYW1lKTsKLQkJCWkgKz0gY2hpbGRsZW4gKyAx OwotCQl9CisJaWYgKCFyZW1lbWJlcl9zdHJpbmcocmVhY2hhYmxlLCBub2Rl LT5uYW1lKSkKKwkJcmV0dXJuIFdBTEtfVFJFRV9FUlJPUl9TVE9QOwogCi0J CXRhbGxvY19mcmVlKG5vZGUpOwotCX0gZWxzZSBpZiAoZXJybm8gIT0gRU5P TUVNKSB7Ci0JCS8qIEltcG9zc2libGUsIGJlY2F1c2Ugbm8gZGF0YWJhc2Ug c2hvdWxkIGV2ZXIgYmUgd2l0aG91dCB0aGUKLQkJICAgcm9vdCwgYW5kIG90 aGVyd2lzZSwgd2UndmUganVzdCBjaGVja2VkIGluIG91ciBjYWxsZXIKLQkJ ICAgKHdoaWNoIG1hZGUgYSByZWN1cnNpdmUgY2FsbCB0byBnZXQgaGVyZSku ICovCisJcmV0dXJuIFdBTEtfVFJFRV9PSzsKK30KIAotCQlsb2coImNoZWNr X3N0b3JlOiBObyBjaGlsZCAnJXMnIGZvdW5kOiBpbXBvc3NpYmxlISIsIG5h bWUpOwotCX0gZWxzZSB7Ci0JCWxvZygiY2hlY2tfc3RvcmU6IEVOT01FTSIp OwotCQlyZXQgPSBFTk9NRU07Ci0JfQorc3RhdGljIGludCBjaGVja19zdG9y ZV9lbm9lbnQoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlvbiAq Y29ubiwKKwkJCSAgICAgIHN0cnVjdCBub2RlICpwYXJlbnQsIGNoYXIgKm5h bWUsIHZvaWQgKmFyZykKK3sKKwlsb2coImNoZWNrX3N0b3JlOiBub2RlICcl cycgbm90IGZvdW5kIiwgbmFtZSk7CiAKLQlyZXR1cm4gcmV0OworCXJldHVy biByZWNvdmVyeSA/IFdBTEtfVFJFRV9STV9DSElMREVOVFJZIDogV0FMS19U UkVFX09LOwogfQogCiAKQEAgLTIzODEsMjQgKzIzMjgsMjggQEAgc3RhdGlj IHZvaWQgY2xlYW5fc3RvcmUoc3RydWN0IGhhc2h0YWJsZSAqcmVhY2hhYmxl KQogCiB2b2lkIGNoZWNrX3N0b3JlKHZvaWQpCiB7Ci0JY2hhciAqIHJvb3Qg PSB0YWxsb2Nfc3RyZHVwKE5VTEwsICIvIik7Ci0Jc3RydWN0IGhhc2h0YWJs ZSAqIHJlYWNoYWJsZSA9Ci0JCWNyZWF0ZV9oYXNodGFibGUoMTYsIGhhc2hf ZnJvbV9rZXlfZm4sIGtleXNfZXF1YWxfZm4pOwotIAorCXN0cnVjdCBoYXNo dGFibGUgKnJlYWNoYWJsZTsKKwlzdHJ1Y3Qgd2Fsa19mdW5jcyB3YWxrZnVu Y3MgPSB7CisJCS5lbnRlciA9IGNoZWNrX3N0b3JlX3N0ZXAsCisJCS5lbm9l bnQgPSBjaGVja19zdG9yZV9lbm9lbnQsCisJfTsKKworCXJlYWNoYWJsZSA9 IGNyZWF0ZV9oYXNodGFibGUoMTYsIGhhc2hfZnJvbV9rZXlfZm4sIGtleXNf ZXF1YWxfZm4pOwogCWlmICghcmVhY2hhYmxlKSB7CiAJCWxvZygiY2hlY2tf c3RvcmU6IEVOT01FTSIpOwogCQlyZXR1cm47CiAJfQogCiAJbG9nKCJDaGVj a2luZyBzdG9yZSAuLi4iKTsKLQlpZiAoIWNoZWNrX3N0b3JlXyhyb290LCBy ZWFjaGFibGUpICYmCi0JICAgICFjaGVja190cmFuc2FjdGlvbnMocmVhY2hh YmxlKSkKKwlpZiAod2Fsa19ub2RlX3RyZWUoTlVMTCwgTlVMTCwgIi8iLCAm d2Fsa2Z1bmNzLCByZWFjaGFibGUpKSB7CisJCWlmIChlcnJubyA9PSBFTk9N RU0pCisJCQlsb2coImNoZWNrX3N0b3JlOiBFTk9NRU0iKTsKKwl9IGVsc2Ug aWYgKCFjaGVja190cmFuc2FjdGlvbnMocmVhY2hhYmxlKSkKIAkJY2xlYW5f c3RvcmUocmVhY2hhYmxlKTsKIAlsb2coIkNoZWNraW5nIHN0b3JlIGNvbXBs ZXRlLiIpOwogCiAJaGFzaHRhYmxlX2Rlc3Ryb3kocmVhY2hhYmxlLCAwIC8q IERvbid0IGZyZWUgdmFsdWVzICh0aGV5IGFyZSBhbGwKIAkJCQkJICAodm9p ZCAqKTEpICovKTsKLQl0YWxsb2NfZnJlZShyb290KTsKIH0KIAogCg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.14-06.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.14-06.patch" Content-Transfer-Encoding: base64 RnJvbSA1NmQwMmVlYTRlNzc0MGU0ZTE0MGNmMzE3YzZlYzNkYWE3NGEzZTg5 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHVzZSB0cmVl d2FsayBmb3IgZGVsZXRpbmcgbm9kZXMKCkluc3RlYWQgb2YgZG9pbmcgYW4g b3BlbiB0cmVlIHdhbGsgdXNpbmcgY2FsbCByZWN1cnNpb24sIHVzZQp3YWxr X25vZGVfdHJlZSgpIHdoZW4gZGVsZXRpbmcgYSBzdWItdHJlZSBvZiBub2Rl cy4KClRoaXMgd2lsbCByZWR1Y2UgY29kZSBzaXplIGFuZCBhdm9pZCBtYW55 IG5lc3RpbmcgbGV2ZWxzIG9mIGZ1bmN0aW9uCmNhbGxzIHdoaWNoIGNvdWxk IHBvdGVudGlhbGx5IGV4aGF1c3QgdGhlIHN0YWNrLgoKVGhpcyBpcyBwYXJ0 IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9ydGVkLWJ5OiBK dWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpTaWduZWQtb2Zm LWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+CkFja2VkLWJ5 OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoKZGlmZiAtLWdp dCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMgYi90b29scy94 ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IDFjYzExZDBiMWMzMC4u NWJiN2I4NTIxMzI0IDEwMDY0NAotLS0gYS90b29scy94ZW5zdG9yZS94ZW5z dG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9j b3JlLmMKQEAgLTEyMzMsMjEgKzEyMzMsNiBAQCBzdGF0aWMgaW50IGRvX3Jl YWQoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwK IAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIHZvaWQgZGVsZXRlX25vZGVfc2lu Z2xlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBzdHJ1Y3Qgbm9kZSAqbm9k ZSkKLXsKLQlUREJfREFUQSBrZXk7Ci0KLQlpZiAoYWNjZXNzX25vZGUoY29u biwgbm9kZSwgTk9ERV9BQ0NFU1NfREVMRVRFLCAma2V5KSkKLQkJcmV0dXJu OwotCi0JaWYgKGRvX3RkYl9kZWxldGUoY29ubiwgJmtleSwgJm5vZGUtPmFj YykgIT0gMCkgewotCQljb3JydXB0KGNvbm4sICJDb3VsZCBub3QgZGVsZXRl ICclcyciLCBub2RlLT5uYW1lKTsKLQkJcmV0dXJuOwotCX0KLQotCWRvbWFp bl9lbnRyeV9kZWMoY29ubiwgbm9kZSk7Ci19Ci0KIC8qIE11c3Qgbm90IGJl IC8gKi8KIHN0YXRpYyBjaGFyICpiYXNlbmFtZShjb25zdCBjaGFyICpuYW1l KQogewpAQCAtMTUxNiw2OSArMTUwMSw1OSBAQCBzdGF0aWMgaW50IHJlbW92 ZV9jaGlsZF9lbnRyeShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgc3RydWN0 IG5vZGUgKm5vZGUsCiAJcmV0dXJuIHdyaXRlX25vZGUoY29ubiwgbm9kZSwg dHJ1ZSk7CiB9CiAKLXN0YXRpYyB2b2lkIGRlbGV0ZV9jaGlsZChzdHJ1Y3Qg Y29ubmVjdGlvbiAqY29ubiwKLQkJCSBzdHJ1Y3Qgbm9kZSAqbm9kZSwgY29u c3QgY2hhciAqY2hpbGRuYW1lKQorc3RhdGljIGludCBkZWxldGVfY2hpbGQo c3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sCisJCQlzdHJ1Y3Qgbm9kZSAqbm9k ZSwgY29uc3QgY2hhciAqY2hpbGRuYW1lKQogewogCXVuc2lnbmVkIGludCBp OwogCiAJZm9yIChpID0gMDsgaSA8IG5vZGUtPmNoaWxkbGVuOyBpICs9IHN0 cmxlbihub2RlLT5jaGlsZHJlbitpKSArIDEpIHsKIAkJaWYgKHN0cmVxKG5v ZGUtPmNoaWxkcmVuK2ksIGNoaWxkbmFtZSkpIHsKLQkJCWlmIChyZW1vdmVf Y2hpbGRfZW50cnkoY29ubiwgbm9kZSwgaSkpCi0JCQkJY29ycnVwdChjb25u LCAiQ2FuJ3QgdXBkYXRlIHBhcmVudCBub2RlICclcyciLAotCQkJCQlub2Rl LT5uYW1lKTsKLQkJCXJldHVybjsKKwkJCWVycm5vID0gcmVtb3ZlX2NoaWxk X2VudHJ5KGNvbm4sIG5vZGUsIGkpID8gRUlPIDogMDsKKwkJCXJldHVybiBl cnJubzsKIAkJfQogCX0KIAljb3JydXB0KGNvbm4sICJDYW4ndCBmaW5kIGNo aWxkICclcycgaW4gJXMiLCBjaGlsZG5hbWUsIG5vZGUtPm5hbWUpOworCisJ ZXJybm8gPSBFSU87CisJcmV0dXJuIGVycm5vOwogfQogCi1zdGF0aWMgaW50 IGRlbGV0ZV9ub2RlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBjb25zdCB2 b2lkICpjdHgsCi0JCSAgICAgICBzdHJ1Y3Qgbm9kZSAqcGFyZW50LCBzdHJ1 Y3Qgbm9kZSAqbm9kZSwgYm9vbCB3YXRjaF9leGFjdCkKK3N0YXRpYyBpbnQg ZGVsbm9kZV9zdWIoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlv biAqY29ubiwKKwkJICAgICAgIHN0cnVjdCBub2RlICpub2RlLCB2b2lkICph cmcpCiB7Ci0JY2hhciAqbmFtZTsKKwljb25zdCBjaGFyICpyb290ID0gYXJn OworCWJvb2wgd2F0Y2hfZXhhY3Q7CisJaW50IHJldDsKKwlUREJfREFUQSBr ZXk7CiAKLQkvKiBEZWxldGUgY2hpbGRyZW4uICovCi0Jd2hpbGUgKG5vZGUt PmNoaWxkbGVuKSB7Ci0JCXN0cnVjdCBub2RlICpjaGlsZDsKKwkvKiBBbnkg ZXJyb3IgaGVyZSB3aWxsIHByb2JhYmx5IGJlIHJlcGVhdGVkIGZvciBhbGwg Zm9sbG93aW5nIGNhbGxzLiAqLworCXJldCA9IGFjY2Vzc19ub2RlKGNvbm4s IG5vZGUsIE5PREVfQUNDRVNTX0RFTEVURSwgJmtleSk7CisJaWYgKHJldCA+ IDApCisJCXJldHVybiBXQUxLX1RSRUVfU1VDQ0VTU19TVE9QOwogCi0JCW5h bWUgPSB0YWxsb2NfYXNwcmludGYobm9kZSwgIiVzLyVzIiwgbm9kZS0+bmFt ZSwKLQkJCQkgICAgICAgbm9kZS0+Y2hpbGRyZW4pOwotCQljaGlsZCA9IG5h bWUgPyByZWFkX25vZGUoY29ubiwgbm9kZSwgbmFtZSkgOiBOVUxMOwotCQlp ZiAoY2hpbGQpIHsKLQkJCWlmIChkZWxldGVfbm9kZShjb25uLCBjdHgsIG5v ZGUsIGNoaWxkLCB0cnVlKSkKLQkJCQlyZXR1cm4gZXJybm87Ci0JCX0gZWxz ZSB7Ci0JCQl0cmFjZSgiZGVsZXRlX25vZGU6IEVycm9yIGRlbGV0aW5nIGNo aWxkICclcy8lcychXG4iLAotCQkJICAgICAgbm9kZS0+bmFtZSwgbm9kZS0+ Y2hpbGRyZW4pOwotCQkJLyogUXVpdCBkZWxldGluZy4gKi8KLQkJCWVycm5v ID0gRU5PTUVNOwotCQkJcmV0dXJuIGVycm5vOwotCQl9Ci0JCXRhbGxvY19m cmVlKG5hbWUpOwotCX0KKwkvKiBJbiBjYXNlIG9mIGVycm9yIHN0b3AgdGhl IHdhbGsuICovCisJaWYgKCFyZXQgJiYgZG9fdGRiX2RlbGV0ZShjb25uLCAm a2V5LCAmbm9kZS0+YWNjKSkKKwkJcmV0dXJuIFdBTEtfVFJFRV9TVUNDRVNT X1NUT1A7CiAKIAkvKgogCSAqIEZpcmUgdGhlIHdhdGNoZXMgbm93LCB3aGVu IHdlIGNhbiBzdGlsbCBzZWUgdGhlIG5vZGUgcGVybWlzc2lvbnMuCiAJICog VGhpcyBmaW5lIGFzIHdlIGFyZSBzaW5nbGUgdGhyZWFkZWQgYW5kIHRoZSBu ZXh0IHBvc3NpYmxlIHJlYWQgd2lsbAogCSAqIGJlIGhhbmRsZWQgb25seSBh ZnRlciB0aGUgbm9kZSBoYXMgYmVlbiByZWFsbHkgcmVtb3ZlZC4KLQkgKi8K KwkqLworCXdhdGNoX2V4YWN0ID0gc3RyY21wKHJvb3QsIG5vZGUtPm5hbWUp OwogCWZpcmVfd2F0Y2hlcyhjb25uLCBjdHgsIG5vZGUtPm5hbWUsIG5vZGUs IHdhdGNoX2V4YWN0LCBOVUxMKTsKLQlkZWxldGVfbm9kZV9zaW5nbGUoY29u biwgbm9kZSk7Ci0JZGVsZXRlX2NoaWxkKGNvbm4sIHBhcmVudCwgYmFzZW5h bWUobm9kZS0+bmFtZSkpOwotCXRhbGxvY19mcmVlKG5vZGUpOwogCi0JcmV0 dXJuIDA7CisJZG9tYWluX2VudHJ5X2RlYyhjb25uLCBub2RlKTsKKworCXJl dHVybiBXQUxLX1RSRUVfUk1fQ0hJTERFTlRSWTsKIH0KIAotc3RhdGljIGlu dCBfcm0oc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIGNvbnN0IHZvaWQgKmN0 eCwgc3RydWN0IG5vZGUgKm5vZGUsCi0JICAgICAgIGNvbnN0IGNoYXIgKm5h bWUpCitzdGF0aWMgaW50IF9ybShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwg Y29uc3Qgdm9pZCAqY3R4LCBjb25zdCBjaGFyICpuYW1lKQogewotCS8qCi0J ICogRGVsZXRpbmcgbm9kZSBieSBub2RlLCBzbyB0aGUgcmVzdWx0IGlzIGFs d2F5cyBjb25zaXN0ZW50IGV2ZW4gaW4KLQkgKiBjYXNlIG9mIGEgZmFpbHVy ZS4KLQkgKi8KIAlzdHJ1Y3Qgbm9kZSAqcGFyZW50OwogCWNoYXIgKnBhcmVu dG5hbWUgPSBnZXRfcGFyZW50KGN0eCwgbmFtZSk7CisJc3RydWN0IHdhbGtf ZnVuY3Mgd2Fsa2Z1bmNzID0geyAuZXhpdCA9IGRlbG5vZGVfc3ViIH07CisJ aW50IHJldDsKIAogCWlmICghcGFyZW50bmFtZSkKIAkJcmV0dXJuIGVycm5v OwpAQCAtMTU4Niw5ICsxNTYxLDIxIEBAIHN0YXRpYyBpbnQgX3JtKHN0cnVj dCBjb25uZWN0aW9uICpjb25uLCBjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBu b2RlICpub2RlLAogCXBhcmVudCA9IHJlYWRfbm9kZShjb25uLCBjdHgsIHBh cmVudG5hbWUpOwogCWlmICghcGFyZW50KQogCQlyZXR1cm4gcmVhZF9ub2Rl X2Nhbl9wcm9wYWdhdGVfZXJybm8oKSA/IGVycm5vIDogRUlOVkFMOwotCW5v ZGUtPnBhcmVudCA9IHBhcmVudDsKIAotCXJldHVybiBkZWxldGVfbm9kZShj b25uLCBjdHgsIHBhcmVudCwgbm9kZSwgZmFsc2UpOworCXJldCA9IHdhbGtf bm9kZV90cmVlKGN0eCwgY29ubiwgbmFtZSwgJndhbGtmdW5jcywgKHZvaWQg KiluYW1lKTsKKwlpZiAocmV0IDwgMCkgeworCQlpZiAocmV0ID09IFdBTEtf VFJFRV9FUlJPUl9TVE9QKSB7CisJCQljb3JydXB0KGNvbm4sICJlcnJvciB3 aGVuIGRlbGV0aW5nIHN1Yi1ub2RlcyBvZiAlc1xuIiwKKwkJCQluYW1lKTsK KwkJCWVycm5vID0gRUlPOworCQl9CisJCXJldHVybiBlcnJubzsKKwl9CisK KwlpZiAoZGVsZXRlX2NoaWxkKGNvbm4sIHBhcmVudCwgYmFzZW5hbWUobmFt ZSkpKQorCQlyZXR1cm4gZXJybm87CisKKwlyZXR1cm4gMDsKIH0KIAogCkBA IC0xNjIzLDcgKzE2MTAsNyBAQCBzdGF0aWMgaW50IGRvX3JtKGNvbnN0IHZv aWQgKmN0eCwgc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sCiAJaWYgKHN0cmVx KG5hbWUsICIvIikpCiAJCXJldHVybiBFSU5WQUw7CiAKLQlyZXQgPSBfcm0o Y29ubiwgY3R4LCBub2RlLCBuYW1lKTsKKwlyZXQgPSBfcm0oY29ubiwgY3R4 LCBuYW1lKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.15-01.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.15-01.patch" Content-Transfer-Encoding: base64 RnJvbSA5MmZhNDg5MjFjMTdjZWJlNmI2MWMxNjFmN2ZmNWRmYTI3OTc1YTE4 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTEgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHJlbW92ZSBy ZWN1cnNpb24gZnJvbSBjb25zdHJ1Y3Rfbm9kZSgpCgpJbiBvcmRlciB0byBy ZWR1Y2Ugc3RhY2sgdXNhZ2UgZHVlIHRvIHJlY3Vyc2lvbiwgc3dpdGNoCmNv bnN0cnVjdF9ub2RlKCkgdG8gdXNlIGEgbG9vcCBpbnN0ZWFkLgoKVGhpcyBp cyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9ydGVk LWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpTaWdu ZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ClJl dmlld2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoK ZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMg Yi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IDhhZWNk NDI1ZjI3NC4uNDZhMzdlNTI1N2U1IDEwMDY0NAotLS0gYS90b29scy94ZW5z dG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hl bnN0b3JlZF9jb3JlLmMKQEAgLTEzNDMsNDUgKzEzNDMsNjkgQEAgc3RhdGlj IGludCBhZGRfY2hpbGQoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3Qgbm9kZSAq cGFyZW50LCBjb25zdCBjaGFyICpuYW1lKQogc3RhdGljIHN0cnVjdCBub2Rl ICpjb25zdHJ1Y3Rfbm9kZShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgY29u c3Qgdm9pZCAqY3R4LAogCQkJCSAgIGNvbnN0IGNoYXIgKm5hbWUpCiB7Ci0J c3RydWN0IG5vZGUgKnBhcmVudCwgKm5vZGU7Ci0JY2hhciAqcGFyZW50bmFt ZSA9IGdldF9wYXJlbnQoY3R4LCBuYW1lKTsKKwljb25zdCBjaGFyICoqbmFt ZXMgPSBOVUxMOworCXVuc2lnbmVkIGludCBsZXZlbHMgPSAwOworCXN0cnVj dCBub2RlICpub2RlID0gTlVMTDsKKwlzdHJ1Y3Qgbm9kZSAqcGFyZW50ID0g TlVMTDsKKwljb25zdCBjaGFyICpwYXJlbnRuYW1lID0gdGFsbG9jX3N0cmR1 cChjdHgsIG5hbWUpOwogCiAJaWYgKCFwYXJlbnRuYW1lKQogCQlyZXR1cm4g TlVMTDsKIAotCS8qIElmIHBhcmVudCBkb2Vzbid0IGV4aXN0LCBjcmVhdGUg aXQuICovCi0JcGFyZW50ID0gcmVhZF9ub2RlKGNvbm4sIHBhcmVudG5hbWUs IHBhcmVudG5hbWUpOwotCWlmICghcGFyZW50ICYmIGVycm5vID09IEVOT0VO VCkKLQkJcGFyZW50ID0gY29uc3RydWN0X25vZGUoY29ubiwgY3R4LCBwYXJl bnRuYW1lKTsKLQlpZiAoIXBhcmVudCkKLQkJcmV0dXJuIE5VTEw7CisJLyog V2FsayB0aGUgcGF0aCB1cCB1bnRpbCBhbiBleGlzdGluZyBub2RlIGlzIGZv dW5kLiAqLworCXdoaWxlICghcGFyZW50KSB7CisJCW5hbWVzID0gdGFsbG9j X3JlYWxsb2MoY3R4LCBuYW1lcywgY29uc3QgY2hhciAqLCBsZXZlbHMgKyAx KTsKKwkJaWYgKCFuYW1lcykKKwkJCWdvdG8gbm9tZW07CiAKLQkvKiBBZGQg Y2hpbGQgdG8gcGFyZW50LiAqLwotCWlmIChhZGRfY2hpbGQoY3R4LCBwYXJl bnQsIG5hbWUpKQotCQlnb3RvIG5vbWVtOworCQkvKgorCQkgKiBuYW1lc1sw XSBpcyB0aGUgbmFtZSBvZiB0aGUgbm9kZSB0byBjb25zdHJ1Y3QgaW5pdGlh bGx5LAorCQkgKiBuYW1lc1sxXSBpcyBpdHMgcGFyZW50LCBhbmQgc28gb24u CisJCSAqLworCQluYW1lc1tsZXZlbHNdID0gcGFyZW50bmFtZTsKKwkJcGFy ZW50bmFtZSA9IGdldF9wYXJlbnQoY3R4LCBwYXJlbnRuYW1lKTsKKwkJaWYg KCFwYXJlbnRuYW1lKQorCQkJcmV0dXJuIE5VTEw7CiAKLQkvKiBBbGxvY2F0 ZSBub2RlICovCi0Jbm9kZSA9IHRhbGxvYyhjdHgsIHN0cnVjdCBub2RlKTsK LQlpZiAoIW5vZGUpCi0JCWdvdG8gbm9tZW07Ci0Jbm9kZS0+bmFtZSA9IHRh bGxvY19zdHJkdXAobm9kZSwgbmFtZSk7Ci0JaWYgKCFub2RlLT5uYW1lKQot CQlnb3RvIG5vbWVtOworCQkvKiBUcnkgdG8gcmVhZCBwYXJlbnQgbm9kZSB1 bnRpbCB3ZSBmb3VuZCBhbiBleGlzdGluZyBvbmUuICovCisJCXBhcmVudCA9 IHJlYWRfbm9kZShjb25uLCBjdHgsIHBhcmVudG5hbWUpOworCQlpZiAoIXBh cmVudCAmJiAoZXJybm8gIT0gRU5PRU5UIHx8ICFzdHJjbXAocGFyZW50bmFt ZSwgIi8iKSkpCisJCQlyZXR1cm4gTlVMTDsKIAotCS8qIEluaGVyaXQgcGVy bWlzc2lvbnMsIGV4Y2VwdCB1bnByaXZpbGVnZWQgZG9tYWlucyBvd24gd2hh dCB0aGV5IGNyZWF0ZSAqLwotCW5vZGUtPnBlcm1zLm51bSA9IHBhcmVudC0+ cGVybXMubnVtOwotCW5vZGUtPnBlcm1zLnAgPSB0YWxsb2NfbWVtZHVwKG5v ZGUsIHBhcmVudC0+cGVybXMucCwKLQkJCQkgICAgICBub2RlLT5wZXJtcy5u dW0gKiBzaXplb2YoKm5vZGUtPnBlcm1zLnApKTsKLQlpZiAoIW5vZGUtPnBl cm1zLnApCi0JCWdvdG8gbm9tZW07Ci0JaWYgKGRvbWFpbl9pc191bnByaXZp bGVnZWQoY29ubikpCi0JCW5vZGUtPnBlcm1zLnBbMF0uaWQgPSBjb25uLT5p ZDsKKwkJbGV2ZWxzKys7CisJfQorCisJLyogV2FsayB0aGUgcGF0aCBkb3du IGFnYWluIGNvbnN0cnVjdGluZyB0aGUgbWlzc2luZyBub2Rlcy4gKi8KKwlm b3IgKDsgbGV2ZWxzID4gMDsgbGV2ZWxzLS0pIHsKKwkJLyogQWRkIGNoaWxk IHRvIHBhcmVudC4gKi8KKwkJaWYgKGFkZF9jaGlsZChjdHgsIHBhcmVudCwg bmFtZXNbbGV2ZWxzIC0gMV0pKQorCQkJZ290byBub21lbTsKKworCQkvKiBB bGxvY2F0ZSBub2RlICovCisJCW5vZGUgPSB0YWxsb2MoY3R4LCBzdHJ1Y3Qg bm9kZSk7CisJCWlmICghbm9kZSkKKwkJCWdvdG8gbm9tZW07CisJCW5vZGUt Pm5hbWUgPSB0YWxsb2Nfc3RlYWwobm9kZSwgbmFtZXNbbGV2ZWxzIC0gMV0p OworCisJCS8qIEluaGVyaXQgcGVybWlzc2lvbnMsIHVucHJpdiBkb21haW5z IG93biB3aGF0IHRoZXkgY3JlYXRlLiAqLworCQlub2RlLT5wZXJtcy5udW0g PSBwYXJlbnQtPnBlcm1zLm51bTsKKwkJbm9kZS0+cGVybXMucCA9IHRhbGxv Y19tZW1kdXAobm9kZSwgcGFyZW50LT5wZXJtcy5wLAorCQkJCQkgICAgICBu b2RlLT5wZXJtcy5udW0gKgorCQkJCQkgICAgICBzaXplb2YoKm5vZGUtPnBl cm1zLnApKTsKKwkJaWYgKCFub2RlLT5wZXJtcy5wKQorCQkJZ290byBub21l bTsKKwkJaWYgKGRvbWFpbl9pc191bnByaXZpbGVnZWQoY29ubikpCisJCQlu b2RlLT5wZXJtcy5wWzBdLmlkID0gY29ubi0+aWQ7CisKKwkJLyogTm8gY2hp bGRyZW4sIG5vIGRhdGEgKi8KKwkJbm9kZS0+Y2hpbGRyZW4gPSBub2RlLT5k YXRhID0gTlVMTDsKKwkJbm9kZS0+Y2hpbGRsZW4gPSBub2RlLT5kYXRhbGVu ID0gMDsKKwkJbm9kZS0+YWNjLm1lbW9yeSA9IDA7CisJCW5vZGUtPnBhcmVu dCA9IHBhcmVudDsKKworCQlwYXJlbnQgPSBub2RlOworCX0KIAotCS8qIE5v IGNoaWxkcmVuLCBubyBkYXRhICovCi0Jbm9kZS0+Y2hpbGRyZW4gPSBub2Rl LT5kYXRhID0gTlVMTDsKLQlub2RlLT5jaGlsZGxlbiA9IG5vZGUtPmRhdGFs ZW4gPSAwOwotCW5vZGUtPmFjYy5tZW1vcnkgPSAwOwotCW5vZGUtPnBhcmVu dCA9IHBhcmVudDsKIAlyZXR1cm4gbm9kZTsKIAogbm9tZW06Cg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.15-02.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.15-02.patch" Content-Transfer-Encoding: base64 RnJvbSBkZjQ1ZWEzNzljNjhlNjc1Y2U4OGJiZTI1ZTE3Y2ZlNDllYzEwOGI3 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTEgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IGRvbid0IGxl dCByZW1vdmVfY2hpbGRfZW50cnkoKSBjYWxsIGNvcnJ1cHQoKQoKSW4gY2Fz ZSBvZiB3cml0ZV9ub2RlKCkgcmV0dXJuaW5nIGFuIGVycm9yLCByZW1vdmVf Y2hpbGRfZW50cnkoKSB3aWxsCmNhbGwgY29ycnVwdCgpIHRvZGF5LiBUaGlz IGNvdWxkIHJlc3VsdCBpbiBhbiBlbmRsZXNzIHJlY3Vyc2lvbiwgYXMKcmVt b3ZlX2NoaWxkX2VudHJ5KCkgaXMgY2FsbGVkIGJ5IGNvcnJ1cHQoKSwgdG9v OgoKY29ycnVwdCgpCiAgY2hlY2tfc3RvcmUoKQogICAgY2hlY2tfc3RvcmVf KCkKICAgICAgcmVtb3ZlX2NoaWxkX2VudHJ5KCkKCkZpeCB0aGF0IGJ5IGxl dHRpbmcgcmVtb3ZlX2NoaWxkX2VudHJ5KCkgcmV0dXJuIGFuIGVycm9yIGlu c3RlYWQgYW5kCmxldCB0aGUgY2FsbGVyIGRlY2lkZSB3aGF0IHRvIGRvLgoK VGhpcyBpcyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJl cG9ydGVkLWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVr PgpTaWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5j b20+ClJldmlld2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24u Y29tPgoKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9j b3JlLmMgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4 IDQ2YTM3ZTUyNTdlNS4uNGMzODk3NzIxYmRkIDEwMDY0NAotLS0gYS90b29s cy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0 b3JlL3hlbnN0b3JlZF9jb3JlLmMKQEAgLTE1NzQsMTUgKzE1NzQsMTUgQEAg c3RhdGljIHZvaWQgbWVtZGVsKHZvaWQgKm1lbSwgdW5zaWduZWQgb2ZmLCB1 bnNpZ25lZCBsZW4sIHVuc2lnbmVkIHRvdGFsKQogCW1lbW1vdmUobWVtICsg b2ZmLCBtZW0gKyBvZmYgKyBsZW4sIHRvdGFsIC0gb2ZmIC0gbGVuKTsKIH0K IAotc3RhdGljIHZvaWQgcmVtb3ZlX2NoaWxkX2VudHJ5KHN0cnVjdCBjb25u ZWN0aW9uICpjb25uLCBzdHJ1Y3Qgbm9kZSAqbm9kZSwKLQkJCSAgICAgICBz aXplX3Qgb2Zmc2V0KQorc3RhdGljIGludCByZW1vdmVfY2hpbGRfZW50cnko c3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIHN0cnVjdCBub2RlICpub2RlLAor CQkJICAgICAgc2l6ZV90IG9mZnNldCkKIHsKIAlzaXplX3QgY2hpbGRsZW4g PSBzdHJsZW4obm9kZS0+Y2hpbGRyZW4gKyBvZmZzZXQpOwogCiAJbWVtZGVs KG5vZGUtPmNoaWxkcmVuLCBvZmZzZXQsIGNoaWxkbGVuICsgMSwgbm9kZS0+ Y2hpbGRsZW4pOwogCW5vZGUtPmNoaWxkbGVuIC09IGNoaWxkbGVuICsgMTsK LQlpZiAod3JpdGVfbm9kZShjb25uLCBub2RlLCB0cnVlKSkKLQkJY29ycnVw dChjb25uLCAiQ2FuJ3QgdXBkYXRlIHBhcmVudCBub2RlICclcyciLCBub2Rl LT5uYW1lKTsKKworCXJldHVybiB3cml0ZV9ub2RlKGNvbm4sIG5vZGUsIHRy dWUpOwogfQogCiBzdGF0aWMgdm9pZCBkZWxldGVfY2hpbGQoc3RydWN0IGNv bm5lY3Rpb24gKmNvbm4sCkBAIC0xNTkyLDcgKzE1OTIsOSBAQCBzdGF0aWMg dm9pZCBkZWxldGVfY2hpbGQoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sCiAK IAlmb3IgKGkgPSAwOyBpIDwgbm9kZS0+Y2hpbGRsZW47IGkgKz0gc3RybGVu KG5vZGUtPmNoaWxkcmVuK2kpICsgMSkgewogCQlpZiAoc3RyZXEobm9kZS0+ Y2hpbGRyZW4raSwgY2hpbGRuYW1lKSkgewotCQkJcmVtb3ZlX2NoaWxkX2Vu dHJ5KGNvbm4sIG5vZGUsIGkpOworCQkJaWYgKHJlbW92ZV9jaGlsZF9lbnRy eShjb25uLCBub2RlLCBpKSkKKwkJCQljb3JydXB0KGNvbm4sICJDYW4ndCB1 cGRhdGUgcGFyZW50IG5vZGUgJyVzJyIsCisJCQkJCW5vZGUtPm5hbWUpOwog CQkJcmV0dXJuOwogCQl9CiAJfQpAQCAtMjIyNiw2ICsyMjI4LDE3IEBAIGlu dCByZW1lbWJlcl9zdHJpbmcoc3RydWN0IGhhc2h0YWJsZSAqaGFzaCwgY29u c3QgY2hhciAqc3RyKQogCXJldHVybiBoYXNodGFibGVfaW5zZXJ0KGhhc2gs IGssICh2b2lkICopMSk7CiB9CiAKK3N0YXRpYyBpbnQgcm1fY2hpbGRfZW50 cnkoc3RydWN0IG5vZGUgKm5vZGUsIHNpemVfdCBvZmYsIHNpemVfdCBsZW4p Cit7CisJaWYgKCFyZWNvdmVyeSkKKwkJcmV0dXJuIG9mZjsKKworCWlmIChy ZW1vdmVfY2hpbGRfZW50cnkoTlVMTCwgbm9kZSwgb2ZmKSkKKwkJbG9nKCJj aGVja19zdG9yZTogY2hpbGQgZW50cnkgY291bGQgbm90IGJlIHJlbW92ZWQg ZnJvbSAnJXMnIiwKKwkJICAgIG5vZGUtPm5hbWUpOworCisJcmV0dXJuIG9m ZiAtIGxlbiAtIDE7Cit9CiAKIC8qKgogICogQSBub2RlIGhhcyBhIGNoaWxk cmVuIGZpZWxkIHRoYXQgbmFtZXMgdGhlIGNoaWxkcmVuIG9mIHRoZSBub2Rl LCBzZXBhcmF0ZWQKQEAgLTIyNzgsMTIgKzIyOTEsNyBAQCBzdGF0aWMgaW50 IGNoZWNrX3N0b3JlXyhjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3QgaGFzaHRh YmxlICpyZWFjaGFibGUpCiAJCQkJaWYgKGhhc2h0YWJsZV9zZWFyY2goY2hp bGRyZW4sIGNoaWxkbmFtZSkpIHsKIAkJCQkJbG9nKCJjaGVja19zdG9yZTog JyVzJyBpcyBkdXBsaWNhdGVkISIsCiAJCQkJCSAgICBjaGlsZG5hbWUpOwot Ci0JCQkJCWlmIChyZWNvdmVyeSkgewotCQkJCQkJcmVtb3ZlX2NoaWxkX2Vu dHJ5KE5VTEwsIG5vZGUsCi0JCQkJCQkJCSAgIGkpOwotCQkJCQkJaSAtPSBj aGlsZGxlbiArIDE7Ci0JCQkJCX0KKwkJCQkJaSA9IHJtX2NoaWxkX2VudHJ5 KG5vZGUsIGksIGNoaWxkbGVuKTsKIAkJCQl9CiAJCQkJZWxzZSB7CiAJCQkJ CWlmICghcmVtZW1iZXJfc3RyaW5nKGNoaWxkcmVuLApAQCAtMjMwMCwxMSAr MjMwOCw3IEBAIHN0YXRpYyBpbnQgY2hlY2tfc3RvcmVfKGNvbnN0IGNoYXIg Km5hbWUsIHN0cnVjdCBoYXNodGFibGUgKnJlYWNoYWJsZSkKIAkJCX0gZWxz ZSBpZiAoZXJybm8gIT0gRU5PTUVNKSB7CiAJCQkJbG9nKCJjaGVja19zdG9y ZTogTm8gY2hpbGQgJyVzJyBmb3VuZCFcbiIsCiAJCQkJICAgIGNoaWxkbmFt ZSk7Ci0KLQkJCQlpZiAocmVjb3ZlcnkpIHsKLQkJCQkJcmVtb3ZlX2NoaWxk X2VudHJ5KE5VTEwsIG5vZGUsIGkpOwotCQkJCQlpIC09IGNoaWxkbGVuICsg MTsKLQkJCQl9CisJCQkJaSA9IHJtX2NoaWxkX2VudHJ5KG5vZGUsIGksIGNo aWxkbGVuKTsKIAkJCX0gZWxzZSB7CiAJCQkJbG9nKCJjaGVja19zdG9yZTog RU5PTUVNIik7CiAJCQkJcmV0ID0gRU5PTUVNOwo= --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.15-03.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.15-03.patch" Content-Transfer-Encoding: base64 RnJvbSA3OGQ4NmQ3NjM0NWRmNDRkNDFmYWQ4NjU5ZjYzN2E5M2NjZDg0OWI3 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTEgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IGFkZCBnZW5l cmljIHRyZWV3YWxrIGZ1bmN0aW9uCgpBZGQgYSBnZW5lcmljIGZ1bmN0aW9u IHRvIHdhbGsgdGhlIGNvbXBsZXRlIG5vZGUgdHJlZS4gSXQgd2lsbCBzdGFy dAphdCAiLyIgYW5kIGRlc2NlbmQgcmVjdXJzaXZlbHkgaW50byBlYWNoIGNo aWxkLCBjYWxsaW5nIGEgZnVuY3Rpb24Kc3BlY2lmaWVkIGJ5IHRoZSBjYWxs ZXIuIERlcGVuZGluZyBvbiB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoZSB1c2Vy CnNwZWNpZmllZCBmdW5jdGlvbiB0aGUgd2FsayB3aWxsIGJlIGFib3J0ZWQs IGNvbnRpbnVlZCwgb3IgdGhlIGN1cnJlbnQKY2hpbGQgd2lsbCBiZSBza2lw cGVkIGJ5IG5vdCBkZXNjZW5kaW5nIGludG8gaXRzIGNoaWxkcmVuLgoKVGhp cyBpcyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9y dGVkLWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpT aWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ CkFja2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoK ZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMg Yi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IDRjMzg5 NzcyMWJkZC4uNzQ2M2QwYTAwMmQ3IDEwMDY0NAotLS0gYS90b29scy94ZW5z dG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hl bnN0b3JlZF9jb3JlLmMKQEAgLTE4MDQsNiArMTgwNCwxMzUgQEAgc3RhdGlj IGludCBkb19zZXRfcGVybXMoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29u bmVjdGlvbiAqY29ubiwKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIGNoYXIg KmNoaWxkX25hbWUoY29uc3Qgdm9pZCAqY3R4LCBjb25zdCBjaGFyICpzMSwg Y29uc3QgY2hhciAqczIpCit7CisJaWYgKHN0cmNtcChzMSwgIi8iKSkKKwkJ cmV0dXJuIHRhbGxvY19hc3ByaW50ZihjdHgsICIlcy8lcyIsIHMxLCBzMik7 CisJcmV0dXJuIHRhbGxvY19hc3ByaW50ZihjdHgsICIvJXMiLCBzMik7Cit9 CisKK3N0YXRpYyBpbnQgcm1fZnJvbV9wYXJlbnQoc3RydWN0IGNvbm5lY3Rp b24gKmNvbm4sIHN0cnVjdCBub2RlICpwYXJlbnQsCisJCQkgIGNvbnN0IGNo YXIgKm5hbWUpCit7CisJc2l6ZV90IG9mZjsKKworCWlmICghcGFyZW50KQor CQlyZXR1cm4gV0FMS19UUkVFX0VSUk9SX1NUT1A7CisKKwlmb3IgKG9mZiA9 IHBhcmVudC0+Y2hpbGRvZmYgLSAxOyBvZmYgJiYgcGFyZW50LT5jaGlsZHJl bltvZmYgLSAxXTsKKwkgICAgIG9mZi0tKTsKKwlpZiAocmVtb3ZlX2NoaWxk X2VudHJ5KGNvbm4sIHBhcmVudCwgb2ZmKSkgeworCQlsb2coInRyZWV3YWxr OiBjaGlsZCBlbnRyeSBjb3VsZCBub3QgYmUgcmVtb3ZlZCBmcm9tICclcyci LAorCQkgICAgcGFyZW50LT5uYW1lKTsKKwkJcmV0dXJuIFdBTEtfVFJFRV9F UlJPUl9TVE9QOworCX0KKwlwYXJlbnQtPmNoaWxkb2ZmID0gb2ZmOworCisJ cmV0dXJuIFdBTEtfVFJFRV9PSzsKK30KKworc3RhdGljIGludCB3YWxrX2Nh bGxfZnVuYyhjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpj b25uLAorCQkJICBzdHJ1Y3Qgbm9kZSAqbm9kZSwgc3RydWN0IG5vZGUgKnBh cmVudCwgdm9pZCAqYXJnLAorCQkJICBpbnQgKCpmdW5jKShjb25zdCB2b2lk ICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpjb25uLAorCQkJCSAgICAgIHN0 cnVjdCBub2RlICpub2RlLCB2b2lkICphcmcpKQoreworCWludCByZXQ7CisK KwlpZiAoIWZ1bmMpCisJCXJldHVybiBXQUxLX1RSRUVfT0s7CisKKwlyZXQg PSBmdW5jKGN0eCwgY29ubiwgbm9kZSwgYXJnKTsKKwlpZiAocmV0ID09IFdB TEtfVFJFRV9STV9DSElMREVOVFJZICYmIHBhcmVudCkKKwkJcmV0ID0gcm1f ZnJvbV9wYXJlbnQoY29ubiwgcGFyZW50LCBub2RlLT5uYW1lKTsKKworCXJl dHVybiByZXQ7Cit9CisKK2ludCB3YWxrX25vZGVfdHJlZShjb25zdCB2b2lk ICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBjb25zdCBjaGFyICpy b290LAorCQkgICBzdHJ1Y3Qgd2Fsa19mdW5jcyAqZnVuY3MsIHZvaWQgKmFy ZykKK3sKKwlpbnQgcmV0ID0gMDsKKwl2b2lkICp0bXBjdHg7CisJY2hhciAq bmFtZTsKKwlzdHJ1Y3Qgbm9kZSAqbm9kZSA9IE5VTEw7CisJc3RydWN0IG5v ZGUgKnBhcmVudCA9IE5VTEw7CisKKwl0bXBjdHggPSB0YWxsb2NfbmV3KGN0 eCk7CisJaWYgKCF0bXBjdHgpIHsKKwkJZXJybm8gPSBFTk9NRU07CisJCXJl dHVybiBXQUxLX1RSRUVfRVJST1JfU1RPUDsKKwl9CisJbmFtZSA9IHRhbGxv Y19zdHJkdXAodG1wY3R4LCByb290KTsKKwlpZiAoIW5hbWUpIHsKKwkJZXJy bm8gPSBFTk9NRU07CisJCXRhbGxvY19mcmVlKHRtcGN0eCk7CisJCXJldHVy biBXQUxLX1RSRUVfRVJST1JfU1RPUDsKKwl9CisKKwkvKiBDb250aW51ZSB0 aGUgd2FsayB1bnRpbCBhbiBlcnJvciBpcyByZXR1cm5lZC4gKi8KKwl3aGls ZSAocmV0ID49IDApIHsKKwkJLyogbm9kZSA9PSBOVUxMIHBvc3NpYmxlIG9u bHkgZm9yIHRoZSBpbml0aWFsIGxvb3AgaXRlcmF0aW9uLiAqLworCQlpZiAo bm9kZSkgeworCQkJLyogR28gb25lIHN0ZXAgdXAgaWYgcmV0IG9yIGlmIGxh c3QgY2hpbGQgZmluaXNoZWQuICovCisJCQlpZiAocmV0IHx8IG5vZGUtPmNo aWxkb2ZmID49IG5vZGUtPmNoaWxkbGVuKSB7CisJCQkJcGFyZW50ID0gbm9k ZS0+cGFyZW50OworCQkJCS8qIENhbGwgZnVuY3Rpb24gQUZURVIgcHJvY2Vz c2luZyBhIG5vZGUuICovCisJCQkJcmV0ID0gd2Fsa19jYWxsX2Z1bmMoY3R4 LCBjb25uLCBub2RlLCBwYXJlbnQsCisJCQkJCQkgICAgIGFyZywgZnVuY3Mt PmV4aXQpOworCQkJCS8qIExhc3Qgbm9kZSwgc28gZXhpdCBsb29wLiAqLwor CQkJCWlmICghcGFyZW50KQorCQkJCQlicmVhazsKKwkJCQl0YWxsb2NfZnJl ZShub2RlKTsKKwkJCQkvKiBDb250aW51ZSB3aXRoIHBhcmVudC4gKi8KKwkJ CQlub2RlID0gcGFyZW50OworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJLyog R2V0IG5leHQgY2hpbGQgb2YgY3VycmVudCBub2RlLiAqLworCQkJbmFtZSA9 IGNoaWxkX25hbWUodG1wY3R4LCBub2RlLT5uYW1lLAorCQkJCQkgIG5vZGUt PmNoaWxkcmVuICsgbm9kZS0+Y2hpbGRvZmYpOworCQkJaWYgKCFuYW1lKSB7 CisJCQkJcmV0ID0gV0FMS19UUkVFX0VSUk9SX1NUT1A7CisJCQkJYnJlYWs7 CisJCQl9CisJCQkvKiBQb2ludCB0byBuZXh0IGNoaWxkLiAqLworCQkJbm9k ZS0+Y2hpbGRvZmYgKz0gc3RybGVuKG5vZGUtPmNoaWxkcmVuICsKKwkJCQkJ CSBub2RlLT5jaGlsZG9mZikgKyAxOworCQkJLyogRGVzY2VudCBpbnRvIGNo aWxkcmVuLiAqLworCQkJcGFyZW50ID0gbm9kZTsKKwkJfQorCQkvKiBSZWFk IG5leHQgbm9kZSAocm9vdCBub2RlIG9yIG5leHQgY2hpbGQpLiAqLworCQlu b2RlID0gcmVhZF9ub2RlKGNvbm4sIHRtcGN0eCwgbmFtZSk7CisJCWlmICgh bm9kZSkgeworCQkJLyogQ2hpbGQgbm90IGZvdW5kIC0gc2hvdWxkIG5vdCBo YXBwZW4hICovCisJCQkvKiBFTk9FTlQgY2FzZSBjYW4gYmUgaGFuZGxlZCBi eSBzdXBwbGllZCBmdW5jdGlvbi4gKi8KKwkJCWlmIChlcnJubyA9PSBFTk9F TlQgJiYgZnVuY3MtPmVub2VudCkKKwkJCQlyZXQgPSBmdW5jcy0+ZW5vZW50 KGN0eCwgY29ubiwgcGFyZW50LCBuYW1lLAorCQkJCQkJICAgIGFyZyk7CisJ CQllbHNlCisJCQkJcmV0ID0gV0FMS19UUkVFX0VSUk9SX1NUT1A7CisJCQlp ZiAoIXBhcmVudCkKKwkJCQlicmVhazsKKwkJCWlmIChyZXQgPT0gV0FMS19U UkVFX1JNX0NISUxERU5UUlkpCisJCQkJcmV0ID0gcm1fZnJvbV9wYXJlbnQo Y29ubiwgcGFyZW50LCBuYW1lKTsKKwkJCWlmIChyZXQgPCAwKQorCQkJCWJy ZWFrOworCQkJdGFsbG9jX2ZyZWUobmFtZSk7CisJCQlub2RlID0gcGFyZW50 OworCQkJY29udGludWU7CisJCX0KKwkJdGFsbG9jX2ZyZWUobmFtZSk7CisJ CW5vZGUtPnBhcmVudCA9IHBhcmVudDsKKwkJbm9kZS0+Y2hpbGRvZmYgPSAw OworCQkvKiBDYWxsIGZ1bmN0aW9uIEJFRk9SRSBwcm9jZXNzaW5nIGEgbm9k ZS4gKi8KKwkJcmV0ID0gd2Fsa19jYWxsX2Z1bmMoY3R4LCBjb25uLCBub2Rl LCBwYXJlbnQsIGFyZywKKwkJCQkgICAgIGZ1bmNzLT5lbnRlcik7CisJfQor CisJdGFsbG9jX2ZyZWUodG1wY3R4KTsKKworCXJldHVybiByZXQgPCAwID8g cmV0IDogV0FMS19UUkVFX09LOworfQorCiBzdGF0aWMgc3RydWN0IHsKIAlj b25zdCBjaGFyICpzdHI7CiAJaW50ICgqZnVuYykoY29uc3Qgdm9pZCAqY3R4 LCBzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwKQEAgLTIyMDYsMTggKzIzMzUs NiBAQCBzdGF0aWMgaW50IGtleXNfZXF1YWxfZm4odm9pZCAqa2V5MSwgdm9p ZCAqa2V5MikKIAlyZXR1cm4gMCA9PSBzdHJjbXAoKGNoYXIgKilrZXkxLCAo Y2hhciAqKWtleTIpOwogfQogCi0KLXN0YXRpYyBjaGFyICpjaGlsZF9uYW1l KGNvbnN0IGNoYXIgKnMxLCBjb25zdCBjaGFyICpzMikKLXsKLQlpZiAoc3Ry Y21wKHMxLCAiLyIpKSB7Ci0JCXJldHVybiB0YWxsb2NfYXNwcmludGYoTlVM TCwgIiVzLyVzIiwgczEsIHMyKTsKLQl9Ci0JZWxzZSB7Ci0JCXJldHVybiB0 YWxsb2NfYXNwcmludGYoTlVMTCwgIi8lcyIsIHMyKTsKLQl9Ci19Ci0KLQog aW50IHJlbWVtYmVyX3N0cmluZyhzdHJ1Y3QgaGFzaHRhYmxlICpoYXNoLCBj b25zdCBjaGFyICpzdHIpCiB7CiAJY2hhciAqayA9IG1hbGxvYyhzdHJsZW4o c3RyKSArIDEpOwpAQCAtMjI3Nyw3ICsyMzk0LDcgQEAgc3RhdGljIGludCBj aGVja19zdG9yZV8oY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IGhhc2h0YWJs ZSAqcmVhY2hhYmxlKQogCQl3aGlsZSAoaSA8IG5vZGUtPmNoaWxkbGVuICYm ICFyZXQpIHsKIAkJCXN0cnVjdCBub2RlICpjaGlsZG5vZGU7CiAJCQlzaXpl X3QgY2hpbGRsZW4gPSBzdHJsZW4obm9kZS0+Y2hpbGRyZW4gKyBpKTsKLQkJ CWNoYXIgKiBjaGlsZG5hbWUgPSBjaGlsZF9uYW1lKG5vZGUtPm5hbWUsCisJ CQljaGFyICogY2hpbGRuYW1lID0gY2hpbGRfbmFtZShOVUxMLCBub2RlLT5u YW1lLAogCQkJCQkJICAgICAgbm9kZS0+Y2hpbGRyZW4gKyBpKTsKIAogCQkJ aWYgKCFjaGlsZG5hbWUpIHsKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3Jl L3hlbnN0b3JlZF9jb3JlLmggYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRf Y29yZS5oCmluZGV4IDFlYjM3MDhmODJkZC4uZjBmZDhjMzUyODU3IDEwMDY0 NAotLS0gYS90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5oCisrKyBi L3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmgKQEAgLTE5NSw2ICsx OTUsNyBAQCBzdHJ1Y3Qgbm9kZSB7CiAKIAkvKiBDaGlsZHJlbiwgZWFjaCBu dWwtdGVybWluYXRlZC4gKi8KIAl1bnNpZ25lZCBpbnQgY2hpbGRsZW47CisJ dW5zaWduZWQgaW50IGNoaWxkb2ZmOwkvKiBVc2VkIGJ5IHdhbGtfbm9kZV90 cmVlKCkgaW50ZXJuYWxseS4gKi8KIAljaGFyICpjaGlsZHJlbjsKIAogCS8q IEFsbG9jYXRpb24gaW5mb3JtYXRpb24gZm9yIG5vZGUgY3VycmVudGx5IGlu IHN0b3JlLiAqLwpAQCAtMzM0LDYgKzMzNSw0NSBAQCB2b2lkIHJlYWRfc3Rh dGVfYnVmZmVyZWRfZGF0YShjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBjb25u ZWN0aW9uICpjb25uLAogCQkJICAgICAgY29uc3Qgc3RydWN0IHhzX3N0YXRl X2Nvbm5lY3Rpb24gKnNjKTsKIHZvaWQgcmVhZF9zdGF0ZV9ub2RlKGNvbnN0 IHZvaWQgKmN0eCwgY29uc3Qgdm9pZCAqc3RhdGUpOwogCisvKgorICogV2Fs ayB0aGUgbm9kZSB0cmVlIGJlbG93IHJvb3QgY2FsbGluZyBmdW5jcy0+ZW50 ZXIoKSBhbmQgZnVuY3MtPmV4aXQoKSBmb3IKKyAqIGVhY2ggbm9kZS4gZnVu Y3MtPmVudGVyKCkgaXMgYmVpbmcgY2FsbGVkIHdoZW4gZW50ZXJpbmcgYSBu b2RlLCBzbyBiZWZvcmUKKyAqIGFueSBvZiB0aGUgY2hpbGRyZW4gb2YgdGhl IG5vZGUgaXMgcHJvY2Vzc2VkLiBmdW5jcy0+ZXhpdCgpIGlzIGJlaW5nCisg KiBjYWxsZWQgd2hlbiBsZWF2aW5nIHRoZSBub2RlLCBzbyBhZnRlciBhbGwg Y2hpbGRyZW4gaGF2ZSBiZWVuIHByb2Nlc3NlZC4KKyAqIGZ1bmNzLT5lbm9l bnQoKSBpcyBiZWluZyBjYWxsZWQgd2hlbiBhIG5vZGUgaXNuJ3QgZXhpc3Rp bmcuCisgKiBmdW5jcy0+KigpIHJldHVybiB2YWx1ZXM6CisgKiAgPCAwOiB0 cmVlIHdhbGsgaXMgc3RvcHBlZCwgd2Fsa19ub2RlX3RyZWUoKSByZXR1cm5z IGZ1bmNzLT4qKCkgcmV0dXJuIHZhbHVlCisgKiAgICAgICBpbiBjYXNlIFdB TEtfVFJFRV9FUlJPUl9TVE9QIGlzIHJldHVybmVkLCBlcnJubyBzaG91bGQg YmUgc2V0CisgKiAgV0FMS19UUkVFX09LOiB0cmVlIHdhbGsgaXMgY29udGlu dWluZworICogIFdBTEtfVFJFRV9TS0lQX0NISUxEUkVOOiB0cmVlIHdhbGsg d29uJ3QgZGVzY2VuZCBiZWxvdyBjdXJyZW50IG5vZGUsIGJ1dAorICogICAg ICAgd2FsayBjb250aW51ZXMKKyAqICBXQUxLX1RSRUVfUk1fQ0hJTERFTlRS WTogUmVtb3ZlIHRoZSBjaGlsZCBlbnRyeSBmcm9tIGl0cyBwYXJlbnQgYW5k IHdyaXRlCisgKiAgICAgICB0aGUgbW9kaWZpZWQgcGFyZW50IG5vZGUgYmFj ayB0byB0aGUgZGF0YSBiYXNlLCBpbXBsaWVzIHRvIG5vdCBkZXNjZW5kCisg KiAgICAgICBiZWxvdyB0aGUgY3VycmVudCBub2RlLCBidXQgdG8gY29udGlu dWUgdGhlIHdhbGsKKyAqIGZ1bmNzLT4qKCkgaXMgYWxsb3dlZCB0byBtb2Rp ZnkgdGhlIG5vZGUgaXQgaXMgY2FsbGVkIGZvciBpbiB0aGUgZGF0YSBiYXNl LgorICogSW4gY2FzZSBmdW5jcy0+ZW50ZXIoKSBpcyBkZWxldGluZyB0aGUg bm9kZSwgaXQgbXVzdCBub3QgcmV0dXJuIFdBTEtfVFJFRV9PSworICogaW4g b3JkZXIgdG8gYXZvaWQgZGVzY2VuZGluZyBpbnRvIG5vIGxvbmdlciBleGlz dGluZyBjaGlsZHJlbi4KKyAqLworLyogUmV0dXJuIHZhbHVlcyBmb3IgZnVu Y3MtPiooKSBhbmQgd2Fsa19ub2RlX3RyZWUoKS4gKi8KKyNkZWZpbmUgV0FM S19UUkVFX1NVQ0NFU1NfU1RPUCAgLTEwMCAgICAvKiBTdG9wIHdhbGsgZWFy bHksIG5vIGVycm9yLiAqLworI2RlZmluZSBXQUxLX1RSRUVfRVJST1JfU1RP UCAgICAtMSAgICAgIC8qIFN0b3Agd2FsayBkdWUgdG8gZXJyb3IuICovCisj ZGVmaW5lIFdBTEtfVFJFRV9PSyAgICAgICAgICAgIDAgICAgICAgLyogTm8g ZXJyb3IuICovCisvKiBSZXR1cm4gdmFsdWUgZm9yIGZ1bmNzLT4qKCkgb25s eS4gKi8KKyNkZWZpbmUgV0FMS19UUkVFX1NLSVBfQ0hJTERSRU4gMSAgICAg ICAvKiBEb24ndCByZWN1cnNlIGJlbG93IGN1cnJlbnQgbm9kZS4gKi8KKyNk ZWZpbmUgV0FMS19UUkVFX1JNX0NISUxERU5UUlkgMiAgICAgICAvKiBSZW1v dmUgY2hpbGQgZW50cnkgZnJvbSBwYXJlbnQuICovCisKK3N0cnVjdCB3YWxr X2Z1bmNzIHsKKwlpbnQgKCplbnRlcikoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1 Y3QgY29ubmVjdGlvbiAqY29ubiwKKwkJICAgICBzdHJ1Y3Qgbm9kZSAqbm9k ZSwgdm9pZCAqYXJnKTsKKwlpbnQgKCpleGl0KShjb25zdCB2b2lkICpjdHgs IHN0cnVjdCBjb25uZWN0aW9uICpjb25uLAorCQkgICAgc3RydWN0IG5vZGUg Km5vZGUsIHZvaWQgKmFyZyk7CisJaW50ICgqZW5vZW50KShjb25zdCB2b2lk ICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpjb25uLAorCQkgICAgICBzdHJ1 Y3Qgbm9kZSAqcGFyZW50LCBjaGFyICpuYW1lLCB2b2lkICphcmcpOworfTsK KworaW50IHdhbGtfbm9kZV90cmVlKGNvbnN0IHZvaWQgKmN0eCwgc3RydWN0 IGNvbm5lY3Rpb24gKmNvbm4sIGNvbnN0IGNoYXIgKnJvb3QsCisJCSAgIHN0 cnVjdCB3YWxrX2Z1bmNzICpmdW5jcywgdm9pZCAqYXJnKTsKKwogI2VuZGlm IC8qIF9YRU5TVE9SRURfQ09SRV9IICovCiAKIC8qCg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.15-04.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.15-04.patch" Content-Transfer-Encoding: base64 RnJvbSAxZTcyYWEzYzUwN2M5ZTliYjQ5NWQxMjkwNzE4OTAzNGJjOGIxZTdh IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHNpbXBsaWZ5 IGNoZWNrX3N0b3JlKCkKCmNoZWNrX3N0b3JlKCkgaXMgdXNpbmcgYSBoYXNo IHRhYmxlIGZvciBzdG9yaW5nIGFsbCBub2RlIG5hbWVzIGl0IGhhcwpmb3Vu ZCB2aWEgd2Fsa2luZyB0aGUgdHJlZS4gQWRkaXRpb25hbGx5IGl0IHVzaW5n IGFub3RoZXIgaGFzaCB0YWJsZQpmb3IgYWxsIGNoaWxkcmVuIG9mIGEgbm9k ZSB0byBkZXRlY3QgZHVwbGljYXRlIGNoaWxkIG5hbWVzLgoKU2ltcGxpZnkg dGhhdCBieSBkcm9wcGluZyB0aGUgc2Vjb25kIGhhc2ggdGFibGUgYXMgdGhl IGZpcnN0IG9uZSBpcwphbHJlYWR5IGhvbGRpbmcgYWxsIHRoZSBuZWVkZWQg aW5mb3JtYXRpb24uCgpUaGlzIGlzIHBhcnQgb2YgWFNBLTQxOCAvIENWRS0y MDIyLTQyMzIxLgoKUmVwb3J0ZWQtYnk6IEp1bGllbiBHcmFsbCA8ZHZyYWJl bEBhbWF6b24uY28udWs+ClNpZ25lZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3Mg PGpncm9zc0BzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IEp1bGllbiBHcmFsbCA8 amdyYWxsQGFtYXpvbi5jb20+CgpkaWZmIC0tZ2l0IGEvdG9vbHMveGVuc3Rv cmUveGVuc3RvcmVkX2NvcmUuYyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3Jl ZF9jb3JlLmMKaW5kZXggNzQ2M2QwYTAwMmQ3Li5hNDgyNTVjNjRjYWQgMTAw NjQ0Ci0tLSBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMKKysr IGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYwpAQCAtMjM3OCw1 MCArMjM3OCwzNCBAQCBzdGF0aWMgaW50IGNoZWNrX3N0b3JlXyhjb25zdCBj aGFyICpuYW1lLCBzdHJ1Y3QgaGFzaHRhYmxlICpyZWFjaGFibGUpCiAJaWYg KG5vZGUpIHsKIAkJc2l6ZV90IGkgPSAwOwogCi0JCXN0cnVjdCBoYXNodGFi bGUgKiBjaGlsZHJlbiA9Ci0JCQljcmVhdGVfaGFzaHRhYmxlKDE2LCBoYXNo X2Zyb21fa2V5X2ZuLCBrZXlzX2VxdWFsX2ZuKTsKLQkJaWYgKCFjaGlsZHJl bikgewotCQkJbG9nKCJjaGVja19zdG9yZSBjcmVhdGUgdGFibGU6IEVOT01F TSIpOwotCQkJcmV0dXJuIEVOT01FTTsKLQkJfQotCiAJCWlmICghcmVtZW1i ZXJfc3RyaW5nKHJlYWNoYWJsZSwgbmFtZSkpIHsKLQkJCWhhc2h0YWJsZV9k ZXN0cm95KGNoaWxkcmVuLCAwKTsKIAkJCWxvZygiY2hlY2tfc3RvcmU6IEVO T01FTSIpOwogCQkJcmV0dXJuIEVOT01FTTsKIAkJfQogCiAJCXdoaWxlIChp IDwgbm9kZS0+Y2hpbGRsZW4gJiYgIXJldCkgewotCQkJc3RydWN0IG5vZGUg KmNoaWxkbm9kZTsKKwkJCXN0cnVjdCBub2RlICpjaGlsZG5vZGUgPSBOVUxM OwogCQkJc2l6ZV90IGNoaWxkbGVuID0gc3RybGVuKG5vZGUtPmNoaWxkcmVu ICsgaSk7Ci0JCQljaGFyICogY2hpbGRuYW1lID0gY2hpbGRfbmFtZShOVUxM LCBub2RlLT5uYW1lLAotCQkJCQkJICAgICAgbm9kZS0+Y2hpbGRyZW4gKyBp KTsKKwkJCWNoYXIgKmNoaWxkbmFtZSA9IGNoaWxkX25hbWUoTlVMTCwgbm9k ZS0+bmFtZSwKKwkJCQkJCSAgICAgbm9kZS0+Y2hpbGRyZW4gKyBpKTsKIAog CQkJaWYgKCFjaGlsZG5hbWUpIHsKIAkJCQlsb2coImNoZWNrX3N0b3JlOiBF Tk9NRU0iKTsKIAkJCQlyZXQgPSBFTk9NRU07CiAJCQkJYnJlYWs7CiAJCQl9 CisKKwkJCWlmIChoYXNodGFibGVfc2VhcmNoKHJlYWNoYWJsZSwgY2hpbGRu YW1lKSkgeworCQkJCWxvZygiY2hlY2tfc3RvcmU6ICclcycgaXMgZHVwbGlj YXRlZCEiLAorCQkJCSAgICBjaGlsZG5hbWUpOworCQkJCWkgPSBybV9jaGls ZF9lbnRyeShub2RlLCBpLCBjaGlsZGxlbik7CisJCQkJZ290byBuZXh0Owor CQkJfQorCiAJCQljaGlsZG5vZGUgPSByZWFkX25vZGUoTlVMTCwgY2hpbGRu YW1lLCBjaGlsZG5hbWUpOwotCQkJCisKIAkJCWlmIChjaGlsZG5vZGUpIHsK LQkJCQlpZiAoaGFzaHRhYmxlX3NlYXJjaChjaGlsZHJlbiwgY2hpbGRuYW1l KSkgewotCQkJCQlsb2coImNoZWNrX3N0b3JlOiAnJXMnIGlzIGR1cGxpY2F0 ZWQhIiwKLQkJCQkJICAgIGNoaWxkbmFtZSk7Ci0JCQkJCWkgPSBybV9jaGls ZF9lbnRyeShub2RlLCBpLCBjaGlsZGxlbik7Ci0JCQkJfQotCQkJCWVsc2Ug ewotCQkJCQlpZiAoIXJlbWVtYmVyX3N0cmluZyhjaGlsZHJlbiwKLQkJCQkJ CQkgICAgIGNoaWxkbmFtZSkpIHsKLQkJCQkJCWxvZygiY2hlY2tfc3RvcmU6 IEVOT01FTSIpOwotCQkJCQkJdGFsbG9jX2ZyZWUoY2hpbGRub2RlKTsKLQkJ CQkJCXRhbGxvY19mcmVlKGNoaWxkbmFtZSk7Ci0JCQkJCQlyZXQgPSBFTk9N RU07Ci0JCQkJCQlicmVhazsKLQkJCQkJfQotCQkJCQlyZXQgPSBjaGVja19z dG9yZV8oY2hpbGRuYW1lLAotCQkJCQkJCSAgIHJlYWNoYWJsZSk7Ci0JCQkJ fQorCQkJCXJldCA9IGNoZWNrX3N0b3JlXyhjaGlsZG5hbWUsIHJlYWNoYWJs ZSk7CiAJCQl9IGVsc2UgaWYgKGVycm5vICE9IEVOT01FTSkgewogCQkJCWxv ZygiY2hlY2tfc3RvcmU6IE5vIGNoaWxkICclcycgZm91bmQhXG4iLAogCQkJ CSAgICBjaGlsZG5hbWUpOwpAQCAtMjQzMSwxOSArMjQxNSwxOCBAQCBzdGF0 aWMgaW50IGNoZWNrX3N0b3JlXyhjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3Qg aGFzaHRhYmxlICpyZWFjaGFibGUpCiAJCQkJcmV0ID0gRU5PTUVNOwogCQkJ fQogCisgbmV4dDoKIAkJCXRhbGxvY19mcmVlKGNoaWxkbm9kZSk7CiAJCQl0 YWxsb2NfZnJlZShjaGlsZG5hbWUpOwogCQkJaSArPSBjaGlsZGxlbiArIDE7 CiAJCX0KIAotCQloYXNodGFibGVfZGVzdHJveShjaGlsZHJlbiwgMCAvKiBE b24ndCBmcmVlIHZhbHVlcyAodGhleSBhcmUKLQkJCQkJCSBhbGwgKHZvaWQg KikxKSAqLyk7CiAJCXRhbGxvY19mcmVlKG5vZGUpOwogCX0gZWxzZSBpZiAo ZXJybm8gIT0gRU5PTUVNKSB7CiAJCS8qIEltcG9zc2libGUsIGJlY2F1c2Ug bm8gZGF0YWJhc2Ugc2hvdWxkIGV2ZXIgYmUgd2l0aG91dCB0aGUKIAkJICAg cm9vdCwgYW5kIG90aGVyd2lzZSwgd2UndmUganVzdCBjaGVja2VkIGluIG91 ciBjYWxsZXIKIAkJICAgKHdoaWNoIG1hZGUgYSByZWN1cnNpdmUgY2FsbCB0 byBnZXQgaGVyZSkuICovCi0JCSAgIAorCiAJCWxvZygiY2hlY2tfc3RvcmU6 IE5vIGNoaWxkICclcycgZm91bmQ6IGltcG9zc2libGUhIiwgbmFtZSk7CiAJ fSBlbHNlIHsKIAkJbG9nKCJjaGVja19zdG9yZTogRU5PTUVNIik7Cg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.15-05.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.15-05.patch" Content-Transfer-Encoding: base64 RnJvbSAzNThjMzkyMzU5YTI5ZDI4NzUxOTA3MzAzZGMxODEwNzNhNDJhYjMz IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHVzZSB0cmVl d2FsayBmb3IgY2hlY2tfc3RvcmUoKQoKSW5zdGVhZCBvZiBkb2luZyBhbiBv cGVuIHRyZWUgd2FsayB1c2luZyBjYWxsIHJlY3Vyc2lvbiwgdXNlCndhbGtf bm9kZV90cmVlKCkgd2hlbiBjaGVja2luZyB0aGUgc3RvcmUgZm9yIGluY29u c2lzdGVuY2llcy4KClRoaXMgd2lsbCByZWR1Y2UgY29kZSBzaXplIGFuZCBh dm9pZCBtYW55IG5lc3RpbmcgbGV2ZWxzIG9mIGZ1bmN0aW9uCmNhbGxzIHdo aWNoIGNvdWxkIHBvdGVudGlhbGx5IGV4aGF1c3QgdGhlIHN0YWNrLgoKVGhp cyBpcyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9y dGVkLWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpT aWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ ClJldmlld2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29t PgoKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3Jl LmMgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IGE0 ODI1NWM2NGNhZC4uZWQ4YmM5YjAyZWQyIDEwMDY0NAotLS0gYS90b29scy94 ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3Jl L3hlbnN0b3JlZF9jb3JlLmMKQEAgLTIzNDUsMTggKzIzNDUsNiBAQCBpbnQg cmVtZW1iZXJfc3RyaW5nKHN0cnVjdCBoYXNodGFibGUgKmhhc2gsIGNvbnN0 IGNoYXIgKnN0cikKIAlyZXR1cm4gaGFzaHRhYmxlX2luc2VydChoYXNoLCBr LCAodm9pZCAqKTEpOwogfQogCi1zdGF0aWMgaW50IHJtX2NoaWxkX2VudHJ5 KHN0cnVjdCBub2RlICpub2RlLCBzaXplX3Qgb2ZmLCBzaXplX3QgbGVuKQot ewotCWlmICghcmVjb3ZlcnkpCi0JCXJldHVybiBvZmY7Ci0KLQlpZiAocmVt b3ZlX2NoaWxkX2VudHJ5KE5VTEwsIG5vZGUsIG9mZikpCi0JCWxvZygiY2hl Y2tfc3RvcmU6IGNoaWxkIGVudHJ5IGNvdWxkIG5vdCBiZSByZW1vdmVkIGZy b20gJyVzJyIsCi0JCSAgICBub2RlLT5uYW1lKTsKLQotCXJldHVybiBvZmYg LSBsZW4gLSAxOwotfQotCiAvKioKICAqIEEgbm9kZSBoYXMgYSBjaGlsZHJl biBmaWVsZCB0aGF0IG5hbWVzIHRoZSBjaGlsZHJlbiBvZiB0aGUgbm9kZSwg c2VwYXJhdGVkCiAgKiBieSBOVUxzLiAgV2UgY2hlY2sgd2hldGhlciB0aGVy ZSBhcmUgZW50cmllcyBpbiB0aGVyZSB0aGF0IGFyZSBkdXBsaWNhdGVkCkBA IC0yMzcwLDcwICsyMzU4LDI5IEBAIHN0YXRpYyBpbnQgcm1fY2hpbGRfZW50 cnkoc3RydWN0IG5vZGUgKm5vZGUsIHNpemVfdCBvZmYsIHNpemVfdCBsZW4p CiAgKiBBcyB3ZSBnbywgd2UgcmVjb3JkIGVhY2ggbm9kZSBpbiB0aGUgZ2l2 ZW4gcmVhY2hhYmxlIGhhc2h0YWJsZS4gIFRoZXNlCiAgKiBlbnRyaWVzIHdp bGwgYmUgdXNlZCBsYXRlciBpbiBjbGVhbl9zdG9yZS4KICAqLwotc3RhdGlj IGludCBjaGVja19zdG9yZV8oY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IGhh c2h0YWJsZSAqcmVhY2hhYmxlKQorc3RhdGljIGludCBjaGVja19zdG9yZV9z dGVwKGNvbnN0IHZvaWQgKmN0eCwgc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4s CisJCQkgICAgc3RydWN0IG5vZGUgKm5vZGUsIHZvaWQgKmFyZykKIHsKLQlz dHJ1Y3Qgbm9kZSAqbm9kZSA9IHJlYWRfbm9kZShOVUxMLCBuYW1lLCBuYW1l KTsKLQlpbnQgcmV0ID0gMDsKLQotCWlmIChub2RlKSB7Ci0JCXNpemVfdCBp ID0gMDsKLQotCQlpZiAoIXJlbWVtYmVyX3N0cmluZyhyZWFjaGFibGUsIG5h bWUpKSB7Ci0JCQlsb2coImNoZWNrX3N0b3JlOiBFTk9NRU0iKTsKLQkJCXJl dHVybiBFTk9NRU07Ci0JCX0KLQotCQl3aGlsZSAoaSA8IG5vZGUtPmNoaWxk bGVuICYmICFyZXQpIHsKLQkJCXN0cnVjdCBub2RlICpjaGlsZG5vZGUgPSBO VUxMOwotCQkJc2l6ZV90IGNoaWxkbGVuID0gc3RybGVuKG5vZGUtPmNoaWxk cmVuICsgaSk7Ci0JCQljaGFyICpjaGlsZG5hbWUgPSBjaGlsZF9uYW1lKE5V TEwsIG5vZGUtPm5hbWUsCi0JCQkJCQkgICAgIG5vZGUtPmNoaWxkcmVuICsg aSk7Ci0KLQkJCWlmICghY2hpbGRuYW1lKSB7Ci0JCQkJbG9nKCJjaGVja19z dG9yZTogRU5PTUVNIik7Ci0JCQkJcmV0ID0gRU5PTUVNOwotCQkJCWJyZWFr OwotCQkJfQotCi0JCQlpZiAoaGFzaHRhYmxlX3NlYXJjaChyZWFjaGFibGUs IGNoaWxkbmFtZSkpIHsKLQkJCQlsb2coImNoZWNrX3N0b3JlOiAnJXMnIGlz IGR1cGxpY2F0ZWQhIiwKLQkJCQkgICAgY2hpbGRuYW1lKTsKLQkJCQlpID0g cm1fY2hpbGRfZW50cnkobm9kZSwgaSwgY2hpbGRsZW4pOwotCQkJCWdvdG8g bmV4dDsKLQkJCX0KLQotCQkJY2hpbGRub2RlID0gcmVhZF9ub2RlKE5VTEws IGNoaWxkbmFtZSwgY2hpbGRuYW1lKTsKKwlzdHJ1Y3QgaGFzaHRhYmxlICpy ZWFjaGFibGUgPSBhcmc7CiAKLQkJCWlmIChjaGlsZG5vZGUpIHsKLQkJCQly ZXQgPSBjaGVja19zdG9yZV8oY2hpbGRuYW1lLCByZWFjaGFibGUpOwotCQkJ fSBlbHNlIGlmIChlcnJubyAhPSBFTk9NRU0pIHsKLQkJCQlsb2coImNoZWNr X3N0b3JlOiBObyBjaGlsZCAnJXMnIGZvdW5kIVxuIiwKLQkJCQkgICAgY2hp bGRuYW1lKTsKLQkJCQlpID0gcm1fY2hpbGRfZW50cnkobm9kZSwgaSwgY2hp bGRsZW4pOwotCQkJfSBlbHNlIHsKLQkJCQlsb2coImNoZWNrX3N0b3JlOiBF Tk9NRU0iKTsKLQkJCQlyZXQgPSBFTk9NRU07Ci0JCQl9CisJaWYgKGhhc2h0 YWJsZV9zZWFyY2gocmVhY2hhYmxlLCAodm9pZCAqKW5vZGUtPm5hbWUpKSB7 CisJCWxvZygiY2hlY2tfc3RvcmU6ICclcycgaXMgZHVwbGljYXRlZCEiLCBu b2RlLT5uYW1lKTsKKwkJcmV0dXJuIHJlY292ZXJ5ID8gV0FMS19UUkVFX1JN X0NISUxERU5UUlkKKwkJCQk6IFdBTEtfVFJFRV9TS0lQX0NISUxEUkVOOwor CX0KIAotIG5leHQ6Ci0JCQl0YWxsb2NfZnJlZShjaGlsZG5vZGUpOwotCQkJ dGFsbG9jX2ZyZWUoY2hpbGRuYW1lKTsKLQkJCWkgKz0gY2hpbGRsZW4gKyAx OwotCQl9CisJaWYgKCFyZW1lbWJlcl9zdHJpbmcocmVhY2hhYmxlLCBub2Rl LT5uYW1lKSkKKwkJcmV0dXJuIFdBTEtfVFJFRV9FUlJPUl9TVE9QOwogCi0J CXRhbGxvY19mcmVlKG5vZGUpOwotCX0gZWxzZSBpZiAoZXJybm8gIT0gRU5P TUVNKSB7Ci0JCS8qIEltcG9zc2libGUsIGJlY2F1c2Ugbm8gZGF0YWJhc2Ug c2hvdWxkIGV2ZXIgYmUgd2l0aG91dCB0aGUKLQkJICAgcm9vdCwgYW5kIG90 aGVyd2lzZSwgd2UndmUganVzdCBjaGVja2VkIGluIG91ciBjYWxsZXIKLQkJ ICAgKHdoaWNoIG1hZGUgYSByZWN1cnNpdmUgY2FsbCB0byBnZXQgaGVyZSku ICovCisJcmV0dXJuIFdBTEtfVFJFRV9PSzsKK30KIAotCQlsb2coImNoZWNr X3N0b3JlOiBObyBjaGlsZCAnJXMnIGZvdW5kOiBpbXBvc3NpYmxlISIsIG5h bWUpOwotCX0gZWxzZSB7Ci0JCWxvZygiY2hlY2tfc3RvcmU6IEVOT01FTSIp OwotCQlyZXQgPSBFTk9NRU07Ci0JfQorc3RhdGljIGludCBjaGVja19zdG9y ZV9lbm9lbnQoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlvbiAq Y29ubiwKKwkJCSAgICAgIHN0cnVjdCBub2RlICpwYXJlbnQsIGNoYXIgKm5h bWUsIHZvaWQgKmFyZykKK3sKKwlsb2coImNoZWNrX3N0b3JlOiBub2RlICcl cycgbm90IGZvdW5kIiwgbmFtZSk7CiAKLQlyZXR1cm4gcmV0OworCXJldHVy biByZWNvdmVyeSA/IFdBTEtfVFJFRV9STV9DSElMREVOVFJZIDogV0FMS19U UkVFX09LOwogfQogCiAKQEAgLTI0ODIsMjQgKzI0MjksMjggQEAgc3RhdGlj IHZvaWQgY2xlYW5fc3RvcmUoc3RydWN0IGhhc2h0YWJsZSAqcmVhY2hhYmxl KQogCiB2b2lkIGNoZWNrX3N0b3JlKHZvaWQpCiB7Ci0JY2hhciAqIHJvb3Qg PSB0YWxsb2Nfc3RyZHVwKE5VTEwsICIvIik7Ci0Jc3RydWN0IGhhc2h0YWJs ZSAqIHJlYWNoYWJsZSA9Ci0JCWNyZWF0ZV9oYXNodGFibGUoMTYsIGhhc2hf ZnJvbV9rZXlfZm4sIGtleXNfZXF1YWxfZm4pOwotIAorCXN0cnVjdCBoYXNo dGFibGUgKnJlYWNoYWJsZTsKKwlzdHJ1Y3Qgd2Fsa19mdW5jcyB3YWxrZnVu Y3MgPSB7CisJCS5lbnRlciA9IGNoZWNrX3N0b3JlX3N0ZXAsCisJCS5lbm9l bnQgPSBjaGVja19zdG9yZV9lbm9lbnQsCisJfTsKKworCXJlYWNoYWJsZSA9 IGNyZWF0ZV9oYXNodGFibGUoMTYsIGhhc2hfZnJvbV9rZXlfZm4sIGtleXNf ZXF1YWxfZm4pOwogCWlmICghcmVhY2hhYmxlKSB7CiAJCWxvZygiY2hlY2tf c3RvcmU6IEVOT01FTSIpOwogCQlyZXR1cm47CiAJfQogCiAJbG9nKCJDaGVj a2luZyBzdG9yZSAuLi4iKTsKLQlpZiAoIWNoZWNrX3N0b3JlXyhyb290LCBy ZWFjaGFibGUpICYmCi0JICAgICFjaGVja190cmFuc2FjdGlvbnMocmVhY2hh YmxlKSkKKwlpZiAod2Fsa19ub2RlX3RyZWUoTlVMTCwgTlVMTCwgIi8iLCAm d2Fsa2Z1bmNzLCByZWFjaGFibGUpKSB7CisJCWlmIChlcnJubyA9PSBFTk9N RU0pCisJCQlsb2coImNoZWNrX3N0b3JlOiBFTk9NRU0iKTsKKwl9IGVsc2Ug aWYgKCFjaGVja190cmFuc2FjdGlvbnMocmVhY2hhYmxlKSkKIAkJY2xlYW5f c3RvcmUocmVhY2hhYmxlKTsKIAlsb2coIkNoZWNraW5nIHN0b3JlIGNvbXBs ZXRlLiIpOwogCiAJaGFzaHRhYmxlX2Rlc3Ryb3kocmVhY2hhYmxlLCAwIC8q IERvbid0IGZyZWUgdmFsdWVzICh0aGV5IGFyZSBhbGwKIAkJCQkJICAodm9p ZCAqKTEpICovKTsKLQl0YWxsb2NfZnJlZShyb290KTsKIH0KIAogCg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.15-06.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.15-06.patch" Content-Transfer-Encoding: base64 RnJvbSBjNDc4MjhjNzI4NjQ3OGE5ZGMwNDAxMGFlNDE5MWM0YzAyM2YyZmE4 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHVzZSB0cmVl d2FsayBmb3IgZGVsZXRpbmcgbm9kZXMKCkluc3RlYWQgb2YgZG9pbmcgYW4g b3BlbiB0cmVlIHdhbGsgdXNpbmcgY2FsbCByZWN1cnNpb24sIHVzZQp3YWxr X25vZGVfdHJlZSgpIHdoZW4gZGVsZXRpbmcgYSBzdWItdHJlZSBvZiBub2Rl cy4KClRoaXMgd2lsbCByZWR1Y2UgY29kZSBzaXplIGFuZCBhdm9pZCBtYW55 IG5lc3RpbmcgbGV2ZWxzIG9mIGZ1bmN0aW9uCmNhbGxzIHdoaWNoIGNvdWxk IHBvdGVudGlhbGx5IGV4aGF1c3QgdGhlIHN0YWNrLgoKVGhpcyBpcyBwYXJ0 IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9ydGVkLWJ5OiBK dWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpTaWduZWQtb2Zm LWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+CkFja2VkLWJ5 OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoKZGlmZiAtLWdp dCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMgYi90b29scy94 ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IGVkOGJjOWIwMmVkMi4u OTU3NjQxMTc1N2ZhIDEwMDY0NAotLS0gYS90b29scy94ZW5zdG9yZS94ZW5z dG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9j b3JlLmMKQEAgLTEzMDAsMjEgKzEzMDAsNiBAQCBzdGF0aWMgaW50IGRvX3Jl YWQoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwK IAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIHZvaWQgZGVsZXRlX25vZGVfc2lu Z2xlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBzdHJ1Y3Qgbm9kZSAqbm9k ZSkKLXsKLQlUREJfREFUQSBrZXk7Ci0KLQlpZiAoYWNjZXNzX25vZGUoY29u biwgbm9kZSwgTk9ERV9BQ0NFU1NfREVMRVRFLCAma2V5KSkKLQkJcmV0dXJu OwotCi0JaWYgKGRvX3RkYl9kZWxldGUoY29ubiwgJmtleSwgJm5vZGUtPmFj YykgIT0gMCkgewotCQljb3JydXB0KGNvbm4sICJDb3VsZCBub3QgZGVsZXRl ICclcyciLCBub2RlLT5uYW1lKTsKLQkJcmV0dXJuOwotCX0KLQotCWRvbWFp bl9lbnRyeV9kZWMoY29ubiwgbm9kZSk7Ci19Ci0KIC8qIE11c3Qgbm90IGJl IC8gKi8KIHN0YXRpYyBjaGFyICpiYXNlbmFtZShjb25zdCBjaGFyICpuYW1l KQogewpAQCAtMTU4NSw2OSArMTU3MCw1OSBAQCBzdGF0aWMgaW50IHJlbW92 ZV9jaGlsZF9lbnRyeShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgc3RydWN0 IG5vZGUgKm5vZGUsCiAJcmV0dXJuIHdyaXRlX25vZGUoY29ubiwgbm9kZSwg dHJ1ZSk7CiB9CiAKLXN0YXRpYyB2b2lkIGRlbGV0ZV9jaGlsZChzdHJ1Y3Qg Y29ubmVjdGlvbiAqY29ubiwKLQkJCSBzdHJ1Y3Qgbm9kZSAqbm9kZSwgY29u c3QgY2hhciAqY2hpbGRuYW1lKQorc3RhdGljIGludCBkZWxldGVfY2hpbGQo c3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sCisJCQlzdHJ1Y3Qgbm9kZSAqbm9k ZSwgY29uc3QgY2hhciAqY2hpbGRuYW1lKQogewogCXVuc2lnbmVkIGludCBp OwogCiAJZm9yIChpID0gMDsgaSA8IG5vZGUtPmNoaWxkbGVuOyBpICs9IHN0 cmxlbihub2RlLT5jaGlsZHJlbitpKSArIDEpIHsKIAkJaWYgKHN0cmVxKG5v ZGUtPmNoaWxkcmVuK2ksIGNoaWxkbmFtZSkpIHsKLQkJCWlmIChyZW1vdmVf Y2hpbGRfZW50cnkoY29ubiwgbm9kZSwgaSkpCi0JCQkJY29ycnVwdChjb25u LCAiQ2FuJ3QgdXBkYXRlIHBhcmVudCBub2RlICclcyciLAotCQkJCQlub2Rl LT5uYW1lKTsKLQkJCXJldHVybjsKKwkJCWVycm5vID0gcmVtb3ZlX2NoaWxk X2VudHJ5KGNvbm4sIG5vZGUsIGkpID8gRUlPIDogMDsKKwkJCXJldHVybiBl cnJubzsKIAkJfQogCX0KIAljb3JydXB0KGNvbm4sICJDYW4ndCBmaW5kIGNo aWxkICclcycgaW4gJXMiLCBjaGlsZG5hbWUsIG5vZGUtPm5hbWUpOworCisJ ZXJybm8gPSBFSU87CisJcmV0dXJuIGVycm5vOwogfQogCi1zdGF0aWMgaW50 IGRlbGV0ZV9ub2RlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBjb25zdCB2 b2lkICpjdHgsCi0JCSAgICAgICBzdHJ1Y3Qgbm9kZSAqcGFyZW50LCBzdHJ1 Y3Qgbm9kZSAqbm9kZSwgYm9vbCB3YXRjaF9leGFjdCkKK3N0YXRpYyBpbnQg ZGVsbm9kZV9zdWIoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlv biAqY29ubiwKKwkJICAgICAgIHN0cnVjdCBub2RlICpub2RlLCB2b2lkICph cmcpCiB7Ci0JY2hhciAqbmFtZTsKKwljb25zdCBjaGFyICpyb290ID0gYXJn OworCWJvb2wgd2F0Y2hfZXhhY3Q7CisJaW50IHJldDsKKwlUREJfREFUQSBr ZXk7CiAKLQkvKiBEZWxldGUgY2hpbGRyZW4uICovCi0Jd2hpbGUgKG5vZGUt PmNoaWxkbGVuKSB7Ci0JCXN0cnVjdCBub2RlICpjaGlsZDsKKwkvKiBBbnkg ZXJyb3IgaGVyZSB3aWxsIHByb2JhYmx5IGJlIHJlcGVhdGVkIGZvciBhbGwg Zm9sbG93aW5nIGNhbGxzLiAqLworCXJldCA9IGFjY2Vzc19ub2RlKGNvbm4s IG5vZGUsIE5PREVfQUNDRVNTX0RFTEVURSwgJmtleSk7CisJaWYgKHJldCA+ IDApCisJCXJldHVybiBXQUxLX1RSRUVfU1VDQ0VTU19TVE9QOwogCi0JCW5h bWUgPSB0YWxsb2NfYXNwcmludGYobm9kZSwgIiVzLyVzIiwgbm9kZS0+bmFt ZSwKLQkJCQkgICAgICAgbm9kZS0+Y2hpbGRyZW4pOwotCQljaGlsZCA9IG5h bWUgPyByZWFkX25vZGUoY29ubiwgbm9kZSwgbmFtZSkgOiBOVUxMOwotCQlp ZiAoY2hpbGQpIHsKLQkJCWlmIChkZWxldGVfbm9kZShjb25uLCBjdHgsIG5v ZGUsIGNoaWxkLCB0cnVlKSkKLQkJCQlyZXR1cm4gZXJybm87Ci0JCX0gZWxz ZSB7Ci0JCQl0cmFjZSgiZGVsZXRlX25vZGU6IEVycm9yIGRlbGV0aW5nIGNo aWxkICclcy8lcychXG4iLAotCQkJICAgICAgbm9kZS0+bmFtZSwgbm9kZS0+ Y2hpbGRyZW4pOwotCQkJLyogUXVpdCBkZWxldGluZy4gKi8KLQkJCWVycm5v ID0gRU5PTUVNOwotCQkJcmV0dXJuIGVycm5vOwotCQl9Ci0JCXRhbGxvY19m cmVlKG5hbWUpOwotCX0KKwkvKiBJbiBjYXNlIG9mIGVycm9yIHN0b3AgdGhl IHdhbGsuICovCisJaWYgKCFyZXQgJiYgZG9fdGRiX2RlbGV0ZShjb25uLCAm a2V5LCAmbm9kZS0+YWNjKSkKKwkJcmV0dXJuIFdBTEtfVFJFRV9TVUNDRVNT X1NUT1A7CiAKIAkvKgogCSAqIEZpcmUgdGhlIHdhdGNoZXMgbm93LCB3aGVu IHdlIGNhbiBzdGlsbCBzZWUgdGhlIG5vZGUgcGVybWlzc2lvbnMuCiAJICog VGhpcyBmaW5lIGFzIHdlIGFyZSBzaW5nbGUgdGhyZWFkZWQgYW5kIHRoZSBu ZXh0IHBvc3NpYmxlIHJlYWQgd2lsbAogCSAqIGJlIGhhbmRsZWQgb25seSBh ZnRlciB0aGUgbm9kZSBoYXMgYmVlbiByZWFsbHkgcmVtb3ZlZC4KLQkgKi8K KwkqLworCXdhdGNoX2V4YWN0ID0gc3RyY21wKHJvb3QsIG5vZGUtPm5hbWUp OwogCWZpcmVfd2F0Y2hlcyhjb25uLCBjdHgsIG5vZGUtPm5hbWUsIG5vZGUs IHdhdGNoX2V4YWN0LCBOVUxMKTsKLQlkZWxldGVfbm9kZV9zaW5nbGUoY29u biwgbm9kZSk7Ci0JZGVsZXRlX2NoaWxkKGNvbm4sIHBhcmVudCwgYmFzZW5h bWUobm9kZS0+bmFtZSkpOwotCXRhbGxvY19mcmVlKG5vZGUpOwogCi0JcmV0 dXJuIDA7CisJZG9tYWluX2VudHJ5X2RlYyhjb25uLCBub2RlKTsKKworCXJl dHVybiBXQUxLX1RSRUVfUk1fQ0hJTERFTlRSWTsKIH0KIAotc3RhdGljIGlu dCBfcm0oc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIGNvbnN0IHZvaWQgKmN0 eCwgc3RydWN0IG5vZGUgKm5vZGUsCi0JICAgICAgIGNvbnN0IGNoYXIgKm5h bWUpCitzdGF0aWMgaW50IF9ybShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwg Y29uc3Qgdm9pZCAqY3R4LCBjb25zdCBjaGFyICpuYW1lKQogewotCS8qCi0J ICogRGVsZXRpbmcgbm9kZSBieSBub2RlLCBzbyB0aGUgcmVzdWx0IGlzIGFs d2F5cyBjb25zaXN0ZW50IGV2ZW4gaW4KLQkgKiBjYXNlIG9mIGEgZmFpbHVy ZS4KLQkgKi8KIAlzdHJ1Y3Qgbm9kZSAqcGFyZW50OwogCWNoYXIgKnBhcmVu dG5hbWUgPSBnZXRfcGFyZW50KGN0eCwgbmFtZSk7CisJc3RydWN0IHdhbGtf ZnVuY3Mgd2Fsa2Z1bmNzID0geyAuZXhpdCA9IGRlbG5vZGVfc3ViIH07CisJ aW50IHJldDsKIAogCWlmICghcGFyZW50bmFtZSkKIAkJcmV0dXJuIGVycm5v OwpAQCAtMTY1NSw5ICsxNjMwLDIxIEBAIHN0YXRpYyBpbnQgX3JtKHN0cnVj dCBjb25uZWN0aW9uICpjb25uLCBjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBu b2RlICpub2RlLAogCXBhcmVudCA9IHJlYWRfbm9kZShjb25uLCBjdHgsIHBh cmVudG5hbWUpOwogCWlmICghcGFyZW50KQogCQlyZXR1cm4gcmVhZF9ub2Rl X2Nhbl9wcm9wYWdhdGVfZXJybm8oKSA/IGVycm5vIDogRUlOVkFMOwotCW5v ZGUtPnBhcmVudCA9IHBhcmVudDsKIAotCXJldHVybiBkZWxldGVfbm9kZShj b25uLCBjdHgsIHBhcmVudCwgbm9kZSwgZmFsc2UpOworCXJldCA9IHdhbGtf bm9kZV90cmVlKGN0eCwgY29ubiwgbmFtZSwgJndhbGtmdW5jcywgKHZvaWQg KiluYW1lKTsKKwlpZiAocmV0IDwgMCkgeworCQlpZiAocmV0ID09IFdBTEtf VFJFRV9FUlJPUl9TVE9QKSB7CisJCQljb3JydXB0KGNvbm4sICJlcnJvciB3 aGVuIGRlbGV0aW5nIHN1Yi1ub2RlcyBvZiAlc1xuIiwKKwkJCQluYW1lKTsK KwkJCWVycm5vID0gRUlPOworCQl9CisJCXJldHVybiBlcnJubzsKKwl9CisK KwlpZiAoZGVsZXRlX2NoaWxkKGNvbm4sIHBhcmVudCwgYmFzZW5hbWUobmFt ZSkpKQorCQlyZXR1cm4gZXJybm87CisKKwlyZXR1cm4gMDsKIH0KIAogCkBA IC0xNjk0LDcgKzE2ODEsNyBAQCBzdGF0aWMgaW50IGRvX3JtKGNvbnN0IHZv aWQgKmN0eCwgc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sCiAJaWYgKHN0cmVx KG5hbWUsICIvIikpCiAJCXJldHVybiBFSU5WQUw7CiAKLQlyZXQgPSBfcm0o Y29ubiwgY3R4LCBub2RlLCBuYW1lKTsKKwlyZXQgPSBfcm0oY29ubiwgY3R4 LCBuYW1lKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.15-07.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.15-07.patch" Content-Transfer-Encoding: base64 RnJvbSBhNGEwY2Q0MzVhMmQ3NGZjODkwMWNjNzk3OWNjMzc3NDUzODlmOTZl IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHVzZSB0cmVl d2FsayBmb3IgY3JlYXRpbmcgbm9kZSByZWNvcmRzCgpJbnN0ZWFkIG9mIGRv aW5nIGFuIG9wZW4gdHJlZSB3YWxrIHVzaW5nIGNhbGwgcmVjdXJzaW9uLCB1 c2UKd2Fsa19ub2RlX3RyZWUoKSB3aGVuIGNyZWF0aW5nIHRoZSBub2RlIHJl Y29yZHMgZHVyaW5nIGEgbGl2ZSB1cGRhdGUuCgpUaGlzIHdpbGwgcmVkdWNl IGNvZGUgc2l6ZSBhbmQgYXZvaWQgbWFueSBuZXN0aW5nIGxldmVscyBvZiBm dW5jdGlvbgpjYWxscyB3aGljaCBjb3VsZCBwb3RlbnRpYWxseSBleGhhdXN0 IHRoZSBzdGFjay4KClRoaXMgaXMgcGFydCBvZiBYU0EtNDE4IC8gQ1ZFLTIw MjItNDIzMjEuCgpSZXBvcnRlZC1ieTogSnVsaWVuIEdyYWxsIDxkdnJhYmVs QGFtYXpvbi5jby51az4KU2lnbmVkLW9mZi1ieTogSnVlcmdlbiBHcm9zcyA8 amdyb3NzQHN1c2UuY29tPgpSZXZpZXdlZC1ieTogSnVsaWVuIEdyYWxsIDxq Z3JhbGxAYW1hem9uLmNvbT4KCmRpZmYgLS1naXQgYS90b29scy94ZW5zdG9y ZS94ZW5zdG9yZWRfY29yZS5jIGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVk X2NvcmUuYwppbmRleCA5NTc2NDExNzU3ZmEuLmU4Y2RmZWVmNTBjNyAxMDA2 NDQKLS0tIGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYworKysg Yi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCkBAIC0yOTkwLDEz MiArMjk5MCwxMDkgQEAgY29uc3QgY2hhciAqZHVtcF9zdGF0ZV9idWZmZXJl ZF9kYXRhKEZJTEUgKmZwLCBjb25zdCBzdHJ1Y3QgY29ubmVjdGlvbiAqYywK IAlyZXR1cm4gTlVMTDsKIH0KIAotY29uc3QgY2hhciAqZHVtcF9zdGF0ZV9u b2RlX3Blcm1zKEZJTEUgKmZwLCBzdHJ1Y3QgeHNfc3RhdGVfbm9kZSAqc24s Ci0JCQkJICBjb25zdCBzdHJ1Y3QgeHNfcGVybWlzc2lvbnMgKnBlcm1zLAor Y29uc3QgY2hhciAqZHVtcF9zdGF0ZV9ub2RlX3Blcm1zKEZJTEUgKmZwLCBj b25zdCBzdHJ1Y3QgeHNfcGVybWlzc2lvbnMgKnBlcm1zLAogCQkJCSAgdW5z aWduZWQgaW50IG5fcGVybXMpCiB7CiAJdW5zaWduZWQgaW50IHA7CiAKIAlm b3IgKHAgPSAwOyBwIDwgbl9wZXJtczsgcCsrKSB7CisJCXN0cnVjdCB4c19z dGF0ZV9ub2RlX3Blcm0gc3A7CisKIAkJc3dpdGNoICgoaW50KXBlcm1zW3Bd LnBlcm1zICYgflhTX1BFUk1fSUdOT1JFKSB7CiAJCWNhc2UgWFNfUEVSTV9S RUFEOgotCQkJc24tPnBlcm1zW3BdLmFjY2VzcyA9IFhTX1NUQVRFX05PREVf UEVSTV9SRUFEOworCQkJc3AuYWNjZXNzID0gWFNfU1RBVEVfTk9ERV9QRVJN X1JFQUQ7CiAJCQlicmVhazsKIAkJY2FzZSBYU19QRVJNX1dSSVRFOgotCQkJ c24tPnBlcm1zW3BdLmFjY2VzcyA9IFhTX1NUQVRFX05PREVfUEVSTV9XUklU RTsKKwkJCXNwLmFjY2VzcyA9IFhTX1NUQVRFX05PREVfUEVSTV9XUklURTsK IAkJCWJyZWFrOwogCQljYXNlIFhTX1BFUk1fUkVBRCB8IFhTX1BFUk1fV1JJ VEU6Ci0JCQlzbi0+cGVybXNbcF0uYWNjZXNzID0gWFNfU1RBVEVfTk9ERV9Q RVJNX0JPVEg7CisJCQlzcC5hY2Nlc3MgPSBYU19TVEFURV9OT0RFX1BFUk1f Qk9USDsKIAkJCWJyZWFrOwogCQlkZWZhdWx0OgotCQkJc24tPnBlcm1zW3Bd LmFjY2VzcyA9IFhTX1NUQVRFX05PREVfUEVSTV9OT05FOworCQkJc3AuYWNj ZXNzID0gWFNfU1RBVEVfTk9ERV9QRVJNX05PTkU7CiAJCQlicmVhazsKIAkJ fQotCQlzbi0+cGVybXNbcF0uZmxhZ3MgPSAocGVybXNbcF0ucGVybXMgJiBY U19QRVJNX0lHTk9SRSkKKwkJc3AuZmxhZ3MgPSAocGVybXNbcF0ucGVybXMg JiBYU19QRVJNX0lHTk9SRSkKIAkJCQkgICAgID8gWFNfU1RBVEVfTk9ERV9Q RVJNX0lHTk9SRSA6IDA7Ci0JCXNuLT5wZXJtc1twXS5kb21pZCA9IHBlcm1z W3BdLmlkOwotCX0KKwkJc3AuZG9taWQgPSBwZXJtc1twXS5pZDsKIAotCWlm IChmd3JpdGUoc24tPnBlcm1zLCBzaXplb2YoKnNuLT5wZXJtcyksIG5fcGVy bXMsIGZwKSAhPSBuX3Blcm1zKQotCQlyZXR1cm4gIkR1bXAgbm9kZSBwZXJt aXNzaW9ucyBlcnJvciI7CisJCWlmIChmd3JpdGUoJnNwLCBzaXplb2Yoc3Ap LCAxLCBmcCkgIT0gMSkKKwkJCXJldHVybiAiRHVtcCBub2RlIHBlcm1pc3Np b25zIGVycm9yIjsKKwl9CiAKIAlyZXR1cm4gTlVMTDsKIH0KIAotc3RhdGlj IGNvbnN0IGNoYXIgKmR1bXBfc3RhdGVfbm9kZV90cmVlKEZJTEUgKmZwLCBj aGFyICpwYXRoKQorc3RydWN0IGR1bXBfbm9kZV9kYXRhIHsKKwlGSUxFICpm cDsKKwljb25zdCBjaGFyICplcnI7Cit9OworCitzdGF0aWMgaW50IGR1bXBf c3RhdGVfbm9kZV9lcnIoc3RydWN0IGR1bXBfbm9kZV9kYXRhICpkYXRhLCBj b25zdCBjaGFyICplcnIpCit7CisJZGF0YS0+ZXJyID0gZXJyOworCXJldHVy biBXQUxLX1RSRUVfRVJST1JfU1RPUDsKK30KKworc3RhdGljIGludCBkdW1w X3N0YXRlX25vZGUoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlv biAqY29ubiwKKwkJCSAgIHN0cnVjdCBub2RlICpub2RlLCB2b2lkICphcmcp CiB7Ci0JdW5zaWduZWQgaW50IHBhdGhsZW4sIGNoaWxkbGVuLCBwID0gMDsK KwlzdHJ1Y3QgZHVtcF9ub2RlX2RhdGEgKmRhdGEgPSBhcmc7CisJRklMRSAq ZnAgPSBkYXRhLT5mcDsKKwl1bnNpZ25lZCBpbnQgcGF0aGxlbjsKIAlzdHJ1 Y3QgeHNfc3RhdGVfcmVjb3JkX2hlYWRlciBoZWFkOwogCXN0cnVjdCB4c19z dGF0ZV9ub2RlIHNuOwotCVREQl9EQVRBIGtleSwgZGF0YTsKLQljb25zdCBz dHJ1Y3QgeHNfdGRiX3JlY29yZF9oZHIgKmhkcjsKLQljb25zdCBjaGFyICpj aGlsZDsKIAljb25zdCBjaGFyICpyZXQ7CiAKLQlwYXRobGVuID0gc3RybGVu KHBhdGgpICsgMTsKLQotCXNldF90ZGJfa2V5KHBhdGgsICZrZXkpOwotCWRh dGEgPSB0ZGJfZmV0Y2godGRiX2N0eCwga2V5KTsKLQlpZiAoZGF0YS5kcHRy ID09IE5VTEwpCi0JCXJldHVybiAiRXJyb3IgcmVhZGluZyBub2RlIjsKLQot CS8qIENsZWFuIHVwIGluIGNhc2Ugb2YgZmFpbHVyZS4gKi8KLQl0YWxsb2Nf c3RlYWwocGF0aCwgZGF0YS5kcHRyKTsKLQotCWhkciA9ICh2b2lkICopZGF0 YS5kcHRyOworCXBhdGhsZW4gPSBzdHJsZW4obm9kZS0+bmFtZSkgKyAxOwog CiAJaGVhZC50eXBlID0gWFNfU1RBVEVfVFlQRV9OT0RFOwogCWhlYWQubGVu Z3RoID0gc2l6ZW9mKHNuKTsKIAlzbi5jb25uX2lkID0gMDsKIAlzbi50YV9p ZCA9IDA7CiAJc24udGFfYWNjZXNzID0gMDsKLQlzbi5wZXJtX24gPSBoZHIt Pm51bV9wZXJtczsKKwlzbi5wZXJtX24gPSBub2RlLT5wZXJtcy5udW07CiAJ c24ucGF0aF9sZW4gPSBwYXRobGVuOwotCXNuLmRhdGFfbGVuID0gaGRyLT5k YXRhbGVuOwotCWhlYWQubGVuZ3RoICs9IGhkci0+bnVtX3Blcm1zICogc2l6 ZW9mKCpzbi5wZXJtcyk7CisJc24uZGF0YV9sZW4gPSBub2RlLT5kYXRhbGVu OworCWhlYWQubGVuZ3RoICs9IG5vZGUtPnBlcm1zLm51bSAqIHNpemVvZigq c24ucGVybXMpOwogCWhlYWQubGVuZ3RoICs9IHBhdGhsZW47Ci0JaGVhZC5s ZW5ndGggKz0gaGRyLT5kYXRhbGVuOworCWhlYWQubGVuZ3RoICs9IG5vZGUt PmRhdGFsZW47CiAJaGVhZC5sZW5ndGggPSBST1VORFVQKGhlYWQubGVuZ3Ro LCAzKTsKIAogCWlmIChmd3JpdGUoJmhlYWQsIHNpemVvZihoZWFkKSwgMSwg ZnApICE9IDEpCi0JCXJldHVybiAiRHVtcCBub2RlIHN0YXRlIGVycm9yIjsK KwkJcmV0dXJuIGR1bXBfc3RhdGVfbm9kZV9lcnIoZGF0YSwgIkR1bXAgbm9k ZSBoZWFkIGVycm9yIik7CiAJaWYgKGZ3cml0ZSgmc24sIHNpemVvZihzbiks IDEsIGZwKSAhPSAxKQotCQlyZXR1cm4gIkR1bXAgbm9kZSBzdGF0ZSBlcnJv ciI7CisJCXJldHVybiBkdW1wX3N0YXRlX25vZGVfZXJyKGRhdGEsICJEdW1w IG5vZGUgc3RhdGUgZXJyb3IiKTsKIAotCXJldCA9IGR1bXBfc3RhdGVfbm9k ZV9wZXJtcyhmcCwgJnNuLCBoZHItPnBlcm1zLCBoZHItPm51bV9wZXJtcyk7 CisJcmV0ID0gZHVtcF9zdGF0ZV9ub2RlX3Blcm1zKGZwLCBub2RlLT5wZXJt cy5wLCBub2RlLT5wZXJtcy5udW0pOwogCWlmIChyZXQpCi0JCXJldHVybiBy ZXQ7CisJCXJldHVybiBkdW1wX3N0YXRlX25vZGVfZXJyKGRhdGEsIHJldCk7 CiAKLQlpZiAoZndyaXRlKHBhdGgsIHBhdGhsZW4sIDEsIGZwKSAhPSAxKQot CQlyZXR1cm4gIkR1bXAgbm9kZSBwYXRoIGVycm9yIjsKLQlpZiAoaGRyLT5k YXRhbGVuICYmCi0JICAgIGZ3cml0ZShoZHItPnBlcm1zICsgaGRyLT5udW1f cGVybXMsIGhkci0+ZGF0YWxlbiwgMSwgZnApICE9IDEpCi0JCXJldHVybiAi RHVtcCBub2RlIGRhdGEgZXJyb3IiOworCWlmIChmd3JpdGUobm9kZS0+bmFt ZSwgcGF0aGxlbiwgMSwgZnApICE9IDEpCisJCXJldHVybiBkdW1wX3N0YXRl X25vZGVfZXJyKGRhdGEsICJEdW1wIG5vZGUgcGF0aCBlcnJvciIpOworCisJ aWYgKG5vZGUtPmRhdGFsZW4gJiYgZndyaXRlKG5vZGUtPmRhdGEsIG5vZGUt PmRhdGFsZW4sIDEsIGZwKSAhPSAxKQorCQlyZXR1cm4gZHVtcF9zdGF0ZV9u b2RlX2VycihkYXRhLCAiRHVtcCBub2RlIGRhdGEgZXJyb3IiKTsKIAogCXJl dCA9IGR1bXBfc3RhdGVfYWxpZ24oZnApOwogCWlmIChyZXQpCi0JCXJldHVy biByZXQ7Ci0KLQljaGlsZCA9IChjaGFyICopKGhkci0+cGVybXMgKyBoZHIt Pm51bV9wZXJtcykgKyBoZHItPmRhdGFsZW47Ci0KLQkvKgotCSAqIFVzZSBw YXRoIGZvciBjb25zdHJ1Y3RpbmcgY2hpbGRyZW4gcGF0aHMuCi0JICogQXMg d2UgZG9uJ3Qgd3JpdGUgb3V0IG5vZGVzIHdpdGhvdXQgaGF2aW5nIHdyaXR0 ZW4gdGhlaXIgcGFyZW50Ci0JICogYWxyZWFkeSB3ZSB3aWxsIG5ldmVyIGNs b2JiZXIgYSBwYXJ0IG9mIHRoZSBwYXRoIHdlJ2xsIG5lZWQgbGF0ZXIuCi0J ICovCi0JcGF0aGxlbi0tOwotCWlmIChwYXRoW3BhdGhsZW4gLSAxXSAhPSAn LycpIHsKLQkJcGF0aFtwYXRobGVuXSA9ICcvJzsKLQkJcGF0aGxlbisrOwot CX0KLQl3aGlsZSAocCA8IGhkci0+Y2hpbGRsZW4pIHsKLQkJY2hpbGRsZW4g PSBzdHJsZW4oY2hpbGQpICsgMTsKLQkJaWYgKHBhdGhsZW4gKyBjaGlsZGxl biA+IFhFTlNUT1JFX0FCU19QQVRIX01BWCkKLQkJCXJldHVybiAiRHVtcCBu b2RlIHBhdGggbGVuZ3RoIGVycm9yIjsKLQkJc3RyY3B5KHBhdGggKyBwYXRo bGVuLCBjaGlsZCk7Ci0JCXJldCA9IGR1bXBfc3RhdGVfbm9kZV90cmVlKGZw LCBwYXRoKTsKLQkJaWYgKHJldCkKLQkJCXJldHVybiByZXQ7Ci0JCXAgKz0g Y2hpbGRsZW47Ci0JCWNoaWxkICs9IGNoaWxkbGVuOwotCX0KLQotCXRhbGxv Y19mcmVlKGRhdGEuZHB0cik7CisJCXJldHVybiBkdW1wX3N0YXRlX25vZGVf ZXJyKGRhdGEsIHJldCk7CiAKLQlyZXR1cm4gTlVMTDsKKwlyZXR1cm4gV0FM S19UUkVFX09LOwogfQogCiBjb25zdCBjaGFyICpkdW1wX3N0YXRlX25vZGVz KEZJTEUgKmZwLCBjb25zdCB2b2lkICpjdHgpCiB7Ci0JY2hhciAqcGF0aDsK LQotCXBhdGggPSB0YWxsb2Nfc2l6ZShjdHgsIFhFTlNUT1JFX0FCU19QQVRI X01BWCk7Ci0JaWYgKCFwYXRoKQotCQlyZXR1cm4gIlBhdGggYnVmZmVyIGFs bG9jYXRpb24gZXJyb3IiOworCXN0cnVjdCBkdW1wX25vZGVfZGF0YSBkYXRh ID0geworCQkuZnAgPSBmcCwKKwkJLmVyciA9ICJEdW1wIG5vZGUgd2FsayBl cnJvciIKKwl9OworCXN0cnVjdCB3YWxrX2Z1bmNzIHdhbGtmdW5jcyA9IHsg LmVudGVyID0gZHVtcF9zdGF0ZV9ub2RlIH07CiAKLQlzdHJjcHkocGF0aCwg Ii8iKTsKKwlpZiAod2Fsa19ub2RlX3RyZWUoY3R4LCBOVUxMLCAiLyIsICZ3 YWxrZnVuY3MsICZkYXRhKSkKKwkJcmV0dXJuIGRhdGEuZXJyOwogCi0JcmV0 dXJuIGR1bXBfc3RhdGVfbm9kZV90cmVlKGZwLCBwYXRoKTsKKwlyZXR1cm4g TlVMTDsKIH0KIAogdm9pZCByZWFkX3N0YXRlX2dsb2JhbChjb25zdCB2b2lk ICpjdHgsIGNvbnN0IHZvaWQgKnN0YXRlKQpkaWZmIC0tZ2l0IGEvdG9vbHMv eGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuaCBiL3Rvb2xzL3hlbnN0b3JlL3hl bnN0b3JlZF9jb3JlLmgKaW5kZXggZjBmZDhjMzUyODU3Li4zMTkwNDk0YmJl YjUgMTAwNjQ0Ci0tLSBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3Jl LmgKKysrIGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuaApAQCAt MzI2LDggKzMyNiw3IEBAIGNvbnN0IGNoYXIgKmR1bXBfc3RhdGVfYnVmZmVy ZWRfZGF0YShGSUxFICpmcCwgY29uc3Qgc3RydWN0IGNvbm5lY3Rpb24gKmMs CiAJCQkJICAgICBjb25zdCBzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwKIAkJ CQkgICAgIHN0cnVjdCB4c19zdGF0ZV9jb25uZWN0aW9uICpzYyk7CiBjb25z dCBjaGFyICpkdW1wX3N0YXRlX25vZGVzKEZJTEUgKmZwLCBjb25zdCB2b2lk ICpjdHgpOwotY29uc3QgY2hhciAqZHVtcF9zdGF0ZV9ub2RlX3Blcm1zKEZJ TEUgKmZwLCBzdHJ1Y3QgeHNfc3RhdGVfbm9kZSAqc24sCi0JCQkJICBjb25z dCBzdHJ1Y3QgeHNfcGVybWlzc2lvbnMgKnBlcm1zLAorY29uc3QgY2hhciAq ZHVtcF9zdGF0ZV9ub2RlX3Blcm1zKEZJTEUgKmZwLCBjb25zdCBzdHJ1Y3Qg eHNfcGVybWlzc2lvbnMgKnBlcm1zLAogCQkJCSAgdW5zaWduZWQgaW50IG5f cGVybXMpOwogCiB2b2lkIHJlYWRfc3RhdGVfZ2xvYmFsKGNvbnN0IHZvaWQg KmN0eCwgY29uc3Qgdm9pZCAqc3RhdGUpOwpkaWZmIC0tZ2l0IGEvdG9vbHMv eGVuc3RvcmUveGVuc3RvcmVkX2RvbWFpbi5jIGIvdG9vbHMveGVuc3RvcmUv eGVuc3RvcmVkX2RvbWFpbi5jCmluZGV4IDhiNTAzYzJkZmUwNy4uYTkxY2M3 NWFiNTliIDEwMDY0NAotLS0gYS90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRf ZG9tYWluLmMKKysrIGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2RvbWFp bi5jCkBAIC0xNDQ5LDcgKzE0NDksNyBAQCBzdGF0aWMgY29uc3QgY2hhciAq ZHVtcF9zdGF0ZV9zcGVjaWFsX25vZGUoRklMRSAqZnAsIGNvbnN0IGNoYXIg Km5hbWUsCiAJaWYgKGZ3cml0ZSgmc24sIHNpemVvZihzbiksIDEsIGZwKSAh PSAxKQogCQlyZXR1cm4gIkR1bXAgc3BlY2lhbCBub2RlIGVycm9yIjsKIAot CXJldCA9IGR1bXBfc3RhdGVfbm9kZV9wZXJtcyhmcCwgJnNuLCBwZXJtcy0+ cCwgcGVybXMtPm51bSk7CisJcmV0ID0gZHVtcF9zdGF0ZV9ub2RlX3Blcm1z KGZwLCBwZXJtcy0+cCwgcGVybXMtPm51bSk7CiAJaWYgKHJldCkKIAkJcmV0 dXJuIHJldDsKIAo= --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.16-01.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.16-01.patch" Content-Transfer-Encoding: base64 RnJvbSBkMWU2ZGNhNDg2NTk5YWI5MTRhZjdiMzhiMzc4MmIyMzdkM2Q2MDNi IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTEgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHJlbW92ZSBy ZWN1cnNpb24gZnJvbSBjb25zdHJ1Y3Rfbm9kZSgpCgpJbiBvcmRlciB0byBy ZWR1Y2Ugc3RhY2sgdXNhZ2UgZHVlIHRvIHJlY3Vyc2lvbiwgc3dpdGNoCmNv bnN0cnVjdF9ub2RlKCkgdG8gdXNlIGEgbG9vcCBpbnN0ZWFkLgoKVGhpcyBp cyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9ydGVk LWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpTaWdu ZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ClJl dmlld2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoK ZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMg Yi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IGM2NzZl ZTRlNGU0Zi4uMzkwN2MzNTY0M2U5IDEwMDY0NAotLS0gYS90b29scy94ZW5z dG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hl bnN0b3JlZF9jb3JlLmMKQEAgLTEzNzcsNDUgKzEzNzcsNjkgQEAgc3RhdGlj IGludCBhZGRfY2hpbGQoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3Qgbm9kZSAq cGFyZW50LCBjb25zdCBjaGFyICpuYW1lKQogc3RhdGljIHN0cnVjdCBub2Rl ICpjb25zdHJ1Y3Rfbm9kZShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgY29u c3Qgdm9pZCAqY3R4LAogCQkJCSAgIGNvbnN0IGNoYXIgKm5hbWUpCiB7Ci0J c3RydWN0IG5vZGUgKnBhcmVudCwgKm5vZGU7Ci0JY2hhciAqcGFyZW50bmFt ZSA9IGdldF9wYXJlbnQoY3R4LCBuYW1lKTsKKwljb25zdCBjaGFyICoqbmFt ZXMgPSBOVUxMOworCXVuc2lnbmVkIGludCBsZXZlbHMgPSAwOworCXN0cnVj dCBub2RlICpub2RlID0gTlVMTDsKKwlzdHJ1Y3Qgbm9kZSAqcGFyZW50ID0g TlVMTDsKKwljb25zdCBjaGFyICpwYXJlbnRuYW1lID0gdGFsbG9jX3N0cmR1 cChjdHgsIG5hbWUpOwogCiAJaWYgKCFwYXJlbnRuYW1lKQogCQlyZXR1cm4g TlVMTDsKIAotCS8qIElmIHBhcmVudCBkb2Vzbid0IGV4aXN0LCBjcmVhdGUg aXQuICovCi0JcGFyZW50ID0gcmVhZF9ub2RlKGNvbm4sIHBhcmVudG5hbWUs IHBhcmVudG5hbWUpOwotCWlmICghcGFyZW50ICYmIGVycm5vID09IEVOT0VO VCkKLQkJcGFyZW50ID0gY29uc3RydWN0X25vZGUoY29ubiwgY3R4LCBwYXJl bnRuYW1lKTsKLQlpZiAoIXBhcmVudCkKLQkJcmV0dXJuIE5VTEw7CisJLyog V2FsayB0aGUgcGF0aCB1cCB1bnRpbCBhbiBleGlzdGluZyBub2RlIGlzIGZv dW5kLiAqLworCXdoaWxlICghcGFyZW50KSB7CisJCW5hbWVzID0gdGFsbG9j X3JlYWxsb2MoY3R4LCBuYW1lcywgY29uc3QgY2hhciAqLCBsZXZlbHMgKyAx KTsKKwkJaWYgKCFuYW1lcykKKwkJCWdvdG8gbm9tZW07CiAKLQkvKiBBZGQg Y2hpbGQgdG8gcGFyZW50LiAqLwotCWlmIChhZGRfY2hpbGQoY3R4LCBwYXJl bnQsIG5hbWUpKQotCQlnb3RvIG5vbWVtOworCQkvKgorCQkgKiBuYW1lc1sw XSBpcyB0aGUgbmFtZSBvZiB0aGUgbm9kZSB0byBjb25zdHJ1Y3QgaW5pdGlh bGx5LAorCQkgKiBuYW1lc1sxXSBpcyBpdHMgcGFyZW50LCBhbmQgc28gb24u CisJCSAqLworCQluYW1lc1tsZXZlbHNdID0gcGFyZW50bmFtZTsKKwkJcGFy ZW50bmFtZSA9IGdldF9wYXJlbnQoY3R4LCBwYXJlbnRuYW1lKTsKKwkJaWYg KCFwYXJlbnRuYW1lKQorCQkJcmV0dXJuIE5VTEw7CiAKLQkvKiBBbGxvY2F0 ZSBub2RlICovCi0Jbm9kZSA9IHRhbGxvYyhjdHgsIHN0cnVjdCBub2RlKTsK LQlpZiAoIW5vZGUpCi0JCWdvdG8gbm9tZW07Ci0Jbm9kZS0+bmFtZSA9IHRh bGxvY19zdHJkdXAobm9kZSwgbmFtZSk7Ci0JaWYgKCFub2RlLT5uYW1lKQot CQlnb3RvIG5vbWVtOworCQkvKiBUcnkgdG8gcmVhZCBwYXJlbnQgbm9kZSB1 bnRpbCB3ZSBmb3VuZCBhbiBleGlzdGluZyBvbmUuICovCisJCXBhcmVudCA9 IHJlYWRfbm9kZShjb25uLCBjdHgsIHBhcmVudG5hbWUpOworCQlpZiAoIXBh cmVudCAmJiAoZXJybm8gIT0gRU5PRU5UIHx8ICFzdHJjbXAocGFyZW50bmFt ZSwgIi8iKSkpCisJCQlyZXR1cm4gTlVMTDsKIAotCS8qIEluaGVyaXQgcGVy bWlzc2lvbnMsIGV4Y2VwdCB1bnByaXZpbGVnZWQgZG9tYWlucyBvd24gd2hh dCB0aGV5IGNyZWF0ZSAqLwotCW5vZGUtPnBlcm1zLm51bSA9IHBhcmVudC0+ cGVybXMubnVtOwotCW5vZGUtPnBlcm1zLnAgPSB0YWxsb2NfbWVtZHVwKG5v ZGUsIHBhcmVudC0+cGVybXMucCwKLQkJCQkgICAgICBub2RlLT5wZXJtcy5u dW0gKiBzaXplb2YoKm5vZGUtPnBlcm1zLnApKTsKLQlpZiAoIW5vZGUtPnBl cm1zLnApCi0JCWdvdG8gbm9tZW07Ci0JaWYgKGRvbWFpbl9pc191bnByaXZp bGVnZWQoY29ubikpCi0JCW5vZGUtPnBlcm1zLnBbMF0uaWQgPSBjb25uLT5p ZDsKKwkJbGV2ZWxzKys7CisJfQorCisJLyogV2FsayB0aGUgcGF0aCBkb3du IGFnYWluIGNvbnN0cnVjdGluZyB0aGUgbWlzc2luZyBub2Rlcy4gKi8KKwlm b3IgKDsgbGV2ZWxzID4gMDsgbGV2ZWxzLS0pIHsKKwkJLyogQWRkIGNoaWxk IHRvIHBhcmVudC4gKi8KKwkJaWYgKGFkZF9jaGlsZChjdHgsIHBhcmVudCwg bmFtZXNbbGV2ZWxzIC0gMV0pKQorCQkJZ290byBub21lbTsKKworCQkvKiBB bGxvY2F0ZSBub2RlICovCisJCW5vZGUgPSB0YWxsb2MoY3R4LCBzdHJ1Y3Qg bm9kZSk7CisJCWlmICghbm9kZSkKKwkJCWdvdG8gbm9tZW07CisJCW5vZGUt Pm5hbWUgPSB0YWxsb2Nfc3RlYWwobm9kZSwgbmFtZXNbbGV2ZWxzIC0gMV0p OworCisJCS8qIEluaGVyaXQgcGVybWlzc2lvbnMsIHVucHJpdiBkb21haW5z IG93biB3aGF0IHRoZXkgY3JlYXRlLiAqLworCQlub2RlLT5wZXJtcy5udW0g PSBwYXJlbnQtPnBlcm1zLm51bTsKKwkJbm9kZS0+cGVybXMucCA9IHRhbGxv Y19tZW1kdXAobm9kZSwgcGFyZW50LT5wZXJtcy5wLAorCQkJCQkgICAgICBu b2RlLT5wZXJtcy5udW0gKgorCQkJCQkgICAgICBzaXplb2YoKm5vZGUtPnBl cm1zLnApKTsKKwkJaWYgKCFub2RlLT5wZXJtcy5wKQorCQkJZ290byBub21l bTsKKwkJaWYgKGRvbWFpbl9pc191bnByaXZpbGVnZWQoY29ubikpCisJCQlu b2RlLT5wZXJtcy5wWzBdLmlkID0gY29ubi0+aWQ7CisKKwkJLyogTm8gY2hp bGRyZW4sIG5vIGRhdGEgKi8KKwkJbm9kZS0+Y2hpbGRyZW4gPSBub2RlLT5k YXRhID0gTlVMTDsKKwkJbm9kZS0+Y2hpbGRsZW4gPSBub2RlLT5kYXRhbGVu ID0gMDsKKwkJbm9kZS0+YWNjLm1lbW9yeSA9IDA7CisJCW5vZGUtPnBhcmVu dCA9IHBhcmVudDsKKworCQlwYXJlbnQgPSBub2RlOworCX0KIAotCS8qIE5v IGNoaWxkcmVuLCBubyBkYXRhICovCi0Jbm9kZS0+Y2hpbGRyZW4gPSBub2Rl LT5kYXRhID0gTlVMTDsKLQlub2RlLT5jaGlsZGxlbiA9IG5vZGUtPmRhdGFs ZW4gPSAwOwotCW5vZGUtPmFjYy5tZW1vcnkgPSAwOwotCW5vZGUtPnBhcmVu dCA9IHBhcmVudDsKIAlyZXR1cm4gbm9kZTsKIAogbm9tZW06Cg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.16-02.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.16-02.patch" Content-Transfer-Encoding: base64 RnJvbSBjMTNkODVhMmZlOTRiYmYzY2I4MTg2Yjg5MzI0YzVkMWI0ZjlhNjFm IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTEgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IGRvbid0IGxl dCByZW1vdmVfY2hpbGRfZW50cnkoKSBjYWxsIGNvcnJ1cHQoKQoKSW4gY2Fz ZSBvZiB3cml0ZV9ub2RlKCkgcmV0dXJuaW5nIGFuIGVycm9yLCByZW1vdmVf Y2hpbGRfZW50cnkoKSB3aWxsCmNhbGwgY29ycnVwdCgpIHRvZGF5LiBUaGlz IGNvdWxkIHJlc3VsdCBpbiBhbiBlbmRsZXNzIHJlY3Vyc2lvbiwgYXMKcmVt b3ZlX2NoaWxkX2VudHJ5KCkgaXMgY2FsbGVkIGJ5IGNvcnJ1cHQoKSwgdG9v OgoKY29ycnVwdCgpCiAgY2hlY2tfc3RvcmUoKQogICAgY2hlY2tfc3RvcmVf KCkKICAgICAgcmVtb3ZlX2NoaWxkX2VudHJ5KCkKCkZpeCB0aGF0IGJ5IGxl dHRpbmcgcmVtb3ZlX2NoaWxkX2VudHJ5KCkgcmV0dXJuIGFuIGVycm9yIGlu c3RlYWQgYW5kCmxldCB0aGUgY2FsbGVyIGRlY2lkZSB3aGF0IHRvIGRvLgoK VGhpcyBpcyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJl cG9ydGVkLWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVr PgpTaWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5j b20+ClJldmlld2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24u Y29tPgoKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9j b3JlLmMgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4 IDM5MDdjMzU2NDNlOS4uZjQzM2E0NWRjMjE3IDEwMDY0NAotLS0gYS90b29s cy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0 b3JlL3hlbnN0b3JlZF9jb3JlLmMKQEAgLTE2MDgsMTUgKzE2MDgsMTUgQEAg c3RhdGljIHZvaWQgbWVtZGVsKHZvaWQgKm1lbSwgdW5zaWduZWQgb2ZmLCB1 bnNpZ25lZCBsZW4sIHVuc2lnbmVkIHRvdGFsKQogCW1lbW1vdmUobWVtICsg b2ZmLCBtZW0gKyBvZmYgKyBsZW4sIHRvdGFsIC0gb2ZmIC0gbGVuKTsKIH0K IAotc3RhdGljIHZvaWQgcmVtb3ZlX2NoaWxkX2VudHJ5KHN0cnVjdCBjb25u ZWN0aW9uICpjb25uLCBzdHJ1Y3Qgbm9kZSAqbm9kZSwKLQkJCSAgICAgICBz aXplX3Qgb2Zmc2V0KQorc3RhdGljIGludCByZW1vdmVfY2hpbGRfZW50cnko c3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIHN0cnVjdCBub2RlICpub2RlLAor CQkJICAgICAgc2l6ZV90IG9mZnNldCkKIHsKIAlzaXplX3QgY2hpbGRsZW4g PSBzdHJsZW4obm9kZS0+Y2hpbGRyZW4gKyBvZmZzZXQpOwogCiAJbWVtZGVs KG5vZGUtPmNoaWxkcmVuLCBvZmZzZXQsIGNoaWxkbGVuICsgMSwgbm9kZS0+ Y2hpbGRsZW4pOwogCW5vZGUtPmNoaWxkbGVuIC09IGNoaWxkbGVuICsgMTsK LQlpZiAod3JpdGVfbm9kZShjb25uLCBub2RlLCB0cnVlKSkKLQkJY29ycnVw dChjb25uLCAiQ2FuJ3QgdXBkYXRlIHBhcmVudCBub2RlICclcyciLCBub2Rl LT5uYW1lKTsKKworCXJldHVybiB3cml0ZV9ub2RlKGNvbm4sIG5vZGUsIHRy dWUpOwogfQogCiBzdGF0aWMgdm9pZCBkZWxldGVfY2hpbGQoc3RydWN0IGNv bm5lY3Rpb24gKmNvbm4sCkBAIC0xNjI2LDcgKzE2MjYsOSBAQCBzdGF0aWMg dm9pZCBkZWxldGVfY2hpbGQoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sCiAK IAlmb3IgKGkgPSAwOyBpIDwgbm9kZS0+Y2hpbGRsZW47IGkgKz0gc3RybGVu KG5vZGUtPmNoaWxkcmVuK2kpICsgMSkgewogCQlpZiAoc3RyZXEobm9kZS0+ Y2hpbGRyZW4raSwgY2hpbGRuYW1lKSkgewotCQkJcmVtb3ZlX2NoaWxkX2Vu dHJ5KGNvbm4sIG5vZGUsIGkpOworCQkJaWYgKHJlbW92ZV9jaGlsZF9lbnRy eShjb25uLCBub2RlLCBpKSkKKwkJCQljb3JydXB0KGNvbm4sICJDYW4ndCB1 cGRhdGUgcGFyZW50IG5vZGUgJyVzJyIsCisJCQkJCW5vZGUtPm5hbWUpOwog CQkJcmV0dXJuOwogCQl9CiAJfQpAQCAtMjMyNSw2ICsyMzI3LDE3IEBAIGlu dCByZW1lbWJlcl9zdHJpbmcoc3RydWN0IGhhc2h0YWJsZSAqaGFzaCwgY29u c3QgY2hhciAqc3RyKQogCXJldHVybiBoYXNodGFibGVfaW5zZXJ0KGhhc2gs IGssICh2b2lkICopMSk7CiB9CiAKK3N0YXRpYyBpbnQgcm1fY2hpbGRfZW50 cnkoc3RydWN0IG5vZGUgKm5vZGUsIHNpemVfdCBvZmYsIHNpemVfdCBsZW4p Cit7CisJaWYgKCFyZWNvdmVyeSkKKwkJcmV0dXJuIG9mZjsKKworCWlmIChy ZW1vdmVfY2hpbGRfZW50cnkoTlVMTCwgbm9kZSwgb2ZmKSkKKwkJbG9nKCJj aGVja19zdG9yZTogY2hpbGQgZW50cnkgY291bGQgbm90IGJlIHJlbW92ZWQg ZnJvbSAnJXMnIiwKKwkJICAgIG5vZGUtPm5hbWUpOworCisJcmV0dXJuIG9m ZiAtIGxlbiAtIDE7Cit9CiAKIC8qKgogICogQSBub2RlIGhhcyBhIGNoaWxk cmVuIGZpZWxkIHRoYXQgbmFtZXMgdGhlIGNoaWxkcmVuIG9mIHRoZSBub2Rl LCBzZXBhcmF0ZWQKQEAgLTIzNzcsMTIgKzIzOTAsNyBAQCBzdGF0aWMgaW50 IGNoZWNrX3N0b3JlXyhjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3QgaGFzaHRh YmxlICpyZWFjaGFibGUpCiAJCQkJaWYgKGhhc2h0YWJsZV9zZWFyY2goY2hp bGRyZW4sIGNoaWxkbmFtZSkpIHsKIAkJCQkJbG9nKCJjaGVja19zdG9yZTog JyVzJyBpcyBkdXBsaWNhdGVkISIsCiAJCQkJCSAgICBjaGlsZG5hbWUpOwot Ci0JCQkJCWlmIChyZWNvdmVyeSkgewotCQkJCQkJcmVtb3ZlX2NoaWxkX2Vu dHJ5KE5VTEwsIG5vZGUsCi0JCQkJCQkJCSAgIGkpOwotCQkJCQkJaSAtPSBj aGlsZGxlbiArIDE7Ci0JCQkJCX0KKwkJCQkJaSA9IHJtX2NoaWxkX2VudHJ5 KG5vZGUsIGksIGNoaWxkbGVuKTsKIAkJCQl9CiAJCQkJZWxzZSB7CiAJCQkJ CWlmICghcmVtZW1iZXJfc3RyaW5nKGNoaWxkcmVuLApAQCAtMjM5OSwxMSAr MjQwNyw3IEBAIHN0YXRpYyBpbnQgY2hlY2tfc3RvcmVfKGNvbnN0IGNoYXIg Km5hbWUsIHN0cnVjdCBoYXNodGFibGUgKnJlYWNoYWJsZSkKIAkJCX0gZWxz ZSBpZiAoZXJybm8gIT0gRU5PTUVNKSB7CiAJCQkJbG9nKCJjaGVja19zdG9y ZTogTm8gY2hpbGQgJyVzJyBmb3VuZCFcbiIsCiAJCQkJICAgIGNoaWxkbmFt ZSk7Ci0KLQkJCQlpZiAocmVjb3ZlcnkpIHsKLQkJCQkJcmVtb3ZlX2NoaWxk X2VudHJ5KE5VTEwsIG5vZGUsIGkpOwotCQkJCQlpIC09IGNoaWxkbGVuICsg MTsKLQkJCQl9CisJCQkJaSA9IHJtX2NoaWxkX2VudHJ5KG5vZGUsIGksIGNo aWxkbGVuKTsKIAkJCX0gZWxzZSB7CiAJCQkJbG9nKCJjaGVja19zdG9yZTog RU5PTUVNIik7CiAJCQkJcmV0ID0gRU5PTUVNOwo= --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.16-03.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.16-03.patch" Content-Transfer-Encoding: base64 RnJvbSBhYWM5YjUxYjZmYmJiZDE2YzkxMGY2OTM2NTM0NTUyOGM1YmVjMTA2 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTEgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IGFkZCBnZW5l cmljIHRyZWV3YWxrIGZ1bmN0aW9uCgpBZGQgYSBnZW5lcmljIGZ1bmN0aW9u IHRvIHdhbGsgdGhlIGNvbXBsZXRlIG5vZGUgdHJlZS4gSXQgd2lsbCBzdGFy dAphdCAiLyIgYW5kIGRlc2NlbmQgcmVjdXJzaXZlbHkgaW50byBlYWNoIGNo aWxkLCBjYWxsaW5nIGEgZnVuY3Rpb24Kc3BlY2lmaWVkIGJ5IHRoZSBjYWxs ZXIuIERlcGVuZGluZyBvbiB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoZSB1c2Vy CnNwZWNpZmllZCBmdW5jdGlvbiB0aGUgd2FsayB3aWxsIGJlIGFib3J0ZWQs IGNvbnRpbnVlZCwgb3IgdGhlIGN1cnJlbnQKY2hpbGQgd2lsbCBiZSBza2lw cGVkIGJ5IG5vdCBkZXNjZW5kaW5nIGludG8gaXRzIGNoaWxkcmVuLgoKVGhp cyBpcyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9y dGVkLWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpT aWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ CkFja2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoK ZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMg Yi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IGY0MzNh NDVkYzIxNy4uMmNkYTNlZTM3NWFiIDEwMDY0NAotLS0gYS90b29scy94ZW5z dG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hl bnN0b3JlZF9jb3JlLmMKQEAgLTE4MzgsNiArMTgzOCwxMzUgQEAgc3RhdGlj IGludCBkb19zZXRfcGVybXMoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29u bmVjdGlvbiAqY29ubiwKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIGNoYXIg KmNoaWxkX25hbWUoY29uc3Qgdm9pZCAqY3R4LCBjb25zdCBjaGFyICpzMSwg Y29uc3QgY2hhciAqczIpCit7CisJaWYgKHN0cmNtcChzMSwgIi8iKSkKKwkJ cmV0dXJuIHRhbGxvY19hc3ByaW50ZihjdHgsICIlcy8lcyIsIHMxLCBzMik7 CisJcmV0dXJuIHRhbGxvY19hc3ByaW50ZihjdHgsICIvJXMiLCBzMik7Cit9 CisKK3N0YXRpYyBpbnQgcm1fZnJvbV9wYXJlbnQoc3RydWN0IGNvbm5lY3Rp b24gKmNvbm4sIHN0cnVjdCBub2RlICpwYXJlbnQsCisJCQkgIGNvbnN0IGNo YXIgKm5hbWUpCit7CisJc2l6ZV90IG9mZjsKKworCWlmICghcGFyZW50KQor CQlyZXR1cm4gV0FMS19UUkVFX0VSUk9SX1NUT1A7CisKKwlmb3IgKG9mZiA9 IHBhcmVudC0+Y2hpbGRvZmYgLSAxOyBvZmYgJiYgcGFyZW50LT5jaGlsZHJl bltvZmYgLSAxXTsKKwkgICAgIG9mZi0tKTsKKwlpZiAocmVtb3ZlX2NoaWxk X2VudHJ5KGNvbm4sIHBhcmVudCwgb2ZmKSkgeworCQlsb2coInRyZWV3YWxr OiBjaGlsZCBlbnRyeSBjb3VsZCBub3QgYmUgcmVtb3ZlZCBmcm9tICclcyci LAorCQkgICAgcGFyZW50LT5uYW1lKTsKKwkJcmV0dXJuIFdBTEtfVFJFRV9F UlJPUl9TVE9QOworCX0KKwlwYXJlbnQtPmNoaWxkb2ZmID0gb2ZmOworCisJ cmV0dXJuIFdBTEtfVFJFRV9PSzsKK30KKworc3RhdGljIGludCB3YWxrX2Nh bGxfZnVuYyhjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpj b25uLAorCQkJICBzdHJ1Y3Qgbm9kZSAqbm9kZSwgc3RydWN0IG5vZGUgKnBh cmVudCwgdm9pZCAqYXJnLAorCQkJICBpbnQgKCpmdW5jKShjb25zdCB2b2lk ICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpjb25uLAorCQkJCSAgICAgIHN0 cnVjdCBub2RlICpub2RlLCB2b2lkICphcmcpKQoreworCWludCByZXQ7CisK KwlpZiAoIWZ1bmMpCisJCXJldHVybiBXQUxLX1RSRUVfT0s7CisKKwlyZXQg PSBmdW5jKGN0eCwgY29ubiwgbm9kZSwgYXJnKTsKKwlpZiAocmV0ID09IFdB TEtfVFJFRV9STV9DSElMREVOVFJZICYmIHBhcmVudCkKKwkJcmV0ID0gcm1f ZnJvbV9wYXJlbnQoY29ubiwgcGFyZW50LCBub2RlLT5uYW1lKTsKKworCXJl dHVybiByZXQ7Cit9CisKK2ludCB3YWxrX25vZGVfdHJlZShjb25zdCB2b2lk ICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBjb25zdCBjaGFyICpy b290LAorCQkgICBzdHJ1Y3Qgd2Fsa19mdW5jcyAqZnVuY3MsIHZvaWQgKmFy ZykKK3sKKwlpbnQgcmV0ID0gMDsKKwl2b2lkICp0bXBjdHg7CisJY2hhciAq bmFtZTsKKwlzdHJ1Y3Qgbm9kZSAqbm9kZSA9IE5VTEw7CisJc3RydWN0IG5v ZGUgKnBhcmVudCA9IE5VTEw7CisKKwl0bXBjdHggPSB0YWxsb2NfbmV3KGN0 eCk7CisJaWYgKCF0bXBjdHgpIHsKKwkJZXJybm8gPSBFTk9NRU07CisJCXJl dHVybiBXQUxLX1RSRUVfRVJST1JfU1RPUDsKKwl9CisJbmFtZSA9IHRhbGxv Y19zdHJkdXAodG1wY3R4LCByb290KTsKKwlpZiAoIW5hbWUpIHsKKwkJZXJy bm8gPSBFTk9NRU07CisJCXRhbGxvY19mcmVlKHRtcGN0eCk7CisJCXJldHVy biBXQUxLX1RSRUVfRVJST1JfU1RPUDsKKwl9CisKKwkvKiBDb250aW51ZSB0 aGUgd2FsayB1bnRpbCBhbiBlcnJvciBpcyByZXR1cm5lZC4gKi8KKwl3aGls ZSAocmV0ID49IDApIHsKKwkJLyogbm9kZSA9PSBOVUxMIHBvc3NpYmxlIG9u bHkgZm9yIHRoZSBpbml0aWFsIGxvb3AgaXRlcmF0aW9uLiAqLworCQlpZiAo bm9kZSkgeworCQkJLyogR28gb25lIHN0ZXAgdXAgaWYgcmV0IG9yIGlmIGxh c3QgY2hpbGQgZmluaXNoZWQuICovCisJCQlpZiAocmV0IHx8IG5vZGUtPmNo aWxkb2ZmID49IG5vZGUtPmNoaWxkbGVuKSB7CisJCQkJcGFyZW50ID0gbm9k ZS0+cGFyZW50OworCQkJCS8qIENhbGwgZnVuY3Rpb24gQUZURVIgcHJvY2Vz c2luZyBhIG5vZGUuICovCisJCQkJcmV0ID0gd2Fsa19jYWxsX2Z1bmMoY3R4 LCBjb25uLCBub2RlLCBwYXJlbnQsCisJCQkJCQkgICAgIGFyZywgZnVuY3Mt PmV4aXQpOworCQkJCS8qIExhc3Qgbm9kZSwgc28gZXhpdCBsb29wLiAqLwor CQkJCWlmICghcGFyZW50KQorCQkJCQlicmVhazsKKwkJCQl0YWxsb2NfZnJl ZShub2RlKTsKKwkJCQkvKiBDb250aW51ZSB3aXRoIHBhcmVudC4gKi8KKwkJ CQlub2RlID0gcGFyZW50OworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJLyog R2V0IG5leHQgY2hpbGQgb2YgY3VycmVudCBub2RlLiAqLworCQkJbmFtZSA9 IGNoaWxkX25hbWUodG1wY3R4LCBub2RlLT5uYW1lLAorCQkJCQkgIG5vZGUt PmNoaWxkcmVuICsgbm9kZS0+Y2hpbGRvZmYpOworCQkJaWYgKCFuYW1lKSB7 CisJCQkJcmV0ID0gV0FMS19UUkVFX0VSUk9SX1NUT1A7CisJCQkJYnJlYWs7 CisJCQl9CisJCQkvKiBQb2ludCB0byBuZXh0IGNoaWxkLiAqLworCQkJbm9k ZS0+Y2hpbGRvZmYgKz0gc3RybGVuKG5vZGUtPmNoaWxkcmVuICsKKwkJCQkJ CSBub2RlLT5jaGlsZG9mZikgKyAxOworCQkJLyogRGVzY2VudCBpbnRvIGNo aWxkcmVuLiAqLworCQkJcGFyZW50ID0gbm9kZTsKKwkJfQorCQkvKiBSZWFk IG5leHQgbm9kZSAocm9vdCBub2RlIG9yIG5leHQgY2hpbGQpLiAqLworCQlu b2RlID0gcmVhZF9ub2RlKGNvbm4sIHRtcGN0eCwgbmFtZSk7CisJCWlmICgh bm9kZSkgeworCQkJLyogQ2hpbGQgbm90IGZvdW5kIC0gc2hvdWxkIG5vdCBo YXBwZW4hICovCisJCQkvKiBFTk9FTlQgY2FzZSBjYW4gYmUgaGFuZGxlZCBi eSBzdXBwbGllZCBmdW5jdGlvbi4gKi8KKwkJCWlmIChlcnJubyA9PSBFTk9F TlQgJiYgZnVuY3MtPmVub2VudCkKKwkJCQlyZXQgPSBmdW5jcy0+ZW5vZW50 KGN0eCwgY29ubiwgcGFyZW50LCBuYW1lLAorCQkJCQkJICAgIGFyZyk7CisJ CQllbHNlCisJCQkJcmV0ID0gV0FMS19UUkVFX0VSUk9SX1NUT1A7CisJCQlp ZiAoIXBhcmVudCkKKwkJCQlicmVhazsKKwkJCWlmIChyZXQgPT0gV0FMS19U UkVFX1JNX0NISUxERU5UUlkpCisJCQkJcmV0ID0gcm1fZnJvbV9wYXJlbnQo Y29ubiwgcGFyZW50LCBuYW1lKTsKKwkJCWlmIChyZXQgPCAwKQorCQkJCWJy ZWFrOworCQkJdGFsbG9jX2ZyZWUobmFtZSk7CisJCQlub2RlID0gcGFyZW50 OworCQkJY29udGludWU7CisJCX0KKwkJdGFsbG9jX2ZyZWUobmFtZSk7CisJ CW5vZGUtPnBhcmVudCA9IHBhcmVudDsKKwkJbm9kZS0+Y2hpbGRvZmYgPSAw OworCQkvKiBDYWxsIGZ1bmN0aW9uIEJFRk9SRSBwcm9jZXNzaW5nIGEgbm9k ZS4gKi8KKwkJcmV0ID0gd2Fsa19jYWxsX2Z1bmMoY3R4LCBjb25uLCBub2Rl LCBwYXJlbnQsIGFyZywKKwkJCQkgICAgIGZ1bmNzLT5lbnRlcik7CisJfQor CisJdGFsbG9jX2ZyZWUodG1wY3R4KTsKKworCXJldHVybiByZXQgPCAwID8g cmV0IDogV0FMS19UUkVFX09LOworfQorCiBzdGF0aWMgc3RydWN0IHsKIAlj b25zdCBjaGFyICpzdHI7CiAJaW50ICgqZnVuYykoY29uc3Qgdm9pZCAqY3R4 LCBzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwKQEAgLTIzMDUsMTggKzI0MzQs NiBAQCBzdGF0aWMgaW50IGtleXNfZXF1YWxfZm4odm9pZCAqa2V5MSwgdm9p ZCAqa2V5MikKIAlyZXR1cm4gMCA9PSBzdHJjbXAoKGNoYXIgKilrZXkxLCAo Y2hhciAqKWtleTIpOwogfQogCi0KLXN0YXRpYyBjaGFyICpjaGlsZF9uYW1l KGNvbnN0IGNoYXIgKnMxLCBjb25zdCBjaGFyICpzMikKLXsKLQlpZiAoc3Ry Y21wKHMxLCAiLyIpKSB7Ci0JCXJldHVybiB0YWxsb2NfYXNwcmludGYoTlVM TCwgIiVzLyVzIiwgczEsIHMyKTsKLQl9Ci0JZWxzZSB7Ci0JCXJldHVybiB0 YWxsb2NfYXNwcmludGYoTlVMTCwgIi8lcyIsIHMyKTsKLQl9Ci19Ci0KLQog aW50IHJlbWVtYmVyX3N0cmluZyhzdHJ1Y3QgaGFzaHRhYmxlICpoYXNoLCBj b25zdCBjaGFyICpzdHIpCiB7CiAJY2hhciAqayA9IG1hbGxvYyhzdHJsZW4o c3RyKSArIDEpOwpAQCAtMjM3Niw3ICsyNDkzLDcgQEAgc3RhdGljIGludCBj aGVja19zdG9yZV8oY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IGhhc2h0YWJs ZSAqcmVhY2hhYmxlKQogCQl3aGlsZSAoaSA8IG5vZGUtPmNoaWxkbGVuICYm ICFyZXQpIHsKIAkJCXN0cnVjdCBub2RlICpjaGlsZG5vZGU7CiAJCQlzaXpl X3QgY2hpbGRsZW4gPSBzdHJsZW4obm9kZS0+Y2hpbGRyZW4gKyBpKTsKLQkJ CWNoYXIgKiBjaGlsZG5hbWUgPSBjaGlsZF9uYW1lKG5vZGUtPm5hbWUsCisJ CQljaGFyICogY2hpbGRuYW1lID0gY2hpbGRfbmFtZShOVUxMLCBub2RlLT5u YW1lLAogCQkJCQkJICAgICAgbm9kZS0+Y2hpbGRyZW4gKyBpKTsKIAogCQkJ aWYgKCFjaGlsZG5hbWUpIHsKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3Jl L3hlbnN0b3JlZF9jb3JlLmggYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRf Y29yZS5oCmluZGV4IGJmZDNmYzFlOWRmMy4uMmQ5OTQyMTcxZDkyIDEwMDY0 NAotLS0gYS90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5oCisrKyBi L3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmgKQEAgLTIwMiw2ICsy MDIsNyBAQCBzdHJ1Y3Qgbm9kZSB7CiAKIAkvKiBDaGlsZHJlbiwgZWFjaCBu dWwtdGVybWluYXRlZC4gKi8KIAl1bnNpZ25lZCBpbnQgY2hpbGRsZW47CisJ dW5zaWduZWQgaW50IGNoaWxkb2ZmOwkvKiBVc2VkIGJ5IHdhbGtfbm9kZV90 cmVlKCkgaW50ZXJuYWxseS4gKi8KIAljaGFyICpjaGlsZHJlbjsKIAogCS8q IEFsbG9jYXRpb24gaW5mb3JtYXRpb24gZm9yIG5vZGUgY3VycmVudGx5IGlu IHN0b3JlLiAqLwpAQCAtMzM4LDYgKzMzOSw0NSBAQCB2b2lkIHJlYWRfc3Rh dGVfYnVmZmVyZWRfZGF0YShjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBjb25u ZWN0aW9uICpjb25uLAogCQkJICAgICAgY29uc3Qgc3RydWN0IHhzX3N0YXRl X2Nvbm5lY3Rpb24gKnNjKTsKIHZvaWQgcmVhZF9zdGF0ZV9ub2RlKGNvbnN0 IHZvaWQgKmN0eCwgY29uc3Qgdm9pZCAqc3RhdGUpOwogCisvKgorICogV2Fs ayB0aGUgbm9kZSB0cmVlIGJlbG93IHJvb3QgY2FsbGluZyBmdW5jcy0+ZW50 ZXIoKSBhbmQgZnVuY3MtPmV4aXQoKSBmb3IKKyAqIGVhY2ggbm9kZS4gZnVu Y3MtPmVudGVyKCkgaXMgYmVpbmcgY2FsbGVkIHdoZW4gZW50ZXJpbmcgYSBu b2RlLCBzbyBiZWZvcmUKKyAqIGFueSBvZiB0aGUgY2hpbGRyZW4gb2YgdGhl IG5vZGUgaXMgcHJvY2Vzc2VkLiBmdW5jcy0+ZXhpdCgpIGlzIGJlaW5nCisg KiBjYWxsZWQgd2hlbiBsZWF2aW5nIHRoZSBub2RlLCBzbyBhZnRlciBhbGwg Y2hpbGRyZW4gaGF2ZSBiZWVuIHByb2Nlc3NlZC4KKyAqIGZ1bmNzLT5lbm9l bnQoKSBpcyBiZWluZyBjYWxsZWQgd2hlbiBhIG5vZGUgaXNuJ3QgZXhpc3Rp bmcuCisgKiBmdW5jcy0+KigpIHJldHVybiB2YWx1ZXM6CisgKiAgPCAwOiB0 cmVlIHdhbGsgaXMgc3RvcHBlZCwgd2Fsa19ub2RlX3RyZWUoKSByZXR1cm5z IGZ1bmNzLT4qKCkgcmV0dXJuIHZhbHVlCisgKiAgICAgICBpbiBjYXNlIFdB TEtfVFJFRV9FUlJPUl9TVE9QIGlzIHJldHVybmVkLCBlcnJubyBzaG91bGQg YmUgc2V0CisgKiAgV0FMS19UUkVFX09LOiB0cmVlIHdhbGsgaXMgY29udGlu dWluZworICogIFdBTEtfVFJFRV9TS0lQX0NISUxEUkVOOiB0cmVlIHdhbGsg d29uJ3QgZGVzY2VuZCBiZWxvdyBjdXJyZW50IG5vZGUsIGJ1dAorICogICAg ICAgd2FsayBjb250aW51ZXMKKyAqICBXQUxLX1RSRUVfUk1fQ0hJTERFTlRS WTogUmVtb3ZlIHRoZSBjaGlsZCBlbnRyeSBmcm9tIGl0cyBwYXJlbnQgYW5k IHdyaXRlCisgKiAgICAgICB0aGUgbW9kaWZpZWQgcGFyZW50IG5vZGUgYmFj ayB0byB0aGUgZGF0YSBiYXNlLCBpbXBsaWVzIHRvIG5vdCBkZXNjZW5kCisg KiAgICAgICBiZWxvdyB0aGUgY3VycmVudCBub2RlLCBidXQgdG8gY29udGlu dWUgdGhlIHdhbGsKKyAqIGZ1bmNzLT4qKCkgaXMgYWxsb3dlZCB0byBtb2Rp ZnkgdGhlIG5vZGUgaXQgaXMgY2FsbGVkIGZvciBpbiB0aGUgZGF0YSBiYXNl LgorICogSW4gY2FzZSBmdW5jcy0+ZW50ZXIoKSBpcyBkZWxldGluZyB0aGUg bm9kZSwgaXQgbXVzdCBub3QgcmV0dXJuIFdBTEtfVFJFRV9PSworICogaW4g b3JkZXIgdG8gYXZvaWQgZGVzY2VuZGluZyBpbnRvIG5vIGxvbmdlciBleGlz dGluZyBjaGlsZHJlbi4KKyAqLworLyogUmV0dXJuIHZhbHVlcyBmb3IgZnVu Y3MtPiooKSBhbmQgd2Fsa19ub2RlX3RyZWUoKS4gKi8KKyNkZWZpbmUgV0FM S19UUkVFX1NVQ0NFU1NfU1RPUCAgLTEwMCAgICAvKiBTdG9wIHdhbGsgZWFy bHksIG5vIGVycm9yLiAqLworI2RlZmluZSBXQUxLX1RSRUVfRVJST1JfU1RP UCAgICAtMSAgICAgIC8qIFN0b3Agd2FsayBkdWUgdG8gZXJyb3IuICovCisj ZGVmaW5lIFdBTEtfVFJFRV9PSyAgICAgICAgICAgIDAgICAgICAgLyogTm8g ZXJyb3IuICovCisvKiBSZXR1cm4gdmFsdWUgZm9yIGZ1bmNzLT4qKCkgb25s eS4gKi8KKyNkZWZpbmUgV0FMS19UUkVFX1NLSVBfQ0hJTERSRU4gMSAgICAg ICAvKiBEb24ndCByZWN1cnNlIGJlbG93IGN1cnJlbnQgbm9kZS4gKi8KKyNk ZWZpbmUgV0FMS19UUkVFX1JNX0NISUxERU5UUlkgMiAgICAgICAvKiBSZW1v dmUgY2hpbGQgZW50cnkgZnJvbSBwYXJlbnQuICovCisKK3N0cnVjdCB3YWxr X2Z1bmNzIHsKKwlpbnQgKCplbnRlcikoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1 Y3QgY29ubmVjdGlvbiAqY29ubiwKKwkJICAgICBzdHJ1Y3Qgbm9kZSAqbm9k ZSwgdm9pZCAqYXJnKTsKKwlpbnQgKCpleGl0KShjb25zdCB2b2lkICpjdHgs IHN0cnVjdCBjb25uZWN0aW9uICpjb25uLAorCQkgICAgc3RydWN0IG5vZGUg Km5vZGUsIHZvaWQgKmFyZyk7CisJaW50ICgqZW5vZW50KShjb25zdCB2b2lk ICpjdHgsIHN0cnVjdCBjb25uZWN0aW9uICpjb25uLAorCQkgICAgICBzdHJ1 Y3Qgbm9kZSAqcGFyZW50LCBjaGFyICpuYW1lLCB2b2lkICphcmcpOworfTsK KworaW50IHdhbGtfbm9kZV90cmVlKGNvbnN0IHZvaWQgKmN0eCwgc3RydWN0 IGNvbm5lY3Rpb24gKmNvbm4sIGNvbnN0IGNoYXIgKnJvb3QsCisJCSAgIHN0 cnVjdCB3YWxrX2Z1bmNzICpmdW5jcywgdm9pZCAqYXJnKTsKKwogI2VuZGlm IC8qIF9YRU5TVE9SRURfQ09SRV9IICovCiAKIC8qCg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.16-04.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.16-04.patch" Content-Transfer-Encoding: base64 RnJvbSBiZGM5MzFmYjVkY2ViYmQ4ZDBlNDRiNWQ4YmQzZmI5MTA2ZWU4NTk2 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHNpbXBsaWZ5 IGNoZWNrX3N0b3JlKCkKCmNoZWNrX3N0b3JlKCkgaXMgdXNpbmcgYSBoYXNo IHRhYmxlIGZvciBzdG9yaW5nIGFsbCBub2RlIG5hbWVzIGl0IGhhcwpmb3Vu ZCB2aWEgd2Fsa2luZyB0aGUgdHJlZS4gQWRkaXRpb25hbGx5IGl0IHVzaW5n IGFub3RoZXIgaGFzaCB0YWJsZQpmb3IgYWxsIGNoaWxkcmVuIG9mIGEgbm9k ZSB0byBkZXRlY3QgZHVwbGljYXRlIGNoaWxkIG5hbWVzLgoKU2ltcGxpZnkg dGhhdCBieSBkcm9wcGluZyB0aGUgc2Vjb25kIGhhc2ggdGFibGUgYXMgdGhl IGZpcnN0IG9uZSBpcwphbHJlYWR5IGhvbGRpbmcgYWxsIHRoZSBuZWVkZWQg aW5mb3JtYXRpb24uCgpUaGlzIGlzIHBhcnQgb2YgWFNBLTQxOCAvIENWRS0y MDIyLTQyMzIxLgoKUmVwb3J0ZWQtYnk6IEp1bGllbiBHcmFsbCA8ZHZyYWJl bEBhbWF6b24uY28udWs+ClNpZ25lZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3Mg PGpncm9zc0BzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IEp1bGllbiBHcmFsbCA8 amdyYWxsQGFtYXpvbi5jb20+CgpkaWZmIC0tZ2l0IGEvdG9vbHMveGVuc3Rv cmUveGVuc3RvcmVkX2NvcmUuYyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3Jl ZF9jb3JlLmMKaW5kZXggMmNkYTNlZTM3NWFiLi43NjBmM2MxNmM3OTQgMTAw NjQ0Ci0tLSBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMKKysr IGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYwpAQCAtMjQ3Nyw1 MCArMjQ3NywzNCBAQCBzdGF0aWMgaW50IGNoZWNrX3N0b3JlXyhjb25zdCBj aGFyICpuYW1lLCBzdHJ1Y3QgaGFzaHRhYmxlICpyZWFjaGFibGUpCiAJaWYg KG5vZGUpIHsKIAkJc2l6ZV90IGkgPSAwOwogCi0JCXN0cnVjdCBoYXNodGFi bGUgKiBjaGlsZHJlbiA9Ci0JCQljcmVhdGVfaGFzaHRhYmxlKDE2LCBoYXNo X2Zyb21fa2V5X2ZuLCBrZXlzX2VxdWFsX2ZuKTsKLQkJaWYgKCFjaGlsZHJl bikgewotCQkJbG9nKCJjaGVja19zdG9yZSBjcmVhdGUgdGFibGU6IEVOT01F TSIpOwotCQkJcmV0dXJuIEVOT01FTTsKLQkJfQotCiAJCWlmICghcmVtZW1i ZXJfc3RyaW5nKHJlYWNoYWJsZSwgbmFtZSkpIHsKLQkJCWhhc2h0YWJsZV9k ZXN0cm95KGNoaWxkcmVuLCAwKTsKIAkJCWxvZygiY2hlY2tfc3RvcmU6IEVO T01FTSIpOwogCQkJcmV0dXJuIEVOT01FTTsKIAkJfQogCiAJCXdoaWxlIChp IDwgbm9kZS0+Y2hpbGRsZW4gJiYgIXJldCkgewotCQkJc3RydWN0IG5vZGUg KmNoaWxkbm9kZTsKKwkJCXN0cnVjdCBub2RlICpjaGlsZG5vZGUgPSBOVUxM OwogCQkJc2l6ZV90IGNoaWxkbGVuID0gc3RybGVuKG5vZGUtPmNoaWxkcmVu ICsgaSk7Ci0JCQljaGFyICogY2hpbGRuYW1lID0gY2hpbGRfbmFtZShOVUxM LCBub2RlLT5uYW1lLAotCQkJCQkJICAgICAgbm9kZS0+Y2hpbGRyZW4gKyBp KTsKKwkJCWNoYXIgKmNoaWxkbmFtZSA9IGNoaWxkX25hbWUoTlVMTCwgbm9k ZS0+bmFtZSwKKwkJCQkJCSAgICAgbm9kZS0+Y2hpbGRyZW4gKyBpKTsKIAog CQkJaWYgKCFjaGlsZG5hbWUpIHsKIAkJCQlsb2coImNoZWNrX3N0b3JlOiBF Tk9NRU0iKTsKIAkJCQlyZXQgPSBFTk9NRU07CiAJCQkJYnJlYWs7CiAJCQl9 CisKKwkJCWlmIChoYXNodGFibGVfc2VhcmNoKHJlYWNoYWJsZSwgY2hpbGRu YW1lKSkgeworCQkJCWxvZygiY2hlY2tfc3RvcmU6ICclcycgaXMgZHVwbGlj YXRlZCEiLAorCQkJCSAgICBjaGlsZG5hbWUpOworCQkJCWkgPSBybV9jaGls ZF9lbnRyeShub2RlLCBpLCBjaGlsZGxlbik7CisJCQkJZ290byBuZXh0Owor CQkJfQorCiAJCQljaGlsZG5vZGUgPSByZWFkX25vZGUoTlVMTCwgY2hpbGRu YW1lLCBjaGlsZG5hbWUpOwotCQkJCisKIAkJCWlmIChjaGlsZG5vZGUpIHsK LQkJCQlpZiAoaGFzaHRhYmxlX3NlYXJjaChjaGlsZHJlbiwgY2hpbGRuYW1l KSkgewotCQkJCQlsb2coImNoZWNrX3N0b3JlOiAnJXMnIGlzIGR1cGxpY2F0 ZWQhIiwKLQkJCQkJICAgIGNoaWxkbmFtZSk7Ci0JCQkJCWkgPSBybV9jaGls ZF9lbnRyeShub2RlLCBpLCBjaGlsZGxlbik7Ci0JCQkJfQotCQkJCWVsc2Ug ewotCQkJCQlpZiAoIXJlbWVtYmVyX3N0cmluZyhjaGlsZHJlbiwKLQkJCQkJ CQkgICAgIGNoaWxkbmFtZSkpIHsKLQkJCQkJCWxvZygiY2hlY2tfc3RvcmU6 IEVOT01FTSIpOwotCQkJCQkJdGFsbG9jX2ZyZWUoY2hpbGRub2RlKTsKLQkJ CQkJCXRhbGxvY19mcmVlKGNoaWxkbmFtZSk7Ci0JCQkJCQlyZXQgPSBFTk9N RU07Ci0JCQkJCQlicmVhazsKLQkJCQkJfQotCQkJCQlyZXQgPSBjaGVja19z dG9yZV8oY2hpbGRuYW1lLAotCQkJCQkJCSAgIHJlYWNoYWJsZSk7Ci0JCQkJ fQorCQkJCXJldCA9IGNoZWNrX3N0b3JlXyhjaGlsZG5hbWUsIHJlYWNoYWJs ZSk7CiAJCQl9IGVsc2UgaWYgKGVycm5vICE9IEVOT01FTSkgewogCQkJCWxv ZygiY2hlY2tfc3RvcmU6IE5vIGNoaWxkICclcycgZm91bmQhXG4iLAogCQkJ CSAgICBjaGlsZG5hbWUpOwpAQCAtMjUzMCwxOSArMjUxNCwxOCBAQCBzdGF0 aWMgaW50IGNoZWNrX3N0b3JlXyhjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3Qg aGFzaHRhYmxlICpyZWFjaGFibGUpCiAJCQkJcmV0ID0gRU5PTUVNOwogCQkJ fQogCisgbmV4dDoKIAkJCXRhbGxvY19mcmVlKGNoaWxkbm9kZSk7CiAJCQl0 YWxsb2NfZnJlZShjaGlsZG5hbWUpOwogCQkJaSArPSBjaGlsZGxlbiArIDE7 CiAJCX0KIAotCQloYXNodGFibGVfZGVzdHJveShjaGlsZHJlbiwgMCAvKiBE b24ndCBmcmVlIHZhbHVlcyAodGhleSBhcmUKLQkJCQkJCSBhbGwgKHZvaWQg KikxKSAqLyk7CiAJCXRhbGxvY19mcmVlKG5vZGUpOwogCX0gZWxzZSBpZiAo ZXJybm8gIT0gRU5PTUVNKSB7CiAJCS8qIEltcG9zc2libGUsIGJlY2F1c2Ug bm8gZGF0YWJhc2Ugc2hvdWxkIGV2ZXIgYmUgd2l0aG91dCB0aGUKIAkJICAg cm9vdCwgYW5kIG90aGVyd2lzZSwgd2UndmUganVzdCBjaGVja2VkIGluIG91 ciBjYWxsZXIKIAkJICAgKHdoaWNoIG1hZGUgYSByZWN1cnNpdmUgY2FsbCB0 byBnZXQgaGVyZSkuICovCi0JCSAgIAorCiAJCWxvZygiY2hlY2tfc3RvcmU6 IE5vIGNoaWxkICclcycgZm91bmQ6IGltcG9zc2libGUhIiwgbmFtZSk7CiAJ fSBlbHNlIHsKIAkJbG9nKCJjaGVja19zdG9yZTogRU5PTUVNIik7Cg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.16-05.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.16-05.patch" Content-Transfer-Encoding: base64 RnJvbSAyNzgxN2YwYTdkNjgwMmJlMDRlOGY0M2EwOTAwYjAyZjg4MWIyOGIy IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHVzZSB0cmVl d2FsayBmb3IgY2hlY2tfc3RvcmUoKQoKSW5zdGVhZCBvZiBkb2luZyBhbiBv cGVuIHRyZWUgd2FsayB1c2luZyBjYWxsIHJlY3Vyc2lvbiwgdXNlCndhbGtf bm9kZV90cmVlKCkgd2hlbiBjaGVja2luZyB0aGUgc3RvcmUgZm9yIGluY29u c2lzdGVuY2llcy4KClRoaXMgd2lsbCByZWR1Y2UgY29kZSBzaXplIGFuZCBh dm9pZCBtYW55IG5lc3RpbmcgbGV2ZWxzIG9mIGZ1bmN0aW9uCmNhbGxzIHdo aWNoIGNvdWxkIHBvdGVudGlhbGx5IGV4aGF1c3QgdGhlIHN0YWNrLgoKVGhp cyBpcyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9y dGVkLWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpT aWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ ClJldmlld2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29t PgoKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3Jl LmMgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IDc2 MGYzYzE2Yzc5NC4uZWZkZDE4ODhmZDc4IDEwMDY0NAotLS0gYS90b29scy94 ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3Jl L3hlbnN0b3JlZF9jb3JlLmMKQEAgLTI0NDQsMTggKzI0NDQsNiBAQCBpbnQg cmVtZW1iZXJfc3RyaW5nKHN0cnVjdCBoYXNodGFibGUgKmhhc2gsIGNvbnN0 IGNoYXIgKnN0cikKIAlyZXR1cm4gaGFzaHRhYmxlX2luc2VydChoYXNoLCBr LCAodm9pZCAqKTEpOwogfQogCi1zdGF0aWMgaW50IHJtX2NoaWxkX2VudHJ5 KHN0cnVjdCBub2RlICpub2RlLCBzaXplX3Qgb2ZmLCBzaXplX3QgbGVuKQot ewotCWlmICghcmVjb3ZlcnkpCi0JCXJldHVybiBvZmY7Ci0KLQlpZiAocmVt b3ZlX2NoaWxkX2VudHJ5KE5VTEwsIG5vZGUsIG9mZikpCi0JCWxvZygiY2hl Y2tfc3RvcmU6IGNoaWxkIGVudHJ5IGNvdWxkIG5vdCBiZSByZW1vdmVkIGZy b20gJyVzJyIsCi0JCSAgICBub2RlLT5uYW1lKTsKLQotCXJldHVybiBvZmYg LSBsZW4gLSAxOwotfQotCiAvKioKICAqIEEgbm9kZSBoYXMgYSBjaGlsZHJl biBmaWVsZCB0aGF0IG5hbWVzIHRoZSBjaGlsZHJlbiBvZiB0aGUgbm9kZSwg c2VwYXJhdGVkCiAgKiBieSBOVUxzLiAgV2UgY2hlY2sgd2hldGhlciB0aGVy ZSBhcmUgZW50cmllcyBpbiB0aGVyZSB0aGF0IGFyZSBkdXBsaWNhdGVkCkBA IC0yNDY5LDcwICsyNDU3LDI5IEBAIHN0YXRpYyBpbnQgcm1fY2hpbGRfZW50 cnkoc3RydWN0IG5vZGUgKm5vZGUsIHNpemVfdCBvZmYsIHNpemVfdCBsZW4p CiAgKiBBcyB3ZSBnbywgd2UgcmVjb3JkIGVhY2ggbm9kZSBpbiB0aGUgZ2l2 ZW4gcmVhY2hhYmxlIGhhc2h0YWJsZS4gIFRoZXNlCiAgKiBlbnRyaWVzIHdp bGwgYmUgdXNlZCBsYXRlciBpbiBjbGVhbl9zdG9yZS4KICAqLwotc3RhdGlj IGludCBjaGVja19zdG9yZV8oY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IGhh c2h0YWJsZSAqcmVhY2hhYmxlKQorc3RhdGljIGludCBjaGVja19zdG9yZV9z dGVwKGNvbnN0IHZvaWQgKmN0eCwgc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4s CisJCQkgICAgc3RydWN0IG5vZGUgKm5vZGUsIHZvaWQgKmFyZykKIHsKLQlz dHJ1Y3Qgbm9kZSAqbm9kZSA9IHJlYWRfbm9kZShOVUxMLCBuYW1lLCBuYW1l KTsKLQlpbnQgcmV0ID0gMDsKLQotCWlmIChub2RlKSB7Ci0JCXNpemVfdCBp ID0gMDsKLQotCQlpZiAoIXJlbWVtYmVyX3N0cmluZyhyZWFjaGFibGUsIG5h bWUpKSB7Ci0JCQlsb2coImNoZWNrX3N0b3JlOiBFTk9NRU0iKTsKLQkJCXJl dHVybiBFTk9NRU07Ci0JCX0KLQotCQl3aGlsZSAoaSA8IG5vZGUtPmNoaWxk bGVuICYmICFyZXQpIHsKLQkJCXN0cnVjdCBub2RlICpjaGlsZG5vZGUgPSBO VUxMOwotCQkJc2l6ZV90IGNoaWxkbGVuID0gc3RybGVuKG5vZGUtPmNoaWxk cmVuICsgaSk7Ci0JCQljaGFyICpjaGlsZG5hbWUgPSBjaGlsZF9uYW1lKE5V TEwsIG5vZGUtPm5hbWUsCi0JCQkJCQkgICAgIG5vZGUtPmNoaWxkcmVuICsg aSk7Ci0KLQkJCWlmICghY2hpbGRuYW1lKSB7Ci0JCQkJbG9nKCJjaGVja19z dG9yZTogRU5PTUVNIik7Ci0JCQkJcmV0ID0gRU5PTUVNOwotCQkJCWJyZWFr OwotCQkJfQorCXN0cnVjdCBoYXNodGFibGUgKnJlYWNoYWJsZSA9IGFyZzsK IAotCQkJaWYgKGhhc2h0YWJsZV9zZWFyY2gocmVhY2hhYmxlLCBjaGlsZG5h bWUpKSB7Ci0JCQkJbG9nKCJjaGVja19zdG9yZTogJyVzJyBpcyBkdXBsaWNh dGVkISIsCi0JCQkJICAgIGNoaWxkbmFtZSk7Ci0JCQkJaSA9IHJtX2NoaWxk X2VudHJ5KG5vZGUsIGksIGNoaWxkbGVuKTsKLQkJCQlnb3RvIG5leHQ7Ci0J CQl9Ci0KLQkJCWNoaWxkbm9kZSA9IHJlYWRfbm9kZShOVUxMLCBjaGlsZG5h bWUsIGNoaWxkbmFtZSk7Ci0KLQkJCWlmIChjaGlsZG5vZGUpIHsKLQkJCQly ZXQgPSBjaGVja19zdG9yZV8oY2hpbGRuYW1lLCByZWFjaGFibGUpOwotCQkJ fSBlbHNlIGlmIChlcnJubyAhPSBFTk9NRU0pIHsKLQkJCQlsb2coImNoZWNr X3N0b3JlOiBObyBjaGlsZCAnJXMnIGZvdW5kIVxuIiwKLQkJCQkgICAgY2hp bGRuYW1lKTsKLQkJCQlpID0gcm1fY2hpbGRfZW50cnkobm9kZSwgaSwgY2hp bGRsZW4pOwotCQkJfSBlbHNlIHsKLQkJCQlsb2coImNoZWNrX3N0b3JlOiBF Tk9NRU0iKTsKLQkJCQlyZXQgPSBFTk9NRU07Ci0JCQl9CisJaWYgKGhhc2h0 YWJsZV9zZWFyY2gocmVhY2hhYmxlLCAodm9pZCAqKW5vZGUtPm5hbWUpKSB7 CisJCWxvZygiY2hlY2tfc3RvcmU6ICclcycgaXMgZHVwbGljYXRlZCEiLCBu b2RlLT5uYW1lKTsKKwkJcmV0dXJuIHJlY292ZXJ5ID8gV0FMS19UUkVFX1JN X0NISUxERU5UUlkKKwkJCQk6IFdBTEtfVFJFRV9TS0lQX0NISUxEUkVOOwor CX0KIAotIG5leHQ6Ci0JCQl0YWxsb2NfZnJlZShjaGlsZG5vZGUpOwotCQkJ dGFsbG9jX2ZyZWUoY2hpbGRuYW1lKTsKLQkJCWkgKz0gY2hpbGRsZW4gKyAx OwotCQl9CisJaWYgKCFyZW1lbWJlcl9zdHJpbmcocmVhY2hhYmxlLCBub2Rl LT5uYW1lKSkKKwkJcmV0dXJuIFdBTEtfVFJFRV9FUlJPUl9TVE9QOwogCi0J CXRhbGxvY19mcmVlKG5vZGUpOwotCX0gZWxzZSBpZiAoZXJybm8gIT0gRU5P TUVNKSB7Ci0JCS8qIEltcG9zc2libGUsIGJlY2F1c2Ugbm8gZGF0YWJhc2Ug c2hvdWxkIGV2ZXIgYmUgd2l0aG91dCB0aGUKLQkJICAgcm9vdCwgYW5kIG90 aGVyd2lzZSwgd2UndmUganVzdCBjaGVja2VkIGluIG91ciBjYWxsZXIKLQkJ ICAgKHdoaWNoIG1hZGUgYSByZWN1cnNpdmUgY2FsbCB0byBnZXQgaGVyZSku ICovCisJcmV0dXJuIFdBTEtfVFJFRV9PSzsKK30KIAotCQlsb2coImNoZWNr X3N0b3JlOiBObyBjaGlsZCAnJXMnIGZvdW5kOiBpbXBvc3NpYmxlISIsIG5h bWUpOwotCX0gZWxzZSB7Ci0JCWxvZygiY2hlY2tfc3RvcmU6IEVOT01FTSIp OwotCQlyZXQgPSBFTk9NRU07Ci0JfQorc3RhdGljIGludCBjaGVja19zdG9y ZV9lbm9lbnQoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlvbiAq Y29ubiwKKwkJCSAgICAgIHN0cnVjdCBub2RlICpwYXJlbnQsIGNoYXIgKm5h bWUsIHZvaWQgKmFyZykKK3sKKwlsb2coImNoZWNrX3N0b3JlOiBub2RlICcl cycgbm90IGZvdW5kIiwgbmFtZSk7CiAKLQlyZXR1cm4gcmV0OworCXJldHVy biByZWNvdmVyeSA/IFdBTEtfVFJFRV9STV9DSElMREVOVFJZIDogV0FMS19U UkVFX09LOwogfQogCiAKQEAgLTI1ODEsMjQgKzI1MjgsMjggQEAgc3RhdGlj IHZvaWQgY2xlYW5fc3RvcmUoc3RydWN0IGhhc2h0YWJsZSAqcmVhY2hhYmxl KQogCiB2b2lkIGNoZWNrX3N0b3JlKHZvaWQpCiB7Ci0JY2hhciAqIHJvb3Qg PSB0YWxsb2Nfc3RyZHVwKE5VTEwsICIvIik7Ci0Jc3RydWN0IGhhc2h0YWJs ZSAqIHJlYWNoYWJsZSA9Ci0JCWNyZWF0ZV9oYXNodGFibGUoMTYsIGhhc2hf ZnJvbV9rZXlfZm4sIGtleXNfZXF1YWxfZm4pOwotIAorCXN0cnVjdCBoYXNo dGFibGUgKnJlYWNoYWJsZTsKKwlzdHJ1Y3Qgd2Fsa19mdW5jcyB3YWxrZnVu Y3MgPSB7CisJCS5lbnRlciA9IGNoZWNrX3N0b3JlX3N0ZXAsCisJCS5lbm9l bnQgPSBjaGVja19zdG9yZV9lbm9lbnQsCisJfTsKKworCXJlYWNoYWJsZSA9 IGNyZWF0ZV9oYXNodGFibGUoMTYsIGhhc2hfZnJvbV9rZXlfZm4sIGtleXNf ZXF1YWxfZm4pOwogCWlmICghcmVhY2hhYmxlKSB7CiAJCWxvZygiY2hlY2tf c3RvcmU6IEVOT01FTSIpOwogCQlyZXR1cm47CiAJfQogCiAJbG9nKCJDaGVj a2luZyBzdG9yZSAuLi4iKTsKLQlpZiAoIWNoZWNrX3N0b3JlXyhyb290LCBy ZWFjaGFibGUpICYmCi0JICAgICFjaGVja190cmFuc2FjdGlvbnMocmVhY2hh YmxlKSkKKwlpZiAod2Fsa19ub2RlX3RyZWUoTlVMTCwgTlVMTCwgIi8iLCAm d2Fsa2Z1bmNzLCByZWFjaGFibGUpKSB7CisJCWlmIChlcnJubyA9PSBFTk9N RU0pCisJCQlsb2coImNoZWNrX3N0b3JlOiBFTk9NRU0iKTsKKwl9IGVsc2Ug aWYgKCFjaGVja190cmFuc2FjdGlvbnMocmVhY2hhYmxlKSkKIAkJY2xlYW5f c3RvcmUocmVhY2hhYmxlKTsKIAlsb2coIkNoZWNraW5nIHN0b3JlIGNvbXBs ZXRlLiIpOwogCiAJaGFzaHRhYmxlX2Rlc3Ryb3kocmVhY2hhYmxlLCAwIC8q IERvbid0IGZyZWUgdmFsdWVzICh0aGV5IGFyZSBhbGwKIAkJCQkJICAodm9p ZCAqKTEpICovKTsKLQl0YWxsb2NfZnJlZShyb290KTsKIH0KIAogCg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.16-06.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.16-06.patch" Content-Transfer-Encoding: base64 RnJvbSA2ZWEwZmZiZDg4YjExZjIzNzc5ZDc2MzUwMWVjMTM3MGI1OTBiYjJh IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHVzZSB0cmVl d2FsayBmb3IgZGVsZXRpbmcgbm9kZXMKCkluc3RlYWQgb2YgZG9pbmcgYW4g b3BlbiB0cmVlIHdhbGsgdXNpbmcgY2FsbCByZWN1cnNpb24sIHVzZQp3YWxr X25vZGVfdHJlZSgpIHdoZW4gZGVsZXRpbmcgYSBzdWItdHJlZSBvZiBub2Rl cy4KClRoaXMgd2lsbCByZWR1Y2UgY29kZSBzaXplIGFuZCBhdm9pZCBtYW55 IG5lc3RpbmcgbGV2ZWxzIG9mIGZ1bmN0aW9uCmNhbGxzIHdoaWNoIGNvdWxk IHBvdGVudGlhbGx5IGV4aGF1c3QgdGhlIHN0YWNrLgoKVGhpcyBpcyBwYXJ0 IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9ydGVkLWJ5OiBK dWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpTaWduZWQtb2Zm LWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+CkFja2VkLWJ5 OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoKZGlmZiAtLWdp dCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMgYi90b29scy94 ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IGVmZGQxODg4ZmQ3OC4u NThmYjY1MTU0MmVjIDEwMDY0NAotLS0gYS90b29scy94ZW5zdG9yZS94ZW5z dG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9j b3JlLmMKQEAgLTEzMzQsMjEgKzEzMzQsNiBAQCBzdGF0aWMgaW50IGRvX3Jl YWQoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwK IAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIHZvaWQgZGVsZXRlX25vZGVfc2lu Z2xlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBzdHJ1Y3Qgbm9kZSAqbm9k ZSkKLXsKLQlUREJfREFUQSBrZXk7Ci0KLQlpZiAoYWNjZXNzX25vZGUoY29u biwgbm9kZSwgTk9ERV9BQ0NFU1NfREVMRVRFLCAma2V5KSkKLQkJcmV0dXJu OwotCi0JaWYgKGRvX3RkYl9kZWxldGUoY29ubiwgJmtleSwgJm5vZGUtPmFj YykgIT0gMCkgewotCQljb3JydXB0KGNvbm4sICJDb3VsZCBub3QgZGVsZXRl ICclcyciLCBub2RlLT5uYW1lKTsKLQkJcmV0dXJuOwotCX0KLQotCWRvbWFp bl9lbnRyeV9kZWMoY29ubiwgbm9kZSk7Ci19Ci0KIC8qIE11c3Qgbm90IGJl IC8gKi8KIHN0YXRpYyBjaGFyICpiYXNlbmFtZShjb25zdCBjaGFyICpuYW1l KQogewpAQCAtMTYxOSw2OSArMTYwNCw1OSBAQCBzdGF0aWMgaW50IHJlbW92 ZV9jaGlsZF9lbnRyeShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgc3RydWN0 IG5vZGUgKm5vZGUsCiAJcmV0dXJuIHdyaXRlX25vZGUoY29ubiwgbm9kZSwg dHJ1ZSk7CiB9CiAKLXN0YXRpYyB2b2lkIGRlbGV0ZV9jaGlsZChzdHJ1Y3Qg Y29ubmVjdGlvbiAqY29ubiwKLQkJCSBzdHJ1Y3Qgbm9kZSAqbm9kZSwgY29u c3QgY2hhciAqY2hpbGRuYW1lKQorc3RhdGljIGludCBkZWxldGVfY2hpbGQo c3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sCisJCQlzdHJ1Y3Qgbm9kZSAqbm9k ZSwgY29uc3QgY2hhciAqY2hpbGRuYW1lKQogewogCXVuc2lnbmVkIGludCBp OwogCiAJZm9yIChpID0gMDsgaSA8IG5vZGUtPmNoaWxkbGVuOyBpICs9IHN0 cmxlbihub2RlLT5jaGlsZHJlbitpKSArIDEpIHsKIAkJaWYgKHN0cmVxKG5v ZGUtPmNoaWxkcmVuK2ksIGNoaWxkbmFtZSkpIHsKLQkJCWlmIChyZW1vdmVf Y2hpbGRfZW50cnkoY29ubiwgbm9kZSwgaSkpCi0JCQkJY29ycnVwdChjb25u LCAiQ2FuJ3QgdXBkYXRlIHBhcmVudCBub2RlICclcyciLAotCQkJCQlub2Rl LT5uYW1lKTsKLQkJCXJldHVybjsKKwkJCWVycm5vID0gcmVtb3ZlX2NoaWxk X2VudHJ5KGNvbm4sIG5vZGUsIGkpID8gRUlPIDogMDsKKwkJCXJldHVybiBl cnJubzsKIAkJfQogCX0KIAljb3JydXB0KGNvbm4sICJDYW4ndCBmaW5kIGNo aWxkICclcycgaW4gJXMiLCBjaGlsZG5hbWUsIG5vZGUtPm5hbWUpOworCisJ ZXJybm8gPSBFSU87CisJcmV0dXJuIGVycm5vOwogfQogCi1zdGF0aWMgaW50 IGRlbGV0ZV9ub2RlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBjb25zdCB2 b2lkICpjdHgsCi0JCSAgICAgICBzdHJ1Y3Qgbm9kZSAqcGFyZW50LCBzdHJ1 Y3Qgbm9kZSAqbm9kZSwgYm9vbCB3YXRjaF9leGFjdCkKK3N0YXRpYyBpbnQg ZGVsbm9kZV9zdWIoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlv biAqY29ubiwKKwkJICAgICAgIHN0cnVjdCBub2RlICpub2RlLCB2b2lkICph cmcpCiB7Ci0JY2hhciAqbmFtZTsKKwljb25zdCBjaGFyICpyb290ID0gYXJn OworCWJvb2wgd2F0Y2hfZXhhY3Q7CisJaW50IHJldDsKKwlUREJfREFUQSBr ZXk7CiAKLQkvKiBEZWxldGUgY2hpbGRyZW4uICovCi0Jd2hpbGUgKG5vZGUt PmNoaWxkbGVuKSB7Ci0JCXN0cnVjdCBub2RlICpjaGlsZDsKKwkvKiBBbnkg ZXJyb3IgaGVyZSB3aWxsIHByb2JhYmx5IGJlIHJlcGVhdGVkIGZvciBhbGwg Zm9sbG93aW5nIGNhbGxzLiAqLworCXJldCA9IGFjY2Vzc19ub2RlKGNvbm4s IG5vZGUsIE5PREVfQUNDRVNTX0RFTEVURSwgJmtleSk7CisJaWYgKHJldCA+ IDApCisJCXJldHVybiBXQUxLX1RSRUVfU1VDQ0VTU19TVE9QOwogCi0JCW5h bWUgPSB0YWxsb2NfYXNwcmludGYobm9kZSwgIiVzLyVzIiwgbm9kZS0+bmFt ZSwKLQkJCQkgICAgICAgbm9kZS0+Y2hpbGRyZW4pOwotCQljaGlsZCA9IG5h bWUgPyByZWFkX25vZGUoY29ubiwgbm9kZSwgbmFtZSkgOiBOVUxMOwotCQlp ZiAoY2hpbGQpIHsKLQkJCWlmIChkZWxldGVfbm9kZShjb25uLCBjdHgsIG5v ZGUsIGNoaWxkLCB0cnVlKSkKLQkJCQlyZXR1cm4gZXJybm87Ci0JCX0gZWxz ZSB7Ci0JCQl0cmFjZSgiZGVsZXRlX25vZGU6IEVycm9yIGRlbGV0aW5nIGNo aWxkICclcy8lcychXG4iLAotCQkJICAgICAgbm9kZS0+bmFtZSwgbm9kZS0+ Y2hpbGRyZW4pOwotCQkJLyogUXVpdCBkZWxldGluZy4gKi8KLQkJCWVycm5v ID0gRU5PTUVNOwotCQkJcmV0dXJuIGVycm5vOwotCQl9Ci0JCXRhbGxvY19m cmVlKG5hbWUpOwotCX0KKwkvKiBJbiBjYXNlIG9mIGVycm9yIHN0b3AgdGhl IHdhbGsuICovCisJaWYgKCFyZXQgJiYgZG9fdGRiX2RlbGV0ZShjb25uLCAm a2V5LCAmbm9kZS0+YWNjKSkKKwkJcmV0dXJuIFdBTEtfVFJFRV9TVUNDRVNT X1NUT1A7CiAKIAkvKgogCSAqIEZpcmUgdGhlIHdhdGNoZXMgbm93LCB3aGVu IHdlIGNhbiBzdGlsbCBzZWUgdGhlIG5vZGUgcGVybWlzc2lvbnMuCiAJICog VGhpcyBmaW5lIGFzIHdlIGFyZSBzaW5nbGUgdGhyZWFkZWQgYW5kIHRoZSBu ZXh0IHBvc3NpYmxlIHJlYWQgd2lsbAogCSAqIGJlIGhhbmRsZWQgb25seSBh ZnRlciB0aGUgbm9kZSBoYXMgYmVlbiByZWFsbHkgcmVtb3ZlZC4KLQkgKi8K KwkqLworCXdhdGNoX2V4YWN0ID0gc3RyY21wKHJvb3QsIG5vZGUtPm5hbWUp OwogCWZpcmVfd2F0Y2hlcyhjb25uLCBjdHgsIG5vZGUtPm5hbWUsIG5vZGUs IHdhdGNoX2V4YWN0LCBOVUxMKTsKLQlkZWxldGVfbm9kZV9zaW5nbGUoY29u biwgbm9kZSk7Ci0JZGVsZXRlX2NoaWxkKGNvbm4sIHBhcmVudCwgYmFzZW5h bWUobm9kZS0+bmFtZSkpOwotCXRhbGxvY19mcmVlKG5vZGUpOwogCi0JcmV0 dXJuIDA7CisJZG9tYWluX2VudHJ5X2RlYyhjb25uLCBub2RlKTsKKworCXJl dHVybiBXQUxLX1RSRUVfUk1fQ0hJTERFTlRSWTsKIH0KIAotc3RhdGljIGlu dCBfcm0oc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIGNvbnN0IHZvaWQgKmN0 eCwgc3RydWN0IG5vZGUgKm5vZGUsCi0JICAgICAgIGNvbnN0IGNoYXIgKm5h bWUpCitzdGF0aWMgaW50IF9ybShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwg Y29uc3Qgdm9pZCAqY3R4LCBjb25zdCBjaGFyICpuYW1lKQogewotCS8qCi0J ICogRGVsZXRpbmcgbm9kZSBieSBub2RlLCBzbyB0aGUgcmVzdWx0IGlzIGFs d2F5cyBjb25zaXN0ZW50IGV2ZW4gaW4KLQkgKiBjYXNlIG9mIGEgZmFpbHVy ZS4KLQkgKi8KIAlzdHJ1Y3Qgbm9kZSAqcGFyZW50OwogCWNoYXIgKnBhcmVu dG5hbWUgPSBnZXRfcGFyZW50KGN0eCwgbmFtZSk7CisJc3RydWN0IHdhbGtf ZnVuY3Mgd2Fsa2Z1bmNzID0geyAuZXhpdCA9IGRlbG5vZGVfc3ViIH07CisJ aW50IHJldDsKIAogCWlmICghcGFyZW50bmFtZSkKIAkJcmV0dXJuIGVycm5v OwpAQCAtMTY4OSw5ICsxNjY0LDIxIEBAIHN0YXRpYyBpbnQgX3JtKHN0cnVj dCBjb25uZWN0aW9uICpjb25uLCBjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBu b2RlICpub2RlLAogCXBhcmVudCA9IHJlYWRfbm9kZShjb25uLCBjdHgsIHBh cmVudG5hbWUpOwogCWlmICghcGFyZW50KQogCQlyZXR1cm4gcmVhZF9ub2Rl X2Nhbl9wcm9wYWdhdGVfZXJybm8oKSA/IGVycm5vIDogRUlOVkFMOwotCW5v ZGUtPnBhcmVudCA9IHBhcmVudDsKIAotCXJldHVybiBkZWxldGVfbm9kZShj b25uLCBjdHgsIHBhcmVudCwgbm9kZSwgZmFsc2UpOworCXJldCA9IHdhbGtf bm9kZV90cmVlKGN0eCwgY29ubiwgbmFtZSwgJndhbGtmdW5jcywgKHZvaWQg KiluYW1lKTsKKwlpZiAocmV0IDwgMCkgeworCQlpZiAocmV0ID09IFdBTEtf VFJFRV9FUlJPUl9TVE9QKSB7CisJCQljb3JydXB0KGNvbm4sICJlcnJvciB3 aGVuIGRlbGV0aW5nIHN1Yi1ub2RlcyBvZiAlc1xuIiwKKwkJCQluYW1lKTsK KwkJCWVycm5vID0gRUlPOworCQl9CisJCXJldHVybiBlcnJubzsKKwl9CisK KwlpZiAoZGVsZXRlX2NoaWxkKGNvbm4sIHBhcmVudCwgYmFzZW5hbWUobmFt ZSkpKQorCQlyZXR1cm4gZXJybm87CisKKwlyZXR1cm4gMDsKIH0KIAogCkBA IC0xNzI4LDcgKzE3MTUsNyBAQCBzdGF0aWMgaW50IGRvX3JtKGNvbnN0IHZv aWQgKmN0eCwgc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sCiAJaWYgKHN0cmVx KG5hbWUsICIvIikpCiAJCXJldHVybiBFSU5WQUw7CiAKLQlyZXQgPSBfcm0o Y29ubiwgY3R4LCBub2RlLCBuYW1lKTsKKwlyZXQgPSBfcm0oY29ubiwgY3R4 LCBuYW1lKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-4.16-07.patch" Content-Disposition: attachment; filename="xsa418/xsa418-4.16-07.patch" Content-Transfer-Encoding: base64 RnJvbSAxZWUyODFiMThiNTJiZWM4NzMzNWVhNjRlZTc0Y2MxNTllNjNkMDM2 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHVzZSB0cmVl d2FsayBmb3IgY3JlYXRpbmcgbm9kZSByZWNvcmRzCgpJbnN0ZWFkIG9mIGRv aW5nIGFuIG9wZW4gdHJlZSB3YWxrIHVzaW5nIGNhbGwgcmVjdXJzaW9uLCB1 c2UKd2Fsa19ub2RlX3RyZWUoKSB3aGVuIGNyZWF0aW5nIHRoZSBub2RlIHJl Y29yZHMgZHVyaW5nIGEgbGl2ZSB1cGRhdGUuCgpUaGlzIHdpbGwgcmVkdWNl IGNvZGUgc2l6ZSBhbmQgYXZvaWQgbWFueSBuZXN0aW5nIGxldmVscyBvZiBm dW5jdGlvbgpjYWxscyB3aGljaCBjb3VsZCBwb3RlbnRpYWxseSBleGhhdXN0 IHRoZSBzdGFjay4KClRoaXMgaXMgcGFydCBvZiBYU0EtNDE4IC8gQ1ZFLTIw MjItNDIzMjEuCgpSZXBvcnRlZC1ieTogSnVsaWVuIEdyYWxsIDxkdnJhYmVs QGFtYXpvbi5jby51az4KU2lnbmVkLW9mZi1ieTogSnVlcmdlbiBHcm9zcyA8 amdyb3NzQHN1c2UuY29tPgpSZXZpZXdlZC1ieTogSnVsaWVuIEdyYWxsIDxq Z3JhbGxAYW1hem9uLmNvbT4KCmRpZmYgLS1naXQgYS90b29scy94ZW5zdG9y ZS94ZW5zdG9yZWRfY29yZS5jIGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVk X2NvcmUuYwppbmRleCA1OGZiNjUxNTQyZWMuLjA1ZDM0OTc3OGJiNCAxMDA2 NDQKLS0tIGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYworKysg Yi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCkBAIC0zMTIwLDEw MSArMzEyMCw3NiBAQCBjb25zdCBjaGFyICpkdW1wX3N0YXRlX25vZGVfcGVy bXMoRklMRSAqZnAsIGNvbnN0IHN0cnVjdCB4c19wZXJtaXNzaW9ucyAqcGVy bXMsCiAJcmV0dXJuIE5VTEw7CiB9CiAKLXN0YXRpYyBjb25zdCBjaGFyICpk dW1wX3N0YXRlX25vZGVfdHJlZShGSUxFICpmcCwgY2hhciAqcGF0aCwKLQkJ CQkJdW5zaWduZWQgaW50IHBhdGhfbWF4X2xlbikKK3N0cnVjdCBkdW1wX25v ZGVfZGF0YSB7CisJRklMRSAqZnA7CisJY29uc3QgY2hhciAqZXJyOworfTsK Kworc3RhdGljIGludCBkdW1wX3N0YXRlX25vZGVfZXJyKHN0cnVjdCBkdW1w X25vZGVfZGF0YSAqZGF0YSwgY29uc3QgY2hhciAqZXJyKQogewotCXVuc2ln bmVkIGludCBwYXRobGVuLCBjaGlsZGxlbiwgcCA9IDA7CisJZGF0YS0+ZXJy ID0gZXJyOworCXJldHVybiBXQUxLX1RSRUVfRVJST1JfU1RPUDsKK30KKwor c3RhdGljIGludCBkdW1wX3N0YXRlX25vZGUoY29uc3Qgdm9pZCAqY3R4LCBz dHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwKKwkJCSAgIHN0cnVjdCBub2RlICpu b2RlLCB2b2lkICphcmcpCit7CisJc3RydWN0IGR1bXBfbm9kZV9kYXRhICpk YXRhID0gYXJnOworCUZJTEUgKmZwID0gZGF0YS0+ZnA7CisJdW5zaWduZWQg aW50IHBhdGhsZW47CiAJc3RydWN0IHhzX3N0YXRlX3JlY29yZF9oZWFkZXIg aGVhZDsKIAlzdHJ1Y3QgeHNfc3RhdGVfbm9kZSBzbjsKLQlUREJfREFUQSBr ZXksIGRhdGE7Ci0JY29uc3Qgc3RydWN0IHhzX3RkYl9yZWNvcmRfaGRyICpo ZHI7Ci0JY29uc3QgY2hhciAqY2hpbGQ7CiAJY29uc3QgY2hhciAqcmV0Owog Ci0JcGF0aGxlbiA9IHN0cmxlbihwYXRoKSArIDE7Ci0KLQlzZXRfdGRiX2tl eShwYXRoLCAma2V5KTsKLQlkYXRhID0gdGRiX2ZldGNoKHRkYl9jdHgsIGtl eSk7Ci0JaWYgKGRhdGEuZHB0ciA9PSBOVUxMKQotCQlyZXR1cm4gIkVycm9y IHJlYWRpbmcgbm9kZSI7Ci0KLQkvKiBDbGVhbiB1cCBpbiBjYXNlIG9mIGZh aWx1cmUuICovCi0JdGFsbG9jX3N0ZWFsKHBhdGgsIGRhdGEuZHB0cik7Ci0K LQloZHIgPSAodm9pZCAqKWRhdGEuZHB0cjsKKwlwYXRobGVuID0gc3RybGVu KG5vZGUtPm5hbWUpICsgMTsKIAogCWhlYWQudHlwZSA9IFhTX1NUQVRFX1RZ UEVfTk9ERTsKIAloZWFkLmxlbmd0aCA9IHNpemVvZihzbik7CiAJc24uY29u bl9pZCA9IDA7CiAJc24udGFfaWQgPSAwOwogCXNuLnRhX2FjY2VzcyA9IDA7 Ci0Jc24ucGVybV9uID0gaGRyLT5udW1fcGVybXM7CisJc24ucGVybV9uID0g bm9kZS0+cGVybXMubnVtOwogCXNuLnBhdGhfbGVuID0gcGF0aGxlbjsKLQlz bi5kYXRhX2xlbiA9IGhkci0+ZGF0YWxlbjsKLQloZWFkLmxlbmd0aCArPSBo ZHItPm51bV9wZXJtcyAqIHNpemVvZigqc24ucGVybXMpOworCXNuLmRhdGFf bGVuID0gbm9kZS0+ZGF0YWxlbjsKKwloZWFkLmxlbmd0aCArPSBub2RlLT5w ZXJtcy5udW0gKiBzaXplb2YoKnNuLnBlcm1zKTsKIAloZWFkLmxlbmd0aCAr PSBwYXRobGVuOwotCWhlYWQubGVuZ3RoICs9IGhkci0+ZGF0YWxlbjsKKwlo ZWFkLmxlbmd0aCArPSBub2RlLT5kYXRhbGVuOwogCWhlYWQubGVuZ3RoID0g Uk9VTkRVUChoZWFkLmxlbmd0aCwgMyk7CiAKIAlpZiAoZndyaXRlKCZoZWFk LCBzaXplb2YoaGVhZCksIDEsIGZwKSAhPSAxKQotCQlyZXR1cm4gIkR1bXAg bm9kZSBzdGF0ZSBlcnJvciI7CisJCXJldHVybiBkdW1wX3N0YXRlX25vZGVf ZXJyKGRhdGEsICJEdW1wIG5vZGUgaGVhZCBlcnJvciIpOwogCWlmIChmd3Jp dGUoJnNuLCBzaXplb2Yoc24pLCAxLCBmcCkgIT0gMSkKLQkJcmV0dXJuICJE dW1wIG5vZGUgc3RhdGUgZXJyb3IiOworCQlyZXR1cm4gZHVtcF9zdGF0ZV9u b2RlX2VycihkYXRhLCAiRHVtcCBub2RlIHN0YXRlIGVycm9yIik7CiAKLQly ZXQgPSBkdW1wX3N0YXRlX25vZGVfcGVybXMoZnAsIGhkci0+cGVybXMsIGhk ci0+bnVtX3Blcm1zKTsKKwlyZXQgPSBkdW1wX3N0YXRlX25vZGVfcGVybXMo ZnAsIG5vZGUtPnBlcm1zLnAsIG5vZGUtPnBlcm1zLm51bSk7CiAJaWYgKHJl dCkKLQkJcmV0dXJuIHJldDsKKwkJcmV0dXJuIGR1bXBfc3RhdGVfbm9kZV9l cnIoZGF0YSwgcmV0KTsKKworCWlmIChmd3JpdGUobm9kZS0+bmFtZSwgcGF0 aGxlbiwgMSwgZnApICE9IDEpCisJCXJldHVybiBkdW1wX3N0YXRlX25vZGVf ZXJyKGRhdGEsICJEdW1wIG5vZGUgcGF0aCBlcnJvciIpOwogCi0JaWYgKGZ3 cml0ZShwYXRoLCBwYXRobGVuLCAxLCBmcCkgIT0gMSkKLQkJcmV0dXJuICJE dW1wIG5vZGUgcGF0aCBlcnJvciI7Ci0JaWYgKGhkci0+ZGF0YWxlbiAmJgot CSAgICBmd3JpdGUoaGRyLT5wZXJtcyArIGhkci0+bnVtX3Blcm1zLCBoZHIt PmRhdGFsZW4sIDEsIGZwKSAhPSAxKQotCQlyZXR1cm4gIkR1bXAgbm9kZSBk YXRhIGVycm9yIjsKKwlpZiAobm9kZS0+ZGF0YWxlbiAmJiBmd3JpdGUobm9k ZS0+ZGF0YSwgbm9kZS0+ZGF0YWxlbiwgMSwgZnApICE9IDEpCisJCXJldHVy biBkdW1wX3N0YXRlX25vZGVfZXJyKGRhdGEsICJEdW1wIG5vZGUgZGF0YSBl cnJvciIpOwogCiAJcmV0ID0gZHVtcF9zdGF0ZV9hbGlnbihmcCk7CiAJaWYg KHJldCkKLQkJcmV0dXJuIHJldDsKKwkJcmV0dXJuIGR1bXBfc3RhdGVfbm9k ZV9lcnIoZGF0YSwgcmV0KTsKIAotCWNoaWxkID0gKGNoYXIgKikoaGRyLT5w ZXJtcyArIGhkci0+bnVtX3Blcm1zKSArIGhkci0+ZGF0YWxlbjsKLQotCS8q Ci0JICogVXNlIHBhdGggZm9yIGNvbnN0cnVjdGluZyBjaGlsZHJlbiBwYXRo cy4KLQkgKiBBcyB3ZSBkb24ndCB3cml0ZSBvdXQgbm9kZXMgd2l0aG91dCBo YXZpbmcgd3JpdHRlbiB0aGVpciBwYXJlbnQKLQkgKiBhbHJlYWR5IHdlIHdp bGwgbmV2ZXIgY2xvYmJlciBhIHBhcnQgb2YgdGhlIHBhdGggd2UnbGwgbmVl ZCBsYXRlci4KLQkgKi8KLQlwYXRobGVuLS07Ci0JaWYgKHBhdGhbcGF0aGxl biAtIDFdICE9ICcvJykgewotCQlwYXRoW3BhdGhsZW5dID0gJy8nOwotCQlw YXRobGVuKys7Ci0JfQotCXdoaWxlIChwIDwgaGRyLT5jaGlsZGxlbikgewot CQljaGlsZGxlbiA9IHN0cmxlbihjaGlsZCkgKyAxOwotCQlpZiAocGF0aGxl biArIGNoaWxkbGVuID4gcGF0aF9tYXhfbGVuKQotCQkJcmV0dXJuICJEdW1w IG5vZGUgcGF0aCBsZW5ndGggZXJyb3IiOwotCQlzdHJjcHkocGF0aCArIHBh dGhsZW4sIGNoaWxkKTsKLQkJcmV0ID0gZHVtcF9zdGF0ZV9ub2RlX3RyZWUo ZnAsIHBhdGgsIHBhdGhfbWF4X2xlbik7Ci0JCWlmIChyZXQpCi0JCQlyZXR1 cm4gcmV0OwotCQlwICs9IGNoaWxkbGVuOwotCQljaGlsZCArPSBjaGlsZGxl bjsKLQl9Ci0KLQl0YWxsb2NfZnJlZShkYXRhLmRwdHIpOwotCi0JcmV0dXJu IE5VTEw7CisJcmV0dXJuIFdBTEtfVFJFRV9PSzsKIH0KIAogY29uc3QgY2hh ciAqZHVtcF9zdGF0ZV9ub2RlcyhGSUxFICpmcCwgY29uc3Qgdm9pZCAqY3R4 KQogewotCWNoYXIgKnBhdGg7Ci0KLQlwYXRoID0gdGFsbG9jX3NpemUoY3R4 LCBYRU5TVE9SRV9BQlNfUEFUSF9NQVggKyAxKTsKLQlpZiAoIXBhdGgpCi0J CXJldHVybiAiUGF0aCBidWZmZXIgYWxsb2NhdGlvbiBlcnJvciI7CisJc3Ry dWN0IGR1bXBfbm9kZV9kYXRhIGRhdGEgPSB7CisJCS5mcCA9IGZwLAorCQku ZXJyID0gIkR1bXAgbm9kZSB3YWxrIGVycm9yIgorCX07CisJc3RydWN0IHdh bGtfZnVuY3Mgd2Fsa2Z1bmNzID0geyAuZW50ZXIgPSBkdW1wX3N0YXRlX25v ZGUgfTsKIAotCXN0cmNweShwYXRoLCAiLyIpOworCWlmICh3YWxrX25vZGVf dHJlZShjdHgsIE5VTEwsICIvIiwgJndhbGtmdW5jcywgJmRhdGEpKQorCQly ZXR1cm4gZGF0YS5lcnI7CiAKLQlyZXR1cm4gZHVtcF9zdGF0ZV9ub2RlX3Ry ZWUoZnAsIHBhdGgsIFhFTlNUT1JFX0FCU19QQVRIX01BWCArIDEpOworCXJl dHVybiBOVUxMOwogfQogCiB2b2lkIHJlYWRfc3RhdGVfZ2xvYmFsKGNvbnN0 IHZvaWQgKmN0eCwgY29uc3Qgdm9pZCAqc3RhdGUpCg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-04.patch" Content-Disposition: attachment; filename="xsa418/xsa418-04.patch" Content-Transfer-Encoding: base64 RnJvbSBmZmQxYmE2Yjk3ZjI0YzNiZjI5YjQ5NTU3YzEzN2Q3MGEzODE5ZDA3 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHNpbXBsaWZ5 IGNoZWNrX3N0b3JlKCkKCmNoZWNrX3N0b3JlKCkgaXMgdXNpbmcgYSBoYXNo IHRhYmxlIGZvciBzdG9yaW5nIGFsbCBub2RlIG5hbWVzIGl0IGhhcwpmb3Vu ZCB2aWEgd2Fsa2luZyB0aGUgdHJlZS4gQWRkaXRpb25hbGx5IGl0IHVzaW5n IGFub3RoZXIgaGFzaCB0YWJsZQpmb3IgYWxsIGNoaWxkcmVuIG9mIGEgbm9k ZSB0byBkZXRlY3QgZHVwbGljYXRlIGNoaWxkIG5hbWVzLgoKU2ltcGxpZnkg dGhhdCBieSBkcm9wcGluZyB0aGUgc2Vjb25kIGhhc2ggdGFibGUgYXMgdGhl IGZpcnN0IG9uZSBpcwphbHJlYWR5IGhvbGRpbmcgYWxsIHRoZSBuZWVkZWQg aW5mb3JtYXRpb24uCgpUaGlzIGlzIHBhcnQgb2YgWFNBLTQxOCAvIENWRS0y MDIyLTQyMzIxLgoKUmVwb3J0ZWQtYnk6IEp1bGllbiBHcmFsbCA8ZHZyYWJl bEBhbWF6b24uY28udWs+ClNpZ25lZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3Mg PGpncm9zc0BzdXNlLmNvbT4KUmV2aWV3ZWQtYnk6IEp1bGllbiBHcmFsbCA8 amdyYWxsQGFtYXpvbi5jb20+CgpkaWZmIC0tZ2l0IGEvdG9vbHMveGVuc3Rv cmUveGVuc3RvcmVkX2NvcmUuYyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3Jl ZF9jb3JlLmMKaW5kZXggZjc4ZmFmMGMzZTA2Li5iMzU5NmM3ZWViOTkgMTAw NjQ0Ci0tLSBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMKKysr IGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYwpAQCAtMjQ1Niw1 MCArMjQ1NiwzNCBAQCBzdGF0aWMgaW50IGNoZWNrX3N0b3JlXyhjb25zdCBj aGFyICpuYW1lLCBzdHJ1Y3QgaGFzaHRhYmxlICpyZWFjaGFibGUpCiAJaWYg KG5vZGUpIHsKIAkJc2l6ZV90IGkgPSAwOwogCi0JCXN0cnVjdCBoYXNodGFi bGUgKiBjaGlsZHJlbiA9Ci0JCQljcmVhdGVfaGFzaHRhYmxlKDE2LCBoYXNo X2Zyb21fa2V5X2ZuLCBrZXlzX2VxdWFsX2ZuKTsKLQkJaWYgKCFjaGlsZHJl bikgewotCQkJbG9nKCJjaGVja19zdG9yZSBjcmVhdGUgdGFibGU6IEVOT01F TSIpOwotCQkJcmV0dXJuIEVOT01FTTsKLQkJfQotCiAJCWlmICghcmVtZW1i ZXJfc3RyaW5nKHJlYWNoYWJsZSwgbmFtZSkpIHsKLQkJCWhhc2h0YWJsZV9k ZXN0cm95KGNoaWxkcmVuLCAwKTsKIAkJCWxvZygiY2hlY2tfc3RvcmU6IEVO T01FTSIpOwogCQkJcmV0dXJuIEVOT01FTTsKIAkJfQogCiAJCXdoaWxlIChp IDwgbm9kZS0+Y2hpbGRsZW4gJiYgIXJldCkgewotCQkJc3RydWN0IG5vZGUg KmNoaWxkbm9kZTsKKwkJCXN0cnVjdCBub2RlICpjaGlsZG5vZGUgPSBOVUxM OwogCQkJc2l6ZV90IGNoaWxkbGVuID0gc3RybGVuKG5vZGUtPmNoaWxkcmVu ICsgaSk7Ci0JCQljaGFyICogY2hpbGRuYW1lID0gY2hpbGRfbmFtZShOVUxM LCBub2RlLT5uYW1lLAotCQkJCQkJICAgICAgbm9kZS0+Y2hpbGRyZW4gKyBp KTsKKwkJCWNoYXIgKmNoaWxkbmFtZSA9IGNoaWxkX25hbWUoTlVMTCwgbm9k ZS0+bmFtZSwKKwkJCQkJCSAgICAgbm9kZS0+Y2hpbGRyZW4gKyBpKTsKIAog CQkJaWYgKCFjaGlsZG5hbWUpIHsKIAkJCQlsb2coImNoZWNrX3N0b3JlOiBF Tk9NRU0iKTsKIAkJCQlyZXQgPSBFTk9NRU07CiAJCQkJYnJlYWs7CiAJCQl9 CisKKwkJCWlmIChoYXNodGFibGVfc2VhcmNoKHJlYWNoYWJsZSwgY2hpbGRu YW1lKSkgeworCQkJCWxvZygiY2hlY2tfc3RvcmU6ICclcycgaXMgZHVwbGlj YXRlZCEiLAorCQkJCSAgICBjaGlsZG5hbWUpOworCQkJCWkgPSBybV9jaGls ZF9lbnRyeShub2RlLCBpLCBjaGlsZGxlbik7CisJCQkJZ290byBuZXh0Owor CQkJfQorCiAJCQljaGlsZG5vZGUgPSByZWFkX25vZGUoTlVMTCwgY2hpbGRu YW1lLCBjaGlsZG5hbWUpOwotCQkJCisKIAkJCWlmIChjaGlsZG5vZGUpIHsK LQkJCQlpZiAoaGFzaHRhYmxlX3NlYXJjaChjaGlsZHJlbiwgY2hpbGRuYW1l KSkgewotCQkJCQlsb2coImNoZWNrX3N0b3JlOiAnJXMnIGlzIGR1cGxpY2F0 ZWQhIiwKLQkJCQkJICAgIGNoaWxkbmFtZSk7Ci0JCQkJCWkgPSBybV9jaGls ZF9lbnRyeShub2RlLCBpLCBjaGlsZGxlbik7Ci0JCQkJfQotCQkJCWVsc2Ug ewotCQkJCQlpZiAoIXJlbWVtYmVyX3N0cmluZyhjaGlsZHJlbiwKLQkJCQkJ CQkgICAgIGNoaWxkbmFtZSkpIHsKLQkJCQkJCWxvZygiY2hlY2tfc3RvcmU6 IEVOT01FTSIpOwotCQkJCQkJdGFsbG9jX2ZyZWUoY2hpbGRub2RlKTsKLQkJ CQkJCXRhbGxvY19mcmVlKGNoaWxkbmFtZSk7Ci0JCQkJCQlyZXQgPSBFTk9N RU07Ci0JCQkJCQlicmVhazsKLQkJCQkJfQotCQkJCQlyZXQgPSBjaGVja19z dG9yZV8oY2hpbGRuYW1lLAotCQkJCQkJCSAgIHJlYWNoYWJsZSk7Ci0JCQkJ fQorCQkJCXJldCA9IGNoZWNrX3N0b3JlXyhjaGlsZG5hbWUsIHJlYWNoYWJs ZSk7CiAJCQl9IGVsc2UgaWYgKGVycm5vICE9IEVOT01FTSkgewogCQkJCWxv ZygiY2hlY2tfc3RvcmU6IE5vIGNoaWxkICclcycgZm91bmQhXG4iLAogCQkJ CSAgICBjaGlsZG5hbWUpOwpAQCAtMjUwOSwxOSArMjQ5MywxOCBAQCBzdGF0 aWMgaW50IGNoZWNrX3N0b3JlXyhjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3Qg aGFzaHRhYmxlICpyZWFjaGFibGUpCiAJCQkJcmV0ID0gRU5PTUVNOwogCQkJ fQogCisgbmV4dDoKIAkJCXRhbGxvY19mcmVlKGNoaWxkbm9kZSk7CiAJCQl0 YWxsb2NfZnJlZShjaGlsZG5hbWUpOwogCQkJaSArPSBjaGlsZGxlbiArIDE7 CiAJCX0KIAotCQloYXNodGFibGVfZGVzdHJveShjaGlsZHJlbiwgMCAvKiBE b24ndCBmcmVlIHZhbHVlcyAodGhleSBhcmUKLQkJCQkJCSBhbGwgKHZvaWQg KikxKSAqLyk7CiAJCXRhbGxvY19mcmVlKG5vZGUpOwogCX0gZWxzZSBpZiAo ZXJybm8gIT0gRU5PTUVNKSB7CiAJCS8qIEltcG9zc2libGUsIGJlY2F1c2Ug bm8gZGF0YWJhc2Ugc2hvdWxkIGV2ZXIgYmUgd2l0aG91dCB0aGUKIAkJICAg cm9vdCwgYW5kIG90aGVyd2lzZSwgd2UndmUganVzdCBjaGVja2VkIGluIG91 ciBjYWxsZXIKIAkJICAgKHdoaWNoIG1hZGUgYSByZWN1cnNpdmUgY2FsbCB0 byBnZXQgaGVyZSkuICovCi0JCSAgIAorCiAJCWxvZygiY2hlY2tfc3RvcmU6 IE5vIGNoaWxkICclcycgZm91bmQ6IGltcG9zc2libGUhIiwgbmFtZSk7CiAJ fSBlbHNlIHsKIAkJbG9nKCJjaGVja19zdG9yZTogRU5PTUVNIik7Cg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-05.patch" Content-Disposition: attachment; filename="xsa418/xsa418-05.patch" Content-Transfer-Encoding: base64 RnJvbSA0Nzg1NGE1MmViOGE1YzMxZTZjMGMxNTBhODdjODY3ODdlY2RlMWM2 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHVzZSB0cmVl d2FsayBmb3IgY2hlY2tfc3RvcmUoKQoKSW5zdGVhZCBvZiBkb2luZyBhbiBv cGVuIHRyZWUgd2FsayB1c2luZyBjYWxsIHJlY3Vyc2lvbiwgdXNlCndhbGtf bm9kZV90cmVlKCkgd2hlbiBjaGVja2luZyB0aGUgc3RvcmUgZm9yIGluY29u c2lzdGVuY2llcy4KClRoaXMgd2lsbCByZWR1Y2UgY29kZSBzaXplIGFuZCBh dm9pZCBtYW55IG5lc3RpbmcgbGV2ZWxzIG9mIGZ1bmN0aW9uCmNhbGxzIHdo aWNoIGNvdWxkIHBvdGVudGlhbGx5IGV4aGF1c3QgdGhlIHN0YWNrLgoKVGhp cyBpcyBwYXJ0IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9y dGVkLWJ5OiBKdWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpT aWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ ClJldmlld2VkLWJ5OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29t PgoKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3Jl LmMgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IGIz NTk2YzdlZWI5OS4uYjA4ODkxODZiNjFhIDEwMDY0NAotLS0gYS90b29scy94 ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3Jl L3hlbnN0b3JlZF9jb3JlLmMKQEAgLTI0MjMsMTggKzI0MjMsNiBAQCBpbnQg cmVtZW1iZXJfc3RyaW5nKHN0cnVjdCBoYXNodGFibGUgKmhhc2gsIGNvbnN0 IGNoYXIgKnN0cikKIAlyZXR1cm4gaGFzaHRhYmxlX2luc2VydChoYXNoLCBr LCAodm9pZCAqKTEpOwogfQogCi1zdGF0aWMgaW50IHJtX2NoaWxkX2VudHJ5 KHN0cnVjdCBub2RlICpub2RlLCBzaXplX3Qgb2ZmLCBzaXplX3QgbGVuKQot ewotCWlmICghcmVjb3ZlcnkpCi0JCXJldHVybiBvZmY7Ci0KLQlpZiAocmVt b3ZlX2NoaWxkX2VudHJ5KE5VTEwsIG5vZGUsIG9mZikpCi0JCWxvZygiY2hl Y2tfc3RvcmU6IGNoaWxkIGVudHJ5IGNvdWxkIG5vdCBiZSByZW1vdmVkIGZy b20gJyVzJyIsCi0JCSAgICBub2RlLT5uYW1lKTsKLQotCXJldHVybiBvZmYg LSBsZW4gLSAxOwotfQotCiAvKioKICAqIEEgbm9kZSBoYXMgYSBjaGlsZHJl biBmaWVsZCB0aGF0IG5hbWVzIHRoZSBjaGlsZHJlbiBvZiB0aGUgbm9kZSwg c2VwYXJhdGVkCiAgKiBieSBOVUxzLiAgV2UgY2hlY2sgd2hldGhlciB0aGVy ZSBhcmUgZW50cmllcyBpbiB0aGVyZSB0aGF0IGFyZSBkdXBsaWNhdGVkCkBA IC0yNDQ4LDcwICsyNDM2LDI5IEBAIHN0YXRpYyBpbnQgcm1fY2hpbGRfZW50 cnkoc3RydWN0IG5vZGUgKm5vZGUsIHNpemVfdCBvZmYsIHNpemVfdCBsZW4p CiAgKiBBcyB3ZSBnbywgd2UgcmVjb3JkIGVhY2ggbm9kZSBpbiB0aGUgZ2l2 ZW4gcmVhY2hhYmxlIGhhc2h0YWJsZS4gIFRoZXNlCiAgKiBlbnRyaWVzIHdp bGwgYmUgdXNlZCBsYXRlciBpbiBjbGVhbl9zdG9yZS4KICAqLwotc3RhdGlj IGludCBjaGVja19zdG9yZV8oY29uc3QgY2hhciAqbmFtZSwgc3RydWN0IGhh c2h0YWJsZSAqcmVhY2hhYmxlKQorc3RhdGljIGludCBjaGVja19zdG9yZV9z dGVwKGNvbnN0IHZvaWQgKmN0eCwgc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4s CisJCQkgICAgc3RydWN0IG5vZGUgKm5vZGUsIHZvaWQgKmFyZykKIHsKLQlz dHJ1Y3Qgbm9kZSAqbm9kZSA9IHJlYWRfbm9kZShOVUxMLCBuYW1lLCBuYW1l KTsKLQlpbnQgcmV0ID0gMDsKLQotCWlmIChub2RlKSB7Ci0JCXNpemVfdCBp ID0gMDsKLQotCQlpZiAoIXJlbWVtYmVyX3N0cmluZyhyZWFjaGFibGUsIG5h bWUpKSB7Ci0JCQlsb2coImNoZWNrX3N0b3JlOiBFTk9NRU0iKTsKLQkJCXJl dHVybiBFTk9NRU07Ci0JCX0KLQotCQl3aGlsZSAoaSA8IG5vZGUtPmNoaWxk bGVuICYmICFyZXQpIHsKLQkJCXN0cnVjdCBub2RlICpjaGlsZG5vZGUgPSBO VUxMOwotCQkJc2l6ZV90IGNoaWxkbGVuID0gc3RybGVuKG5vZGUtPmNoaWxk cmVuICsgaSk7Ci0JCQljaGFyICpjaGlsZG5hbWUgPSBjaGlsZF9uYW1lKE5V TEwsIG5vZGUtPm5hbWUsCi0JCQkJCQkgICAgIG5vZGUtPmNoaWxkcmVuICsg aSk7Ci0KLQkJCWlmICghY2hpbGRuYW1lKSB7Ci0JCQkJbG9nKCJjaGVja19z dG9yZTogRU5PTUVNIik7Ci0JCQkJcmV0ID0gRU5PTUVNOwotCQkJCWJyZWFr OwotCQkJfQotCi0JCQlpZiAoaGFzaHRhYmxlX3NlYXJjaChyZWFjaGFibGUs IGNoaWxkbmFtZSkpIHsKLQkJCQlsb2coImNoZWNrX3N0b3JlOiAnJXMnIGlz IGR1cGxpY2F0ZWQhIiwKLQkJCQkgICAgY2hpbGRuYW1lKTsKLQkJCQlpID0g cm1fY2hpbGRfZW50cnkobm9kZSwgaSwgY2hpbGRsZW4pOwotCQkJCWdvdG8g bmV4dDsKLQkJCX0KKwlzdHJ1Y3QgaGFzaHRhYmxlICpyZWFjaGFibGUgPSBh cmc7CiAKLQkJCWNoaWxkbm9kZSA9IHJlYWRfbm9kZShOVUxMLCBjaGlsZG5h bWUsIGNoaWxkbmFtZSk7Ci0KLQkJCWlmIChjaGlsZG5vZGUpIHsKLQkJCQly ZXQgPSBjaGVja19zdG9yZV8oY2hpbGRuYW1lLCByZWFjaGFibGUpOwotCQkJ fSBlbHNlIGlmIChlcnJubyAhPSBFTk9NRU0pIHsKLQkJCQlsb2coImNoZWNr X3N0b3JlOiBObyBjaGlsZCAnJXMnIGZvdW5kIVxuIiwKLQkJCQkgICAgY2hp bGRuYW1lKTsKLQkJCQlpID0gcm1fY2hpbGRfZW50cnkobm9kZSwgaSwgY2hp bGRsZW4pOwotCQkJfSBlbHNlIHsKLQkJCQlsb2coImNoZWNrX3N0b3JlOiBF Tk9NRU0iKTsKLQkJCQlyZXQgPSBFTk9NRU07Ci0JCQl9CisJaWYgKGhhc2h0 YWJsZV9zZWFyY2gocmVhY2hhYmxlLCAodm9pZCAqKW5vZGUtPm5hbWUpKSB7 CisJCWxvZygiY2hlY2tfc3RvcmU6ICclcycgaXMgZHVwbGljYXRlZCEiLCBu b2RlLT5uYW1lKTsKKwkJcmV0dXJuIHJlY292ZXJ5ID8gV0FMS19UUkVFX1JN X0NISUxERU5UUlkKKwkJCQk6IFdBTEtfVFJFRV9TS0lQX0NISUxEUkVOOwor CX0KIAotIG5leHQ6Ci0JCQl0YWxsb2NfZnJlZShjaGlsZG5vZGUpOwotCQkJ dGFsbG9jX2ZyZWUoY2hpbGRuYW1lKTsKLQkJCWkgKz0gY2hpbGRsZW4gKyAx OwotCQl9CisJaWYgKCFyZW1lbWJlcl9zdHJpbmcocmVhY2hhYmxlLCBub2Rl LT5uYW1lKSkKKwkJcmV0dXJuIFdBTEtfVFJFRV9FUlJPUl9TVE9QOwogCi0J CXRhbGxvY19mcmVlKG5vZGUpOwotCX0gZWxzZSBpZiAoZXJybm8gIT0gRU5P TUVNKSB7Ci0JCS8qIEltcG9zc2libGUsIGJlY2F1c2Ugbm8gZGF0YWJhc2Ug c2hvdWxkIGV2ZXIgYmUgd2l0aG91dCB0aGUKLQkJICAgcm9vdCwgYW5kIG90 aGVyd2lzZSwgd2UndmUganVzdCBjaGVja2VkIGluIG91ciBjYWxsZXIKLQkJ ICAgKHdoaWNoIG1hZGUgYSByZWN1cnNpdmUgY2FsbCB0byBnZXQgaGVyZSku ICovCisJcmV0dXJuIFdBTEtfVFJFRV9PSzsKK30KIAotCQlsb2coImNoZWNr X3N0b3JlOiBObyBjaGlsZCAnJXMnIGZvdW5kOiBpbXBvc3NpYmxlISIsIG5h bWUpOwotCX0gZWxzZSB7Ci0JCWxvZygiY2hlY2tfc3RvcmU6IEVOT01FTSIp OwotCQlyZXQgPSBFTk9NRU07Ci0JfQorc3RhdGljIGludCBjaGVja19zdG9y ZV9lbm9lbnQoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlvbiAq Y29ubiwKKwkJCSAgICAgIHN0cnVjdCBub2RlICpwYXJlbnQsIGNoYXIgKm5h bWUsIHZvaWQgKmFyZykKK3sKKwlsb2coImNoZWNrX3N0b3JlOiBub2RlICcl cycgbm90IGZvdW5kIiwgbmFtZSk7CiAKLQlyZXR1cm4gcmV0OworCXJldHVy biByZWNvdmVyeSA/IFdBTEtfVFJFRV9STV9DSElMREVOVFJZIDogV0FMS19U UkVFX09LOwogfQogCiAKQEAgLTI1NjAsMjkgKzI1MDcsMjggQEAgc3RhdGlj IHZvaWQgY2xlYW5fc3RvcmUoc3RydWN0IGhhc2h0YWJsZSAqcmVhY2hhYmxl KQogCiB2b2lkIGNoZWNrX3N0b3JlKHZvaWQpCiB7Ci0JY2hhciAqcm9vdCA9 IHRhbGxvY19zdHJkdXAoTlVMTCwgIi8iKTsKIAlzdHJ1Y3QgaGFzaHRhYmxl ICpyZWFjaGFibGU7CisJc3RydWN0IHdhbGtfZnVuY3Mgd2Fsa2Z1bmNzID0g eworCQkuZW50ZXIgPSBjaGVja19zdG9yZV9zdGVwLAorCQkuZW5vZW50ID0g Y2hlY2tfc3RvcmVfZW5vZW50LAorCX07CiAKLQlpZiAoIXJvb3QpIHsKLQkJ bG9nKCJjaGVja19zdG9yZTogRU5PTUVNIik7Ci0JCXJldHVybjsKLQl9CiAJ cmVhY2hhYmxlID0gY3JlYXRlX2hhc2h0YWJsZSgxNiwgaGFzaF9mcm9tX2tl eV9mbiwga2V5c19lcXVhbF9mbik7CiAJaWYgKCFyZWFjaGFibGUpIHsKIAkJ bG9nKCJjaGVja19zdG9yZTogRU5PTUVNIik7Ci0JCWdvdG8gb3V0X3Jvb3Q7 CisJCXJldHVybjsKIAl9CiAKIAlsb2coIkNoZWNraW5nIHN0b3JlIC4uLiIp OwotCWlmICghY2hlY2tfc3RvcmVfKHJvb3QsIHJlYWNoYWJsZSkgJiYKLQkg ICAgIWNoZWNrX3RyYW5zYWN0aW9ucyhyZWFjaGFibGUpKQorCWlmICh3YWxr X25vZGVfdHJlZShOVUxMLCBOVUxMLCAiLyIsICZ3YWxrZnVuY3MsIHJlYWNo YWJsZSkpIHsKKwkJaWYgKGVycm5vID09IEVOT01FTSkKKwkJCWxvZygiY2hl Y2tfc3RvcmU6IEVOT01FTSIpOworCX0gZWxzZSBpZiAoIWNoZWNrX3RyYW5z YWN0aW9ucyhyZWFjaGFibGUpKQogCQljbGVhbl9zdG9yZShyZWFjaGFibGUp OwogCWxvZygiQ2hlY2tpbmcgc3RvcmUgY29tcGxldGUuIik7CiAKIAloYXNo dGFibGVfZGVzdHJveShyZWFjaGFibGUsIDAgLyogRG9uJ3QgZnJlZSB2YWx1 ZXMgKHRoZXkgYXJlIGFsbAogCQkJCQkgICh2b2lkICopMSkgKi8pOwotIG91 dF9yb290OgotCXRhbGxvY19mcmVlKHJvb3QpOwogfQogCiAK --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-06.patch" Content-Disposition: attachment; filename="xsa418/xsa418-06.patch" Content-Transfer-Encoding: base64 RnJvbSAwNmM4OWRkNDhjMDhmMWVhYTJlNWJjYzE0MDc1NTRlZTNlMGI0ZTI3 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHVzZSB0cmVl d2FsayBmb3IgZGVsZXRpbmcgbm9kZXMKCkluc3RlYWQgb2YgZG9pbmcgYW4g b3BlbiB0cmVlIHdhbGsgdXNpbmcgY2FsbCByZWN1cnNpb24sIHVzZQp3YWxr X25vZGVfdHJlZSgpIHdoZW4gZGVsZXRpbmcgYSBzdWItdHJlZSBvZiBub2Rl cy4KClRoaXMgd2lsbCByZWR1Y2UgY29kZSBzaXplIGFuZCBhdm9pZCBtYW55 IG5lc3RpbmcgbGV2ZWxzIG9mIGZ1bmN0aW9uCmNhbGxzIHdoaWNoIGNvdWxk IHBvdGVudGlhbGx5IGV4aGF1c3QgdGhlIHN0YWNrLgoKVGhpcyBpcyBwYXJ0 IG9mIFhTQS00MTggLyBDVkUtMjAyMi00MjMyMS4KClJlcG9ydGVkLWJ5OiBK dWxpZW4gR3JhbGwgPGR2cmFiZWxAYW1hem9uLmNvLnVrPgpTaWduZWQtb2Zm LWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+CkFja2VkLWJ5 OiBKdWxpZW4gR3JhbGwgPGpncmFsbEBhbWF6b24uY29tPgoKZGlmZiAtLWdp dCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMgYi90b29scy94 ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCmluZGV4IGIwODg5MTg2YjYxYS4u ZmEyNGJjZmVhNGZiIDEwMDY0NAotLS0gYS90b29scy94ZW5zdG9yZS94ZW5z dG9yZWRfY29yZS5jCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9j b3JlLmMKQEAgLTEzMzAsMjEgKzEzMzAsNiBAQCBzdGF0aWMgaW50IGRvX3Jl YWQoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwK IAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIHZvaWQgZGVsZXRlX25vZGVfc2lu Z2xlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBzdHJ1Y3Qgbm9kZSAqbm9k ZSkKLXsKLQlUREJfREFUQSBrZXk7Ci0KLQlpZiAoYWNjZXNzX25vZGUoY29u biwgbm9kZSwgTk9ERV9BQ0NFU1NfREVMRVRFLCAma2V5KSkKLQkJcmV0dXJu OwotCi0JaWYgKGRvX3RkYl9kZWxldGUoY29ubiwgJmtleSwgJm5vZGUtPmFj YykgIT0gMCkgewotCQljb3JydXB0KGNvbm4sICJDb3VsZCBub3QgZGVsZXRl ICclcyciLCBub2RlLT5uYW1lKTsKLQkJcmV0dXJuOwotCX0KLQotCWRvbWFp bl9lbnRyeV9kZWMoY29ubiwgbm9kZSk7Ci19Ci0KIC8qIE11c3Qgbm90IGJl IC8gKi8KIHN0YXRpYyBjaGFyICpiYXNlbmFtZShjb25zdCBjaGFyICpuYW1l KQogewpAQCAtMTYxNSw2OSArMTYwMCw1OSBAQCBzdGF0aWMgaW50IHJlbW92 ZV9jaGlsZF9lbnRyeShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgc3RydWN0 IG5vZGUgKm5vZGUsCiAJcmV0dXJuIHdyaXRlX25vZGUoY29ubiwgbm9kZSwg dHJ1ZSk7CiB9CiAKLXN0YXRpYyB2b2lkIGRlbGV0ZV9jaGlsZChzdHJ1Y3Qg Y29ubmVjdGlvbiAqY29ubiwKLQkJCSBzdHJ1Y3Qgbm9kZSAqbm9kZSwgY29u c3QgY2hhciAqY2hpbGRuYW1lKQorc3RhdGljIGludCBkZWxldGVfY2hpbGQo c3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sCisJCQlzdHJ1Y3Qgbm9kZSAqbm9k ZSwgY29uc3QgY2hhciAqY2hpbGRuYW1lKQogewogCXVuc2lnbmVkIGludCBp OwogCiAJZm9yIChpID0gMDsgaSA8IG5vZGUtPmNoaWxkbGVuOyBpICs9IHN0 cmxlbihub2RlLT5jaGlsZHJlbitpKSArIDEpIHsKIAkJaWYgKHN0cmVxKG5v ZGUtPmNoaWxkcmVuK2ksIGNoaWxkbmFtZSkpIHsKLQkJCWlmIChyZW1vdmVf Y2hpbGRfZW50cnkoY29ubiwgbm9kZSwgaSkpCi0JCQkJY29ycnVwdChjb25u LCAiQ2FuJ3QgdXBkYXRlIHBhcmVudCBub2RlICclcyciLAotCQkJCQlub2Rl LT5uYW1lKTsKLQkJCXJldHVybjsKKwkJCWVycm5vID0gcmVtb3ZlX2NoaWxk X2VudHJ5KGNvbm4sIG5vZGUsIGkpID8gRUlPIDogMDsKKwkJCXJldHVybiBl cnJubzsKIAkJfQogCX0KIAljb3JydXB0KGNvbm4sICJDYW4ndCBmaW5kIGNo aWxkICclcycgaW4gJXMiLCBjaGlsZG5hbWUsIG5vZGUtPm5hbWUpOworCisJ ZXJybm8gPSBFSU87CisJcmV0dXJuIGVycm5vOwogfQogCi1zdGF0aWMgaW50 IGRlbGV0ZV9ub2RlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBjb25zdCB2 b2lkICpjdHgsCi0JCSAgICAgICBzdHJ1Y3Qgbm9kZSAqcGFyZW50LCBzdHJ1 Y3Qgbm9kZSAqbm9kZSwgYm9vbCB3YXRjaF9leGFjdCkKK3N0YXRpYyBpbnQg ZGVsbm9kZV9zdWIoY29uc3Qgdm9pZCAqY3R4LCBzdHJ1Y3QgY29ubmVjdGlv biAqY29ubiwKKwkJICAgICAgIHN0cnVjdCBub2RlICpub2RlLCB2b2lkICph cmcpCiB7Ci0JY2hhciAqbmFtZTsKKwljb25zdCBjaGFyICpyb290ID0gYXJn OworCWJvb2wgd2F0Y2hfZXhhY3Q7CisJaW50IHJldDsKKwlUREJfREFUQSBr ZXk7CiAKLQkvKiBEZWxldGUgY2hpbGRyZW4uICovCi0Jd2hpbGUgKG5vZGUt PmNoaWxkbGVuKSB7Ci0JCXN0cnVjdCBub2RlICpjaGlsZDsKKwkvKiBBbnkg ZXJyb3IgaGVyZSB3aWxsIHByb2JhYmx5IGJlIHJlcGVhdGVkIGZvciBhbGwg Zm9sbG93aW5nIGNhbGxzLiAqLworCXJldCA9IGFjY2Vzc19ub2RlKGNvbm4s IG5vZGUsIE5PREVfQUNDRVNTX0RFTEVURSwgJmtleSk7CisJaWYgKHJldCA+ IDApCisJCXJldHVybiBXQUxLX1RSRUVfU1VDQ0VTU19TVE9QOwogCi0JCW5h bWUgPSB0YWxsb2NfYXNwcmludGYobm9kZSwgIiVzLyVzIiwgbm9kZS0+bmFt ZSwKLQkJCQkgICAgICAgbm9kZS0+Y2hpbGRyZW4pOwotCQljaGlsZCA9IG5h bWUgPyByZWFkX25vZGUoY29ubiwgbm9kZSwgbmFtZSkgOiBOVUxMOwotCQlp ZiAoY2hpbGQpIHsKLQkJCWlmIChkZWxldGVfbm9kZShjb25uLCBjdHgsIG5v ZGUsIGNoaWxkLCB0cnVlKSkKLQkJCQlyZXR1cm4gZXJybm87Ci0JCX0gZWxz ZSB7Ci0JCQl0cmFjZSgiZGVsZXRlX25vZGU6IEVycm9yIGRlbGV0aW5nIGNo aWxkICclcy8lcychXG4iLAotCQkJICAgICAgbm9kZS0+bmFtZSwgbm9kZS0+ Y2hpbGRyZW4pOwotCQkJLyogUXVpdCBkZWxldGluZy4gKi8KLQkJCWVycm5v ID0gRU5PTUVNOwotCQkJcmV0dXJuIGVycm5vOwotCQl9Ci0JCXRhbGxvY19m cmVlKG5hbWUpOwotCX0KKwkvKiBJbiBjYXNlIG9mIGVycm9yIHN0b3AgdGhl IHdhbGsuICovCisJaWYgKCFyZXQgJiYgZG9fdGRiX2RlbGV0ZShjb25uLCAm a2V5LCAmbm9kZS0+YWNjKSkKKwkJcmV0dXJuIFdBTEtfVFJFRV9TVUNDRVNT X1NUT1A7CiAKIAkvKgogCSAqIEZpcmUgdGhlIHdhdGNoZXMgbm93LCB3aGVu IHdlIGNhbiBzdGlsbCBzZWUgdGhlIG5vZGUgcGVybWlzc2lvbnMuCiAJICog VGhpcyBmaW5lIGFzIHdlIGFyZSBzaW5nbGUgdGhyZWFkZWQgYW5kIHRoZSBu ZXh0IHBvc3NpYmxlIHJlYWQgd2lsbAogCSAqIGJlIGhhbmRsZWQgb25seSBh ZnRlciB0aGUgbm9kZSBoYXMgYmVlbiByZWFsbHkgcmVtb3ZlZC4KLQkgKi8K KwkqLworCXdhdGNoX2V4YWN0ID0gc3RyY21wKHJvb3QsIG5vZGUtPm5hbWUp OwogCWZpcmVfd2F0Y2hlcyhjb25uLCBjdHgsIG5vZGUtPm5hbWUsIG5vZGUs IHdhdGNoX2V4YWN0LCBOVUxMKTsKLQlkZWxldGVfbm9kZV9zaW5nbGUoY29u biwgbm9kZSk7Ci0JZGVsZXRlX2NoaWxkKGNvbm4sIHBhcmVudCwgYmFzZW5h bWUobm9kZS0+bmFtZSkpOwotCXRhbGxvY19mcmVlKG5vZGUpOwogCi0JcmV0 dXJuIDA7CisJZG9tYWluX2VudHJ5X2RlYyhjb25uLCBub2RlKTsKKworCXJl dHVybiBXQUxLX1RSRUVfUk1fQ0hJTERFTlRSWTsKIH0KIAotc3RhdGljIGlu dCBfcm0oc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIGNvbnN0IHZvaWQgKmN0 eCwgc3RydWN0IG5vZGUgKm5vZGUsCi0JICAgICAgIGNvbnN0IGNoYXIgKm5h bWUpCitzdGF0aWMgaW50IF9ybShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwg Y29uc3Qgdm9pZCAqY3R4LCBjb25zdCBjaGFyICpuYW1lKQogewotCS8qCi0J ICogRGVsZXRpbmcgbm9kZSBieSBub2RlLCBzbyB0aGUgcmVzdWx0IGlzIGFs d2F5cyBjb25zaXN0ZW50IGV2ZW4gaW4KLQkgKiBjYXNlIG9mIGEgZmFpbHVy ZS4KLQkgKi8KIAlzdHJ1Y3Qgbm9kZSAqcGFyZW50OwogCWNoYXIgKnBhcmVu dG5hbWUgPSBnZXRfcGFyZW50KGN0eCwgbmFtZSk7CisJc3RydWN0IHdhbGtf ZnVuY3Mgd2Fsa2Z1bmNzID0geyAuZXhpdCA9IGRlbG5vZGVfc3ViIH07CisJ aW50IHJldDsKIAogCWlmICghcGFyZW50bmFtZSkKIAkJcmV0dXJuIGVycm5v OwpAQCAtMTY4NSw5ICsxNjYwLDIxIEBAIHN0YXRpYyBpbnQgX3JtKHN0cnVj dCBjb25uZWN0aW9uICpjb25uLCBjb25zdCB2b2lkICpjdHgsIHN0cnVjdCBu b2RlICpub2RlLAogCXBhcmVudCA9IHJlYWRfbm9kZShjb25uLCBjdHgsIHBh cmVudG5hbWUpOwogCWlmICghcGFyZW50KQogCQlyZXR1cm4gcmVhZF9ub2Rl X2Nhbl9wcm9wYWdhdGVfZXJybm8oKSA/IGVycm5vIDogRUlOVkFMOwotCW5v ZGUtPnBhcmVudCA9IHBhcmVudDsKIAotCXJldHVybiBkZWxldGVfbm9kZShj b25uLCBjdHgsIHBhcmVudCwgbm9kZSwgZmFsc2UpOworCXJldCA9IHdhbGtf bm9kZV90cmVlKGN0eCwgY29ubiwgbmFtZSwgJndhbGtmdW5jcywgKHZvaWQg KiluYW1lKTsKKwlpZiAocmV0IDwgMCkgeworCQlpZiAocmV0ID09IFdBTEtf VFJFRV9FUlJPUl9TVE9QKSB7CisJCQljb3JydXB0KGNvbm4sICJlcnJvciB3 aGVuIGRlbGV0aW5nIHN1Yi1ub2RlcyBvZiAlc1xuIiwKKwkJCQluYW1lKTsK KwkJCWVycm5vID0gRUlPOworCQl9CisJCXJldHVybiBlcnJubzsKKwl9CisK KwlpZiAoZGVsZXRlX2NoaWxkKGNvbm4sIHBhcmVudCwgYmFzZW5hbWUobmFt ZSkpKQorCQlyZXR1cm4gZXJybm87CisKKwlyZXR1cm4gMDsKIH0KIAogCkBA IC0xNzI0LDcgKzE3MTEsNyBAQCBzdGF0aWMgaW50IGRvX3JtKGNvbnN0IHZv aWQgKmN0eCwgc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sCiAJaWYgKHN0cmVx KG5hbWUsICIvIikpCiAJCXJldHVybiBFSU5WQUw7CiAKLQlyZXQgPSBfcm0o Y29ubiwgY3R4LCBub2RlLCBuYW1lKTsKKwlyZXQgPSBfcm0oY29ubiwgY3R4 LCBuYW1lKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCg== --=separator Content-Type: application/octet-stream; name="xsa418/xsa418-07.patch" Content-Disposition: attachment; filename="xsa418/xsa418-07.patch" Content-Transfer-Encoding: base64 RnJvbSA3NDJiOGIzZTRjMmY3NzVlNDc4MTk3NTRjYTkxNGU2MWFhYTA3OGMz IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKdWVyZ2VuIEdyb3Nz IDxqZ3Jvc3NAc3VzZS5jb20+CkRhdGU6IFR1ZSwgMTMgU2VwIDIwMjIgMDc6 MzU6MTIgKzAyMDAKU3ViamVjdDogdG9vbHMveGVuc3RvcmU6IHVzZSB0cmVl d2FsayBmb3IgY3JlYXRpbmcgbm9kZSByZWNvcmRzCgpJbnN0ZWFkIG9mIGRv aW5nIGFuIG9wZW4gdHJlZSB3YWxrIHVzaW5nIGNhbGwgcmVjdXJzaW9uLCB1 c2UKd2Fsa19ub2RlX3RyZWUoKSB3aGVuIGNyZWF0aW5nIHRoZSBub2RlIHJl Y29yZHMgZHVyaW5nIGEgbGl2ZSB1cGRhdGUuCgpUaGlzIHdpbGwgcmVkdWNl IGNvZGUgc2l6ZSBhbmQgYXZvaWQgbWFueSBuZXN0aW5nIGxldmVscyBvZiBm dW5jdGlvbgpjYWxscyB3aGljaCBjb3VsZCBwb3RlbnRpYWxseSBleGhhdXN0 IHRoZSBzdGFjay4KClRoaXMgaXMgcGFydCBvZiBYU0EtNDE4IC8gQ1ZFLTIw MjItNDIzMjEuCgpSZXBvcnRlZC1ieTogSnVsaWVuIEdyYWxsIDxkdnJhYmVs QGFtYXpvbi5jby51az4KU2lnbmVkLW9mZi1ieTogSnVlcmdlbiBHcm9zcyA8 amdyb3NzQHN1c2UuY29tPgpSZXZpZXdlZC1ieTogSnVsaWVuIEdyYWxsIDxq Z3JhbGxAYW1hem9uLmNvbT4KCmRpZmYgLS1naXQgYS90b29scy94ZW5zdG9y ZS94ZW5zdG9yZWRfY29yZS5jIGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVk X2NvcmUuYwppbmRleCBmYTI0YmNmZWE0ZmIuLmJkYzE0Njc5YWRmNSAxMDA2 NDQKLS0tIGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYworKysg Yi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCkBAIC0zMDg4LDEw MSArMzA4OCw3NiBAQCBjb25zdCBjaGFyICpkdW1wX3N0YXRlX25vZGVfcGVy bXMoRklMRSAqZnAsIGNvbnN0IHN0cnVjdCB4c19wZXJtaXNzaW9ucyAqcGVy bXMsCiAJcmV0dXJuIE5VTEw7CiB9CiAKLXN0YXRpYyBjb25zdCBjaGFyICpk dW1wX3N0YXRlX25vZGVfdHJlZShGSUxFICpmcCwgY2hhciAqcGF0aCwKLQkJ CQkJdW5zaWduZWQgaW50IHBhdGhfbWF4X2xlbikKK3N0cnVjdCBkdW1wX25v ZGVfZGF0YSB7CisJRklMRSAqZnA7CisJY29uc3QgY2hhciAqZXJyOworfTsK Kworc3RhdGljIGludCBkdW1wX3N0YXRlX25vZGVfZXJyKHN0cnVjdCBkdW1w X25vZGVfZGF0YSAqZGF0YSwgY29uc3QgY2hhciAqZXJyKQogewotCXVuc2ln bmVkIGludCBwYXRobGVuLCBjaGlsZGxlbiwgcCA9IDA7CisJZGF0YS0+ZXJy ID0gZXJyOworCXJldHVybiBXQUxLX1RSRUVfRVJST1JfU1RPUDsKK30KKwor c3RhdGljIGludCBkdW1wX3N0YXRlX25vZGUoY29uc3Qgdm9pZCAqY3R4LCBz dHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwKKwkJCSAgIHN0cnVjdCBub2RlICpu b2RlLCB2b2lkICphcmcpCit7CisJc3RydWN0IGR1bXBfbm9kZV9kYXRhICpk YXRhID0gYXJnOworCUZJTEUgKmZwID0gZGF0YS0+ZnA7CisJdW5zaWduZWQg aW50IHBhdGhsZW47CiAJc3RydWN0IHhzX3N0YXRlX3JlY29yZF9oZWFkZXIg aGVhZDsKIAlzdHJ1Y3QgeHNfc3RhdGVfbm9kZSBzbjsKLQlUREJfREFUQSBr ZXksIGRhdGE7Ci0JY29uc3Qgc3RydWN0IHhzX3RkYl9yZWNvcmRfaGRyICpo ZHI7Ci0JY29uc3QgY2hhciAqY2hpbGQ7CiAJY29uc3QgY2hhciAqcmV0Owog Ci0JcGF0aGxlbiA9IHN0cmxlbihwYXRoKSArIDE7Ci0KLQlzZXRfdGRiX2tl eShwYXRoLCAma2V5KTsKLQlkYXRhID0gdGRiX2ZldGNoKHRkYl9jdHgsIGtl eSk7Ci0JaWYgKGRhdGEuZHB0ciA9PSBOVUxMKQotCQlyZXR1cm4gIkVycm9y IHJlYWRpbmcgbm9kZSI7Ci0KLQkvKiBDbGVhbiB1cCBpbiBjYXNlIG9mIGZh aWx1cmUuICovCi0JdGFsbG9jX3N0ZWFsKHBhdGgsIGRhdGEuZHB0cik7Ci0K LQloZHIgPSAodm9pZCAqKWRhdGEuZHB0cjsKKwlwYXRobGVuID0gc3RybGVu KG5vZGUtPm5hbWUpICsgMTsKIAogCWhlYWQudHlwZSA9IFhTX1NUQVRFX1RZ UEVfTk9ERTsKIAloZWFkLmxlbmd0aCA9IHNpemVvZihzbik7CiAJc24uY29u bl9pZCA9IDA7CiAJc24udGFfaWQgPSAwOwogCXNuLnRhX2FjY2VzcyA9IDA7 Ci0Jc24ucGVybV9uID0gaGRyLT5udW1fcGVybXM7CisJc24ucGVybV9uID0g bm9kZS0+cGVybXMubnVtOwogCXNuLnBhdGhfbGVuID0gcGF0aGxlbjsKLQlz bi5kYXRhX2xlbiA9IGhkci0+ZGF0YWxlbjsKLQloZWFkLmxlbmd0aCArPSBo ZHItPm51bV9wZXJtcyAqIHNpemVvZigqc24ucGVybXMpOworCXNuLmRhdGFf bGVuID0gbm9kZS0+ZGF0YWxlbjsKKwloZWFkLmxlbmd0aCArPSBub2RlLT5w ZXJtcy5udW0gKiBzaXplb2YoKnNuLnBlcm1zKTsKIAloZWFkLmxlbmd0aCAr PSBwYXRobGVuOwotCWhlYWQubGVuZ3RoICs9IGhkci0+ZGF0YWxlbjsKKwlo ZWFkLmxlbmd0aCArPSBub2RlLT5kYXRhbGVuOwogCWhlYWQubGVuZ3RoID0g Uk9VTkRVUChoZWFkLmxlbmd0aCwgMyk7CiAKIAlpZiAoZndyaXRlKCZoZWFk LCBzaXplb2YoaGVhZCksIDEsIGZwKSAhPSAxKQotCQlyZXR1cm4gIkR1bXAg bm9kZSBzdGF0ZSBlcnJvciI7CisJCXJldHVybiBkdW1wX3N0YXRlX25vZGVf ZXJyKGRhdGEsICJEdW1wIG5vZGUgaGVhZCBlcnJvciIpOwogCWlmIChmd3Jp dGUoJnNuLCBzaXplb2Yoc24pLCAxLCBmcCkgIT0gMSkKLQkJcmV0dXJuICJE dW1wIG5vZGUgc3RhdGUgZXJyb3IiOworCQlyZXR1cm4gZHVtcF9zdGF0ZV9u b2RlX2VycihkYXRhLCAiRHVtcCBub2RlIHN0YXRlIGVycm9yIik7CiAKLQly ZXQgPSBkdW1wX3N0YXRlX25vZGVfcGVybXMoZnAsIGhkci0+cGVybXMsIGhk ci0+bnVtX3Blcm1zKTsKKwlyZXQgPSBkdW1wX3N0YXRlX25vZGVfcGVybXMo ZnAsIG5vZGUtPnBlcm1zLnAsIG5vZGUtPnBlcm1zLm51bSk7CiAJaWYgKHJl dCkKLQkJcmV0dXJuIHJldDsKKwkJcmV0dXJuIGR1bXBfc3RhdGVfbm9kZV9l cnIoZGF0YSwgcmV0KTsKKworCWlmIChmd3JpdGUobm9kZS0+bmFtZSwgcGF0 aGxlbiwgMSwgZnApICE9IDEpCisJCXJldHVybiBkdW1wX3N0YXRlX25vZGVf ZXJyKGRhdGEsICJEdW1wIG5vZGUgcGF0aCBlcnJvciIpOwogCi0JaWYgKGZ3 cml0ZShwYXRoLCBwYXRobGVuLCAxLCBmcCkgIT0gMSkKLQkJcmV0dXJuICJE dW1wIG5vZGUgcGF0aCBlcnJvciI7Ci0JaWYgKGhkci0+ZGF0YWxlbiAmJgot CSAgICBmd3JpdGUoaGRyLT5wZXJtcyArIGhkci0+bnVtX3Blcm1zLCBoZHIt PmRhdGFsZW4sIDEsIGZwKSAhPSAxKQotCQlyZXR1cm4gIkR1bXAgbm9kZSBk YXRhIGVycm9yIjsKKwlpZiAobm9kZS0+ZGF0YWxlbiAmJiBmd3JpdGUobm9k ZS0+ZGF0YSwgbm9kZS0+ZGF0YWxlbiwgMSwgZnApICE9IDEpCisJCXJldHVy biBkdW1wX3N0YXRlX25vZGVfZXJyKGRhdGEsICJEdW1wIG5vZGUgZGF0YSBl cnJvciIpOwogCiAJcmV0ID0gZHVtcF9zdGF0ZV9hbGlnbihmcCk7CiAJaWYg KHJldCkKLQkJcmV0dXJuIHJldDsKKwkJcmV0dXJuIGR1bXBfc3RhdGVfbm9k ZV9lcnIoZGF0YSwgcmV0KTsKIAotCWNoaWxkID0gKGNoYXIgKikoaGRyLT5w ZXJtcyArIGhkci0+bnVtX3Blcm1zKSArIGhkci0+ZGF0YWxlbjsKLQotCS8q Ci0JICogVXNlIHBhdGggZm9yIGNvbnN0cnVjdGluZyBjaGlsZHJlbiBwYXRo cy4KLQkgKiBBcyB3ZSBkb24ndCB3cml0ZSBvdXQgbm9kZXMgd2l0aG91dCBo YXZpbmcgd3JpdHRlbiB0aGVpciBwYXJlbnQKLQkgKiBhbHJlYWR5IHdlIHdp bGwgbmV2ZXIgY2xvYmJlciBhIHBhcnQgb2YgdGhlIHBhdGggd2UnbGwgbmVl ZCBsYXRlci4KLQkgKi8KLQlwYXRobGVuLS07Ci0JaWYgKHBhdGhbcGF0aGxl biAtIDFdICE9ICcvJykgewotCQlwYXRoW3BhdGhsZW5dID0gJy8nOwotCQlw YXRobGVuKys7Ci0JfQotCXdoaWxlIChwIDwgaGRyLT5jaGlsZGxlbikgewot CQljaGlsZGxlbiA9IHN0cmxlbihjaGlsZCkgKyAxOwotCQlpZiAocGF0aGxl biArIGNoaWxkbGVuID4gcGF0aF9tYXhfbGVuKQotCQkJcmV0dXJuICJEdW1w IG5vZGUgcGF0aCBsZW5ndGggZXJyb3IiOwotCQlzdHJjcHkocGF0aCArIHBh dGhsZW4sIGNoaWxkKTsKLQkJcmV0ID0gZHVtcF9zdGF0ZV9ub2RlX3RyZWUo ZnAsIHBhdGgsIHBhdGhfbWF4X2xlbik7Ci0JCWlmIChyZXQpCi0JCQlyZXR1 cm4gcmV0OwotCQlwICs9IGNoaWxkbGVuOwotCQljaGlsZCArPSBjaGlsZGxl bjsKLQl9Ci0KLQl0YWxsb2NfZnJlZShkYXRhLmRwdHIpOwotCi0JcmV0dXJu IE5VTEw7CisJcmV0dXJuIFdBTEtfVFJFRV9PSzsKIH0KIAogY29uc3QgY2hh ciAqZHVtcF9zdGF0ZV9ub2RlcyhGSUxFICpmcCwgY29uc3Qgdm9pZCAqY3R4 KQogewotCWNoYXIgKnBhdGg7Ci0KLQlwYXRoID0gdGFsbG9jX3NpemUoY3R4 LCBYRU5TVE9SRV9BQlNfUEFUSF9NQVggKyAxKTsKLQlpZiAoIXBhdGgpCi0J CXJldHVybiAiUGF0aCBidWZmZXIgYWxsb2NhdGlvbiBlcnJvciI7CisJc3Ry dWN0IGR1bXBfbm9kZV9kYXRhIGRhdGEgPSB7CisJCS5mcCA9IGZwLAorCQku ZXJyID0gIkR1bXAgbm9kZSB3YWxrIGVycm9yIgorCX07CisJc3RydWN0IHdh bGtfZnVuY3Mgd2Fsa2Z1bmNzID0geyAuZW50ZXIgPSBkdW1wX3N0YXRlX25v ZGUgfTsKIAotCXN0cmNweShwYXRoLCAiLyIpOworCWlmICh3YWxrX25vZGVf dHJlZShjdHgsIE5VTEwsICIvIiwgJndhbGtmdW5jcywgJmRhdGEpKQorCQly ZXR1cm4gZGF0YS5lcnI7CiAKLQlyZXR1cm4gZHVtcF9zdGF0ZV9ub2RlX3Ry ZWUoZnAsIHBhdGgsIFhFTlNUT1JFX0FCU19QQVRIX01BWCArIDEpOworCXJl dHVybiBOVUxMOwogfQogCiB2b2lkIHJlYWRfc3RhdGVfZ2xvYmFsKGNvbnN0 IHZvaWQgKmN0eCwgY29uc3Qgdm9pZCAqc3RhdGUpCg== --=separator--