From xen-announce-bounces@lists.xenproject.org Mon Sep 04 12:51:08 2023
Return-path: <xen-announce-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 04 Sep 2023 12:51:08 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595156.928684 (Exim 4.92)
	(envelope-from <xen-announce-bounces@lists.xenproject.org>)
	id 1qd91n-0006VF-0m; Mon, 04 Sep 2023 12:50:03 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595156.928684; Mon, 04 Sep 2023 12:50:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-announce-bounces@lists.xenproject.org>)
	id 1qd91m-0006UT-U0; Mon, 04 Sep 2023 12:50:02 +0000
Received: by outflank-mailman (input) for mailman id 595156;
 Mon, 04 Sep 2023 12:48:58 +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
 <SRS0=VIGl=EU=cloud.com=kelly.choi@srs-se1.protection.inumbo.net>)
 id 1qd90k-00052g-AD
 for xen-announce@lists.xenproject.org; Mon, 04 Sep 2023 12:48:58 +0000
Received: from mail-ej1-x62f.google.com (mail-ej1-x62f.google.com
 [2a00:1450:4864:20::62f])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 689f4bc1-4b21-11ee-9b0d-b553b5be7939;
 Mon, 04 Sep 2023 14:48:56 +0200 (CEST)
Received: by mail-ej1-x62f.google.com with SMTP id
 a640c23a62f3a-99c1d03e124so195527166b.2
 for <xen-announce@lists.xenproject.org>; Mon, 04 Sep 2023 05:48:55 -0700 (PDT)
X-BeenThere: xen-announce@lists.xenproject.org
List-Id: "Xen announcements \(low volume\)" <xen-announce.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-announce>, 
 <mailto:xen-announce-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-announce@lists.xenproject.org>
List-Help: <mailto:xen-announce-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-announce>, 
 <mailto:xen-announce-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-announce-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-announce" <xen-announce-bounces@lists.xenproject.org>
X-Inumbo-ID: 689f4bc1-4b21-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1693831735; x=1694436535; darn=lists.xenproject.org;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=P6SuIUeMJ8u02mehYLNuaFrRUsUQroHyAonWStAvrmk=;
        b=ICcLqZdDZXEdDG3eSmQ/3RwrE0tTvt4tBbjQ3KIcBehoGfb2quNAKIHYRYzTIENLRV
         BZJ4FScPoWGDHGFVPpFBifgOgwUZX3UbAjrRjQoNPMJ4lCLxDaa9jegXTD9OdhpJQ9Tk
         AV2OP6Izr5Ezlnc0dYtN+IymAxWh/njBq/Kas=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20221208; t=1693831735; x=1694436535;
        h=to:subject:message-id:date:from:mime-version:x-gm-message-state
         :from:to:cc:subject:date:message-id:reply-to;
        bh=P6SuIUeMJ8u02mehYLNuaFrRUsUQroHyAonWStAvrmk=;
        b=WuCkMoCZ04oZqrr8UST/Lwe8P++qEufWBHHRrDcGI+FkTVunqTfaNdrW0uCB0L8+0P
         raNCZl2YylhMy763t6DHpi0ISQYIaP6cTCVkvD3uWDbJwZcSSntfRPL8zmhUZPJZ7Q4d
         QXLWF8vB+OyTtMMHkvx30+04Idrxs8mkTBkllM9MWf3XlfU1G7rbydxgA/454h1CXwXC
         Gw4rjUbeGslHoJBvoZLJnZoBkQxoO/66f1Kq/QEXo+GkH7krCDaxU4q+3oeY7LXVezfE
         qVB4qNYtK/UZw8iuYRIdEb+xPbdbmxRV3NMdf2rIwK0JQ0nyaWyqa083UBeiqwNEeFtr
         quiQ==
X-Gm-Message-State: AOJu0YyuTCL8H9HvmmK5xQE0kd5/rHoR8qaSF/kyBp/y0eQrU/vzdNmM
	BVrWld/SU9rRC6Pm/wneiPsIiPHoY1D/wJIpfgDoQjO+5hNM+/dGfb4=
X-Google-Smtp-Source: AGHT+IGOHrE9TCNaLsNNnyUR4UqMIUoxRy4E0ZklR9ivvATHeaKUHt2WrQjcxEFKNU6AiMaatfk3e+92UF+d+q1xwVU=
X-Received: by 2002:a17:906:197:b0:99d:dce8:41d6 with SMTP id
 23-20020a170906019700b0099ddce841d6mr6417985ejb.71.1693831734906; Mon, 04 Sep
 2023 05:48:54 -0700 (PDT)
MIME-Version: 1.0
From: Kelly Choi <kelly.choi@cloud.com>
Date: Mon, 4 Sep 2023 13:48:19 +0100
Message-ID: <CAO-mL=zvA8WYjPoKM2t961dEC3unb_eHW=GNLhkX3Gra3Hoi4A@mail.gmail.com>
Subject: Documentation survey
To: xen-announce@lists.xenproject.org, xen-users@lists.xenproject.org, 
	xen-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="000000000000de7127060487eeaf"

--000000000000de7127060487eeaf
Content-Type: text/plain; charset="UTF-8"

Hey everyone,

Hope you've all had a good weekend!

I know that documentation is an important part of The Xen Project, and I
have received feedback from a number of users on this topic. Currently,
there are some barriers to entry and improvements that can be made.

In order to understand further, please could you answer the following
survey (~5-10 mins) on your thoughts around the existing documentation.
This feedback will help achieve a plan of action.

*All responses will be anonymous. *

*https://cryptpad.fr/form/#/2/form/view/aIaNqMdkkV85YkQSzM0+ddwMY36XSTf+Vl3k2APoP-U/
*
<https://cryptpad.fr/form/#/2/form/view/aIaNqMdkkV85YkQSzM0+ddwMY36XSTf+Vl3k2APoP-U/>

Many thanks,
Kelly Choi

Open Source Community Manager, XenServer
Cloud Software Group

--000000000000de7127060487eeaf
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hey everyone,=C2=A0<div><br></div><div>Hope you&#39;ve all=
 had a good weekend!</div><div><br></div><div>I know that documentation=C2=
=A0is an important part of The Xen Project, and I have received feedback fr=
om a number of users on this topic. Currently, there are some barriers to e=
ntry and improvements that can be made.=C2=A0</div><div><br></div><div>In o=
rder to understand further, please could you answer the following survey (~=
5-10 mins) on your thoughts around the existing documentation. This feedbac=
k will help achieve a plan of action.</div><div><br></div><div><b>All respo=
nses will be anonymous.=C2=A0</b></div><div><b><br></b></div><div><a href=
=3D"https://cryptpad.fr/form/#/2/form/view/aIaNqMdkkV85YkQSzM0+ddwMY36XSTf+=
Vl3k2APoP-U/" target=3D"_blank"><b>https://cryptpad.fr/form/#/2/form/view/a=
IaNqMdkkV85YkQSzM0+ddwMY36XSTf+Vl3k2APoP-U/=C2=A0</b><br></a></div><div><br=
 clear=3D"all"><div><div dir=3D"ltr" class=3D"gmail_signature" data-smartma=
il=3D"gmail_signature"><div dir=3D"ltr"><div>Many thanks,</div><div>Kelly C=
hoi</div><div><br></div><div><div style=3D"color:rgb(136,136,136)">Open Sou=
rce Community Manager, XenServer</div><div style=3D"color:rgb(136,136,136)"=
>Cloud Software Group</div></div></div></div></div></div></div>

--000000000000de7127060487eeaf--


From xen-announce-bounces@lists.xenproject.org Tue Sep 05 12:14:32 2023
Return-path: <xen-announce-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 05 Sep 2023 12:14:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.595599.929187 (Exim 4.92)
	(envelope-from <xen-announce-bounces@lists.xenproject.org>)
	id 1qdUvr-0005xM-0a; Tue, 05 Sep 2023 12:13:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 595599.929187; Tue, 05 Sep 2023 12:13:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-announce-bounces@lists.xenproject.org>)
	id 1qdUvq-0005xF-S8; Tue, 05 Sep 2023 12:13:22 +0000
Received: by outflank-mailman (input) for mailman id 595599;
 Tue, 05 Sep 2023 12:13:21 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=QKXV=EV=xenbits.xen.org=gdunlap@srs-se1.protection.inumbo.net>)
 id 1qdUvp-0005x3-Fw
 for xen-announce@lists.xen.org; Tue, 05 Sep 2023 12:13:21 +0000
Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 98d16999-4be5-11ee-8783-cb3800f73035;
 Tue, 05 Sep 2023 14:13:19 +0200 (CEST)
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <gdunlap@xenbits.xen.org>)
 id 1qdUve-0007DA-94; Tue, 05 Sep 2023 12:13:10 +0000
Received: from gdunlap by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <gdunlap@xenbits.xen.org>)
 id 1qdUve-0000uM-7J; Tue, 05 Sep 2023 12:13:10 +0000
X-BeenThere: xen-announce@lists.xenproject.org
List-Id: "Xen announcements \(low volume\)" <xen-announce.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-announce>, 
 <mailto:xen-announce-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-announce@lists.xenproject.org>
List-Help: <mailto:xen-announce-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-announce>, 
 <mailto:xen-announce-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-announce-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-announce" <xen-announce-bounces@lists.xenproject.org>
X-Inumbo-ID: 98d16999-4be5-11ee-8783-cb3800f73035
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=spnz0msETp+VJUNPMgdko2F44ryYPdJkTxl/ALqd22I=; b=hUUGhxXe1YhIr7jC/N3tM3nONv
	uUsW7mu8npgDg+BzdPw//zoAa8nNmdBVAo3WfI7r6OmoLWnCVgLUXCpppAHFXPpRsw7TfQ7VUSo4I
	gOKcptnf/88wbjdo35tHgVOFzSwsZ95lpR2Pf0mv9f04ZC11wdBiYrBdXt+TCcCHUKT0=;
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 <security@xen.org>
CC: Xen.org security team <security-team-members@xen.org>
Subject: Xen Security Advisory 437 v2 (CVE-2023-34321) - arm32: The cache
 may not be properly cleaned/invalidated
Message-Id: <E1qdUve-0000uM-7J@xenbits.xenproject.org>
Date: Tue, 05 Sep 2023 12:13:10 +0000

--=separator
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

            Xen Security Advisory CVE-2023-34321 / XSA-437
                               version 2

            arm32: The cache may not be properly cleaned/invalidated

UPDATES IN VERSION 2
====================

Public release.

ISSUE DESCRIPTION
=================

Arm provides multiple helpers to clean & invalidate the cache
for a given region.  This is, for instance, used when allocating
guest memory to ensure any writes (such as the ones during scrubbing)
have reached memory before handing over the page to a guest.

Unfortunately, the arithmetics in the helpers can overflow and would
then result to skip the cache cleaning/invalidation.  Therefore there
is no guarantee when all the writes will reach the memory.

IMPACT
======

A malicious guest may be able to read sensitive data from memory that
previously belonged to another guest.

VULNERABLE SYSTEMS
==================

Systems running all version of Xen are affected.

Only systems running Xen on Arm 32-bit are vulnerable.  Xen on Arm 64-bit
is not affected.

MITIGATION
==========

There is no known mitigation.

CREDITS
=======

This issue was discovered by Julien Grall of Amazon.

RESOLUTION
==========

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.

xsa437/xsa437.patch           xen-unstable - Xen 4.17.x
xsa437/xsa437-4.16.patch      Xen 4.16.x - Xen 4.15.x

$ sha256sum xsa437* xsa437*/*
259b872275d9d77fc1744df886ffe611d933889bb5ea2833f3c7d8f554eff061  xsa437.meta
31b1a4050403fc83d4ea7619155105001cfd2f739ceb0b0cc7212ab7d0b9d559  xsa437/xsa437.patch
ada8ba64e8562ff6016d456e08b7a171ef356cf476c643df9f66b8650009115c  xsa437/xsa437-4.16.patch
$

DEPLOYMENT DURING EMBARGO
=========================

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/4UyVfoK9kFAmTorfoMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZIv8H/1Grce6f0aytYn0WTXyMdEXtUCkaHQd/pkNkXTe4
uOfNTBM0z2m6MUBATFNUyTiBqm+I8ywZWDp5UVW8nD2YF2hEIGrhdkDMK+cQg98q
iZ+RW4W0cIjZFTbYXRRUm6RPhp31cx4kvTHKk2+imD1bTa/4SVFyDy2ps5ybim9b
1QnPw2+Kbvd2orx6VHpCjnpTqsElRRA1phN9t87UZhgFBCeeatYizHNNqUrvBZXg
UPsB3ERyxAyMqET82jGboUfwmjpctr1I+p9UvEvY9aViSXy+SMnNi84fFSzBrOXr
EaKUg0glvV3uaNwbvJQfmgkhDUOwXN/ySO7Hcu7QpfmUn70=
=2wxR
-----END PGP SIGNATURE-----

--=separator
Content-Type: application/octet-stream; name="xsa437.meta"
Content-Disposition: attachment; filename="xsa437.meta"
Content-Transfer-Encoding: base64

ewogICJYU0EiOiA0MzcsCiAgIlN1cHBvcnRlZFZlcnNpb25zIjogWwogICAg
Im1hc3RlciIsCiAgICAiNC4xNyIsCiAgICAiNC4xNiIsCiAgICAiNC4xNSIK
ICBdLAogICJUcmVlcyI6IFsKICAgICJ4ZW4iCiAgXSwKICAiUmVjaXBlcyI6
IHsKICAgICI0LjE1IjogewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAi
eGVuIjogewogICAgICAgICAgIlN0YWJsZVJlZiI6ICJkZjMzOTVmNmIyZDc1
OWFiYTM5ZmI2N2E3YmMwZmU0OTE0N2M4YjM5IiwKICAgICAgICAgICJQcmVy
ZXFzIjogW10sCiAgICAgICAgICAiUGF0Y2hlcyI6IFsKICAgICAgICAgICAg
InhzYTQzNy94c2E0MzctNC4xNi5wYXRjaCIKICAgICAgICAgIF0KICAgICAg
ICB9CiAgICAgIH0KICAgIH0sCiAgICAiNC4xNiI6IHsKICAgICAgIlJlY2lw
ZXMiOiB7CiAgICAgICAgInhlbiI6IHsKICAgICAgICAgICJTdGFibGVSZWYi
OiAiODlmZTZkMGVkZWE4NDFkMWQyNjkwY2YzZjUxNzNlMzM0YzY4NzgyMyIs
CiAgICAgICAgICAiUHJlcmVxcyI6IFtdLAogICAgICAgICAgIlBhdGNoZXMi
OiBbCiAgICAgICAgICAgICJ4c2E0MzcveHNhNDM3LTQuMTYucGF0Y2giCiAg
ICAgICAgICBdCiAgICAgICAgfQogICAgICB9CiAgICB9LAogICAgIjQuMTci
OiB7CiAgICAgICJSZWNpcGVzIjogewogICAgICAgICJ4ZW4iOiB7CiAgICAg
ICAgICAiU3RhYmxlUmVmIjogIjMxNDFhMGI4NWMzN2I3NmUwNjllYzdkY2I5
MDZmZjIwMmY1YzQwNzUiLAogICAgICAgICAgIlByZXJlcXMiOiBbXSwKICAg
ICAgICAgICJQYXRjaGVzIjogWwogICAgICAgICAgICAieHNhNDM3L3hzYTQz
Ny5wYXRjaCIKICAgICAgICAgIF0KICAgICAgICB9CiAgICAgIH0KICAgIH0s
CiAgICAibWFzdGVyIjogewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAi
eGVuIjogewogICAgICAgICAgIlN0YWJsZVJlZiI6ICIwMWNhMjlmMGIxN2E1
MGE5NGIwZTIzMmJhMjc2YzMyZTk1ZDgwYWUzIiwKICAgICAgICAgICJQcmVy
ZXFzIjogW10sCiAgICAgICAgICAiUGF0Y2hlcyI6IFsKICAgICAgICAgICAg
InhzYTQzNy94c2E0MzcucGF0Y2giCiAgICAgICAgICBdCiAgICAgICAgfQog
ICAgICB9CiAgICB9CiAgfQp9Cg==

--=separator
Content-Type: application/octet-stream; name="xsa437/xsa437.patch"
Content-Disposition: attachment; filename="xsa437/xsa437.patch"
Content-Transfer-Encoding: base64

RnJvbSA3ZmFjNTk3MTM0MGExM2NhOTQ1ODE5NTMwNWJjZmUxNGRmMmU1MmQy
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVmYW5vIFN0YWJl
bGxpbmkgPHN0ZWZhbm8uc3RhYmVsbGluaUBhbWQuY29tPgpEYXRlOiBUaHUs
IDE3IEF1ZyAyMDIzIDEzOjQxOjM1ICswMTAwClN1YmplY3Q6IFtQQVRDSF0g
eGVuL2FybTogcGFnZTogSGFuZGxlIGNhY2hlIGZsdXNoIG9mIGFuIGVsZW1l
bnQgYXQgdGhlIHRvcCBvZgogdGhlIGFkZHJlc3Mgc3BhY2UKClRoZSByZWdp
b24gdGhhdCBuZWVkcyB0byBiZSBjbGVhbmVkL2ludmFsaWRhdGVkIG1heSBi
ZSBhdCB0aGUgdG9wCm9mIHRoZSBhZGRyZXNzIHNwYWNlLiBUaGlzIG1lYW5z
IHRoYXQgJ2VuZCcgKGkuZS4gJ3AgKyBzaXplJykgd2lsbApiZSAwIGFuZCB0
aGVyZWZvcmUgbm90aGluZyB3aWxsIGJlIGNsZWFuZWQvaW52YWxpZGF0ZWQg
YXMgdGhlIGNoZWNrCmluIHRoZSBsb29wIHdpbGwgYWx3YXlzIGJlIGZhbHNl
LgoKT24gQXJtNjQsIHdlIG9ubHkgc3VwcG9ydCB3ZSBvbmx5IHN1cHBvcnQg
dXAgdG8gNDgtYml0IFZpcnR1YWwKYWRkcmVzcyBzcGFjZS4gU28gdGhpcyBp
cyBub3QgYSBjb25jZXJuIHRoZXJlLiBIb3dldmVyLCBmb3IgMzItYml0LAp0
aGUgbWFwY2FjaGUgaXMgdXNpbmcgdGhlIGxhc3QgMkdCIG9mIHRoZSBhZGRy
ZXNzIHNwYWNlLiBUaGVyZWZvcmUKd2UgbWF5IG5vdCBjbGVhbi9pbnZhbGlk
YXRlIHByb3Blcmx5IHNvbWUgcGFnZXMuIFRoaXMgY291bGQgbGVhZAp0byBt
ZW1vcnkgY29ycnVwdGlvbiBvciBkYXRhIGxlYWthZ2UgKHRoZSBzY3J1YmJl
ZCB2YWx1ZSBtYXkKc3RpbGwgc2l0IGluIHRoZSBjYWNoZSB3aGVuIHRoZSBn
dWVzdCBjb3VsZCByZWFkIGRpcmVjdGx5IHRoZSBtZW1vcnkKYW5kIHRoZXJl
Zm9yZSByZWFkIHRoZSBvbGQgY29udGVudCkuCgpSZXdvcmsgaW52YWxpZGF0
ZV9kY2FjaGVfdmFfcmFuZ2UoKSwgY2xlYW5fZGNhY2hlX3ZhX3JhbmdlKCks
CmNsZWFuX2FuZF9pbnZhbGlkYXRlX2RjYWNoZV92YV9yYW5nZSgpIHRvIGhh
bmRsZSBhIGNhY2hlIGZsdXNoCndpdGggYW4gZWxlbWVudCBhdCB0aGUgdG9w
IG9mIHRoZSBhZGRyZXNzIHNwYWNlLgoKVGhpcyBpcyBDVkUtMjAyMy0zNDMy
MSAvIFhTQS00MzcuCgpSZXBvcnRlZC1ieTogSnVsaWVuIEdyYWxsIDxqZ3Jh
bGxAYW1hem9uLmNvbT4KU2lnbmVkLW9mZi1ieTogU3RlZmFubyBTdGFiZWxs
aW5pIDxzdGVmYW5vLnN0YWJlbGxpbmlAYW1kLmNvbT4KU2lnbmVkLW9mZi1i
eTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4KQWNrZWQtYnk6
IEJlcnRyYW5kIE1hcnF1aXMgPGJlcnRyYW5kLm1hcnF1aXNAYXJtLmNvbT4K
Ci0tLQogeGVuL2FyY2gvYXJtL2luY2x1ZGUvYXNtL3BhZ2UuaCB8IDMzICsr
KysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5n
ZWQsIDIwIGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQoKZGlmZiAt
LWdpdCBhL3hlbi9hcmNoL2FybS9pbmNsdWRlL2FzbS9wYWdlLmggYi94ZW4v
YXJjaC9hcm0vaW5jbHVkZS9hc20vcGFnZS5oCmluZGV4IGU3Y2Q2MjE5MGM3
Zi4uZDdmZTc3MGE1ZTQ5IDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0vaW5j
bHVkZS9hc20vcGFnZS5oCisrKyBiL3hlbi9hcmNoL2FybS9pbmNsdWRlL2Fz
bS9wYWdlLmgKQEAgLTE2MCwyNiArMTYwLDI1IEBAIHN0YXRpYyBpbmxpbmUg
c2l6ZV90IHJlYWRfZGNhY2hlX2xpbmVfYnl0ZXModm9pZCkKIAogc3RhdGlj
IGlubGluZSBpbnQgaW52YWxpZGF0ZV9kY2FjaGVfdmFfcmFuZ2UoY29uc3Qg
dm9pZCAqcCwgdW5zaWduZWQgbG9uZyBzaXplKQogewotICAgIGNvbnN0IHZv
aWQgKmVuZCA9IHAgKyBzaXplOwogICAgIHNpemVfdCBjYWNoZWxpbmVfbWFz
ayA9IGRjYWNoZV9saW5lX2J5dGVzIC0gMTsKIAogICAgIGRzYihzeSk7ICAg
ICAgICAgICAvKiBTbyB0aGUgQ1BVIGlzc3VlcyBhbGwgd3JpdGVzIHRvIHRo
ZSByYW5nZSAqLwogCiAgICAgaWYgKCAodWludHB0cl90KXAgJiBjYWNoZWxp
bmVfbWFzayApCiAgICAgeworICAgICAgICBzaXplIC09IGRjYWNoZV9saW5l
X2J5dGVzIC0gKCh1aW50cHRyX3QpcCAmIGNhY2hlbGluZV9tYXNrKTsKICAg
ICAgICAgcCA9ICh2b2lkICopKCh1aW50cHRyX3QpcCAmIH5jYWNoZWxpbmVf
bWFzayk7CiAgICAgICAgIGFzbSB2b2xhdGlsZSAoX19jbGVhbl9hbmRfaW52
YWxpZGF0ZV9kY2FjaGVfb25lKDApIDogOiAiciIgKHApKTsKICAgICAgICAg
cCArPSBkY2FjaGVfbGluZV9ieXRlczsKICAgICB9Ci0gICAgaWYgKCAodWlu
dHB0cl90KWVuZCAmIGNhY2hlbGluZV9tYXNrICkKLSAgICB7Ci0gICAgICAg
IGVuZCA9ICh2b2lkICopKCh1aW50cHRyX3QpZW5kICYgfmNhY2hlbGluZV9t
YXNrKTsKLSAgICAgICAgYXNtIHZvbGF0aWxlIChfX2NsZWFuX2FuZF9pbnZh
bGlkYXRlX2RjYWNoZV9vbmUoMCkgOiA6ICJyIiAoZW5kKSk7Ci0gICAgfQog
Ci0gICAgZm9yICggOyBwIDwgZW5kOyBwICs9IGRjYWNoZV9saW5lX2J5dGVz
ICkKKyAgICBmb3IgKCA7IHNpemUgPj0gZGNhY2hlX2xpbmVfYnl0ZXM7Cisg
ICAgICAgICAgICBwICs9IGRjYWNoZV9saW5lX2J5dGVzLCBzaXplIC09IGRj
YWNoZV9saW5lX2J5dGVzICkKICAgICAgICAgYXNtIHZvbGF0aWxlIChfX2lu
dmFsaWRhdGVfZGNhY2hlX29uZSgwKSA6IDogInIiIChwKSk7CiAKKyAgICBp
ZiAoIHNpemUgPiAwICkKKyAgICAgICAgYXNtIHZvbGF0aWxlIChfX2NsZWFu
X2FuZF9pbnZhbGlkYXRlX2RjYWNoZV9vbmUoMCkgOiA6ICJyIiAocCkpOwor
CiAgICAgZHNiKHN5KTsgICAgICAgICAgIC8qIFNvIHdlIGtub3cgdGhlIGZs
dXNoZXMgaGFwcGVuIGJlZm9yZSBjb250aW51aW5nICovCiAKICAgICByZXR1
cm4gMDsKQEAgLTE4NywxMCArMTg2LDE0IEBAIHN0YXRpYyBpbmxpbmUgaW50
IGludmFsaWRhdGVfZGNhY2hlX3ZhX3JhbmdlKGNvbnN0IHZvaWQgKnAsIHVu
c2lnbmVkIGxvbmcgc2l6ZSkKIAogc3RhdGljIGlubGluZSBpbnQgY2xlYW5f
ZGNhY2hlX3ZhX3JhbmdlKGNvbnN0IHZvaWQgKnAsIHVuc2lnbmVkIGxvbmcg
c2l6ZSkKIHsKLSAgICBjb25zdCB2b2lkICplbmQgPSBwICsgc2l6ZTsKKyAg
ICBzaXplX3QgY2FjaGVsaW5lX21hc2sgPSBkY2FjaGVfbGluZV9ieXRlcyAt
IDE7CisKICAgICBkc2Ioc3kpOyAgICAgICAgICAgLyogU28gdGhlIENQVSBp
c3N1ZXMgYWxsIHdyaXRlcyB0byB0aGUgcmFuZ2UgKi8KLSAgICBwID0gKHZv
aWQgKikoKHVpbnRwdHJfdClwICYgfihkY2FjaGVfbGluZV9ieXRlcyAtIDEp
KTsKLSAgICBmb3IgKCA7IHAgPCBlbmQ7IHAgKz0gZGNhY2hlX2xpbmVfYnl0
ZXMgKQorICAgIHNpemUgKz0gKHVpbnRwdHJfdClwICYgY2FjaGVsaW5lX21h
c2s7CisgICAgc2l6ZSA9IChzaXplICsgY2FjaGVsaW5lX21hc2spICYgfmNh
Y2hlbGluZV9tYXNrOworICAgIHAgPSAodm9pZCAqKSgodWludHB0cl90KXAg
JiB+Y2FjaGVsaW5lX21hc2spOworICAgIGZvciAoIDsgc2l6ZSA+PSBkY2Fj
aGVfbGluZV9ieXRlczsKKyAgICAgICAgICAgIHAgKz0gZGNhY2hlX2xpbmVf
Ynl0ZXMsIHNpemUgLT0gZGNhY2hlX2xpbmVfYnl0ZXMgKQogICAgICAgICBh
c20gdm9sYXRpbGUgKF9fY2xlYW5fZGNhY2hlX29uZSgwKSA6IDogInIiIChw
KSk7CiAgICAgZHNiKHN5KTsgICAgICAgICAgIC8qIFNvIHdlIGtub3cgdGhl
IGZsdXNoZXMgaGFwcGVuIGJlZm9yZSBjb250aW51aW5nICovCiAgICAgLyog
QVJNIGNhbGxlcnMgYXNzdW1lIHRoYXQgZGNhY2hlXyogZnVuY3Rpb25zIGNh
bm5vdCBmYWlsLiAqLwpAQCAtMjAwLDEwICsyMDMsMTQgQEAgc3RhdGljIGlu
bGluZSBpbnQgY2xlYW5fZGNhY2hlX3ZhX3JhbmdlKGNvbnN0IHZvaWQgKnAs
IHVuc2lnbmVkIGxvbmcgc2l6ZSkKIHN0YXRpYyBpbmxpbmUgaW50IGNsZWFu
X2FuZF9pbnZhbGlkYXRlX2RjYWNoZV92YV9yYW5nZQogICAgIChjb25zdCB2
b2lkICpwLCB1bnNpZ25lZCBsb25nIHNpemUpCiB7Ci0gICAgY29uc3Qgdm9p
ZCAqZW5kID0gcCArIHNpemU7CisgICAgc2l6ZV90IGNhY2hlbGluZV9tYXNr
ID0gZGNhY2hlX2xpbmVfYnl0ZXMgLSAxOworCiAgICAgZHNiKHN5KTsgICAg
ICAgICAvKiBTbyB0aGUgQ1BVIGlzc3VlcyBhbGwgd3JpdGVzIHRvIHRoZSBy
YW5nZSAqLwotICAgIHAgPSAodm9pZCAqKSgodWludHB0cl90KXAgJiB+KGRj
YWNoZV9saW5lX2J5dGVzIC0gMSkpOwotICAgIGZvciAoIDsgcCA8IGVuZDsg
cCArPSBkY2FjaGVfbGluZV9ieXRlcyApCisgICAgc2l6ZSArPSAodWludHB0
cl90KXAgJiBjYWNoZWxpbmVfbWFzazsKKyAgICBzaXplID0gKHNpemUgKyBj
YWNoZWxpbmVfbWFzaykgJiB+Y2FjaGVsaW5lX21hc2s7CisgICAgcCA9ICh2
b2lkICopKCh1aW50cHRyX3QpcCAmIH5jYWNoZWxpbmVfbWFzayk7CisgICAg
Zm9yICggOyBzaXplID49IGRjYWNoZV9saW5lX2J5dGVzOworICAgICAgICAg
ICAgcCArPSBkY2FjaGVfbGluZV9ieXRlcywgc2l6ZSAtPSBkY2FjaGVfbGlu
ZV9ieXRlcyApCiAgICAgICAgIGFzbSB2b2xhdGlsZSAoX19jbGVhbl9hbmRf
aW52YWxpZGF0ZV9kY2FjaGVfb25lKDApIDogOiAiciIgKHApKTsKICAgICBk
c2Ioc3kpOyAgICAgICAgIC8qIFNvIHdlIGtub3cgdGhlIGZsdXNoZXMgaGFw
cGVuIGJlZm9yZSBjb250aW51aW5nICovCiAgICAgLyogQVJNIGNhbGxlcnMg
YXNzdW1lIHRoYXQgZGNhY2hlXyogZnVuY3Rpb25zIGNhbm5vdCBmYWlsLiAq
LwotLSAKMi40MC4xCgo=

--=separator
Content-Type: application/octet-stream; name="xsa437/xsa437-4.16.patch"
Content-Disposition: attachment; filename="xsa437/xsa437-4.16.patch"
Content-Transfer-Encoding: base64

RnJvbSAyYjIxMzE5ZWVjZDg2MjMwNzhmMjdmMGJjY2JiZmRlYjI2NjA2ZmYx
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVmYW5vIFN0YWJl
bGxpbmkgPHN0ZWZhbm8uc3RhYmVsbGluaUBhbWQuY29tPgpEYXRlOiBUaHUs
IDE3IEF1ZyAyMDIzIDEzOjQxOjM1ICswMTAwClN1YmplY3Q6IFtQQVRDSF0g
eGVuL2FybTogcGFnZTogSGFuZGxlIGNhY2hlIGZsdXNoIG9mIGFuIGVsZW1l
bnQgYXQgdGhlIHRvcCBvZgogdGhlIGFkZHJlc3Mgc3BhY2UKClRoZSByZWdp
b24gdGhhdCBuZWVkcyB0byBiZSBjbGVhbmVkL2ludmFsaWRhdGVkIG1heSBi
ZSBhdCB0aGUgdG9wCm9mIHRoZSBhZGRyZXNzIHNwYWNlLiBUaGlzIG1lYW5z
IHRoYXQgJ2VuZCcgKGkuZS4gJ3AgKyBzaXplJykgd2lsbApiZSAwIGFuZCB0
aGVyZWZvcmUgbm90aGluZyB3aWxsIGJlIGNsZWFuZWQvaW52YWxpZGF0ZWQg
YXMgdGhlIGNoZWNrCmluIHRoZSBsb29wIHdpbGwgYWx3YXlzIGJlIGZhbHNl
LgoKT24gQXJtNjQsIHdlIG9ubHkgc3VwcG9ydCB3ZSBvbmx5IHN1cHBvcnQg
dXAgdG8gNDgtYml0IFZpcnR1YWwKYWRkcmVzcyBzcGFjZS4gU28gdGhpcyBp
cyBub3QgYSBjb25jZXJuIHRoZXJlLiBIb3dldmVyLCBmb3IgMzItYml0LAp0
aGUgbWFwY2FjaGUgaXMgdXNpbmcgdGhlIGxhc3QgMkdCIG9mIHRoZSBhZGRy
ZXNzIHNwYWNlLiBUaGVyZWZvcmUKd2UgbWF5IG5vdCBjbGVhbi9pbnZhbGlk
YXRlIHByb3Blcmx5IHNvbWUgcGFnZXMuIFRoaXMgY291bGQgbGVhZAp0byBt
ZW1vcnkgY29ycnVwdGlvbiBvciBkYXRhIGxlYWthZ2UgKHRoZSBzY3J1YmJl
ZCB2YWx1ZSBtYXkKc3RpbGwgc2l0IGluIHRoZSBjYWNoZSB3aGVuIHRoZSBn
dWVzdCBjb3VsZCByZWFkIGRpcmVjdGx5IHRoZSBtZW1vcnkKYW5kIHRoZXJl
Zm9yZSByZWFkIHRoZSBvbGQgY29udGVudCkuCgpSZXdvcmsgaW52YWxpZGF0
ZV9kY2FjaGVfdmFfcmFuZ2UoKSwgY2xlYW5fZGNhY2hlX3ZhX3JhbmdlKCks
CmNsZWFuX2FuZF9pbnZhbGlkYXRlX2RjYWNoZV92YV9yYW5nZSgpIHRvIGhh
bmRsZSBhIGNhY2hlIGZsdXNoCndpdGggYW4gZWxlbWVudCBhdCB0aGUgdG9w
IG9mIHRoZSBhZGRyZXNzIHNwYWNlLgoKVGhpcyBpcyBDVkUtMjAyMy0zNDMy
MSAvIFhTQS00MzcuCgpSZXBvcnRlZC1ieTogSnVsaWVuIEdyYWxsIDxqZ3Jh
bGxAYW1hem9uLmNvbT4KU2lnbmVkLW9mZi1ieTogU3RlZmFubyBTdGFiZWxs
aW5pIDxzdGVmYW5vLnN0YWJlbGxpbmlAYW1kLmNvbT4KU2lnbmVkLW9mZi1i
eTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4KQWNrZWQtYnk6
IEJlcnRyYW5kIE1hcnF1aXMgPGJlcnRyYW5kLm1hcnF1aXNAYXJtLmNvbT4K
Ci0tLQogeGVuL2luY2x1ZGUvYXNtLWFybS9wYWdlLmggfCAzMyArKysrKysr
KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAy
MCBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg
YS94ZW4vaW5jbHVkZS9hc20tYXJtL3BhZ2UuaCBiL3hlbi9pbmNsdWRlL2Fz
bS1hcm0vcGFnZS5oCmluZGV4IGM2ZjlmYjBkNGUwYy4uZWZmNTg4M2VmODdi
IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20tYXJtL3BhZ2UuaAorKysg
Yi94ZW4vaW5jbHVkZS9hc20tYXJtL3BhZ2UuaApAQCAtMTUyLDI2ICsxNTIs
MjUgQEAgc3RhdGljIGlubGluZSBzaXplX3QgcmVhZF9kY2FjaGVfbGluZV9i
eXRlcyh2b2lkKQogCiBzdGF0aWMgaW5saW5lIGludCBpbnZhbGlkYXRlX2Rj
YWNoZV92YV9yYW5nZShjb25zdCB2b2lkICpwLCB1bnNpZ25lZCBsb25nIHNp
emUpCiB7Ci0gICAgY29uc3Qgdm9pZCAqZW5kID0gcCArIHNpemU7CiAgICAg
c2l6ZV90IGNhY2hlbGluZV9tYXNrID0gZGNhY2hlX2xpbmVfYnl0ZXMgLSAx
OwogCiAgICAgZHNiKHN5KTsgICAgICAgICAgIC8qIFNvIHRoZSBDUFUgaXNz
dWVzIGFsbCB3cml0ZXMgdG8gdGhlIHJhbmdlICovCiAKICAgICBpZiAoICh1
aW50cHRyX3QpcCAmIGNhY2hlbGluZV9tYXNrICkKICAgICB7CisgICAgICAg
IHNpemUgLT0gZGNhY2hlX2xpbmVfYnl0ZXMgLSAoKHVpbnRwdHJfdClwICYg
Y2FjaGVsaW5lX21hc2spOwogICAgICAgICBwID0gKHZvaWQgKikoKHVpbnRw
dHJfdClwICYgfmNhY2hlbGluZV9tYXNrKTsKICAgICAgICAgYXNtIHZvbGF0
aWxlIChfX2NsZWFuX2FuZF9pbnZhbGlkYXRlX2RjYWNoZV9vbmUoMCkgOiA6
ICJyIiAocCkpOwogICAgICAgICBwICs9IGRjYWNoZV9saW5lX2J5dGVzOwog
ICAgIH0KLSAgICBpZiAoICh1aW50cHRyX3QpZW5kICYgY2FjaGVsaW5lX21h
c2sgKQotICAgIHsKLSAgICAgICAgZW5kID0gKHZvaWQgKikoKHVpbnRwdHJf
dCllbmQgJiB+Y2FjaGVsaW5lX21hc2spOwotICAgICAgICBhc20gdm9sYXRp
bGUgKF9fY2xlYW5fYW5kX2ludmFsaWRhdGVfZGNhY2hlX29uZSgwKSA6IDog
InIiIChlbmQpKTsKLSAgICB9CiAKLSAgICBmb3IgKCA7IHAgPCBlbmQ7IHAg
Kz0gZGNhY2hlX2xpbmVfYnl0ZXMgKQorICAgIGZvciAoIDsgc2l6ZSA+PSBk
Y2FjaGVfbGluZV9ieXRlczsKKyAgICAgICAgICAgIHAgKz0gZGNhY2hlX2xp
bmVfYnl0ZXMsIHNpemUgLT0gZGNhY2hlX2xpbmVfYnl0ZXMgKQogICAgICAg
ICBhc20gdm9sYXRpbGUgKF9faW52YWxpZGF0ZV9kY2FjaGVfb25lKDApIDog
OiAiciIgKHApKTsKIAorICAgIGlmICggc2l6ZSA+IDAgKQorICAgICAgICBh
c20gdm9sYXRpbGUgKF9fY2xlYW5fYW5kX2ludmFsaWRhdGVfZGNhY2hlX29u
ZSgwKSA6IDogInIiIChwKSk7CisKICAgICBkc2Ioc3kpOyAgICAgICAgICAg
LyogU28gd2Uga25vdyB0aGUgZmx1c2hlcyBoYXBwZW4gYmVmb3JlIGNvbnRp
bnVpbmcgKi8KIAogICAgIHJldHVybiAwOwpAQCAtMTc5LDEwICsxNzgsMTQg
QEAgc3RhdGljIGlubGluZSBpbnQgaW52YWxpZGF0ZV9kY2FjaGVfdmFfcmFu
Z2UoY29uc3Qgdm9pZCAqcCwgdW5zaWduZWQgbG9uZyBzaXplKQogCiBzdGF0
aWMgaW5saW5lIGludCBjbGVhbl9kY2FjaGVfdmFfcmFuZ2UoY29uc3Qgdm9p
ZCAqcCwgdW5zaWduZWQgbG9uZyBzaXplKQogewotICAgIGNvbnN0IHZvaWQg
KmVuZCA9IHAgKyBzaXplOworICAgIHNpemVfdCBjYWNoZWxpbmVfbWFzayA9
IGRjYWNoZV9saW5lX2J5dGVzIC0gMTsKKwogICAgIGRzYihzeSk7ICAgICAg
ICAgICAvKiBTbyB0aGUgQ1BVIGlzc3VlcyBhbGwgd3JpdGVzIHRvIHRoZSBy
YW5nZSAqLwotICAgIHAgPSAodm9pZCAqKSgodWludHB0cl90KXAgJiB+KGRj
YWNoZV9saW5lX2J5dGVzIC0gMSkpOwotICAgIGZvciAoIDsgcCA8IGVuZDsg
cCArPSBkY2FjaGVfbGluZV9ieXRlcyApCisgICAgc2l6ZSArPSAodWludHB0
cl90KXAgJiBjYWNoZWxpbmVfbWFzazsKKyAgICBzaXplID0gKHNpemUgKyBj
YWNoZWxpbmVfbWFzaykgJiB+Y2FjaGVsaW5lX21hc2s7CisgICAgcCA9ICh2
b2lkICopKCh1aW50cHRyX3QpcCAmIH5jYWNoZWxpbmVfbWFzayk7CisgICAg
Zm9yICggOyBzaXplID49IGRjYWNoZV9saW5lX2J5dGVzOworICAgICAgICAg
ICAgcCArPSBkY2FjaGVfbGluZV9ieXRlcywgc2l6ZSAtPSBkY2FjaGVfbGlu
ZV9ieXRlcyApCiAgICAgICAgIGFzbSB2b2xhdGlsZSAoX19jbGVhbl9kY2Fj
aGVfb25lKDApIDogOiAiciIgKHApKTsKICAgICBkc2Ioc3kpOyAgICAgICAg
ICAgLyogU28gd2Uga25vdyB0aGUgZmx1c2hlcyBoYXBwZW4gYmVmb3JlIGNv
bnRpbnVpbmcgKi8KICAgICAvKiBBUk0gY2FsbGVycyBhc3N1bWUgdGhhdCBk
Y2FjaGVfKiBmdW5jdGlvbnMgY2Fubm90IGZhaWwuICovCkBAIC0xOTIsMTAg
KzE5NSwxNCBAQCBzdGF0aWMgaW5saW5lIGludCBjbGVhbl9kY2FjaGVfdmFf
cmFuZ2UoY29uc3Qgdm9pZCAqcCwgdW5zaWduZWQgbG9uZyBzaXplKQogc3Rh
dGljIGlubGluZSBpbnQgY2xlYW5fYW5kX2ludmFsaWRhdGVfZGNhY2hlX3Zh
X3JhbmdlCiAgICAgKGNvbnN0IHZvaWQgKnAsIHVuc2lnbmVkIGxvbmcgc2l6
ZSkKIHsKLSAgICBjb25zdCB2b2lkICplbmQgPSBwICsgc2l6ZTsKKyAgICBz
aXplX3QgY2FjaGVsaW5lX21hc2sgPSBkY2FjaGVfbGluZV9ieXRlcyAtIDE7
CisKICAgICBkc2Ioc3kpOyAgICAgICAgIC8qIFNvIHRoZSBDUFUgaXNzdWVz
IGFsbCB3cml0ZXMgdG8gdGhlIHJhbmdlICovCi0gICAgcCA9ICh2b2lkICop
KCh1aW50cHRyX3QpcCAmIH4oZGNhY2hlX2xpbmVfYnl0ZXMgLSAxKSk7Ci0g
ICAgZm9yICggOyBwIDwgZW5kOyBwICs9IGRjYWNoZV9saW5lX2J5dGVzICkK
KyAgICBzaXplICs9ICh1aW50cHRyX3QpcCAmIGNhY2hlbGluZV9tYXNrOwor
ICAgIHNpemUgPSAoc2l6ZSArIGNhY2hlbGluZV9tYXNrKSAmIH5jYWNoZWxp
bmVfbWFzazsKKyAgICBwID0gKHZvaWQgKikoKHVpbnRwdHJfdClwICYgfmNh
Y2hlbGluZV9tYXNrKTsKKyAgICBmb3IgKCA7IHNpemUgPj0gZGNhY2hlX2xp
bmVfYnl0ZXM7CisgICAgICAgICAgICBwICs9IGRjYWNoZV9saW5lX2J5dGVz
LCBzaXplIC09IGRjYWNoZV9saW5lX2J5dGVzICkKICAgICAgICAgYXNtIHZv
bGF0aWxlIChfX2NsZWFuX2FuZF9pbnZhbGlkYXRlX2RjYWNoZV9vbmUoMCkg
OiA6ICJyIiAocCkpOwogICAgIGRzYihzeSk7ICAgICAgICAgLyogU28gd2Ug
a25vdyB0aGUgZmx1c2hlcyBoYXBwZW4gYmVmb3JlIGNvbnRpbnVpbmcgKi8K
ICAgICAvKiBBUk0gY2FsbGVycyBhc3N1bWUgdGhhdCBkY2FjaGVfKiBmdW5j
dGlvbnMgY2Fubm90IGZhaWwuICovCi0tIAoyLjQwLjEKCg==

--=separator--


From xen-announce-bounces@lists.xenproject.org Tue Sep 12 10:27:10 2023
Return-path: <xen-announce-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Tue, 12 Sep 2023 10:27:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.600236.935989 (Exim 4.92)
	(envelope-from <xen-announce-bounces@lists.xenproject.org>)
	id 1qg0bO-0007ZQ-Md; Tue, 12 Sep 2023 10:26:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 600236.935989; Tue, 12 Sep 2023 10:26:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-announce-bounces@lists.xenproject.org>)
	id 1qg0bO-0007ZJ-J9; Tue, 12 Sep 2023 10:26:38 +0000
Received: by outflank-mailman (input) for mailman id 600236;
 Tue, 12 Sep 2023 09:49:32 +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
 <SRS0=6uSu=E4=cloud.com=kelly.choi@srs-se1.protection.inumbo.net>)
 id 1qg01U-0001fI-OJ
 for xen-announce@lists.xenproject.org; Tue, 12 Sep 2023 09:49:32 +0000
Received: from mail-ed1-x535.google.com (mail-ed1-x535.google.com
 [2a00:1450:4864:20::535])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id aab163fb-5151-11ee-9b0d-b553b5be7939;
 Tue, 12 Sep 2023 11:49:30 +0200 (CEST)
Received: by mail-ed1-x535.google.com with SMTP id
 4fb4d7f45d1cf-5230a22cfd1so6906222a12.1
 for <xen-announce@lists.xenproject.org>; Tue, 12 Sep 2023 02:49:29 -0700 (PDT)
X-BeenThere: xen-announce@lists.xenproject.org
List-Id: "Xen announcements \(low volume\)" <xen-announce.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-announce>, 
 <mailto:xen-announce-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-announce@lists.xenproject.org>
List-Help: <mailto:xen-announce-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-announce>, 
 <mailto:xen-announce-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-announce-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-announce" <xen-announce-bounces@lists.xenproject.org>
X-Inumbo-ID: aab163fb-5151-11ee-9b0d-b553b5be7939
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=cloud.com; s=cloud; t=1694512168; x=1695116968; darn=lists.xenproject.org;
        h=to:subject:message-id:date:from:in-reply-to:references:mime-version
         :from:to:cc:subject:date:message-id:reply-to;
        bh=OSkpXD60mkMKp1LVoMvHl+kL8s8XTU2xlXGHwshSDAM=;
        b=APnStUGlZVHBA6WwjLIRmBRf1TYsKZ+J1CCRcNJtNa/oNFBU5eOIBT3pIqDAJevURv
         B5Th2kmlz4us8t6BJN1a1yGCqv6sqiZkKdHaFzAT3FCkIde1whAwsxB5NROOwgrBzVSX
         oVzz9GFvINBqDfODFEv1BgBS8DNmKp9/fJgnk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1694512168; x=1695116968;
        h=to:subject:message-id:date:from:in-reply-to:references:mime-version
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=OSkpXD60mkMKp1LVoMvHl+kL8s8XTU2xlXGHwshSDAM=;
        b=dT1yx/Z5GnANC8V08AqOgd1yONVWLcjL99eW5pfLfO0IfZvt6ZrWrnVA7bSipiwvMK
         DmSReMDUfICmTtdfAGtzIReCinT5yJLJQB4IoGSI75j1r6UKsvwqThW1iMKaQNHDBlup
         QjAEXcwtSh0T/FS1mXQxF/bf3cFUYsFSVyx0q4lR27VngBvjbx7JKMcjpULppmrsPIUZ
         ieJ4LvXazLeGu2MMqFq9/XrbH0YAiQuf4I7E/wCIu+7n2dvMw8eWqyZoBWTDmnKEQf+w
         b49veSEqZ3q6iAAMlT7OK80ve0eJdx15Inl51nRoPQA1KR6xJAWYTjj435+cEFv70x2x
         IZ8Q==
X-Gm-Message-State: AOJu0YyBITbnauNWL6tavuNvHSGWDBtwSe+sQUTJ3MH1IdqoRoUhlxV0
	42GxxUJKBUho5nuAs7ZvyT3VlTIKZn+EWr01MK8Vu4i2FbYMwrQ3/EugWQ==
X-Google-Smtp-Source: AGHT+IF7XzCl2BgjK+0G9+wV4YYA8f6eAw6Q6zFHHNK+tmRPx6gwzLEuyxSlAIxeFIoJLbom4aA3ZWD62c9/cFEPITI=
X-Received: by 2002:aa7:d806:0:b0:522:3849:48db with SMTP id
 v6-20020aa7d806000000b00522384948dbmr9618039edq.3.1694512168579; Tue, 12 Sep
 2023 02:49:28 -0700 (PDT)
MIME-Version: 1.0
References: <CAO-mL=zvA8WYjPoKM2t961dEC3unb_eHW=GNLhkX3Gra3Hoi4A@mail.gmail.com>
In-Reply-To: <CAO-mL=zvA8WYjPoKM2t961dEC3unb_eHW=GNLhkX3Gra3Hoi4A@mail.gmail.com>
From: Kelly Choi <kelly.choi@cloud.com>
Date: Tue, 12 Sep 2023 10:48:53 +0100
Message-ID: <CAO-mL=z7nx5KQ7Y3XejYNW+f+NSYFCmOrYxAsS4_rbo-pBhPtQ@mail.gmail.com>
Subject: Re: Documentation survey
To: xen-announce@lists.xenproject.org, xen-users@lists.xenproject.org, 
	xen-devel@lists.xenproject.org
Content-Type: multipart/alternative; boundary="000000000000e045de0605265b50"

--000000000000e045de0605265b50
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Good morning all!

This is a reminder you have until *Friday 15th September* to fill out the
documentation survey below, if you haven't done so already!

Many thanks,
Kelly Choi

Open Source Community Manager, XenServer
Cloud Software Group


On Mon, Sep 4, 2023 at 1:48=E2=80=AFPM Kelly Choi <kelly.choi@cloud.com> wr=
ote:

> Hey everyone,
>
> Hope you've all had a good weekend!
>
> I know that documentation is an important part of The Xen Project, and I
> have received feedback from a number of users on this topic. Currently,
> there are some barriers to entry and improvements that can be made.
>
> In order to understand further, please could you answer the following
> survey (~5-10 mins) on your thoughts around the existing documentation.
> This feedback will help achieve a plan of action.
>
> *All responses will be anonymous. *
>
>
> *https://cryptpad.fr/form/#/2/form/view/aIaNqMdkkV85YkQSzM0+ddwMY36XSTf+V=
l3k2APoP-U/ *
>
> <https://cryptpad.fr/form/#/2/form/view/aIaNqMdkkV85YkQSzM0+ddwMY36XSTf+V=
l3k2APoP-U/>
>
> Many thanks,
> Kelly Choi
>
> Open Source Community Manager, XenServer
> Cloud Software Group
>

--000000000000e045de0605265b50
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr">Good morning all!=C2=A0<div><br></div><di=
v>This is a reminder you have until <b><u>Friday 15th September</u></b> to =
fill out the documentation survey below, if you haven&#39;t done so already=
!<br><br clear=3D"all"><div><div dir=3D"ltr" class=3D"gmail_signature"><div=
 dir=3D"ltr"><div>Many thanks,</div><div>Kelly Choi</div><div><br></div><di=
v><div style=3D"color:rgb(136,136,136)">Open Source Community Manager, XenS=
erver</div><div style=3D"color:rgb(136,136,136)">Cloud Software Group</div>=
</div></div></div></div><br></div></div><br><div class=3D"gmail_quote"><div=
 dir=3D"ltr" class=3D"gmail_attr">On Mon, Sep 4, 2023 at 1:48=E2=80=AFPM Ke=
lly Choi &lt;<a href=3D"mailto:kelly.choi@cloud.com">kelly.choi@cloud.com</=
a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0p=
x 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><d=
iv dir=3D"ltr">Hey everyone,=C2=A0<div><br></div><div>Hope you&#39;ve all h=
ad a good weekend!</div><div><br></div><div>I know that documentation=C2=A0=
is an important part of The Xen Project, and I have received feedback from =
a number of users on this topic. Currently, there are some barriers to entr=
y and improvements that can be made.=C2=A0</div><div><br></div><div>In orde=
r to understand further, please could you answer the following survey (~5-1=
0 mins) on your thoughts around the existing documentation. This feedback w=
ill help achieve a plan of action.</div><div><br></div><div><b>All response=
s will be anonymous.=C2=A0</b></div><div><b><br></b></div><div><a href=3D"h=
ttps://cryptpad.fr/form/#/2/form/view/aIaNqMdkkV85YkQSzM0+ddwMY36XSTf+Vl3k2=
APoP-U/" target=3D"_blank"><b>https://cryptpad.fr/form/#/2/form/view/aIaNqM=
dkkV85YkQSzM0+ddwMY36XSTf+Vl3k2APoP-U/=C2=A0</b><br></a></div><div><br clea=
r=3D"all"><div><div dir=3D"ltr" class=3D"gmail_signature"><div dir=3D"ltr">=
<div>Many thanks,</div><div>Kelly Choi</div><div><br></div><div><div style=
=3D"color:rgb(136,136,136)">Open Source Community Manager, XenServer</div><=
div style=3D"color:rgb(136,136,136)">Cloud Software Group</div></div></div>=
</div></div></div></div>
</blockquote></div></div>

--000000000000e045de0605265b50--


From xen-announce-bounces@lists.xenproject.org Wed Sep 20 09:20:53 2023
Return-path: <xen-announce-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Wed, 20 Sep 2023 09:20:53 +0000
Received: from list by lists.xenproject.org with outflank-mailman.605350.942964 (Exim 4.92)
	(envelope-from <xen-announce-bounces@lists.xenproject.org>)
	id 1qitNg-0004b0-Mq; Wed, 20 Sep 2023 09:20:24 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 605350.942964; Wed, 20 Sep 2023 09:20:24 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-announce-bounces@lists.xenproject.org>)
	id 1qitNg-0004aa-IH; Wed, 20 Sep 2023 09:20:24 +0000
Received: by outflank-mailman (input) for mailman id 605350;
 Wed, 20 Sep 2023 09:20:23 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=/Op+=FE=xenbits.xen.org=julieng@srs-se1.protection.inumbo.net>)
 id 1qitNf-0004a8-1w
 for xen-announce@lists.xen.org; Wed, 20 Sep 2023 09:20:23 +0000
Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id e972de7e-5796-11ee-8789-cb3800f73035;
 Wed, 20 Sep 2023 11:20:20 +0200 (CEST)
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <julieng@xenbits.xen.org>)
 id 1qitNQ-0008Pb-6d; Wed, 20 Sep 2023 09:20:08 +0000
Received: from julieng by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <julieng@xenbits.xen.org>)
 id 1qitNQ-0001Pu-0K; Wed, 20 Sep 2023 09:20:08 +0000
X-BeenThere: xen-announce@lists.xenproject.org
List-Id: "Xen announcements \(low volume\)" <xen-announce.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-announce>, 
 <mailto:xen-announce-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-announce@lists.xenproject.org>
List-Help: <mailto:xen-announce-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-announce>, 
 <mailto:xen-announce-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-announce-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-announce" <xen-announce-bounces@lists.xenproject.org>
X-Inumbo-ID: e972de7e-5796-11ee-8789-cb3800f73035
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=Y8vjJzY/zssAeDoHSd4YfTt60nArCUTnCrO4OkUiR+o=; b=ENmajgd6ocqHz/DTUB5nOHglzv
	lE1yZzQBmTWlqkhWMe0QFedr02Q+TCd4yJ2pupgM1Viq0LqrbvVlQYn3QxG+gBalKu6zY0eAbU7TM
	CUAHACWpmjJZch4skVwzh0Jcv6W+kt6uC06kh2GybPpYG8gQXGhHfAf11BW3zeU09joA=;
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 <security@xen.org>
CC: Xen.org security team <security-team-members@xen.org>
Subject: Xen Security Advisory 438 v2 (CVE-2023-34322) - top-level shadow
 reference dropped too early for 64-bit PV guests
Message-Id: <E1qitNQ-0001Pu-0K@xenbits.xenproject.org>
Date: Wed, 20 Sep 2023 09:20:08 +0000

--=separator
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

            Xen Security Advisory CVE-2023-34322 / XSA-438
                               version 2

   top-level shadow reference dropped too early for 64-bit PV guests

UPDATES IN VERSION 2
====================

Public release.

ISSUE DESCRIPTION
=================

For migration as well as to work around kernels unaware of L1TF (see
XSA-273), PV guests may be run in shadow paging mode.  Since Xen itself
needs to be mapped when PV guests run, Xen and shadowed PV guests run
directly the respective shadow page tables.  For 64-bit PV guests this
means running on the shadow of the guest root page table.

In the course of dealing with shortage of memory in the shadow pool
associated with a domain, shadows of page tables may be torn down.  This
tearing down may include the shadow root page table that the CPU in
question is presently running on.  While a precaution exists to
supposedly prevent the tearing down of the underlying live page table,
the time window covered by that precaution isn't large enough.

IMPACT
======

Privilege escalation, Denial of Service (DoS) affecting the entire host,
and information leaks all cannot be ruled out.

VULNERABLE SYSTEMS
==================

All Xen versions from at least 3.2 onwards are vulnerable.  Earlier
versions have not been inspected.

Only x86 systems are vulnerable.  Only 64-bit PV guests can leverage the
vulnerability, and only when running in shadow mode.  Shadow mode would
be in use when migrating guests or as a workaround for XSA-273 (L1TF).

MITIGATION
==========

Running only HVM or PVH guests will avoid the vulnerability.

Running PV guests in the PV shim will also avoid the vulnerability.

CREDITS
=======

This issue was discovered by Tim Deegan, and Jan Beulich of SUSE.

RESOLUTION
==========

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.

xsa438.patch           xen-unstable
xsa438-4.17.patch      Xen 4.17.x
xsa438-4.16.patch      Xen 4.16.x
xsa438-4.15.patch      Xen 4.15.x

$ sha256sum xsa438*
f30067fa3732fb52042b14a2836b610c29af47461425f1a1ccec21cb8a5a48b1  xsa438.patch
a2e7d7c12ea19fb95e2d825fda5f7d0124cbb5c4a369cb58ab6036d266b7e297  xsa438-4.15.patch
eb75fbeb4aa635d6104c12acd5f7311e477f7c159f2ec4eca8a345327a9aee24  xsa438-4.16.patch
f3a305c86124e48b9afa14f3ba76b81d1f5d8d472e2412ae3d014305c749a86a  xsa438-4.17.patch
$

DEPLOYMENT DURING EMBARGO
=========================

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/4UyVfoK9kFAmUKuSAMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZtL0IAL3mXsj7Q5Xfu/Tof0a1ie7TnpvZ2qXxzoLlyiFR
Vra9gs83Nw7n45yXFFVLSzTjmz2bCbCmUowPp6TxF9Nawt0JocbF80JpYKEojEko
6B2BAdUFhPXtx1D6NruzG2gVr5qn/eNJjIIos0o7tzxtBPLKX9qzLh3FmZK5BJm2
HyKMLIEZuVipb3Qtb+avUDHvLjee6p4eaaWOk08g3sSWhtSfwxlS4IF9j1G2Oejj
QKZ1XILCP8miXmuUZJ/L/7CzFvOm+DKNVFZYhFT0fjDWk3vNhtLcBv5s36Z65gKK
MvKe7owffmclQLWjOekYNm8dG5gQ/OkWRAPbxiwRMegT22g=
=L3du
-----END PGP SIGNATURE-----

--=separator
Content-Type: application/octet-stream; name="xsa438.patch"
Content-Disposition: attachment; filename="xsa438.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvc2hhZG93OiBkZWZlciByZWxlYXNpbmcgb2YgUFYncyB0b3AtbGV2
ZWwgc2hhZG93IHJlZmVyZW5jZQoKc2hfc2V0X3RvcGxldmVsX3NoYWRvdygp
IHJlLXBpbm5pbmcgdGhlIHRvcC1sZXZlbCBzaGFkb3cgd2UgbWF5IGJlCnJ1
bm5pbmcgb24gaXMgbm90IGVub3VnaCAoYW5kIGF0IHRoZSBzYW1lIHRpbWUg
dW5uZWNlc3Nhcnkgd2hlbiB0aGUKc2hhZG93IGlzbid0IHdoYXQgd2UncmUg
cnVubmluZyBvbik6IFRoYXQgc2hhZG93IGJlY29tZXMgZWxpZ2libGUgZm9y
CmJsb3dpbmcgYXdheSAoZnJvbSBlLmcuIHNoYWRvd19wcmVhbGxvYygpKSBp
bW1lZGlhdGVseSBhZnRlciB0aGUKcGFnaW5nIGxvY2sgd2FzIGRyb3BwZWQu
IFlldCBpdCBuZWVkcyB0byByZW1haW4gdmFsaWQgdW50aWwgdGhlIGFjdHVh
bApwYWdlIHRhYmxlIHN3aXRjaCBvY2N1cnJlZC4KClByb3BhZ2F0ZSB1cCB0
aGUgY2FsbCBjaGFpbiB0aGUgc2hhZG93IGVudHJ5IHRoYXQgbmVlZHMgcmVs
ZWFzaW5nCmV2ZW50dWFsbHksIGFuZCBjYXJyeSBvdXQgdGhlIHJlbGVhc2Ug
aW1tZWRpYXRlbHkgYWZ0ZXIgc3dpdGNoaW5nIHBhZ2UKdGFibGVzLiBIYW5k
bGUgdXBkYXRlX2NyMygpIGZhaWx1cmVzIGJ5IHN3aXRjaGluZyB0byBpZGxl
IHBhZ2V0YWJsZXMuCk5vdGUgdGhhdCB2YXJpb3VzIGZ1cnRoZXIgdXNlcyBv
ZiB1cGRhdGVfY3IzKCkgYXJlIEhWTS1vbmx5IG9yIG9ubHkgYWN0Cm9uIHBh
dXNlZCB2Q1BVLXMsIGluIHdoaWNoIGNhc2Ugc2hfc2V0X3RvcGxldmVsX3No
YWRvdygpIHdpbGwgbm90IGRlZmVyCnJlbGVhc2luZyBvZiB0aGUgcmVmZXJl
bmNlLgoKV2hpbGUgY2hhbmdpbmcgdGhlIHVwZGF0ZV9jcjMoKSBob29rLCBh
bHNvIGNvbnZlcnQgdGhlICJkb19sb2NraW5nIgpwYXJhbWV0ZXIgdG8gYm9v
bGVhbi4KClRoaXMgaXMgQ1ZFLTIwMjMtMzQzMjIgLyBYU0EtNDM4LgoKUmVw
b3J0ZWQtYnk6IFRpbSBEZWVnYW4gPHRpbUB4ZW4ub3JnPgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNsb3VkLmNvbT4K
LS0tClRoZSBidWJibGluZyB1cCBvZiB0aGUgc2hhZG93IGVudHJ5IGNvdWxk
IGxpa2VseSBiZSBhdm9pZGVkIChieQppbnNwZWN0aW5nIHYtPmFyY2guY3Iz
IGFuZCB0aGUgY29ycmVzcG9uZGluZyBmcmFtZV90YWJsZVtdIGVudHJ5KSwg
YnV0CmdvaW5nIHRoYXQgcm91dGUgc2VlbWVkIHF1aXRlIGEgYml0IG1vcmUg
ZnJhZ2lsZSB0byBtZS4KCkluIF90b2dnbGVfZ3Vlc3RfcHQoKSBJIHdhcyBo
ZWF2aWx5IGluY2xpbmVkIHRvIGFsc28gbW92ZSB1cCBjcjMncwppbml0aWFs
aXplcjogVGhpcyB3b3VsZG4ndCBncm93IHRoZSBkaWZmLCBidXQgc2luY2Ug
aXQgd291bGQgc3RpbGwgYmUKc2xpZ2h0bHkgbW9yZSBjb2RlIGNodXJuLCBJ
IHRoZW4gZGlkbid0IGRvIHNvLgotLS0KdjQ6IENvbnZlcnQgYSBjb25kaXRp
b24gb3BlcmF0b3IgdXNlIHRvIGlmKCkuIEV4dGVuZCBjb21tZW50cy4KdjM6
IEluIF90b2dnbGVfZ3Vlc3RfcHQoKSBkb24ndCBtaXN0YWtlbmx5IHBhc3Mg
dGhlIGlkbGUgZG9tYWluIHRvCiAgICBzaGFkb3dfcHV0X3RvcF9sZXZlbCgp
LiBBZGQgbG9ja2luZyB0byBzaGFkb3dfcHV0X3RvcF9sZXZlbCgpLgogICAg
QWx3YXlzIGNvbnN1bWUgc2hfc2V0X3RvcGxldmVsX3NoYWRvdygpJ3MgcmV0
dXJuIHZhbHVlLiBBZGQKICAgIGFzc2VydGlvbnMuIE1hc3NhZ2UgZGVzY3Jp
cHRpb24uCnYyOiBGaXggIVNIQURPV19QQUdJTkcgYnVpbGQuCgotLS0gYS94
ZW4vYXJjaC94ODYvaW5jbHVkZS9hc20vbW0uaAorKysgYi94ZW4vYXJjaC94
ODYvaW5jbHVkZS9hc20vbW0uaApAQCAtNTU2LDcgKzU1Niw3IEBAIHZvaWQg
YXVkaXRfZG9tYWlucyh2b2lkKTsKICNlbmRpZgogCiB2b2lkIG1ha2VfY3Iz
KHN0cnVjdCB2Y3B1ICp2LCBtZm5fdCBtZm4pOwotdm9pZCB1cGRhdGVfY3Iz
KHN0cnVjdCB2Y3B1ICp2KTsKK3BhZ2V0YWJsZV90IHVwZGF0ZV9jcjMoc3Ry
dWN0IHZjcHUgKnYpOwogaW50IHZjcHVfZGVzdHJveV9wYWdldGFibGVzKHN0
cnVjdCB2Y3B1ICopOwogdm9pZCAqZG9fcGFnZV93YWxrKHN0cnVjdCB2Y3B1
ICp2LCB1bnNpZ25lZCBsb25nIGFkZHIpOwogCi0tLSBhL3hlbi9hcmNoL3g4
Ni9pbmNsdWRlL2FzbS9wYWdpbmcuaAorKysgYi94ZW4vYXJjaC94ODYvaW5j
bHVkZS9hc20vcGFnaW5nLmgKQEAgLTExOCw3ICsxMTgsNyBAQCBzdHJ1Y3Qg
cGFnaW5nX21vZGUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwYWRkcl90IGdhLCB1aW50MzJfdCAqcGZlYywKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z
aWduZWQgaW50ICpwYWdlX29yZGVyKTsKICNlbmRpZgotICAgIHZvaWQgICAg
ICAgICAgKCp1cGRhdGVfY3IzICAgICAgICAgICAgKShzdHJ1Y3QgdmNwdSAq
diwgaW50IGRvX2xvY2tpbmcsCisgICAgcGFnZXRhYmxlX3QgICAoKnVwZGF0
ZV9jcjMgICAgICAgICAgICApKHN0cnVjdCB2Y3B1ICp2LCBib29sIGRvX2xv
Y2tpbmcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGJvb2wgbm9mbHVzaCk7CiAKICAgICB1bnNpZ25lZCBpbnQgZ3Vl
c3RfbGV2ZWxzOwpAQCAtMjk0LDkgKzI5NCw5IEBAIHN0YXRpYyBpbmxpbmUg
Ym9vbCBwYWdpbmdfZmx1c2hfdGxiKGNvbnMKIC8qIFVwZGF0ZSBhbGwgdGhl
IHRoaW5ncyB0aGF0IGFyZSBkZXJpdmVkIGZyb20gdGhlIGd1ZXN0J3MgQ1Iz
LgogICogQ2FsbGVkIHdoZW4gdGhlIGd1ZXN0IGNoYW5nZXMgQ1IzOyB0aGUg
Y2FsbGVyIGNhbiB0aGVuIHVzZSB2LT5hcmNoLmNyMwogICogYXMgdGhlIHZh
bHVlIHRvIGxvYWQgaW50byB0aGUgaG9zdCBDUjMgdG8gc2NoZWR1bGUgdGhp
cyB2Y3B1ICovCi1zdGF0aWMgaW5saW5lIHZvaWQgcGFnaW5nX3VwZGF0ZV9j
cjMoc3RydWN0IHZjcHUgKnYsIGJvb2wgbm9mbHVzaCkKK3N0YXRpYyBpbmxp
bmUgcGFnZXRhYmxlX3QgcGFnaW5nX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUg
KnYsIGJvb2wgbm9mbHVzaCkKIHsKLSAgICBwYWdpbmdfZ2V0X2hvc3Rtb2Rl
KHYpLT51cGRhdGVfY3IzKHYsIDEsIG5vZmx1c2gpOworICAgIHJldHVybiBw
YWdpbmdfZ2V0X2hvc3Rtb2RlKHYpLT51cGRhdGVfY3IzKHYsIDEsIG5vZmx1
c2gpOwogfQogCiAvKiBVcGRhdGUgYWxsIHRoZSB0aGluZ3MgdGhhdCBhcmUg
ZGVyaXZlZCBmcm9tIHRoZSBndWVzdCdzIENSMC9DUjMvQ1I0LgotLS0gYS94
ZW4vYXJjaC94ODYvaW5jbHVkZS9hc20vc2hhZG93LmgKKysrIGIveGVuL2Fy
Y2gveDg2L2luY2x1ZGUvYXNtL3NoYWRvdy5oCkBAIC05NCw2ICs5NCw5IEBA
IHZvaWQgc2hhZG93X2Jsb3dfdGFibGVzX3Blcl9kb21haW4oc3RydWMKIGlu
dCBzaGFkb3dfc2V0X2FsbG9jYXRpb24oc3RydWN0IGRvbWFpbiAqZCwgdW5z
aWduZWQgaW50IHBhZ2VzLAogICAgICAgICAgICAgICAgICAgICAgICAgICBi
b29sICpwcmVlbXB0ZWQpOwogCisvKiBIZWxwZXIgdG8gaW52b2tlIGZvciBk
ZWZlcnJlZCByZWxlYXNpbmcgb2YgYSB0b3AtbGV2ZWwgc2hhZG93J3MgcmVm
ZXJlbmNlLiAqLwordm9pZCBzaGFkb3dfcHV0X3RvcF9sZXZlbChzdHJ1Y3Qg
ZG9tYWluICpkLCBwYWdldGFibGVfdCBvbGQpOworCiAjZWxzZSAvKiAhQ09O
RklHX1NIQURPV19QQUdJTkcgKi8KIAogI2RlZmluZSBzaGFkb3dfdmNwdV90
ZWFyZG93bih2KSBBU1NFUlQoaXNfcHZfdmNwdSh2KSkKQEAgLTExNCw2ICsx
MTcsMTEgQEAgc3RhdGljIGlubGluZSB2b2lkIHNoYWRvd19wcmVwYXJlX3Bh
Z2VfdAogCiBzdGF0aWMgaW5saW5lIHZvaWQgc2hhZG93X2Jsb3dfdGFibGVz
X3Blcl9kb21haW4oc3RydWN0IGRvbWFpbiAqZCkge30KIAorc3RhdGljIGlu
bGluZSB2b2lkIHNoYWRvd19wdXRfdG9wX2xldmVsKHN0cnVjdCBkb21haW4g
KmQsIHBhZ2V0YWJsZV90IG9sZCkKK3sKKyAgICBBU1NFUlRfVU5SRUFDSEFC
TEUoKTsKK30KKwogc3RhdGljIGlubGluZSBpbnQgc2hhZG93X2RvbWN0bChz
dHJ1Y3QgZG9tYWluICpkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzdHJ1Y3QgeGVuX2RvbWN0bF9zaGFkb3dfb3AgKnNjLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBYRU5fR1VFU1RfSEFORExFX1BB
UkFNKHhlbl9kb21jdGxfdCkgdV9kb21jdGwpCi0tLSBhL3hlbi9hcmNoL3g4
Ni9tbS9oYXAvaGFwLmMKKysrIGIveGVuL2FyY2gveDg2L21tL2hhcC9oYXAu
YwpAQCAtNzA3LDExICs3MDcsMTMgQEAgc3RhdGljIGJvb2wgY2ZfY2hlY2sg
aGFwX2ludmxwZyhzdHJ1Y3QgdgogICAgIHJldHVybiAxOwogfQogCi1zdGF0
aWMgdm9pZCBjZl9jaGVjayBoYXBfdXBkYXRlX2NyMygKLSAgICBzdHJ1Y3Qg
dmNwdSAqdiwgaW50IGRvX2xvY2tpbmcsIGJvb2wgbm9mbHVzaCkKK3N0YXRp
YyBwYWdldGFibGVfdCBjZl9jaGVjayBoYXBfdXBkYXRlX2NyMygKKyAgICBz
dHJ1Y3QgdmNwdSAqdiwgYm9vbCBkb19sb2NraW5nLCBib29sIG5vZmx1c2gp
CiB7CiAgICAgdi0+YXJjaC5odm0uaHdfY3JbM10gPSB2LT5hcmNoLmh2bS5n
dWVzdF9jclszXTsKICAgICBodm1fdXBkYXRlX2d1ZXN0X2NyMyh2LCBub2Zs
dXNoKTsKKworICAgIHJldHVybiBwYWdldGFibGVfbnVsbCgpOwogfQogCiBz
dGF0aWMgYm9vbCBmbHVzaF92Y3B1KGNvbnN0IHN0cnVjdCB2Y3B1ICp2LCBj
b25zdCB1bnNpZ25lZCBsb25nICp2Y3B1X2JpdG1hcCkKLS0tIGEveGVuL2Fy
Y2gveDg2L21tL3NoYWRvdy9jb21tb24uYworKysgYi94ZW4vYXJjaC94ODYv
bW0vc2hhZG93L2NvbW1vbi5jCkBAIC0yNTI2LDEzICsyNTI2LDEzIEBAIHN0
YXRpYyB2b2lkIGNmX2NoZWNrIHNoYWRvd191cGRhdGVfcGFnaW4KIH0KIAog
LyogU2V0IHVwIHRoZSB0b3AtbGV2ZWwgc2hhZG93IGFuZCBpbnN0YWxsIGl0
IGluIHNsb3QgJ3Nsb3QnIG9mIHNoYWRvd190YWJsZSAqLwotdm9pZCBzaF9z
ZXRfdG9wbGV2ZWxfc2hhZG93KHN0cnVjdCB2Y3B1ICp2LAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBzbG90LAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHJvb3RfdHlwZSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCAoKm1ha2Vfc2hhZG93
KShzdHJ1Y3QgdmNwdSAqdiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCBnbWZuLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQz
Ml90IHNoYWRvd190eXBlKSkKK3BhZ2V0YWJsZV90IHNoX3NldF90b3BsZXZl
bF9zaGFkb3coc3RydWN0IHZjcHUgKnYsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBzbG90LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCBnbWZuLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgcm9v
dF90eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBt
Zm5fdCAoKm1ha2Vfc2hhZG93KShzdHJ1Y3QgdmNwdSAqdiwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgbWZuX3QgZ21mbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc2hhZG93X3R5
cGUpKQogewogICAgIG1mbl90IHNtZm47CiAgICAgcGFnZXRhYmxlX3Qgb2xk
X2VudHJ5LCBuZXdfZW50cnk7CkBAIC0yNTg5LDIwICsyNTg5LDM3IEBAIHZv
aWQgc2hfc2V0X3RvcGxldmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdQogICAgICAg
ICAgICAgICAgICAgbWZuX3goZ21mbiksIG1mbl94KHBhZ2V0YWJsZV9nZXRf
bWZuKG5ld19lbnRyeSkpKTsKICAgICB2LT5hcmNoLnBhZ2luZy5zaGFkb3cu
c2hhZG93X3RhYmxlW3Nsb3RdID0gbmV3X2VudHJ5OwogCi0gICAgLyogRGVj
cmVtZW50IHRoZSByZWZjb3VudCBvZiB0aGUgb2xkIGNvbnRlbnRzIG9mIHRo
aXMgc2xvdCAqLwotICAgIGlmICggIXBhZ2V0YWJsZV9pc19udWxsKG9sZF9l
bnRyeSkgKQorICAgIC8qCisgICAgICogRGVjcmVtZW50IHRoZSByZWZjb3Vu
dCBvZiB0aGUgb2xkIGNvbnRlbnRzIG9mIHRoaXMgc2xvdCwgdW5sZXNzCisg
ICAgICogd2UncmUgc3RpbGwgcnVubmluZyBvbiB0aGF0IHNoYWRvdyAtIGlu
IHRoYXQgY2FzZSBpdCdsbCBuZWVkIGhvbGRpbmcKKyAgICAgKiBvbiB0byB1
bnRpbCB0aGUgYWN0dWFsIHBhZ2UgdGFibGUgc3dpdGNoIGRpZCBvY2N1ci4K
KyAgICAgKi8KKyAgICBpZiAoICFwYWdldGFibGVfaXNfbnVsbChvbGRfZW50
cnkpICYmICh2ICE9IGN1cnJlbnQgfHwgIWlzX3B2X2RvbWFpbihkKSkgKQog
ICAgIHsKLSAgICAgICAgbWZuX3Qgb2xkX3NtZm4gPSBwYWdldGFibGVfZ2V0
X21mbihvbGRfZW50cnkpOwotICAgICAgICAvKiBOZWVkIHRvIHJlcGluIHRo
ZSBvbGQgdG9wbGV2ZWwgc2hhZG93IGlmIGl0J3MgYmVlbiB1bnBpbm5lZAot
ICAgICAgICAgKiBieSBzaGFkb3dfcHJlYWxsb2MoKTogaW4gUFYgbW9kZSB3
ZSdyZSBzdGlsbCBydW5uaW5nIG9uIHRoaXMKLSAgICAgICAgICogc2hhZG93
IGFuZCBpdCdzIG5vdCBzYWZlIHRvIGZyZWUgaXQgeWV0LiAqLwotICAgICAg
ICBpZiAoICFtZm5fdG9fcGFnZShvbGRfc21mbiktPnUuc2gucGlubmVkICYm
ICFzaF9waW4oZCwgb2xkX3NtZm4pICkKLSAgICAgICAgewotICAgICAgICAg
ICAgcHJpbnRrKFhFTkxPR19HX0VSUiAiY2FuJ3QgcmUtcGluICUiUFJJX21m
biJcbiIsIG1mbl94KG9sZF9zbWZuKSk7Ci0gICAgICAgICAgICBkb21haW5f
Y3Jhc2goZCk7Ci0gICAgICAgIH0KLSAgICAgICAgc2hfcHV0X3JlZihkLCBv
bGRfc21mbiwgMCk7CisgICAgICAgIHNoX3B1dF9yZWYoZCwgcGFnZXRhYmxl
X2dldF9tZm4ob2xkX2VudHJ5KSwgMCk7CisgICAgICAgIG9sZF9lbnRyeSA9
IHBhZ2V0YWJsZV9udWxsKCk7CiAgICAgfQorCisgICAgLyoKKyAgICAgKiAy
LSBhbmQgMy1sZXZlbCBzaGFkb3cgbW9kZSBpcyB1c2VkIGZvciBIVk0gb25s
eS4gVGhlcmVmb3JlIHdlIG5ldmVyIHJ1bgorICAgICAqIG9uIHN1Y2ggYSBz
aGFkb3csIHNvIG9ubHkgY2FsbCBzaXRlcyByZXF1ZXN0aW5nIGFuIEw0IHNo
YWRvdyBuZWVkIHRvIHBheQorICAgICAqIGF0dGVudGlvbiB0byB0aGUgcmV0
dXJuZWQgdmFsdWUuCisgICAgICovCisgICAgQVNTRVJUKHBhZ2V0YWJsZV9p
c19udWxsKG9sZF9lbnRyeSkgfHwgcm9vdF90eXBlID09IFNIX3R5cGVfbDRf
NjRfc2hhZG93KTsKKworICAgIHJldHVybiBvbGRfZW50cnk7Cit9CisKKy8q
CisgKiBIZWxwZXIgaW52b2tlZCB3aGVuIHJlbGVhc2luZyBvZiBhIHRvcC1s
ZXZlbCBzaGFkb3cncyByZWZlcmVuY2Ugd2FzCisgKiBkZWZlcnJlZCBpbiBz
aF9zZXRfdG9wbGV2ZWxfc2hhZG93KCkgYWJvdmUuCisgKi8KK3ZvaWQgc2hh
ZG93X3B1dF90b3BfbGV2ZWwoc3RydWN0IGRvbWFpbiAqZCwgcGFnZXRhYmxl
X3Qgb2xkX2VudHJ5KQoreworICAgIEFTU0VSVCghcGFnZXRhYmxlX2lzX251
bGwob2xkX2VudHJ5KSk7CisgICAgcGFnaW5nX2xvY2soZCk7CisgICAgc2hf
cHV0X3JlZihkLCBwYWdldGFibGVfZ2V0X21mbihvbGRfZW50cnkpLCAwKTsK
KyAgICBwYWdpbmdfdW5sb2NrKGQpOwogfQogCiAvKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKiovCi0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9zaGFkb3cv
bXVsdGkuYworKysgYi94ZW4vYXJjaC94ODYvbW0vc2hhZG93L211bHRpLmMK
QEAgLTMxNTYsNyArMzE1Niw4IEBAIHNoX3VwZGF0ZV9saW5lYXJfZW50cmll
cyhzdHJ1Y3QgdmNwdSAqdikKICAgICBzaF9mbHVzaF9sb2NhbChkKTsKIH0K
IAotc3RhdGljIHZvaWQgY2ZfY2hlY2sgc2hfdXBkYXRlX2NyMyhzdHJ1Y3Qg
dmNwdSAqdiwgaW50IGRvX2xvY2tpbmcsIGJvb2wgbm9mbHVzaCkKK3N0YXRp
YyBwYWdldGFibGVfdCBjZl9jaGVjayBzaF91cGRhdGVfY3IzKHN0cnVjdCB2
Y3B1ICp2LCBib29sIGRvX2xvY2tpbmcsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBib29sIG5vZmx1c2gpCiAvKiBVcGRh
dGVzIHZjcHUtPmFyY2guY3IzIGFmdGVyIHRoZSBndWVzdCBoYXMgY2hhbmdl
ZCBDUjMuCiAgKiBQYXJhdmlydHVhbCBndWVzdHMgc2hvdWxkIHNldCB2LT5h
cmNoLmd1ZXN0X3RhYmxlIChhbmQgZ3Vlc3RfdGFibGVfdXNlciwKICAqIGlm
IGFwcHJvcHJpYXRlKS4KQEAgLTMxNzAsNiArMzE3MSw3IEBAIHN0YXRpYyB2
b2lkIGNmX2NoZWNrIHNoX3VwZGF0ZV9jcjMoc3RydWMKIHsKICAgICBzdHJ1
Y3QgZG9tYWluICpkID0gdi0+ZG9tYWluOwogICAgIG1mbl90IGdtZm47Cisg
ICAgcGFnZXRhYmxlX3Qgb2xkX2VudHJ5ID0gcGFnZXRhYmxlX251bGwoKTsK
ICNpZiBHVUVTVF9QQUdJTkdfTEVWRUxTID09IDMKICAgICBjb25zdCBndWVz
dF9sM2VfdCAqZ2wzZTsKICAgICB1bnNpZ25lZCBpbnQgaSwgZ3Vlc3RfaWR4
OwpAQCAtMzE3OSw3ICszMTgxLDcgQEAgc3RhdGljIHZvaWQgY2ZfY2hlY2sg
c2hfdXBkYXRlX2NyMyhzdHJ1YwogICAgIGlmICggIWlzX2h2bV9kb21haW4o
ZCkgJiYgIXYtPmlzX2luaXRpYWxpc2VkICkKICAgICB7CiAgICAgICAgIEFT
U0VSVCh2LT5hcmNoLmNyMyA9PSAwKTsKLSAgICAgICAgcmV0dXJuOworICAg
ICAgICByZXR1cm4gb2xkX2VudHJ5OwogICAgIH0KIAogICAgIGlmICggZG9f
bG9ja2luZyApIHBhZ2luZ19sb2NrKHYtPmRvbWFpbik7CkBAIC0zMjUyLDEx
ICszMjU0LDEyIEBAIHN0YXRpYyB2b2lkIGNmX2NoZWNrIHNoX3VwZGF0ZV9j
cjMoc3RydWMKICNpZiBHVUVTVF9QQUdJTkdfTEVWRUxTID09IDQKICAgICBp
ZiAoIHNoX3JlbW92ZV93cml0ZV9hY2Nlc3MoZCwgZ21mbiwgNCwgMCkgIT0g
MCApCiAgICAgICAgIGd1ZXN0X2ZsdXNoX3RsYl9tYXNrKGQsIGQtPmRpcnR5
X2NwdW1hc2spOwotICAgIHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgMCwg
Z21mbiwgU0hfdHlwZV9sNF9zaGFkb3csIHNoX21ha2Vfc2hhZG93KTsKKyAg
ICBvbGRfZW50cnkgPSBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIDAsIGdt
Zm4sIFNIX3R5cGVfbDRfc2hhZG93LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2hfbWFrZV9zaGFkb3cpOwogICAgIGlmICgg
dW5saWtlbHkocGFnZXRhYmxlX2lzX251bGwodi0+YXJjaC5wYWdpbmcuc2hh
ZG93LnNoYWRvd190YWJsZVswXSkpICkKICAgICB7CiAgICAgICAgIEFTU0VS
VChkLT5pc19keWluZyB8fCBkLT5pc19zaHV0dGluZ19kb3duKTsKLSAgICAg
ICAgcmV0dXJuOworICAgICAgICByZXR1cm4gb2xkX2VudHJ5OwogICAgIH0K
ICAgICBpZiAoICFzaGFkb3dfbW9kZV9leHRlcm5hbChkKSAmJiAhaXNfcHZf
MzJiaXRfZG9tYWluKGQpICkKICAgICB7CkBAIC0zMzAwLDI0ICszMzAzLDMw
IEBAIHN0YXRpYyB2b2lkIGNmX2NoZWNrIHNoX3VwZGF0ZV9jcjMoc3RydWMK
ICAgICAgICAgICAgICAgICBnbDJnZm4gPSBndWVzdF9sM2VfZ2V0X2dmbihn
bDNlW2ldKTsKICAgICAgICAgICAgICAgICBnbDJtZm4gPSBnZXRfZ2ZuX3F1
ZXJ5X3VubG9ja2VkKGQsIGdmbl94KGdsMmdmbiksICZwMm10KTsKICAgICAg
ICAgICAgICAgICBpZiAoIHAybV9pc19yYW0ocDJtdCkgKQotICAgICAgICAg
ICAgICAgICAgICBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIGksIGdsMm1m
biwgU0hfdHlwZV9sMl9zaGFkb3csCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2hfbWFrZV9zaGFkb3cpOworICAgICAg
ICAgICAgICAgICAgICBvbGRfZW50cnkgPSBzaF9zZXRfdG9wbGV2ZWxfc2hh
ZG93KHYsIGksIGdsMm1mbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTSF90eXBlX2wyX3NoYWRv
dywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzaF9tYWtlX3NoYWRvdyk7CiAgICAgICAgICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgICAgICAgICBzaF9zZXRfdG9wbGV2ZWxf
c2hhZG93KHYsIGksIElOVkFMSURfTUZOLCAwLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93KTsK
KyAgICAgICAgICAgICAgICAgICAgb2xkX2VudHJ5ID0gc2hfc2V0X3RvcGxl
dmVsX3NoYWRvdyh2LCBpLCBJTlZBTElEX01GTiwgMCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
aF9tYWtlX3NoYWRvdyk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBl
bHNlCi0gICAgICAgICAgICAgICAgc2hfc2V0X3RvcGxldmVsX3NoYWRvdyh2
LCBpLCBJTlZBTElEX01GTiwgMCwgc2hfbWFrZV9zaGFkb3cpOworICAgICAg
ICAgICAgICAgIG9sZF9lbnRyeSA9IHNoX3NldF90b3BsZXZlbF9zaGFkb3co
diwgaSwgSU5WQUxJRF9NRk4sIDAsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaF9tYWtlX3NoYWRvdyk7
CisKKyAgICAgICAgICAgIEFTU0VSVChwYWdldGFibGVfaXNfbnVsbChvbGRf
ZW50cnkpKTsKICAgICAgICAgfQogICAgIH0KICNlbGlmIEdVRVNUX1BBR0lO
R19MRVZFTFMgPT0gMgogICAgIGlmICggc2hfcmVtb3ZlX3dyaXRlX2FjY2Vz
cyhkLCBnbWZuLCAyLCAwKSAhPSAwICkKICAgICAgICAgZ3Vlc3RfZmx1c2hf
dGxiX21hc2soZCwgZC0+ZGlydHlfY3B1bWFzayk7Ci0gICAgc2hfc2V0X3Rv
cGxldmVsX3NoYWRvdyh2LCAwLCBnbWZuLCBTSF90eXBlX2wyX3NoYWRvdywg
c2hfbWFrZV9zaGFkb3cpOworICAgIG9sZF9lbnRyeSA9IHNoX3NldF90b3Bs
ZXZlbF9zaGFkb3codiwgMCwgZ21mbiwgU0hfdHlwZV9sMl9zaGFkb3csCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaF9tYWtl
X3NoYWRvdyk7CisgICAgQVNTRVJUKHBhZ2V0YWJsZV9pc19udWxsKG9sZF9l
bnRyeSkpOwogICAgIGlmICggdW5saWtlbHkocGFnZXRhYmxlX2lzX251bGwo
di0+YXJjaC5wYWdpbmcuc2hhZG93LnNoYWRvd190YWJsZVswXSkpICkKICAg
ICB7CiAgICAgICAgIEFTU0VSVChkLT5pc19keWluZyB8fCBkLT5pc19zaHV0
dGluZ19kb3duKTsKLSAgICAgICAgcmV0dXJuOworICAgICAgICByZXR1cm4g
b2xkX2VudHJ5OwogICAgIH0KICNlbHNlCiAjZXJyb3IgVGhpcyBzaG91bGQg
bmV2ZXIgaGFwcGVuCkBAIC0zNDA1LDYgKzM0MTQsOCBAQCBzdGF0aWMgdm9p
ZCBjZl9jaGVjayBzaF91cGRhdGVfY3IzKHN0cnVjCiAKICAgICAvKiBSZWxl
YXNlIHRoZSBsb2NrLCBpZiB3ZSB0b29rIGl0IChvdGhlcndpc2UgaXQncyB0
aGUgY2FsbGVyJ3MgcHJvYmxlbSkgKi8KICAgICBpZiAoIGRvX2xvY2tpbmcg
KSBwYWdpbmdfdW5sb2NrKHYtPmRvbWFpbik7CisKKyAgICByZXR1cm4gb2xk
X2VudHJ5OwogfQogCiAKLS0tIGEveGVuL2FyY2gveDg2L21tL3NoYWRvdy9u
b25lLmMKKysrIGIveGVuL2FyY2gveDg2L21tL3NoYWRvdy9ub25lLmMKQEAg
LTU1LDkgKzU1LDExIEBAIHN0YXRpYyB1bnNpZ25lZCBsb25nIGNmX2NoZWNr
IF9ndmFfdG9fZ2YKIH0KICNlbmRpZgogCi1zdGF0aWMgdm9pZCBjZl9jaGVj
ayBfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgaW50IGRvX2xvY2tpbmcs
IGJvb2wgbm9mbHVzaCkKK3N0YXRpYyBwYWdldGFibGVfdCBjZl9jaGVjayBf
dXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBkb19sb2NraW5nLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wg
bm9mbHVzaCkKIHsKICAgICBBU1NFUlRfVU5SRUFDSEFCTEUoKTsKKyAgICBy
ZXR1cm4gcGFnZXRhYmxlX251bGwoKTsKIH0KIAogc3RhdGljIGNvbnN0IHN0
cnVjdCBwYWdpbmdfbW9kZSBzaF9wYWdpbmdfbm9uZSA9IHsKLS0tIGEveGVu
L2FyY2gveDg2L21tL3NoYWRvdy9wcml2YXRlLmgKKysrIGIveGVuL2FyY2gv
eDg2L21tL3NoYWRvdy9wcml2YXRlLmgKQEAgLTM4MywxMyArMzgzLDEzIEBA
IG1mbl90IHNoYWRvd19hbGxvYyhzdHJ1Y3QgZG9tYWluICpkLAogdm9pZCAg
c2hhZG93X2ZyZWUoc3RydWN0IGRvbWFpbiAqZCwgbWZuX3Qgc21mbik7CiAK
IC8qIFNldCB1cCB0aGUgdG9wLWxldmVsIHNoYWRvdyBhbmQgaW5zdGFsbCBp
dCBpbiBzbG90ICdzbG90JyBvZiBzaGFkb3dfdGFibGUgKi8KLXZvaWQgc2hf
c2V0X3RvcGxldmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdSAqdiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgc2xvdCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCBnbWZuLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCByb290X3R5cGUsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3QgKCptYWtlX3NoYWRv
dykoc3RydWN0IHZjcHUgKnYsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3QgZ21mbiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50
MzJfdCBzaGFkb3dfdHlwZSkpOworcGFnZXRhYmxlX3Qgc2hfc2V0X3RvcGxl
dmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdSAqdiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHNsb3QsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBy
b290X3R5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG1mbl90ICgqbWFrZV9zaGFkb3cpKHN0cnVjdCB2Y3B1ICp2LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBtZm5fdCBnbWZuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzaGFkb3df
dHlwZSkpOwogCiAvKiBVcGRhdGUgdGhlIHNoYWRvd3MgaW4gcmVzcG9uc2Ug
dG8gYSBwYWdldGFibGUgd3JpdGUgZnJvbSBYZW4gKi8KIGludCBzaF92YWxp
ZGF0ZV9ndWVzdF9lbnRyeShzdHJ1Y3QgdmNwdSAqdiwgbWZuX3QgZ21mbiwg
dm9pZCAqZW50cnksIHUzMiBzaXplKTsKLS0tIGEveGVuL2FyY2gveDg2L21t
LmMKKysrIGIveGVuL2FyY2gveDg2L21tLmMKQEAgLTU0OSwxNSArNTQ5LDEy
IEBAIHZvaWQgd3JpdGVfcHRiYXNlKHN0cnVjdCB2Y3B1ICp2KQogICoKICAq
IFVwZGF0ZSByZWYgY291bnRzIHRvIHNoYWRvdyB0YWJsZXMgYXBwcm9wcmlh
dGVseS4KICAqLwotdm9pZCB1cGRhdGVfY3IzKHN0cnVjdCB2Y3B1ICp2KQor
cGFnZXRhYmxlX3QgdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdikKIHsKICAg
ICBtZm5fdCBjcjNfbWZuOwogCiAgICAgaWYgKCBwYWdpbmdfbW9kZV9lbmFi
bGVkKHYtPmRvbWFpbikgKQotICAgIHsKLSAgICAgICAgcGFnaW5nX3VwZGF0
ZV9jcjModiwgZmFsc2UpOwotICAgICAgICByZXR1cm47Ci0gICAgfQorICAg
ICAgICByZXR1cm4gcGFnaW5nX3VwZGF0ZV9jcjModiwgZmFsc2UpOwogCiAg
ICAgaWYgKCAhKHYtPmFyY2guZmxhZ3MgJiBURl9rZXJuZWxfbW9kZSkgKQog
ICAgICAgICBjcjNfbWZuID0gcGFnZXRhYmxlX2dldF9tZm4odi0+YXJjaC5n
dWVzdF90YWJsZV91c2VyKTsKQEAgLTU2NSw2ICs1NjIsOCBAQCB2b2lkIHVw
ZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYpCiAgICAgICAgIGNyM19tZm4gPSBw
YWdldGFibGVfZ2V0X21mbih2LT5hcmNoLmd1ZXN0X3RhYmxlKTsKIAogICAg
IG1ha2VfY3IzKHYsIGNyM19tZm4pOworCisgICAgcmV0dXJuIHBhZ2V0YWJs
ZV9udWxsKCk7CiB9CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBzZXRfdGxiZmx1
c2hfdGltZXN0YW1wKHN0cnVjdCBwYWdlX2luZm8gKnBhZ2UpCkBAIC0zMjY5
LDYgKzMyNjgsNyBAQCBpbnQgbmV3X2d1ZXN0X2NyMyhtZm5fdCBtZm4pCiAg
ICAgc3RydWN0IGRvbWFpbiAqZCA9IGN1cnItPmRvbWFpbjsKICAgICBpbnQg
cmM7CiAgICAgbWZuX3Qgb2xkX2Jhc2VfbWZuOworICAgIHBhZ2V0YWJsZV90
IG9sZF9zaGFkb3c7CiAKICAgICBpZiAoIGlzX3B2XzMyYml0X2RvbWFpbihk
KSApCiAgICAgewpAQCAtMzMzNiw5ICszMzM2LDIyIEBAIGludCBuZXdfZ3Vl
c3RfY3IzKG1mbl90IG1mbikKICAgICBpZiAoICFWTV9BU1NJU1QoZCwgbTJw
X3N0cmljdCkgKQogICAgICAgICBmaWxsX3JvX21wdChtZm4pOwogICAgIGN1
cnItPmFyY2guZ3Vlc3RfdGFibGUgPSBwYWdldGFibGVfZnJvbV9tZm4obWZu
KTsKLSAgICB1cGRhdGVfY3IzKGN1cnIpOworICAgIG9sZF9zaGFkb3cgPSB1
cGRhdGVfY3IzKGN1cnIpOworCisgICAgLyoKKyAgICAgKiBJbiBzaGFkb3cg
bW9kZSB1cGRhdGVfY3IzKCkgY2FuIGZhaWwsIGluIHdoaWNoIGNhc2UgaGVy
ZSB3ZSdyZSBzdGlsbAorICAgICAqIHJ1bm5pbmcgb24gdGhlIHByaW9yIHRv
cC1sZXZlbCBzaGFkb3cgKHdoaWNoIHdlJ3JlIGFib3V0IHRvIHJlbGVhc2Up
LgorICAgICAqIFN3aXRjaCB0byB0aGUgaWRsZSBwYWdlIHRhYmxlcyBpbiBz
dWNoIGFuIGV2ZW50OyB0aGUgZ3Vlc3Qgd2lsbCBoYXZlCisgICAgICogYmVl
biBjcmFzaGVkIGFscmVhZHkuCisgICAgICovCisgICAgaWYgKCBsaWtlbHko
IW1mbl9lcShwYWdldGFibGVfZ2V0X21mbihvbGRfc2hhZG93KSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgIG1hZGRyX3RvX21mbihjdXJyLT5hcmNoLmNy
MyAmIH5YODZfQ1IzX05PRkxVU0gpKSkgKQorICAgICAgICB3cml0ZV9wdGJh
c2UoY3Vycik7CisgICAgZWxzZQorICAgICAgICB3cml0ZV9wdGJhc2UoaWRs
ZV92Y3B1W2N1cnItPnByb2Nlc3Nvcl0pOwogCi0gICAgd3JpdGVfcHRiYXNl
KGN1cnIpOworICAgIGlmICggIXBhZ2V0YWJsZV9pc19udWxsKG9sZF9zaGFk
b3cpICkKKyAgICAgICAgc2hhZG93X3B1dF90b3BfbGV2ZWwoZCwgb2xkX3No
YWRvdyk7CiAKICAgICBpZiAoIGxpa2VseShtZm5feChvbGRfYmFzZV9tZm4p
ICE9IDApICkKICAgICB7Ci0tLSBhL3hlbi9hcmNoL3g4Ni9wdi9kb21haW4u
YworKysgYi94ZW4vYXJjaC94ODYvcHYvZG9tYWluLmMKQEAgLTQyNCwxMCAr
NDI0LDEzIEBAIGJvb2wgX19pbml0IHhwdGlfcGNpZF9lbmFibGVkKHZvaWQp
CiAKIHN0YXRpYyB2b2lkIF90b2dnbGVfZ3Vlc3RfcHQoc3RydWN0IHZjcHUg
KnYpCiB7CisgICAgYm9vbCBndWVzdF91cGRhdGU7CisgICAgcGFnZXRhYmxl
X3Qgb2xkX3NoYWRvdzsKICAgICB1bnNpZ25lZCBsb25nIGNyMzsKIAogICAg
IHYtPmFyY2guZmxhZ3MgXj0gVEZfa2VybmVsX21vZGU7Ci0gICAgdXBkYXRl
X2NyMyh2KTsKKyAgICBndWVzdF91cGRhdGUgPSB2LT5hcmNoLmZsYWdzICYg
VEZfa2VybmVsX21vZGU7CisgICAgb2xkX3NoYWRvdyA9IHVwZGF0ZV9jcjMo
dik7CiAKICAgICAvKgogICAgICAqIERvbid0IGZsdXNoIHVzZXIgZ2xvYmFs
IG1hcHBpbmdzIGZyb20gdGhlIFRMQi4gRG9uJ3QgdGljayBUTEIgY2xvY2su
CkBAIC00MzYsMTMgKzQzOSwzMSBAQCBzdGF0aWMgdm9pZCBfdG9nZ2xlX2d1
ZXN0X3B0KHN0cnVjdCB2Y3B1CiAgICAgICogVExCIGZsdXNoIChmb3IganVz
dCB0aGUgaW5jb21pbmcgUENJRCksIGFzIHRoZSB0b3AgbGV2ZWwgcGFnZSB0
YWJsZSBtYXkKICAgICAgKiBoYXZlIGNoYW5nZWQgYmVoaW5kIG91ciBiYWNr
cy4gVG8gYmUgb24gdGhlIHNhZmUgc2lkZSwgc3VwcHJlc3MgdGhlCiAgICAg
ICogbm8tZmx1c2ggdW5jb25kaXRpb25hbGx5IGluIHRoaXMgY2FzZS4KKyAg
ICAgKgorICAgICAqIEZ1cnRoZXJtb3JlIGluIHNoYWRvdyBtb2RlIHVwZGF0
ZV9jcjMoKSBjYW4gZmFpbCwgaW4gd2hpY2ggY2FzZSBoZXJlCisgICAgICog
d2UncmUgc3RpbGwgcnVubmluZyBvbiB0aGUgcHJpb3IgdG9wLWxldmVsIHNo
YWRvdyAod2hpY2ggd2UncmUgYWJvdXQKKyAgICAgKiB0byByZWxlYXNlKS4g
U3dpdGNoIHRvIHRoZSBpZGxlIHBhZ2UgdGFibGVzIGluIHN1Y2ggYW4gZXZl
bnQ7IHRoZQorICAgICAqIGd1ZXN0IHdpbGwgaGF2ZSBiZWVuIGNyYXNoZWQg
YWxyZWFkeS4KICAgICAgKi8KICAgICBjcjMgPSB2LT5hcmNoLmNyMzsKICAg
ICBpZiAoIHNoYWRvd19tb2RlX2VuYWJsZWQodi0+ZG9tYWluKSApCisgICAg
ewogICAgICAgICBjcjMgJj0gflg4Nl9DUjNfTk9GTFVTSDsKKworICAgICAg
ICBpZiAoIHVubGlrZWx5KG1mbl9lcShwYWdldGFibGVfZ2V0X21mbihvbGRf
c2hhZG93KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFkZHJf
dG9fbWZuKGNyMykpKSApCisgICAgICAgIHsKKyAgICAgICAgICAgIGNyMyA9
IGlkbGVfdmNwdVt2LT5wcm9jZXNzb3JdLT5hcmNoLmNyMzsKKyAgICAgICAg
ICAgIC8qIEFsc28gc3VwcHJlc3MgcnVuc3RhdGUvdGltZSBhcmVhIHVwZGF0
ZXMgYmVsb3cuICovCisgICAgICAgICAgICBndWVzdF91cGRhdGUgPSBmYWxz
ZTsKKyAgICAgICAgfQorICAgIH0KICAgICB3cml0ZV9jcjMoY3IzKTsKIAot
ICAgIGlmICggISh2LT5hcmNoLmZsYWdzICYgVEZfa2VybmVsX21vZGUpICkK
KyAgICBpZiAoICFwYWdldGFibGVfaXNfbnVsbChvbGRfc2hhZG93KSApCisg
ICAgICAgIHNoYWRvd19wdXRfdG9wX2xldmVsKHYtPmRvbWFpbiwgb2xkX3No
YWRvdyk7CisKKyAgICBpZiAoICFndWVzdF91cGRhdGUgKQogICAgICAgICBy
ZXR1cm47CiAKICAgICBpZiAoIHYtPmFyY2gucHYubmVlZF91cGRhdGVfcnVu
c3RhdGVfYXJlYSAmJiB1cGRhdGVfcnVuc3RhdGVfYXJlYSh2KSApCg==

--=separator
Content-Type: application/octet-stream; name="xsa438-4.15.patch"
Content-Disposition: attachment; filename="xsa438-4.15.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvc2hhZG93OiBkZWZlciByZWxlYXNpbmcgb2YgUFYncyB0b3AtbGV2
ZWwgc2hhZG93IHJlZmVyZW5jZQoKc2hfc2V0X3RvcGxldmVsX3NoYWRvdygp
IHJlLXBpbm5pbmcgdGhlIHRvcC1sZXZlbCBzaGFkb3cgd2UgbWF5IGJlCnJ1
bm5pbmcgb24gaXMgbm90IGVub3VnaCAoYW5kIGF0IHRoZSBzYW1lIHRpbWUg
dW5uZWNlc3Nhcnkgd2hlbiB0aGUKc2hhZG93IGlzbid0IHdoYXQgd2UncmUg
cnVubmluZyBvbik6IFRoYXQgc2hhZG93IGJlY29tZXMgZWxpZ2libGUgZm9y
CmJsb3dpbmcgYXdheSAoZnJvbSBlLmcuIHNoYWRvd19wcmVhbGxvYygpKSBp
bW1lZGlhdGVseSBhZnRlciB0aGUKcGFnaW5nIGxvY2sgd2FzIGRyb3BwZWQu
IFlldCBpdCBuZWVkcyB0byByZW1haW4gdmFsaWQgdW50aWwgdGhlIGFjdHVh
bApwYWdlIHRhYmxlIHN3aXRjaCBvY2N1cnJlZC4KClByb3BhZ2F0ZSB1cCB0
aGUgY2FsbCBjaGFpbiB0aGUgc2hhZG93IGVudHJ5IHRoYXQgbmVlZHMgcmVs
ZWFzaW5nCmV2ZW50dWFsbHksIGFuZCBjYXJyeSBvdXQgdGhlIHJlbGVhc2Ug
aW1tZWRpYXRlbHkgYWZ0ZXIgc3dpdGNoaW5nIHBhZ2UKdGFibGVzLiBIYW5k
bGUgdXBkYXRlX2NyMygpIGZhaWx1cmVzIGJ5IHN3aXRjaGluZyB0byBpZGxl
IHBhZ2V0YWJsZXMuCk5vdGUgdGhhdCB2YXJpb3VzIGZ1cnRoZXIgdXNlcyBv
ZiB1cGRhdGVfY3IzKCkgYXJlIEhWTS1vbmx5IG9yIG9ubHkgYWN0Cm9uIHBh
dXNlZCB2Q1BVLXMsIGluIHdoaWNoIGNhc2Ugc2hfc2V0X3RvcGxldmVsX3No
YWRvdygpIHdpbGwgbm90IGRlZmVyCnJlbGVhc2luZyBvZiB0aGUgcmVmZXJl
bmNlLgoKV2hpbGUgY2hhbmdpbmcgdGhlIHVwZGF0ZV9jcjMoKSBob29rLCBh
bHNvIGNvbnZlcnQgdGhlICJkb19sb2NraW5nIgpwYXJhbWV0ZXIgdG8gYm9v
bGVhbi4KClRoaXMgaXMgQ1ZFLTIwMjMtMzQzMjIgLyBYU0EtNDM4LgoKUmVw
b3J0ZWQtYnk6IFRpbSBEZWVnYW4gPHRpbUB4ZW4ub3JnPgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNsb3VkLmNvbT4K
Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9oYXAvaGFwLmMKKysrIGIveGVuL2Fy
Y2gveDg2L21tL2hhcC9oYXAuYwpAQCAtNzI4LDEwICs3MjgsMTIgQEAgc3Rh
dGljIGJvb2xfdCBoYXBfaW52bHBnKHN0cnVjdCB2Y3B1ICp2LAogICAgIHJl
dHVybiAxOwogfQogCi1zdGF0aWMgdm9pZCBoYXBfdXBkYXRlX2NyMyhzdHJ1
Y3QgdmNwdSAqdiwgaW50IGRvX2xvY2tpbmcsIGJvb2wgbm9mbHVzaCkKK3N0
YXRpYyBwYWdldGFibGVfdCBoYXBfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAq
diwgYm9vbCBkb19sb2NraW5nLCBib29sIG5vZmx1c2gpCiB7CiAgICAgdi0+
YXJjaC5odm0uaHdfY3JbM10gPSB2LT5hcmNoLmh2bS5ndWVzdF9jclszXTsK
ICAgICBodm1fdXBkYXRlX2d1ZXN0X2NyMyh2LCBub2ZsdXNoKTsKKworICAg
IHJldHVybiBwYWdldGFibGVfbnVsbCgpOwogfQogCiAvKgotLS0gYS94ZW4v
YXJjaC94ODYvbW0vc2hhZG93L2NvbW1vbi5jCisrKyBiL3hlbi9hcmNoL3g4
Ni9tbS9zaGFkb3cvY29tbW9uLmMKQEAgLTI2NDEsMTMgKzI2NDEsMTMgQEAg
dm9pZCBzaGFkb3dfdXBkYXRlX3BhZ2luZ19tb2RlcyhzdHJ1Y3QgdgogfQog
CiAvKiBTZXQgdXAgdGhlIHRvcC1sZXZlbCBzaGFkb3cgYW5kIGluc3RhbGwg
aXQgaW4gc2xvdCAnc2xvdCcgb2Ygc2hhZG93X3RhYmxlICovCi12b2lkIHNo
X3NldF90b3BsZXZlbF9zaGFkb3coc3RydWN0IHZjcHUgKnYsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHNsb3QsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3QgZ21mbiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgcm9vdF90eXBlLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90ICgqbWFrZV9zaGFk
b3cpKHN0cnVjdCB2Y3B1ICp2LAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDMyX3Qgc2hhZG93X3R5cGUpKQorcGFnZXRhYmxlX3Qgc2hfc2V0X3RvcGxl
dmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdSAqdiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHNsb3QsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBy
b290X3R5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG1mbl90ICgqbWFrZV9zaGFkb3cpKHN0cnVjdCB2Y3B1ICp2LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBtZm5fdCBnbWZuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzaGFkb3df
dHlwZSkpCiB7CiAgICAgbWZuX3Qgc21mbjsKICAgICBwYWdldGFibGVfdCBv
bGRfZW50cnksIG5ld19lbnRyeTsKQEAgLTI3MDQsMjAgKzI3MDQsMzcgQEAg
dm9pZCBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHN0cnVjdCB2Y3B1CiAgICAg
ICAgICAgICAgICAgICBtZm5feChnbWZuKSwgbWZuX3gocGFnZXRhYmxlX2dl
dF9tZm4obmV3X2VudHJ5KSkpOwogICAgIHYtPmFyY2gucGFnaW5nLnNoYWRv
dy5zaGFkb3dfdGFibGVbc2xvdF0gPSBuZXdfZW50cnk7CiAKLSAgICAvKiBE
ZWNyZW1lbnQgdGhlIHJlZmNvdW50IG9mIHRoZSBvbGQgY29udGVudHMgb2Yg
dGhpcyBzbG90ICovCi0gICAgaWYgKCAhcGFnZXRhYmxlX2lzX251bGwob2xk
X2VudHJ5KSApCisgICAgLyoKKyAgICAgKiBEZWNyZW1lbnQgdGhlIHJlZmNv
dW50IG9mIHRoZSBvbGQgY29udGVudHMgb2YgdGhpcyBzbG90LCB1bmxlc3MK
KyAgICAgKiB3ZSdyZSBzdGlsbCBydW5uaW5nIG9uIHRoYXQgc2hhZG93IC0g
aW4gdGhhdCBjYXNlIGl0J2xsIG5lZWQgaG9sZGluZworICAgICAqIG9uIHRv
IHVudGlsIHRoZSBhY3R1YWwgcGFnZSB0YWJsZSBzd2l0Y2ggZGlkIG9jY3Vy
LgorICAgICAqLworICAgIGlmICggIXBhZ2V0YWJsZV9pc19udWxsKG9sZF9l
bnRyeSkgJiYgKHYgIT0gY3VycmVudCB8fCAhaXNfcHZfZG9tYWluKGQpKSAp
CiAgICAgewotICAgICAgICBtZm5fdCBvbGRfc21mbiA9IHBhZ2V0YWJsZV9n
ZXRfbWZuKG9sZF9lbnRyeSk7Ci0gICAgICAgIC8qIE5lZWQgdG8gcmVwaW4g
dGhlIG9sZCB0b3BsZXZlbCBzaGFkb3cgaWYgaXQncyBiZWVuIHVucGlubmVk
Ci0gICAgICAgICAqIGJ5IHNoYWRvd19wcmVhbGxvYygpOiBpbiBQViBtb2Rl
IHdlJ3JlIHN0aWxsIHJ1bm5pbmcgb24gdGhpcwotICAgICAgICAgKiBzaGFk
b3cgYW5kIGl0J3Mgbm90IHNhZmUgdG8gZnJlZSBpdCB5ZXQuICovCi0gICAg
ICAgIGlmICggIW1mbl90b19wYWdlKG9sZF9zbWZuKS0+dS5zaC5waW5uZWQg
JiYgIXNoX3BpbihkLCBvbGRfc21mbikgKQotICAgICAgICB7Ci0gICAgICAg
ICAgICBwcmludGsoWEVOTE9HX0dfRVJSICJjYW4ndCByZS1waW4gJSJQUklf
bWZuIlxuIiwgbWZuX3gob2xkX3NtZm4pKTsKLSAgICAgICAgICAgIGRvbWFp
bl9jcmFzaChkKTsKLSAgICAgICAgfQotICAgICAgICBzaF9wdXRfcmVmKGQs
IG9sZF9zbWZuLCAwKTsKKyAgICAgICAgc2hfcHV0X3JlZihkLCBwYWdldGFi
bGVfZ2V0X21mbihvbGRfZW50cnkpLCAwKTsKKyAgICAgICAgb2xkX2VudHJ5
ID0gcGFnZXRhYmxlX251bGwoKTsKICAgICB9CisKKyAgICAvKgorICAgICAq
IDItIGFuZCAzLWxldmVsIHNoYWRvdyBtb2RlIGlzIHVzZWQgZm9yIEhWTSBv
bmx5LiBUaGVyZWZvcmUgd2UgbmV2ZXIgcnVuCisgICAgICogb24gc3VjaCBh
IHNoYWRvdywgc28gb25seSBjYWxsIHNpdGVzIHJlcXVlc3RpbmcgYW4gTDQg
c2hhZG93IG5lZWQgdG8gcGF5CisgICAgICogYXR0ZW50aW9uIHRvIHRoZSBy
ZXR1cm5lZCB2YWx1ZS4KKyAgICAgKi8KKyAgICBBU1NFUlQocGFnZXRhYmxl
X2lzX251bGwob2xkX2VudHJ5KSB8fCByb290X3R5cGUgPT0gU0hfdHlwZV9s
NF82NF9zaGFkb3cpOworCisgICAgcmV0dXJuIG9sZF9lbnRyeTsKK30KKwor
LyoKKyAqIEhlbHBlciBpbnZva2VkIHdoZW4gcmVsZWFzaW5nIG9mIGEgdG9w
LWxldmVsIHNoYWRvdydzIHJlZmVyZW5jZSB3YXMKKyAqIGRlZmVycmVkIGlu
IHNoX3NldF90b3BsZXZlbF9zaGFkb3coKSBhYm92ZS4KKyAqLwordm9pZCBz
aGFkb3dfcHV0X3RvcF9sZXZlbChzdHJ1Y3QgZG9tYWluICpkLCBwYWdldGFi
bGVfdCBvbGRfZW50cnkpCit7CisgICAgQVNTRVJUKCFwYWdldGFibGVfaXNf
bnVsbChvbGRfZW50cnkpKTsKKyAgICBwYWdpbmdfbG9jayhkKTsKKyAgICBz
aF9wdXRfcmVmKGQsIHBhZ2V0YWJsZV9nZXRfbWZuKG9sZF9lbnRyeSksIDAp
OworICAgIHBhZ2luZ191bmxvY2soZCk7CiB9CiAKIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKi8KLS0tIGEveGVuL2FyY2gveDg2L21tL3NoYWRv
dy9tdWx0aS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9zaGFkb3cvbXVsdGku
YwpAQCAtMzYwNCw4ICszNjA0LDggQEAgc2hfZGV0YWNoX29sZF90YWJsZXMo
c3RydWN0IHZjcHUgKnYpCiAgICAgfQogfQogCi1zdGF0aWMgdm9pZAotc2hf
dXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgaW50IGRvX2xvY2tpbmcsIGJv
b2wgbm9mbHVzaCkKK3N0YXRpYyBwYWdldGFibGVfdAorc2hfdXBkYXRlX2Ny
MyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBkb19sb2NraW5nLCBib29sIG5vZmx1
c2gpCiAvKiBVcGRhdGVzIHZjcHUtPmFyY2guY3IzIGFmdGVyIHRoZSBndWVz
dCBoYXMgY2hhbmdlZCBDUjMuCiAgKiBQYXJhdmlydHVhbCBndWVzdHMgc2hv
dWxkIHNldCB2LT5hcmNoLmd1ZXN0X3RhYmxlIChhbmQgZ3Vlc3RfdGFibGVf
dXNlciwKICAqIGlmIGFwcHJvcHJpYXRlKS4KQEAgLTM2MTksNiArMzYxOSw3
IEBAIHNoX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGludCBkb19sb2MK
IHsKICAgICBzdHJ1Y3QgZG9tYWluICpkID0gdi0+ZG9tYWluOwogICAgIG1m
bl90IGdtZm47CisgICAgcGFnZXRhYmxlX3Qgb2xkX2VudHJ5ID0gcGFnZXRh
YmxlX251bGwoKTsKICNpZiBHVUVTVF9QQUdJTkdfTEVWRUxTID09IDMgJiYg
ZGVmaW5lZChDT05GSUdfSFZNKQogICAgIGNvbnN0IGd1ZXN0X2wzZV90ICpn
bDNlOwogICAgIHVuc2lnbmVkIGludCBpLCBndWVzdF9pZHg7CkBAIC0zNjI4
LDcgKzM2MjksNyBAQCBzaF91cGRhdGVfY3IzKHN0cnVjdCB2Y3B1ICp2LCBp
bnQgZG9fbG9jCiAgICAgaWYgKCBpc19wdl9kb21haW4oZCkgJiYgIXYtPmlz
X2luaXRpYWxpc2VkICkKICAgICB7CiAgICAgICAgIEFTU0VSVCh2LT5hcmNo
LmNyMyA9PSAwKTsKLSAgICAgICAgcmV0dXJuOworICAgICAgICByZXR1cm4g
b2xkX2VudHJ5OwogICAgIH0KIAogICAgIGlmICggZG9fbG9ja2luZyApIHBh
Z2luZ19sb2NrKHYtPmRvbWFpbik7CkBAIC0zNzAxLDExICszNzAyLDEyIEBA
IHNoX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGludCBkb19sb2MKICNp
ZiBHVUVTVF9QQUdJTkdfTEVWRUxTID09IDQKICAgICBpZiAoIHNoX3JlbW92
ZV93cml0ZV9hY2Nlc3MoZCwgZ21mbiwgNCwgMCkgIT0gMCApCiAgICAgICAg
IGd1ZXN0X2ZsdXNoX3RsYl9tYXNrKGQsIGQtPmRpcnR5X2NwdW1hc2spOwot
ICAgIHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgMCwgZ21mbiwgU0hfdHlw
ZV9sNF9zaGFkb3csIHNoX21ha2Vfc2hhZG93KTsKKyAgICBvbGRfZW50cnkg
PSBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIDAsIGdtZm4sIFNIX3R5cGVf
bDRfc2hhZG93LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc2hfbWFrZV9zaGFkb3cpOwogICAgIGlmICggdW5saWtlbHkocGFn
ZXRhYmxlX2lzX251bGwodi0+YXJjaC5wYWdpbmcuc2hhZG93LnNoYWRvd190
YWJsZVswXSkpICkKICAgICB7CiAgICAgICAgIEFTU0VSVChkLT5pc19keWlu
ZyB8fCBkLT5pc19zaHV0dGluZ19kb3duKTsKLSAgICAgICAgcmV0dXJuOwor
ICAgICAgICByZXR1cm4gb2xkX2VudHJ5OwogICAgIH0KICAgICBpZiAoICFz
aGFkb3dfbW9kZV9leHRlcm5hbChkKSAmJiAhaXNfcHZfMzJiaXRfZG9tYWlu
KGQpICkKICAgICB7CkBAIC0zNzUxLDI2ICszNzUzLDMyIEBAIHNoX3VwZGF0
ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGludCBkb19sb2MKICAgICAgICAgICAg
ICAgICBnbDJnZm4gPSBndWVzdF9sM2VfZ2V0X2dmbihnbDNlW2ldKTsKICAg
ICAgICAgICAgICAgICBnbDJtZm4gPSBnZXRfZ2ZuX3F1ZXJ5X3VubG9ja2Vk
KGQsIGdmbl94KGdsMmdmbiksICZwMm10KTsKICAgICAgICAgICAgICAgICBp
ZiAoIHAybV9pc19yYW0ocDJtdCkgKQotICAgICAgICAgICAgICAgICAgICBz
aF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIGksIGdsMm1mbiwgKGkgPT0gMykK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/
IFNIX3R5cGVfbDJoX3NoYWRvdwotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDogU0hfdHlwZV9sMl9zaGFkb3csCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hfbWFr
ZV9zaGFkb3cpOworICAgICAgICAgICAgICAgICAgICBvbGRfZW50cnkgPSBz
aF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIGksIGdsMm1mbiwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAoaSA9PSAzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgID8gU0hfdHlwZV9sMmhfc2hhZG93Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDogU0hfdHlwZV9sMl9zaGFkb3cpLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNo
X21ha2Vfc2hhZG93KTsKICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAg
ICAgICAgICAgICAgIHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgaSwgSU5W
QUxJRF9NRk4sIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc2hfbWFrZV9zaGFkb3cpOworICAgICAgICAgICAgICAg
ICAgICBvbGRfZW50cnkgPSBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIGks
IElOVkFMSURfTUZOLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93KTsK
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAg
ICAgICBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIGksIElOVkFMSURfTUZO
LCAwLCBzaF9tYWtlX3NoYWRvdyk7CisgICAgICAgICAgICAgICAgb2xkX2Vu
dHJ5ID0gc2hfc2V0X3RvcGxldmVsX3NoYWRvdyh2LCBpLCBJTlZBTElEX01G
TiwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93KTsKKworICAgICAgICAgICAg
QVNTRVJUKHBhZ2V0YWJsZV9pc19udWxsKG9sZF9lbnRyeSkpOwogICAgICAg
ICB9CiAgICAgfQogI2VsaWYgR1VFU1RfUEFHSU5HX0xFVkVMUyA9PSAyCiAg
ICAgaWYgKCBzaF9yZW1vdmVfd3JpdGVfYWNjZXNzKGQsIGdtZm4sIDIsIDAp
ICE9IDAgKQogICAgICAgICBndWVzdF9mbHVzaF90bGJfbWFzayhkLCBkLT5k
aXJ0eV9jcHVtYXNrKTsKLSAgICBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYs
IDAsIGdtZm4sIFNIX3R5cGVfbDJfc2hhZG93LCBzaF9tYWtlX3NoYWRvdyk7
CisgICAgb2xkX2VudHJ5ID0gc2hfc2V0X3RvcGxldmVsX3NoYWRvdyh2LCAw
LCBnbWZuLCBTSF90eXBlX2wyX3NoYWRvdywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93KTsKKyAgICBB
U1NFUlQocGFnZXRhYmxlX2lzX251bGwob2xkX2VudHJ5KSk7CiAgICAgaWYg
KCB1bmxpa2VseShwYWdldGFibGVfaXNfbnVsbCh2LT5hcmNoLnBhZ2luZy5z
aGFkb3cuc2hhZG93X3RhYmxlWzBdKSkgKQogICAgIHsKICAgICAgICAgQVNT
RVJUKGQtPmlzX2R5aW5nIHx8IGQtPmlzX3NodXR0aW5nX2Rvd24pOwotICAg
ICAgICByZXR1cm47CisgICAgICAgIHJldHVybiBvbGRfZW50cnk7CiAgICAg
fQogI2Vsc2UKICNlcnJvciBUaGlzIHNob3VsZCBuZXZlciBoYXBwZW4KQEAg
LTM4NjQsNiArMzg3Miw4IEBAIHNoX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUg
KnYsIGludCBkb19sb2MKIAogICAgIC8qIFJlbGVhc2UgdGhlIGxvY2ssIGlm
IHdlIHRvb2sgaXQgKG90aGVyd2lzZSBpdCdzIHRoZSBjYWxsZXIncyBwcm9i
bGVtKSAqLwogICAgIGlmICggZG9fbG9ja2luZyApIHBhZ2luZ191bmxvY2so
di0+ZG9tYWluKTsKKworICAgIHJldHVybiBvbGRfZW50cnk7CiB9CiAKIAot
LS0gYS94ZW4vYXJjaC94ODYvbW0vc2hhZG93L25vbmUuYworKysgYi94ZW4v
YXJjaC94ODYvbW0vc2hhZG93L25vbmUuYwpAQCAtNTAsOSArNTAsMTAgQEAg
c3RhdGljIHVuc2lnbmVkIGxvbmcgX2d2YV90b19nZm4oc3RydWN0CiAgICAg
cmV0dXJuIGdmbl94KElOVkFMSURfR0ZOKTsKIH0KIAotc3RhdGljIHZvaWQg
X3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGludCBkb19sb2NraW5nLCBi
b29sIG5vZmx1c2gpCitzdGF0aWMgcGFnZXRhYmxlX3QgX3VwZGF0ZV9jcjMo
c3RydWN0IHZjcHUgKnYsIGJvb2wgZG9fbG9ja2luZywgYm9vbCBub2ZsdXNo
KQogewogICAgIEFTU0VSVF9VTlJFQUNIQUJMRSgpOworICAgIHJldHVybiBw
YWdldGFibGVfbnVsbCgpOwogfQogCiBzdGF0aWMgdm9pZCBfdXBkYXRlX3Bh
Z2luZ19tb2RlcyhzdHJ1Y3QgdmNwdSAqdikKLS0tIGEveGVuL2FyY2gveDg2
L21tL3NoYWRvdy9wcml2YXRlLmgKKysrIGIveGVuL2FyY2gveDg2L21tL3No
YWRvdy9wcml2YXRlLmgKQEAgLTM2MCwxMyArMzYwLDEzIEBAIG1mbl90IHNo
YWRvd19hbGxvYyhzdHJ1Y3QgZG9tYWluICpkLAogdm9pZCAgc2hhZG93X2Zy
ZWUoc3RydWN0IGRvbWFpbiAqZCwgbWZuX3Qgc21mbik7CiAKIC8qIFNldCB1
cCB0aGUgdG9wLWxldmVsIHNoYWRvdyBhbmQgaW5zdGFsbCBpdCBpbiBzbG90
ICdzbG90JyBvZiBzaGFkb3dfdGFibGUgKi8KLXZvaWQgc2hfc2V0X3RvcGxl
dmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdSAqdiwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1bnNpZ25lZCBpbnQgc2xvdCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBtZm5fdCBnbWZuLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVuc2lnbmVkIGludCByb290X3R5cGUsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgbWZuX3QgKCptYWtlX3NoYWRvdykoc3RydWN0
IHZjcHUgKnYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbWZuX3QgZ21mbiwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzaGFk
b3dfdHlwZSkpOworcGFnZXRhYmxlX3Qgc2hfc2V0X3RvcGxldmVsX3NoYWRv
dyhzdHJ1Y3QgdmNwdSAqdiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdW5zaWduZWQgaW50IHNsb3QsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCByb290X3R5cGUs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90ICgq
bWFrZV9zaGFkb3cpKHN0cnVjdCB2Y3B1ICp2LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZm5f
dCBnbWZuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzaGFkb3dfdHlwZSkpOwog
CiAvKiBVcGRhdGUgdGhlIHNoYWRvd3MgaW4gcmVzcG9uc2UgdG8gYSBwYWdl
dGFibGUgd3JpdGUgZnJvbSBYZW4gKi8KIGludCBzaF92YWxpZGF0ZV9ndWVz
dF9lbnRyeShzdHJ1Y3QgdmNwdSAqdiwgbWZuX3QgZ21mbiwgdm9pZCAqZW50
cnksIHUzMiBzaXplKTsKLS0tIGEveGVuL2FyY2gveDg2L21tLmMKKysrIGIv
eGVuL2FyY2gveDg2L21tLmMKQEAgLTU2NCwxNSArNTY0LDEyIEBAIHZvaWQg
d3JpdGVfcHRiYXNlKHN0cnVjdCB2Y3B1ICp2KQogICoKICAqIFVwZGF0ZSBy
ZWYgY291bnRzIHRvIHNoYWRvdyB0YWJsZXMgYXBwcm9wcmlhdGVseS4KICAq
Lwotdm9pZCB1cGRhdGVfY3IzKHN0cnVjdCB2Y3B1ICp2KQorcGFnZXRhYmxl
X3QgdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdikKIHsKICAgICBtZm5fdCBj
cjNfbWZuOwogCiAgICAgaWYgKCBwYWdpbmdfbW9kZV9lbmFibGVkKHYtPmRv
bWFpbikgKQotICAgIHsKLSAgICAgICAgcGFnaW5nX3VwZGF0ZV9jcjModiwg
ZmFsc2UpOwotICAgICAgICByZXR1cm47Ci0gICAgfQorICAgICAgICByZXR1
cm4gcGFnaW5nX3VwZGF0ZV9jcjModiwgZmFsc2UpOwogCiAgICAgaWYgKCAh
KHYtPmFyY2guZmxhZ3MgJiBURl9rZXJuZWxfbW9kZSkgKQogICAgICAgICBj
cjNfbWZuID0gcGFnZXRhYmxlX2dldF9tZm4odi0+YXJjaC5ndWVzdF90YWJs
ZV91c2VyKTsKQEAgLTU4MCw2ICs1NzcsOCBAQCB2b2lkIHVwZGF0ZV9jcjMo
c3RydWN0IHZjcHUgKnYpCiAgICAgICAgIGNyM19tZm4gPSBwYWdldGFibGVf
Z2V0X21mbih2LT5hcmNoLmd1ZXN0X3RhYmxlKTsKIAogICAgIG1ha2VfY3Iz
KHYsIGNyM19tZm4pOworCisgICAgcmV0dXJuIHBhZ2V0YWJsZV9udWxsKCk7
CiB9CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBzZXRfdGxiZmx1c2hfdGltZXN0
YW1wKHN0cnVjdCBwYWdlX2luZm8gKnBhZ2UpCkBAIC0zMjQxLDYgKzMyNDAs
NyBAQCBpbnQgbmV3X2d1ZXN0X2NyMyhtZm5fdCBtZm4pCiAgICAgc3RydWN0
IGRvbWFpbiAqZCA9IGN1cnItPmRvbWFpbjsKICAgICBpbnQgcmM7CiAgICAg
bWZuX3Qgb2xkX2Jhc2VfbWZuOworICAgIHBhZ2V0YWJsZV90IG9sZF9zaGFk
b3c7CiAKICAgICBpZiAoIGlzX3B2XzMyYml0X2RvbWFpbihkKSApCiAgICAg
ewpAQCAtMzMwOCw5ICszMzA4LDIyIEBAIGludCBuZXdfZ3Vlc3RfY3IzKG1m
bl90IG1mbikKICAgICBpZiAoICFWTV9BU1NJU1QoZCwgbTJwX3N0cmljdCkg
KQogICAgICAgICBmaWxsX3JvX21wdChtZm4pOwogICAgIGN1cnItPmFyY2gu
Z3Vlc3RfdGFibGUgPSBwYWdldGFibGVfZnJvbV9tZm4obWZuKTsKLSAgICB1
cGRhdGVfY3IzKGN1cnIpOworICAgIG9sZF9zaGFkb3cgPSB1cGRhdGVfY3Iz
KGN1cnIpOworCisgICAgLyoKKyAgICAgKiBJbiBzaGFkb3cgbW9kZSB1cGRh
dGVfY3IzKCkgY2FuIGZhaWwsIGluIHdoaWNoIGNhc2UgaGVyZSB3ZSdyZSBz
dGlsbAorICAgICAqIHJ1bm5pbmcgb24gdGhlIHByaW9yIHRvcC1sZXZlbCBz
aGFkb3cgKHdoaWNoIHdlJ3JlIGFib3V0IHRvIHJlbGVhc2UpLgorICAgICAq
IFN3aXRjaCB0byB0aGUgaWRsZSBwYWdlIHRhYmxlcyBpbiBzdWNoIGFuIGV2
ZW50OyB0aGUgZ3Vlc3Qgd2lsbCBoYXZlCisgICAgICogYmVlbiBjcmFzaGVk
IGFscmVhZHkuCisgICAgICovCisgICAgaWYgKCBsaWtlbHkoIW1mbl9lcShw
YWdldGFibGVfZ2V0X21mbihvbGRfc2hhZG93KSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgIG1hZGRyX3RvX21mbihjdXJyLT5hcmNoLmNyMyAmIH5YODZf
Q1IzX05PRkxVU0gpKSkgKQorICAgICAgICB3cml0ZV9wdGJhc2UoY3Vycik7
CisgICAgZWxzZQorICAgICAgICB3cml0ZV9wdGJhc2UoaWRsZV92Y3B1W2N1
cnItPnByb2Nlc3Nvcl0pOwogCi0gICAgd3JpdGVfcHRiYXNlKGN1cnIpOwor
ICAgIGlmICggIXBhZ2V0YWJsZV9pc19udWxsKG9sZF9zaGFkb3cpICkKKyAg
ICAgICAgc2hhZG93X3B1dF90b3BfbGV2ZWwoZCwgb2xkX3NoYWRvdyk7CiAK
ICAgICBpZiAoIGxpa2VseShtZm5feChvbGRfYmFzZV9tZm4pICE9IDApICkK
ICAgICB7Ci0tLSBhL3hlbi9hcmNoL3g4Ni9wdi9kb21haW4uYworKysgYi94
ZW4vYXJjaC94ODYvcHYvZG9tYWluLmMKQEAgLTQwOCwxMCArNDA4LDEzIEBA
IGJvb2wgX19pbml0IHhwdGlfcGNpZF9lbmFibGVkKHZvaWQpCiAKIHN0YXRp
YyB2b2lkIF90b2dnbGVfZ3Vlc3RfcHQoc3RydWN0IHZjcHUgKnYpCiB7Cisg
ICAgYm9vbCBndWVzdF91cGRhdGU7CisgICAgcGFnZXRhYmxlX3Qgb2xkX3No
YWRvdzsKICAgICB1bnNpZ25lZCBsb25nIGNyMzsKIAogICAgIHYtPmFyY2gu
ZmxhZ3MgXj0gVEZfa2VybmVsX21vZGU7Ci0gICAgdXBkYXRlX2NyMyh2KTsK
KyAgICBndWVzdF91cGRhdGUgPSB2LT5hcmNoLmZsYWdzICYgVEZfa2VybmVs
X21vZGU7CisgICAgb2xkX3NoYWRvdyA9IHVwZGF0ZV9jcjModik7CiAKICAg
ICAvKgogICAgICAqIERvbid0IGZsdXNoIHVzZXIgZ2xvYmFsIG1hcHBpbmdz
IGZyb20gdGhlIFRMQi4gRG9uJ3QgdGljayBUTEIgY2xvY2suCkBAIC00MjAs
MTMgKzQyMywzMSBAQCBzdGF0aWMgdm9pZCBfdG9nZ2xlX2d1ZXN0X3B0KHN0
cnVjdCB2Y3B1CiAgICAgICogVExCIGZsdXNoIChmb3IganVzdCB0aGUgaW5j
b21pbmcgUENJRCksIGFzIHRoZSB0b3AgbGV2ZWwgcGFnZSB0YWJsZSBtYXkK
ICAgICAgKiBoYXZlIGNoYW5nZWQgYmVoaW5kIG91ciBiYWNrcy4gVG8gYmUg
b24gdGhlIHNhZmUgc2lkZSwgc3VwcHJlc3MgdGhlCiAgICAgICogbm8tZmx1
c2ggdW5jb25kaXRpb25hbGx5IGluIHRoaXMgY2FzZS4KKyAgICAgKgorICAg
ICAqIEZ1cnRoZXJtb3JlIGluIHNoYWRvdyBtb2RlIHVwZGF0ZV9jcjMoKSBj
YW4gZmFpbCwgaW4gd2hpY2ggY2FzZSBoZXJlCisgICAgICogd2UncmUgc3Rp
bGwgcnVubmluZyBvbiB0aGUgcHJpb3IgdG9wLWxldmVsIHNoYWRvdyAod2hp
Y2ggd2UncmUgYWJvdXQKKyAgICAgKiB0byByZWxlYXNlKS4gU3dpdGNoIHRv
IHRoZSBpZGxlIHBhZ2UgdGFibGVzIGluIHN1Y2ggYW4gZXZlbnQ7IHRoZQor
ICAgICAqIGd1ZXN0IHdpbGwgaGF2ZSBiZWVuIGNyYXNoZWQgYWxyZWFkeS4K
ICAgICAgKi8KICAgICBjcjMgPSB2LT5hcmNoLmNyMzsKICAgICBpZiAoIHNo
YWRvd19tb2RlX2VuYWJsZWQodi0+ZG9tYWluKSApCisgICAgewogICAgICAg
ICBjcjMgJj0gflg4Nl9DUjNfTk9GTFVTSDsKKworICAgICAgICBpZiAoIHVu
bGlrZWx5KG1mbl9lcShwYWdldGFibGVfZ2V0X21mbihvbGRfc2hhZG93KSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFkZHJfdG9fbWZuKGNy
MykpKSApCisgICAgICAgIHsKKyAgICAgICAgICAgIGNyMyA9IGlkbGVfdmNw
dVt2LT5wcm9jZXNzb3JdLT5hcmNoLmNyMzsKKyAgICAgICAgICAgIC8qIEFs
c28gc3VwcHJlc3MgcnVuc3RhdGUvdGltZSBhcmVhIHVwZGF0ZXMgYmVsb3cu
ICovCisgICAgICAgICAgICBndWVzdF91cGRhdGUgPSBmYWxzZTsKKyAgICAg
ICAgfQorICAgIH0KICAgICB3cml0ZV9jcjMoY3IzKTsKIAotICAgIGlmICgg
ISh2LT5hcmNoLmZsYWdzICYgVEZfa2VybmVsX21vZGUpICkKKyAgICBpZiAo
ICFwYWdldGFibGVfaXNfbnVsbChvbGRfc2hhZG93KSApCisgICAgICAgIHNo
YWRvd19wdXRfdG9wX2xldmVsKHYtPmRvbWFpbiwgb2xkX3NoYWRvdyk7CisK
KyAgICBpZiAoICFndWVzdF91cGRhdGUgKQogICAgICAgICByZXR1cm47CiAK
ICAgICBpZiAoIHYtPmFyY2gucHYubmVlZF91cGRhdGVfcnVuc3RhdGVfYXJl
YSAmJiB1cGRhdGVfcnVuc3RhdGVfYXJlYSh2KSApCi0tLSBhL3hlbi9pbmNs
dWRlL2FzbS14ODYvbW0uaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L21t
LmgKQEAgLTU2OSw3ICs1NjksNyBAQCB2b2lkIGF1ZGl0X2RvbWFpbnModm9p
ZCk7CiAjZW5kaWYKIAogdm9pZCBtYWtlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwg
bWZuX3QgbWZuKTsKLXZvaWQgdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdik7
CitwYWdldGFibGVfdCB1cGRhdGVfY3IzKHN0cnVjdCB2Y3B1ICp2KTsKIGlu
dCB2Y3B1X2Rlc3Ryb3lfcGFnZXRhYmxlcyhzdHJ1Y3QgdmNwdSAqKTsKIHZv
aWQgKmRvX3BhZ2Vfd2FsayhzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgbG9u
ZyBhZGRyKTsKIAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L3BhZ2luZy5o
CisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcGFnaW5nLmgKQEAgLTEzNiw3
ICsxMzYsNyBAQCBzdHJ1Y3QgcGFnaW5nX21vZGUgewogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25n
IGNyMywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcGFkZHJfdCBnYSwgdWludDMyX3QgKnBmZWMsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGlu
dCAqcGFnZV9vcmRlcik7Ci0gICAgdm9pZCAgICAgICAgICAoKnVwZGF0ZV9j
cjMgICAgICAgICAgICApKHN0cnVjdCB2Y3B1ICp2LCBpbnQgZG9fbG9ja2lu
ZywKKyAgICBwYWdldGFibGVfdCAgICgqdXBkYXRlX2NyMyAgICAgICAgICAg
ICkoc3RydWN0IHZjcHUgKnYsIGJvb2wgZG9fbG9ja2luZywKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBub2Zs
dXNoKTsKICAgICB2b2lkICAgICAgICAgICgqdXBkYXRlX3BhZ2luZ19tb2Rl
cyAgICkoc3RydWN0IHZjcHUgKnYpOwogICAgIGJvb2wgICAgICAgICAgKCpm
bHVzaF90bGIgICAgICAgICAgICAgKShib29sICgqZmx1c2hfdmNwdSkodm9p
ZCAqY3R4dCwKQEAgLTMwOSw5ICszMDksOSBAQCBzdGF0aWMgaW5saW5lIHVu
c2lnbmVkIGxvbmcgcGFnaW5nX2dhX3RvCiAvKiBVcGRhdGUgYWxsIHRoZSB0
aGluZ3MgdGhhdCBhcmUgZGVyaXZlZCBmcm9tIHRoZSBndWVzdCdzIENSMy4K
ICAqIENhbGxlZCB3aGVuIHRoZSBndWVzdCBjaGFuZ2VzIENSMzsgdGhlIGNh
bGxlciBjYW4gdGhlbiB1c2Ugdi0+YXJjaC5jcjMKICAqIGFzIHRoZSB2YWx1
ZSB0byBsb2FkIGludG8gdGhlIGhvc3QgQ1IzIHRvIHNjaGVkdWxlIHRoaXMg
dmNwdSAqLwotc3RhdGljIGlubGluZSB2b2lkIHBhZ2luZ191cGRhdGVfY3Iz
KHN0cnVjdCB2Y3B1ICp2LCBib29sIG5vZmx1c2gpCitzdGF0aWMgaW5saW5l
IHBhZ2V0YWJsZV90IHBhZ2luZ191cGRhdGVfY3IzKHN0cnVjdCB2Y3B1ICp2
LCBib29sIG5vZmx1c2gpCiB7Ci0gICAgcGFnaW5nX2dldF9ob3N0bW9kZSh2
KS0+dXBkYXRlX2NyMyh2LCAxLCBub2ZsdXNoKTsKKyAgICByZXR1cm4gcGFn
aW5nX2dldF9ob3N0bW9kZSh2KS0+dXBkYXRlX2NyMyh2LCAxLCBub2ZsdXNo
KTsKIH0KIAogLyogVXBkYXRlIGFsbCB0aGUgdGhpbmdzIHRoYXQgYXJlIGRl
cml2ZWQgZnJvbSB0aGUgZ3Vlc3QncyBDUjAvQ1IzL0NSNC4KLS0tIGEveGVu
L2luY2x1ZGUvYXNtLXg4Ni9zaGFkb3cuaAorKysgYi94ZW4vaW5jbHVkZS9h
c20teDg2L3NoYWRvdy5oCkBAIC05Nyw2ICs5Nyw5IEBAIHZvaWQgc2hhZG93
X2Jsb3dfdGFibGVzX3Blcl9kb21haW4oc3RydWMKIGludCBzaGFkb3dfc2V0
X2FsbG9jYXRpb24oc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgaW50IHBh
Z2VzLAogICAgICAgICAgICAgICAgICAgICAgICAgICBib29sICpwcmVlbXB0
ZWQpOwogCisvKiBIZWxwZXIgdG8gaW52b2tlIGZvciBkZWZlcnJlZCByZWxl
YXNpbmcgb2YgYSB0b3AtbGV2ZWwgc2hhZG93J3MgcmVmZXJlbmNlLiAqLwor
dm9pZCBzaGFkb3dfcHV0X3RvcF9sZXZlbChzdHJ1Y3QgZG9tYWluICpkLCBw
YWdldGFibGVfdCBvbGQpOworCiAjZWxzZSAvKiAhQ09ORklHX1NIQURPV19Q
QUdJTkcgKi8KIAogI2RlZmluZSBzaGFkb3dfdmNwdV90ZWFyZG93bih2KSBB
U1NFUlQoaXNfcHZfdmNwdSh2KSkKQEAgLTExOCw2ICsxMjEsMTEgQEAgc3Rh
dGljIGlubGluZSB2b2lkIHNoYWRvd19wcmVwYXJlX3BhZ2VfdAogCiBzdGF0
aWMgaW5saW5lIHZvaWQgc2hhZG93X2Jsb3dfdGFibGVzX3Blcl9kb21haW4o
c3RydWN0IGRvbWFpbiAqZCkge30KIAorc3RhdGljIGlubGluZSB2b2lkIHNo
YWRvd19wdXRfdG9wX2xldmVsKHN0cnVjdCBkb21haW4gKmQsIHBhZ2V0YWJs
ZV90IG9sZCkKK3sKKyAgICBBU1NFUlRfVU5SRUFDSEFCTEUoKTsKK30KKwog
c3RhdGljIGlubGluZSBpbnQgc2hhZG93X2RvbWN0bChzdHJ1Y3QgZG9tYWlu
ICpkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qg
eGVuX2RvbWN0bF9zaGFkb3dfb3AgKnNjLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBYRU5fR1VFU1RfSEFORExFX1BBUkFNKHhlbl9kb21j
dGxfdCkgdV9kb21jdGwpCg==

--=separator
Content-Type: application/octet-stream; name="xsa438-4.16.patch"
Content-Disposition: attachment; filename="xsa438-4.16.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvc2hhZG93OiBkZWZlciByZWxlYXNpbmcgb2YgUFYncyB0b3AtbGV2
ZWwgc2hhZG93IHJlZmVyZW5jZQoKc2hfc2V0X3RvcGxldmVsX3NoYWRvdygp
IHJlLXBpbm5pbmcgdGhlIHRvcC1sZXZlbCBzaGFkb3cgd2UgbWF5IGJlCnJ1
bm5pbmcgb24gaXMgbm90IGVub3VnaCAoYW5kIGF0IHRoZSBzYW1lIHRpbWUg
dW5uZWNlc3Nhcnkgd2hlbiB0aGUKc2hhZG93IGlzbid0IHdoYXQgd2UncmUg
cnVubmluZyBvbik6IFRoYXQgc2hhZG93IGJlY29tZXMgZWxpZ2libGUgZm9y
CmJsb3dpbmcgYXdheSAoZnJvbSBlLmcuIHNoYWRvd19wcmVhbGxvYygpKSBp
bW1lZGlhdGVseSBhZnRlciB0aGUKcGFnaW5nIGxvY2sgd2FzIGRyb3BwZWQu
IFlldCBpdCBuZWVkcyB0byByZW1haW4gdmFsaWQgdW50aWwgdGhlIGFjdHVh
bApwYWdlIHRhYmxlIHN3aXRjaCBvY2N1cnJlZC4KClByb3BhZ2F0ZSB1cCB0
aGUgY2FsbCBjaGFpbiB0aGUgc2hhZG93IGVudHJ5IHRoYXQgbmVlZHMgcmVs
ZWFzaW5nCmV2ZW50dWFsbHksIGFuZCBjYXJyeSBvdXQgdGhlIHJlbGVhc2Ug
aW1tZWRpYXRlbHkgYWZ0ZXIgc3dpdGNoaW5nIHBhZ2UKdGFibGVzLiBIYW5k
bGUgdXBkYXRlX2NyMygpIGZhaWx1cmVzIGJ5IHN3aXRjaGluZyB0byBpZGxl
IHBhZ2V0YWJsZXMuCk5vdGUgdGhhdCB2YXJpb3VzIGZ1cnRoZXIgdXNlcyBv
ZiB1cGRhdGVfY3IzKCkgYXJlIEhWTS1vbmx5IG9yIG9ubHkgYWN0Cm9uIHBh
dXNlZCB2Q1BVLXMsIGluIHdoaWNoIGNhc2Ugc2hfc2V0X3RvcGxldmVsX3No
YWRvdygpIHdpbGwgbm90IGRlZmVyCnJlbGVhc2luZyBvZiB0aGUgcmVmZXJl
bmNlLgoKV2hpbGUgY2hhbmdpbmcgdGhlIHVwZGF0ZV9jcjMoKSBob29rLCBh
bHNvIGNvbnZlcnQgdGhlICJkb19sb2NraW5nIgpwYXJhbWV0ZXIgdG8gYm9v
bGVhbi4KClRoaXMgaXMgQ1ZFLTIwMjMtMzQzMjIgLyBYU0EtNDM4LgoKUmVw
b3J0ZWQtYnk6IFRpbSBEZWVnYW4gPHRpbUB4ZW4ub3JnPgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNsb3VkLmNvbT4K
Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9oYXAvaGFwLmMKKysrIGIveGVuL2Fy
Y2gveDg2L21tL2hhcC9oYXAuYwpAQCAtNzI4LDEwICs3MjgsMTIgQEAgc3Rh
dGljIGJvb2xfdCBoYXBfaW52bHBnKHN0cnVjdCB2Y3B1ICp2LAogICAgIHJl
dHVybiAxOwogfQogCi1zdGF0aWMgdm9pZCBoYXBfdXBkYXRlX2NyMyhzdHJ1
Y3QgdmNwdSAqdiwgaW50IGRvX2xvY2tpbmcsIGJvb2wgbm9mbHVzaCkKK3N0
YXRpYyBwYWdldGFibGVfdCBoYXBfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAq
diwgYm9vbCBkb19sb2NraW5nLCBib29sIG5vZmx1c2gpCiB7CiAgICAgdi0+
YXJjaC5odm0uaHdfY3JbM10gPSB2LT5hcmNoLmh2bS5ndWVzdF9jclszXTsK
ICAgICBodm1fdXBkYXRlX2d1ZXN0X2NyMyh2LCBub2ZsdXNoKTsKKworICAg
IHJldHVybiBwYWdldGFibGVfbnVsbCgpOwogfQogCiAvKgotLS0gYS94ZW4v
YXJjaC94ODYvbW0vc2hhZG93L2NvbW1vbi5jCisrKyBiL3hlbi9hcmNoL3g4
Ni9tbS9zaGFkb3cvY29tbW9uLmMKQEAgLTI1NzQsMTMgKzI1NzQsMTMgQEAg
dm9pZCBzaGFkb3dfdXBkYXRlX3BhZ2luZ19tb2RlcyhzdHJ1Y3QgdgogfQog
CiAvKiBTZXQgdXAgdGhlIHRvcC1sZXZlbCBzaGFkb3cgYW5kIGluc3RhbGwg
aXQgaW4gc2xvdCAnc2xvdCcgb2Ygc2hhZG93X3RhYmxlICovCi12b2lkIHNo
X3NldF90b3BsZXZlbF9zaGFkb3coc3RydWN0IHZjcHUgKnYsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHNsb3QsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3QgZ21mbiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgcm9vdF90eXBlLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90ICgqbWFrZV9zaGFk
b3cpKHN0cnVjdCB2Y3B1ICp2LAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDMyX3Qgc2hhZG93X3R5cGUpKQorcGFnZXRhYmxlX3Qgc2hfc2V0X3RvcGxl
dmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdSAqdiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHNsb3QsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBy
b290X3R5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG1mbl90ICgqbWFrZV9zaGFkb3cpKHN0cnVjdCB2Y3B1ICp2LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBtZm5fdCBnbWZuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzaGFkb3df
dHlwZSkpCiB7CiAgICAgbWZuX3Qgc21mbjsKICAgICBwYWdldGFibGVfdCBv
bGRfZW50cnksIG5ld19lbnRyeTsKQEAgLTI2MzcsMjAgKzI2MzcsMzcgQEAg
dm9pZCBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHN0cnVjdCB2Y3B1CiAgICAg
ICAgICAgICAgICAgICBtZm5feChnbWZuKSwgbWZuX3gocGFnZXRhYmxlX2dl
dF9tZm4obmV3X2VudHJ5KSkpOwogICAgIHYtPmFyY2gucGFnaW5nLnNoYWRv
dy5zaGFkb3dfdGFibGVbc2xvdF0gPSBuZXdfZW50cnk7CiAKLSAgICAvKiBE
ZWNyZW1lbnQgdGhlIHJlZmNvdW50IG9mIHRoZSBvbGQgY29udGVudHMgb2Yg
dGhpcyBzbG90ICovCi0gICAgaWYgKCAhcGFnZXRhYmxlX2lzX251bGwob2xk
X2VudHJ5KSApCisgICAgLyoKKyAgICAgKiBEZWNyZW1lbnQgdGhlIHJlZmNv
dW50IG9mIHRoZSBvbGQgY29udGVudHMgb2YgdGhpcyBzbG90LCB1bmxlc3MK
KyAgICAgKiB3ZSdyZSBzdGlsbCBydW5uaW5nIG9uIHRoYXQgc2hhZG93IC0g
aW4gdGhhdCBjYXNlIGl0J2xsIG5lZWQgaG9sZGluZworICAgICAqIG9uIHRv
IHVudGlsIHRoZSBhY3R1YWwgcGFnZSB0YWJsZSBzd2l0Y2ggZGlkIG9jY3Vy
LgorICAgICAqLworICAgIGlmICggIXBhZ2V0YWJsZV9pc19udWxsKG9sZF9l
bnRyeSkgJiYgKHYgIT0gY3VycmVudCB8fCAhaXNfcHZfZG9tYWluKGQpKSAp
CiAgICAgewotICAgICAgICBtZm5fdCBvbGRfc21mbiA9IHBhZ2V0YWJsZV9n
ZXRfbWZuKG9sZF9lbnRyeSk7Ci0gICAgICAgIC8qIE5lZWQgdG8gcmVwaW4g
dGhlIG9sZCB0b3BsZXZlbCBzaGFkb3cgaWYgaXQncyBiZWVuIHVucGlubmVk
Ci0gICAgICAgICAqIGJ5IHNoYWRvd19wcmVhbGxvYygpOiBpbiBQViBtb2Rl
IHdlJ3JlIHN0aWxsIHJ1bm5pbmcgb24gdGhpcwotICAgICAgICAgKiBzaGFk
b3cgYW5kIGl0J3Mgbm90IHNhZmUgdG8gZnJlZSBpdCB5ZXQuICovCi0gICAg
ICAgIGlmICggIW1mbl90b19wYWdlKG9sZF9zbWZuKS0+dS5zaC5waW5uZWQg
JiYgIXNoX3BpbihkLCBvbGRfc21mbikgKQotICAgICAgICB7Ci0gICAgICAg
ICAgICBwcmludGsoWEVOTE9HX0dfRVJSICJjYW4ndCByZS1waW4gJSJQUklf
bWZuIlxuIiwgbWZuX3gob2xkX3NtZm4pKTsKLSAgICAgICAgICAgIGRvbWFp
bl9jcmFzaChkKTsKLSAgICAgICAgfQotICAgICAgICBzaF9wdXRfcmVmKGQs
IG9sZF9zbWZuLCAwKTsKKyAgICAgICAgc2hfcHV0X3JlZihkLCBwYWdldGFi
bGVfZ2V0X21mbihvbGRfZW50cnkpLCAwKTsKKyAgICAgICAgb2xkX2VudHJ5
ID0gcGFnZXRhYmxlX251bGwoKTsKICAgICB9CisKKyAgICAvKgorICAgICAq
IDItIGFuZCAzLWxldmVsIHNoYWRvdyBtb2RlIGlzIHVzZWQgZm9yIEhWTSBv
bmx5LiBUaGVyZWZvcmUgd2UgbmV2ZXIgcnVuCisgICAgICogb24gc3VjaCBh
IHNoYWRvdywgc28gb25seSBjYWxsIHNpdGVzIHJlcXVlc3RpbmcgYW4gTDQg
c2hhZG93IG5lZWQgdG8gcGF5CisgICAgICogYXR0ZW50aW9uIHRvIHRoZSBy
ZXR1cm5lZCB2YWx1ZS4KKyAgICAgKi8KKyAgICBBU1NFUlQocGFnZXRhYmxl
X2lzX251bGwob2xkX2VudHJ5KSB8fCByb290X3R5cGUgPT0gU0hfdHlwZV9s
NF82NF9zaGFkb3cpOworCisgICAgcmV0dXJuIG9sZF9lbnRyeTsKK30KKwor
LyoKKyAqIEhlbHBlciBpbnZva2VkIHdoZW4gcmVsZWFzaW5nIG9mIGEgdG9w
LWxldmVsIHNoYWRvdydzIHJlZmVyZW5jZSB3YXMKKyAqIGRlZmVycmVkIGlu
IHNoX3NldF90b3BsZXZlbF9zaGFkb3coKSBhYm92ZS4KKyAqLwordm9pZCBz
aGFkb3dfcHV0X3RvcF9sZXZlbChzdHJ1Y3QgZG9tYWluICpkLCBwYWdldGFi
bGVfdCBvbGRfZW50cnkpCit7CisgICAgQVNTRVJUKCFwYWdldGFibGVfaXNf
bnVsbChvbGRfZW50cnkpKTsKKyAgICBwYWdpbmdfbG9jayhkKTsKKyAgICBz
aF9wdXRfcmVmKGQsIHBhZ2V0YWJsZV9nZXRfbWZuKG9sZF9lbnRyeSksIDAp
OworICAgIHBhZ2luZ191bmxvY2soZCk7CiB9CiAKIC8qKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKi8KLS0tIGEveGVuL2FyY2gveDg2L21tL3NoYWRv
dy9tdWx0aS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9zaGFkb3cvbXVsdGku
YwpAQCAtMzIxOSw4ICszMjE5LDggQEAgc2hfZGV0YWNoX29sZF90YWJsZXMo
c3RydWN0IHZjcHUgKnYpCiAgICAgfQogfQogCi1zdGF0aWMgdm9pZAotc2hf
dXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgaW50IGRvX2xvY2tpbmcsIGJv
b2wgbm9mbHVzaCkKK3N0YXRpYyBwYWdldGFibGVfdAorc2hfdXBkYXRlX2Ny
MyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBkb19sb2NraW5nLCBib29sIG5vZmx1
c2gpCiAvKiBVcGRhdGVzIHZjcHUtPmFyY2guY3IzIGFmdGVyIHRoZSBndWVz
dCBoYXMgY2hhbmdlZCBDUjMuCiAgKiBQYXJhdmlydHVhbCBndWVzdHMgc2hv
dWxkIHNldCB2LT5hcmNoLmd1ZXN0X3RhYmxlIChhbmQgZ3Vlc3RfdGFibGVf
dXNlciwKICAqIGlmIGFwcHJvcHJpYXRlKS4KQEAgLTMyMzQsNiArMzIzNCw3
IEBAIHNoX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGludCBkb19sb2MK
IHsKICAgICBzdHJ1Y3QgZG9tYWluICpkID0gdi0+ZG9tYWluOwogICAgIG1m
bl90IGdtZm47CisgICAgcGFnZXRhYmxlX3Qgb2xkX2VudHJ5ID0gcGFnZXRh
YmxlX251bGwoKTsKICNpZiBHVUVTVF9QQUdJTkdfTEVWRUxTID09IDMgJiYg
ZGVmaW5lZChDT05GSUdfSFZNKQogICAgIGNvbnN0IGd1ZXN0X2wzZV90ICpn
bDNlOwogICAgIHVuc2lnbmVkIGludCBpLCBndWVzdF9pZHg7CkBAIC0zMjQz
LDcgKzMyNDQsNyBAQCBzaF91cGRhdGVfY3IzKHN0cnVjdCB2Y3B1ICp2LCBp
bnQgZG9fbG9jCiAgICAgaWYgKCAhaXNfaHZtX2RvbWFpbihkKSAmJiAhdi0+
aXNfaW5pdGlhbGlzZWQgKQogICAgIHsKICAgICAgICAgQVNTRVJUKHYtPmFy
Y2guY3IzID09IDApOwotICAgICAgICByZXR1cm47CisgICAgICAgIHJldHVy
biBvbGRfZW50cnk7CiAgICAgfQogCiAgICAgaWYgKCBkb19sb2NraW5nICkg
cGFnaW5nX2xvY2sodi0+ZG9tYWluKTsKQEAgLTMzMTYsMTEgKzMzMTcsMTIg
QEAgc2hfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgaW50IGRvX2xvYwog
I2lmIEdVRVNUX1BBR0lOR19MRVZFTFMgPT0gNAogICAgIGlmICggc2hfcmVt
b3ZlX3dyaXRlX2FjY2VzcyhkLCBnbWZuLCA0LCAwKSAhPSAwICkKICAgICAg
ICAgZ3Vlc3RfZmx1c2hfdGxiX21hc2soZCwgZC0+ZGlydHlfY3B1bWFzayk7
Ci0gICAgc2hfc2V0X3RvcGxldmVsX3NoYWRvdyh2LCAwLCBnbWZuLCBTSF90
eXBlX2w0X3NoYWRvdywgc2hfbWFrZV9zaGFkb3cpOworICAgIG9sZF9lbnRy
eSA9IHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgMCwgZ21mbiwgU0hfdHlw
ZV9sNF9zaGFkb3csCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzaF9tYWtlX3NoYWRvdyk7CiAgICAgaWYgKCB1bmxpa2VseShw
YWdldGFibGVfaXNfbnVsbCh2LT5hcmNoLnBhZ2luZy5zaGFkb3cuc2hhZG93
X3RhYmxlWzBdKSkgKQogICAgIHsKICAgICAgICAgQVNTRVJUKGQtPmlzX2R5
aW5nIHx8IGQtPmlzX3NodXR0aW5nX2Rvd24pOwotICAgICAgICByZXR1cm47
CisgICAgICAgIHJldHVybiBvbGRfZW50cnk7CiAgICAgfQogICAgIGlmICgg
IXNoYWRvd19tb2RlX2V4dGVybmFsKGQpICYmICFpc19wdl8zMmJpdF9kb21h
aW4oZCkgKQogICAgIHsKQEAgLTMzNjYsMjQgKzMzNjgsMzAgQEAgc2hfdXBk
YXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgaW50IGRvX2xvYwogICAgICAgICAg
ICAgICAgIGdsMmdmbiA9IGd1ZXN0X2wzZV9nZXRfZ2ZuKGdsM2VbaV0pOwog
ICAgICAgICAgICAgICAgIGdsMm1mbiA9IGdldF9nZm5fcXVlcnlfdW5sb2Nr
ZWQoZCwgZ2ZuX3goZ2wyZ2ZuKSwgJnAybXQpOwogICAgICAgICAgICAgICAg
IGlmICggcDJtX2lzX3JhbShwMm10KSApCi0gICAgICAgICAgICAgICAgICAg
IHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgaSwgZ2wybWZuLCBTSF90eXBl
X2wyX3NoYWRvdywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzaF9tYWtlX3NoYWRvdyk7CisgICAgICAgICAgICAgICAg
ICAgIG9sZF9lbnRyeSA9IHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgaSwg
Z2wybWZuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFNIX3R5cGVfbDJfc2hhZG93LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNoX21ha2Vfc2hhZG93KTsKICAgICAgICAgICAgICAgICBlbHNlCi0g
ICAgICAgICAgICAgICAgICAgIHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwg
aSwgSU5WQUxJRF9NRk4sIDAsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2hfbWFrZV9zaGFkb3cpOworICAgICAgICAg
ICAgICAgICAgICBvbGRfZW50cnkgPSBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93
KHYsIGksIElOVkFMSURfTUZOLCAwLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hh
ZG93KTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKLSAgICAg
ICAgICAgICAgICBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIGksIElOVkFM
SURfTUZOLCAwLCBzaF9tYWtlX3NoYWRvdyk7CisgICAgICAgICAgICAgICAg
b2xkX2VudHJ5ID0gc2hfc2V0X3RvcGxldmVsX3NoYWRvdyh2LCBpLCBJTlZB
TElEX01GTiwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93KTsKKworICAgICAg
ICAgICAgQVNTRVJUKHBhZ2V0YWJsZV9pc19udWxsKG9sZF9lbnRyeSkpOwog
ICAgICAgICB9CiAgICAgfQogI2VsaWYgR1VFU1RfUEFHSU5HX0xFVkVMUyA9
PSAyCiAgICAgaWYgKCBzaF9yZW1vdmVfd3JpdGVfYWNjZXNzKGQsIGdtZm4s
IDIsIDApICE9IDAgKQogICAgICAgICBndWVzdF9mbHVzaF90bGJfbWFzayhk
LCBkLT5kaXJ0eV9jcHVtYXNrKTsKLSAgICBzaF9zZXRfdG9wbGV2ZWxfc2hh
ZG93KHYsIDAsIGdtZm4sIFNIX3R5cGVfbDJfc2hhZG93LCBzaF9tYWtlX3No
YWRvdyk7CisgICAgb2xkX2VudHJ5ID0gc2hfc2V0X3RvcGxldmVsX3NoYWRv
dyh2LCAwLCBnbWZuLCBTSF90eXBlX2wyX3NoYWRvdywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93KTsK
KyAgICBBU1NFUlQocGFnZXRhYmxlX2lzX251bGwob2xkX2VudHJ5KSk7CiAg
ICAgaWYgKCB1bmxpa2VseShwYWdldGFibGVfaXNfbnVsbCh2LT5hcmNoLnBh
Z2luZy5zaGFkb3cuc2hhZG93X3RhYmxlWzBdKSkgKQogICAgIHsKICAgICAg
ICAgQVNTRVJUKGQtPmlzX2R5aW5nIHx8IGQtPmlzX3NodXR0aW5nX2Rvd24p
OwotICAgICAgICByZXR1cm47CisgICAgICAgIHJldHVybiBvbGRfZW50cnk7
CiAgICAgfQogI2Vsc2UKICNlcnJvciBUaGlzIHNob3VsZCBuZXZlciBoYXBw
ZW4KQEAgLTM0NzcsNiArMzQ4NSw4IEBAIHNoX3VwZGF0ZV9jcjMoc3RydWN0
IHZjcHUgKnYsIGludCBkb19sb2MKIAogICAgIC8qIFJlbGVhc2UgdGhlIGxv
Y2ssIGlmIHdlIHRvb2sgaXQgKG90aGVyd2lzZSBpdCdzIHRoZSBjYWxsZXIn
cyBwcm9ibGVtKSAqLwogICAgIGlmICggZG9fbG9ja2luZyApIHBhZ2luZ191
bmxvY2sodi0+ZG9tYWluKTsKKworICAgIHJldHVybiBvbGRfZW50cnk7CiB9
CiAKIAotLS0gYS94ZW4vYXJjaC94ODYvbW0vc2hhZG93L25vbmUuYworKysg
Yi94ZW4vYXJjaC94ODYvbW0vc2hhZG93L25vbmUuYwpAQCAtNTIsOSArNTIs
MTAgQEAgc3RhdGljIHVuc2lnbmVkIGxvbmcgX2d2YV90b19nZm4oc3RydWN0
CiB9CiAjZW5kaWYKIAotc3RhdGljIHZvaWQgX3VwZGF0ZV9jcjMoc3RydWN0
IHZjcHUgKnYsIGludCBkb19sb2NraW5nLCBib29sIG5vZmx1c2gpCitzdGF0
aWMgcGFnZXRhYmxlX3QgX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGJv
b2wgZG9fbG9ja2luZywgYm9vbCBub2ZsdXNoKQogewogICAgIEFTU0VSVF9V
TlJFQUNIQUJMRSgpOworICAgIHJldHVybiBwYWdldGFibGVfbnVsbCgpOwog
fQogCiBzdGF0aWMgdm9pZCBfdXBkYXRlX3BhZ2luZ19tb2RlcyhzdHJ1Y3Qg
dmNwdSAqdikKLS0tIGEveGVuL2FyY2gveDg2L21tL3NoYWRvdy9wcml2YXRl
LmgKKysrIGIveGVuL2FyY2gveDg2L21tL3NoYWRvdy9wcml2YXRlLmgKQEAg
LTM5MSwxMyArMzkxLDEzIEBAIG1mbl90IHNoYWRvd19hbGxvYyhzdHJ1Y3Qg
ZG9tYWluICpkLAogdm9pZCAgc2hhZG93X2ZyZWUoc3RydWN0IGRvbWFpbiAq
ZCwgbWZuX3Qgc21mbik7CiAKIC8qIFNldCB1cCB0aGUgdG9wLWxldmVsIHNo
YWRvdyBhbmQgaW5zdGFsbCBpdCBpbiBzbG90ICdzbG90JyBvZiBzaGFkb3df
dGFibGUgKi8KLXZvaWQgc2hfc2V0X3RvcGxldmVsX3NoYWRvdyhzdHJ1Y3Qg
dmNwdSAqdiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25l
ZCBpbnQgc2xvdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZm5f
dCBnbWZuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk
IGludCByb290X3R5cGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
bWZuX3QgKCptYWtlX3NoYWRvdykoc3RydWN0IHZjcHUgKnYsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWZu
X3QgZ21mbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1aW50MzJfdCBzaGFkb3dfdHlwZSkpOworcGFnZXRh
YmxlX3Qgc2hfc2V0X3RvcGxldmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdSAqdiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
aW50IHNsb3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG1mbl90IGdtZm4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVuc2lnbmVkIGludCByb290X3R5cGUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIG1mbl90ICgqbWFrZV9zaGFkb3cpKHN0cnVj
dCB2Y3B1ICp2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCBnbWZuLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1aW50MzJfdCBzaGFkb3dfdHlwZSkpOwogCiAvKiBVcGRhdGUgdGhlIHNo
YWRvd3MgaW4gcmVzcG9uc2UgdG8gYSBwYWdldGFibGUgd3JpdGUgZnJvbSBY
ZW4gKi8KIGludCBzaF92YWxpZGF0ZV9ndWVzdF9lbnRyeShzdHJ1Y3QgdmNw
dSAqdiwgbWZuX3QgZ21mbiwgdm9pZCAqZW50cnksIHUzMiBzaXplKTsKLS0t
IGEveGVuL2FyY2gveDg2L21tLmMKKysrIGIveGVuL2FyY2gveDg2L21tLmMK
QEAgLTU2NSwxNSArNTY1LDEyIEBAIHZvaWQgd3JpdGVfcHRiYXNlKHN0cnVj
dCB2Y3B1ICp2KQogICoKICAqIFVwZGF0ZSByZWYgY291bnRzIHRvIHNoYWRv
dyB0YWJsZXMgYXBwcm9wcmlhdGVseS4KICAqLwotdm9pZCB1cGRhdGVfY3Iz
KHN0cnVjdCB2Y3B1ICp2KQorcGFnZXRhYmxlX3QgdXBkYXRlX2NyMyhzdHJ1
Y3QgdmNwdSAqdikKIHsKICAgICBtZm5fdCBjcjNfbWZuOwogCiAgICAgaWYg
KCBwYWdpbmdfbW9kZV9lbmFibGVkKHYtPmRvbWFpbikgKQotICAgIHsKLSAg
ICAgICAgcGFnaW5nX3VwZGF0ZV9jcjModiwgZmFsc2UpOwotICAgICAgICBy
ZXR1cm47Ci0gICAgfQorICAgICAgICByZXR1cm4gcGFnaW5nX3VwZGF0ZV9j
cjModiwgZmFsc2UpOwogCiAgICAgaWYgKCAhKHYtPmFyY2guZmxhZ3MgJiBU
Rl9rZXJuZWxfbW9kZSkgKQogICAgICAgICBjcjNfbWZuID0gcGFnZXRhYmxl
X2dldF9tZm4odi0+YXJjaC5ndWVzdF90YWJsZV91c2VyKTsKQEAgLTU4MSw2
ICs1NzgsOCBAQCB2b2lkIHVwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYpCiAg
ICAgICAgIGNyM19tZm4gPSBwYWdldGFibGVfZ2V0X21mbih2LT5hcmNoLmd1
ZXN0X3RhYmxlKTsKIAogICAgIG1ha2VfY3IzKHYsIGNyM19tZm4pOworCisg
ICAgcmV0dXJuIHBhZ2V0YWJsZV9udWxsKCk7CiB9CiAKIHN0YXRpYyBpbmxp
bmUgdm9pZCBzZXRfdGxiZmx1c2hfdGltZXN0YW1wKHN0cnVjdCBwYWdlX2lu
Zm8gKnBhZ2UpCkBAIC0zMjU0LDYgKzMyNTMsNyBAQCBpbnQgbmV3X2d1ZXN0
X2NyMyhtZm5fdCBtZm4pCiAgICAgc3RydWN0IGRvbWFpbiAqZCA9IGN1cnIt
PmRvbWFpbjsKICAgICBpbnQgcmM7CiAgICAgbWZuX3Qgb2xkX2Jhc2VfbWZu
OworICAgIHBhZ2V0YWJsZV90IG9sZF9zaGFkb3c7CiAKICAgICBpZiAoIGlz
X3B2XzMyYml0X2RvbWFpbihkKSApCiAgICAgewpAQCAtMzMyMSw5ICszMzIx
LDIyIEBAIGludCBuZXdfZ3Vlc3RfY3IzKG1mbl90IG1mbikKICAgICBpZiAo
ICFWTV9BU1NJU1QoZCwgbTJwX3N0cmljdCkgKQogICAgICAgICBmaWxsX3Jv
X21wdChtZm4pOwogICAgIGN1cnItPmFyY2guZ3Vlc3RfdGFibGUgPSBwYWdl
dGFibGVfZnJvbV9tZm4obWZuKTsKLSAgICB1cGRhdGVfY3IzKGN1cnIpOwor
ICAgIG9sZF9zaGFkb3cgPSB1cGRhdGVfY3IzKGN1cnIpOworCisgICAgLyoK
KyAgICAgKiBJbiBzaGFkb3cgbW9kZSB1cGRhdGVfY3IzKCkgY2FuIGZhaWws
IGluIHdoaWNoIGNhc2UgaGVyZSB3ZSdyZSBzdGlsbAorICAgICAqIHJ1bm5p
bmcgb24gdGhlIHByaW9yIHRvcC1sZXZlbCBzaGFkb3cgKHdoaWNoIHdlJ3Jl
IGFib3V0IHRvIHJlbGVhc2UpLgorICAgICAqIFN3aXRjaCB0byB0aGUgaWRs
ZSBwYWdlIHRhYmxlcyBpbiBzdWNoIGFuIGV2ZW50OyB0aGUgZ3Vlc3Qgd2ls
bCBoYXZlCisgICAgICogYmVlbiBjcmFzaGVkIGFscmVhZHkuCisgICAgICov
CisgICAgaWYgKCBsaWtlbHkoIW1mbl9lcShwYWdldGFibGVfZ2V0X21mbihv
bGRfc2hhZG93KSwKKyAgICAgICAgICAgICAgICAgICAgICAgIG1hZGRyX3Rv
X21mbihjdXJyLT5hcmNoLmNyMyAmIH5YODZfQ1IzX05PRkxVU0gpKSkgKQor
ICAgICAgICB3cml0ZV9wdGJhc2UoY3Vycik7CisgICAgZWxzZQorICAgICAg
ICB3cml0ZV9wdGJhc2UoaWRsZV92Y3B1W2N1cnItPnByb2Nlc3Nvcl0pOwog
Ci0gICAgd3JpdGVfcHRiYXNlKGN1cnIpOworICAgIGlmICggIXBhZ2V0YWJs
ZV9pc19udWxsKG9sZF9zaGFkb3cpICkKKyAgICAgICAgc2hhZG93X3B1dF90
b3BfbGV2ZWwoZCwgb2xkX3NoYWRvdyk7CiAKICAgICBpZiAoIGxpa2VseSht
Zm5feChvbGRfYmFzZV9tZm4pICE9IDApICkKICAgICB7Ci0tLSBhL3hlbi9h
cmNoL3g4Ni9wdi9kb21haW4uYworKysgYi94ZW4vYXJjaC94ODYvcHYvZG9t
YWluLmMKQEAgLTQyNCwxMCArNDI0LDEzIEBAIGJvb2wgX19pbml0IHhwdGlf
cGNpZF9lbmFibGVkKHZvaWQpCiAKIHN0YXRpYyB2b2lkIF90b2dnbGVfZ3Vl
c3RfcHQoc3RydWN0IHZjcHUgKnYpCiB7CisgICAgYm9vbCBndWVzdF91cGRh
dGU7CisgICAgcGFnZXRhYmxlX3Qgb2xkX3NoYWRvdzsKICAgICB1bnNpZ25l
ZCBsb25nIGNyMzsKIAogICAgIHYtPmFyY2guZmxhZ3MgXj0gVEZfa2VybmVs
X21vZGU7Ci0gICAgdXBkYXRlX2NyMyh2KTsKKyAgICBndWVzdF91cGRhdGUg
PSB2LT5hcmNoLmZsYWdzICYgVEZfa2VybmVsX21vZGU7CisgICAgb2xkX3No
YWRvdyA9IHVwZGF0ZV9jcjModik7CiAKICAgICAvKgogICAgICAqIERvbid0
IGZsdXNoIHVzZXIgZ2xvYmFsIG1hcHBpbmdzIGZyb20gdGhlIFRMQi4gRG9u
J3QgdGljayBUTEIgY2xvY2suCkBAIC00MzYsMTMgKzQzOSwzMSBAQCBzdGF0
aWMgdm9pZCBfdG9nZ2xlX2d1ZXN0X3B0KHN0cnVjdCB2Y3B1CiAgICAgICog
VExCIGZsdXNoIChmb3IganVzdCB0aGUgaW5jb21pbmcgUENJRCksIGFzIHRo
ZSB0b3AgbGV2ZWwgcGFnZSB0YWJsZSBtYXkKICAgICAgKiBoYXZlIGNoYW5n
ZWQgYmVoaW5kIG91ciBiYWNrcy4gVG8gYmUgb24gdGhlIHNhZmUgc2lkZSwg
c3VwcHJlc3MgdGhlCiAgICAgICogbm8tZmx1c2ggdW5jb25kaXRpb25hbGx5
IGluIHRoaXMgY2FzZS4KKyAgICAgKgorICAgICAqIEZ1cnRoZXJtb3JlIGlu
IHNoYWRvdyBtb2RlIHVwZGF0ZV9jcjMoKSBjYW4gZmFpbCwgaW4gd2hpY2gg
Y2FzZSBoZXJlCisgICAgICogd2UncmUgc3RpbGwgcnVubmluZyBvbiB0aGUg
cHJpb3IgdG9wLWxldmVsIHNoYWRvdyAod2hpY2ggd2UncmUgYWJvdXQKKyAg
ICAgKiB0byByZWxlYXNlKS4gU3dpdGNoIHRvIHRoZSBpZGxlIHBhZ2UgdGFi
bGVzIGluIHN1Y2ggYW4gZXZlbnQ7IHRoZQorICAgICAqIGd1ZXN0IHdpbGwg
aGF2ZSBiZWVuIGNyYXNoZWQgYWxyZWFkeS4KICAgICAgKi8KICAgICBjcjMg
PSB2LT5hcmNoLmNyMzsKICAgICBpZiAoIHNoYWRvd19tb2RlX2VuYWJsZWQo
di0+ZG9tYWluKSApCisgICAgewogICAgICAgICBjcjMgJj0gflg4Nl9DUjNf
Tk9GTFVTSDsKKworICAgICAgICBpZiAoIHVubGlrZWx5KG1mbl9lcShwYWdl
dGFibGVfZ2V0X21mbihvbGRfc2hhZG93KSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbWFkZHJfdG9fbWZuKGNyMykpKSApCisgICAgICAgIHsK
KyAgICAgICAgICAgIGNyMyA9IGlkbGVfdmNwdVt2LT5wcm9jZXNzb3JdLT5h
cmNoLmNyMzsKKyAgICAgICAgICAgIC8qIEFsc28gc3VwcHJlc3MgcnVuc3Rh
dGUvdGltZSBhcmVhIHVwZGF0ZXMgYmVsb3cuICovCisgICAgICAgICAgICBn
dWVzdF91cGRhdGUgPSBmYWxzZTsKKyAgICAgICAgfQorICAgIH0KICAgICB3
cml0ZV9jcjMoY3IzKTsKIAotICAgIGlmICggISh2LT5hcmNoLmZsYWdzICYg
VEZfa2VybmVsX21vZGUpICkKKyAgICBpZiAoICFwYWdldGFibGVfaXNfbnVs
bChvbGRfc2hhZG93KSApCisgICAgICAgIHNoYWRvd19wdXRfdG9wX2xldmVs
KHYtPmRvbWFpbiwgb2xkX3NoYWRvdyk7CisKKyAgICBpZiAoICFndWVzdF91
cGRhdGUgKQogICAgICAgICByZXR1cm47CiAKICAgICBpZiAoIHYtPmFyY2gu
cHYubmVlZF91cGRhdGVfcnVuc3RhdGVfYXJlYSAmJiB1cGRhdGVfcnVuc3Rh
dGVfYXJlYSh2KSApCi0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbW0uaAor
KysgYi94ZW4vaW5jbHVkZS9hc20teDg2L21tLmgKQEAgLTU2NCw3ICs1NjQs
NyBAQCB2b2lkIGF1ZGl0X2RvbWFpbnModm9pZCk7CiAjZW5kaWYKIAogdm9p
ZCBtYWtlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgbWZuX3QgbWZuKTsKLXZvaWQg
dXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdik7CitwYWdldGFibGVfdCB1cGRh
dGVfY3IzKHN0cnVjdCB2Y3B1ICp2KTsKIGludCB2Y3B1X2Rlc3Ryb3lfcGFn
ZXRhYmxlcyhzdHJ1Y3QgdmNwdSAqKTsKIHZvaWQgKmRvX3BhZ2Vfd2Fsayhz
dHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgbG9uZyBhZGRyKTsKIAotLS0gYS94
ZW4vaW5jbHVkZS9hc20teDg2L3BhZ2luZy5oCisrKyBiL3hlbi9pbmNsdWRl
L2FzbS14ODYvcGFnaW5nLmgKQEAgLTEzOCw3ICsxMzgsNyBAQCBzdHJ1Y3Qg
cGFnaW5nX21vZGUgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwYWRkcl90IGdhLCB1aW50MzJfdCAqcGZlYywKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z
aWduZWQgaW50ICpwYWdlX29yZGVyKTsKICNlbmRpZgotICAgIHZvaWQgICAg
ICAgICAgKCp1cGRhdGVfY3IzICAgICAgICAgICAgKShzdHJ1Y3QgdmNwdSAq
diwgaW50IGRvX2xvY2tpbmcsCisgICAgcGFnZXRhYmxlX3QgICAoKnVwZGF0
ZV9jcjMgICAgICAgICAgICApKHN0cnVjdCB2Y3B1ICp2LCBib29sIGRvX2xv
Y2tpbmcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGJvb2wgbm9mbHVzaCk7CiAgICAgdm9pZCAgICAgICAgICAoKnVw
ZGF0ZV9wYWdpbmdfbW9kZXMgICApKHN0cnVjdCB2Y3B1ICp2KTsKICAgICBi
b29sICAgICAgICAgICgqZmx1c2hfdGxiICAgICAgICAgICAgICkoYm9vbCAo
KmZsdXNoX3ZjcHUpKHZvaWQgKmN0eHQsCkBAIC0zMTUsOSArMzE1LDkgQEAg
c3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHBhZ2luZ19nYV90bwogLyog
VXBkYXRlIGFsbCB0aGUgdGhpbmdzIHRoYXQgYXJlIGRlcml2ZWQgZnJvbSB0
aGUgZ3Vlc3QncyBDUjMuCiAgKiBDYWxsZWQgd2hlbiB0aGUgZ3Vlc3QgY2hh
bmdlcyBDUjM7IHRoZSBjYWxsZXIgY2FuIHRoZW4gdXNlIHYtPmFyY2guY3Iz
CiAgKiBhcyB0aGUgdmFsdWUgdG8gbG9hZCBpbnRvIHRoZSBob3N0IENSMyB0
byBzY2hlZHVsZSB0aGlzIHZjcHUgKi8KLXN0YXRpYyBpbmxpbmUgdm9pZCBw
YWdpbmdfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBub2ZsdXNo
KQorc3RhdGljIGlubGluZSBwYWdldGFibGVfdCBwYWdpbmdfdXBkYXRlX2Ny
MyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBub2ZsdXNoKQogewotICAgIHBhZ2lu
Z19nZXRfaG9zdG1vZGUodiktPnVwZGF0ZV9jcjModiwgMSwgbm9mbHVzaCk7
CisgICAgcmV0dXJuIHBhZ2luZ19nZXRfaG9zdG1vZGUodiktPnVwZGF0ZV9j
cjModiwgMSwgbm9mbHVzaCk7CiB9CiAKIC8qIFVwZGF0ZSBhbGwgdGhlIHRo
aW5ncyB0aGF0IGFyZSBkZXJpdmVkIGZyb20gdGhlIGd1ZXN0J3MgQ1IwL0NS
My9DUjQuCi0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvc2hhZG93LmgKKysr
IGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9zaGFkb3cuaApAQCAtOTcsNiArOTcs
OSBAQCB2b2lkIHNoYWRvd19ibG93X3RhYmxlc19wZXJfZG9tYWluKHN0cnVj
CiBpbnQgc2hhZG93X3NldF9hbGxvY2F0aW9uKHN0cnVjdCBkb21haW4gKmQs
IHVuc2lnbmVkIGludCBwYWdlcywKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYm9vbCAqcHJlZW1wdGVkKTsKIAorLyogSGVscGVyIHRvIGludm9rZSBm
b3IgZGVmZXJyZWQgcmVsZWFzaW5nIG9mIGEgdG9wLWxldmVsIHNoYWRvdydz
IHJlZmVyZW5jZS4gKi8KK3ZvaWQgc2hhZG93X3B1dF90b3BfbGV2ZWwoc3Ry
dWN0IGRvbWFpbiAqZCwgcGFnZXRhYmxlX3Qgb2xkKTsKKwogI2Vsc2UgLyog
IUNPTkZJR19TSEFET1dfUEFHSU5HICovCiAKICNkZWZpbmUgc2hhZG93X3Zj
cHVfdGVhcmRvd24odikgQVNTRVJUKGlzX3B2X3ZjcHUodikpCkBAIC0xMTgs
NiArMTIxLDExIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBzaGFkb3dfcHJlcGFy
ZV9wYWdlX3QKIAogc3RhdGljIGlubGluZSB2b2lkIHNoYWRvd19ibG93X3Rh
Ymxlc19wZXJfZG9tYWluKHN0cnVjdCBkb21haW4gKmQpIHt9CiAKK3N0YXRp
YyBpbmxpbmUgdm9pZCBzaGFkb3dfcHV0X3RvcF9sZXZlbChzdHJ1Y3QgZG9t
YWluICpkLCBwYWdldGFibGVfdCBvbGQpCit7CisgICAgQVNTRVJUX1VOUkVB
Q0hBQkxFKCk7Cit9CisKIHN0YXRpYyBpbmxpbmUgaW50IHNoYWRvd19kb21j
dGwoc3RydWN0IGRvbWFpbiAqZCwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc3RydWN0IHhlbl9kb21jdGxfc2hhZG93X29wICpzYywKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWEVOX0dVRVNUX0hBTkRM
RV9QQVJBTSh4ZW5fZG9tY3RsX3QpIHVfZG9tY3RsKQo=

--=separator
Content-Type: application/octet-stream; name="xsa438-4.17.patch"
Content-Disposition: attachment; filename="xsa438-4.17.patch"
Content-Transfer-Encoding: base64

RnJvbTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpTdWJqZWN0
OiB4ODYvc2hhZG93OiBkZWZlciByZWxlYXNpbmcgb2YgUFYncyB0b3AtbGV2
ZWwgc2hhZG93IHJlZmVyZW5jZQoKc2hfc2V0X3RvcGxldmVsX3NoYWRvdygp
IHJlLXBpbm5pbmcgdGhlIHRvcC1sZXZlbCBzaGFkb3cgd2UgbWF5IGJlCnJ1
bm5pbmcgb24gaXMgbm90IGVub3VnaCAoYW5kIGF0IHRoZSBzYW1lIHRpbWUg
dW5uZWNlc3Nhcnkgd2hlbiB0aGUKc2hhZG93IGlzbid0IHdoYXQgd2UncmUg
cnVubmluZyBvbik6IFRoYXQgc2hhZG93IGJlY29tZXMgZWxpZ2libGUgZm9y
CmJsb3dpbmcgYXdheSAoZnJvbSBlLmcuIHNoYWRvd19wcmVhbGxvYygpKSBp
bW1lZGlhdGVseSBhZnRlciB0aGUKcGFnaW5nIGxvY2sgd2FzIGRyb3BwZWQu
IFlldCBpdCBuZWVkcyB0byByZW1haW4gdmFsaWQgdW50aWwgdGhlIGFjdHVh
bApwYWdlIHRhYmxlIHN3aXRjaCBvY2N1cnJlZC4KClByb3BhZ2F0ZSB1cCB0
aGUgY2FsbCBjaGFpbiB0aGUgc2hhZG93IGVudHJ5IHRoYXQgbmVlZHMgcmVs
ZWFzaW5nCmV2ZW50dWFsbHksIGFuZCBjYXJyeSBvdXQgdGhlIHJlbGVhc2Ug
aW1tZWRpYXRlbHkgYWZ0ZXIgc3dpdGNoaW5nIHBhZ2UKdGFibGVzLiBIYW5k
bGUgdXBkYXRlX2NyMygpIGZhaWx1cmVzIGJ5IHN3aXRjaGluZyB0byBpZGxl
IHBhZ2V0YWJsZXMuCk5vdGUgdGhhdCB2YXJpb3VzIGZ1cnRoZXIgdXNlcyBv
ZiB1cGRhdGVfY3IzKCkgYXJlIEhWTS1vbmx5IG9yIG9ubHkgYWN0Cm9uIHBh
dXNlZCB2Q1BVLXMsIGluIHdoaWNoIGNhc2Ugc2hfc2V0X3RvcGxldmVsX3No
YWRvdygpIHdpbGwgbm90IGRlZmVyCnJlbGVhc2luZyBvZiB0aGUgcmVmZXJl
bmNlLgoKV2hpbGUgY2hhbmdpbmcgdGhlIHVwZGF0ZV9jcjMoKSBob29rLCBh
bHNvIGNvbnZlcnQgdGhlICJkb19sb2NraW5nIgpwYXJhbWV0ZXIgdG8gYm9v
bGVhbi4KClRoaXMgaXMgQ1ZFLTIwMjMtMzQzMjIgLyBYU0EtNDM4LgoKUmVw
b3J0ZWQtYnk6IFRpbSBEZWVnYW4gPHRpbUB4ZW4ub3JnPgpTaWduZWQtb2Zm
LWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+ClJldmlld2Vk
LWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNsb3VkLmNvbT4K
Ci0tLSBhL3hlbi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9tbS5oCisrKyBiL3hl
bi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9tbS5oCkBAIC01NTIsNyArNTUyLDcg
QEAgdm9pZCBhdWRpdF9kb21haW5zKHZvaWQpOwogI2VuZGlmCiAKIHZvaWQg
bWFrZV9jcjMoc3RydWN0IHZjcHUgKnYsIG1mbl90IG1mbik7Ci12b2lkIHVw
ZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYpOworcGFnZXRhYmxlX3QgdXBkYXRl
X2NyMyhzdHJ1Y3QgdmNwdSAqdik7CiBpbnQgdmNwdV9kZXN0cm95X3BhZ2V0
YWJsZXMoc3RydWN0IHZjcHUgKik7CiB2b2lkICpkb19wYWdlX3dhbGsoc3Ry
dWN0IHZjcHUgKnYsIHVuc2lnbmVkIGxvbmcgYWRkcik7CiAKLS0tIGEveGVu
L2FyY2gveDg2L2luY2x1ZGUvYXNtL3BhZ2luZy5oCisrKyBiL3hlbi9hcmNo
L3g4Ni9pbmNsdWRlL2FzbS9wYWdpbmcuaApAQCAtMTM4LDcgKzEzOCw3IEBA
IHN0cnVjdCBwYWdpbmdfbW9kZSB7CiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHBhZGRyX3QgZ2EsIHVpbnQzMl90ICpw
ZmVjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB1bnNpZ25lZCBpbnQgKnBhZ2Vfb3JkZXIpOwogI2VuZGlmCi0gICAg
dm9pZCAgICAgICAgICAoKnVwZGF0ZV9jcjMgICAgICAgICAgICApKHN0cnVj
dCB2Y3B1ICp2LCBpbnQgZG9fbG9ja2luZywKKyAgICBwYWdldGFibGVfdCAg
ICgqdXBkYXRlX2NyMyAgICAgICAgICAgICkoc3RydWN0IHZjcHUgKnYsIGJv
b2wgZG9fbG9ja2luZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYm9vbCBub2ZsdXNoKTsKICAgICB2b2lkICAgICAg
ICAgICgqdXBkYXRlX3BhZ2luZ19tb2RlcyAgICkoc3RydWN0IHZjcHUgKnYp
OwogICAgIGJvb2wgICAgICAgICAgKCpmbHVzaF90bGIgICAgICAgICAgICAg
KShjb25zdCB1bnNpZ25lZCBsb25nICp2Y3B1X2JpdG1hcCk7CkBAIC0zMTAs
OSArMzEwLDkgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIHBhZ2lu
Z19nYV90bwogLyogVXBkYXRlIGFsbCB0aGUgdGhpbmdzIHRoYXQgYXJlIGRl
cml2ZWQgZnJvbSB0aGUgZ3Vlc3QncyBDUjMuCiAgKiBDYWxsZWQgd2hlbiB0
aGUgZ3Vlc3QgY2hhbmdlcyBDUjM7IHRoZSBjYWxsZXIgY2FuIHRoZW4gdXNl
IHYtPmFyY2guY3IzCiAgKiBhcyB0aGUgdmFsdWUgdG8gbG9hZCBpbnRvIHRo
ZSBob3N0IENSMyB0byBzY2hlZHVsZSB0aGlzIHZjcHUgKi8KLXN0YXRpYyBp
bmxpbmUgdm9pZCBwYWdpbmdfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwg
Ym9vbCBub2ZsdXNoKQorc3RhdGljIGlubGluZSBwYWdldGFibGVfdCBwYWdp
bmdfdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBub2ZsdXNoKQog
ewotICAgIHBhZ2luZ19nZXRfaG9zdG1vZGUodiktPnVwZGF0ZV9jcjModiwg
MSwgbm9mbHVzaCk7CisgICAgcmV0dXJuIHBhZ2luZ19nZXRfaG9zdG1vZGUo
diktPnVwZGF0ZV9jcjModiwgMSwgbm9mbHVzaCk7CiB9CiAKIC8qIFVwZGF0
ZSBhbGwgdGhlIHRoaW5ncyB0aGF0IGFyZSBkZXJpdmVkIGZyb20gdGhlIGd1
ZXN0J3MgQ1IwL0NSMy9DUjQuCi0tLSBhL3hlbi9hcmNoL3g4Ni9pbmNsdWRl
L2FzbS9zaGFkb3cuaAorKysgYi94ZW4vYXJjaC94ODYvaW5jbHVkZS9hc20v
c2hhZG93LmgKQEAgLTk5LDYgKzk5LDkgQEAgaW50IHNoYWRvd19zZXRfYWxs
b2NhdGlvbihzdHJ1Y3QgZG9tYWluCiAKIGludCBzaGFkb3dfZ2V0X2FsbG9j
YXRpb25fYnl0ZXMoc3RydWN0IGRvbWFpbiAqZCwgdWludDY0X3QgKnNpemUp
OwogCisvKiBIZWxwZXIgdG8gaW52b2tlIGZvciBkZWZlcnJlZCByZWxlYXNp
bmcgb2YgYSB0b3AtbGV2ZWwgc2hhZG93J3MgcmVmZXJlbmNlLiAqLwordm9p
ZCBzaGFkb3dfcHV0X3RvcF9sZXZlbChzdHJ1Y3QgZG9tYWluICpkLCBwYWdl
dGFibGVfdCBvbGQpOworCiAjZWxzZSAvKiAhQ09ORklHX1NIQURPV19QQUdJ
TkcgKi8KIAogI2RlZmluZSBzaGFkb3dfdmNwdV90ZWFyZG93bih2KSBBU1NF
UlQoaXNfcHZfdmNwdSh2KSkKQEAgLTEyMSw2ICsxMjQsMTEgQEAgc3RhdGlj
IGlubGluZSB2b2lkIHNoYWRvd19wcmVwYXJlX3BhZ2VfdAogCiBzdGF0aWMg
aW5saW5lIHZvaWQgc2hhZG93X2Jsb3dfdGFibGVzX3Blcl9kb21haW4oc3Ry
dWN0IGRvbWFpbiAqZCkge30KIAorc3RhdGljIGlubGluZSB2b2lkIHNoYWRv
d19wdXRfdG9wX2xldmVsKHN0cnVjdCBkb21haW4gKmQsIHBhZ2V0YWJsZV90
IG9sZCkKK3sKKyAgICBBU1NFUlRfVU5SRUFDSEFCTEUoKTsKK30KKwogc3Rh
dGljIGlubGluZSBpbnQgc2hhZG93X2RvbWN0bChzdHJ1Y3QgZG9tYWluICpk
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgeGVu
X2RvbWN0bF9zaGFkb3dfb3AgKnNjLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBYRU5fR1VFU1RfSEFORExFX1BBUkFNKHhlbl9kb21jdGxf
dCkgdV9kb21jdGwpCi0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9oYXAvaGFwLmMK
KysrIGIveGVuL2FyY2gveDg2L21tL2hhcC9oYXAuYwpAQCAtNzM5LDExICs3
MzksMTMgQEAgc3RhdGljIGJvb2wgY2ZfY2hlY2sgaGFwX2ludmxwZyhzdHJ1
Y3QgdgogICAgIHJldHVybiAxOwogfQogCi1zdGF0aWMgdm9pZCBjZl9jaGVj
ayBoYXBfdXBkYXRlX2NyMygKLSAgICBzdHJ1Y3QgdmNwdSAqdiwgaW50IGRv
X2xvY2tpbmcsIGJvb2wgbm9mbHVzaCkKK3N0YXRpYyBwYWdldGFibGVfdCBj
Zl9jaGVjayBoYXBfdXBkYXRlX2NyMygKKyAgICBzdHJ1Y3QgdmNwdSAqdiwg
Ym9vbCBkb19sb2NraW5nLCBib29sIG5vZmx1c2gpCiB7CiAgICAgdi0+YXJj
aC5odm0uaHdfY3JbM10gPSB2LT5hcmNoLmh2bS5ndWVzdF9jclszXTsKICAg
ICBodm1fdXBkYXRlX2d1ZXN0X2NyMyh2LCBub2ZsdXNoKTsKKworICAgIHJl
dHVybiBwYWdldGFibGVfbnVsbCgpOwogfQogCiBzdGF0aWMgYm9vbCBmbHVz
aF92Y3B1KGNvbnN0IHN0cnVjdCB2Y3B1ICp2LCBjb25zdCB1bnNpZ25lZCBs
b25nICp2Y3B1X2JpdG1hcCkKLS0tIGEveGVuL2FyY2gveDg2L21tL3NoYWRv
dy9jb21tb24uYworKysgYi94ZW4vYXJjaC94ODYvbW0vc2hhZG93L2NvbW1v
bi5jCkBAIC0yNTkwLDEzICsyNTkwLDEzIEBAIHZvaWQgY2ZfY2hlY2sgc2hh
ZG93X3VwZGF0ZV9wYWdpbmdfbW9kZXMKIH0KIAogLyogU2V0IHVwIHRoZSB0
b3AtbGV2ZWwgc2hhZG93IGFuZCBpbnN0YWxsIGl0IGluIHNsb3QgJ3Nsb3Qn
IG9mIHNoYWRvd190YWJsZSAqLwotdm9pZCBzaF9zZXRfdG9wbGV2ZWxfc2hh
ZG93KHN0cnVjdCB2Y3B1ICp2LAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVuc2lnbmVkIGludCBzbG90LAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIG1mbl90IGdtZm4sCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdW5zaWduZWQgaW50IHJvb3RfdHlwZSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBtZm5fdCAoKm1ha2Vfc2hhZG93KShzdHJ1Y3QgdmNwdSAq
diwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBtZm5fdCBnbWZuLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHNoYWRvd190eXBl
KSkKK3BhZ2V0YWJsZV90IHNoX3NldF90b3BsZXZlbF9zaGFkb3coc3RydWN0
IHZjcHUgKnYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVuc2lnbmVkIGludCBzbG90LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBtZm5fdCBnbWZuLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgcm9vdF90eXBlLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCAoKm1ha2Vfc2hh
ZG93KShzdHJ1Y3QgdmNwdSAqdiwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3QgZ21mbiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdWludDMyX3Qgc2hhZG93X3R5cGUpKQogewogICAgIG1m
bl90IHNtZm47CiAgICAgcGFnZXRhYmxlX3Qgb2xkX2VudHJ5LCBuZXdfZW50
cnk7CkBAIC0yNjUzLDIwICsyNjUzLDM3IEBAIHZvaWQgc2hfc2V0X3RvcGxl
dmVsX3NoYWRvdyhzdHJ1Y3QgdmNwdQogICAgICAgICAgICAgICAgICAgbWZu
X3goZ21mbiksIG1mbl94KHBhZ2V0YWJsZV9nZXRfbWZuKG5ld19lbnRyeSkp
KTsKICAgICB2LT5hcmNoLnBhZ2luZy5zaGFkb3cuc2hhZG93X3RhYmxlW3Ns
b3RdID0gbmV3X2VudHJ5OwogCi0gICAgLyogRGVjcmVtZW50IHRoZSByZWZj
b3VudCBvZiB0aGUgb2xkIGNvbnRlbnRzIG9mIHRoaXMgc2xvdCAqLwotICAg
IGlmICggIXBhZ2V0YWJsZV9pc19udWxsKG9sZF9lbnRyeSkgKQorICAgIC8q
CisgICAgICogRGVjcmVtZW50IHRoZSByZWZjb3VudCBvZiB0aGUgb2xkIGNv
bnRlbnRzIG9mIHRoaXMgc2xvdCwgdW5sZXNzCisgICAgICogd2UncmUgc3Rp
bGwgcnVubmluZyBvbiB0aGF0IHNoYWRvdyAtIGluIHRoYXQgY2FzZSBpdCds
bCBuZWVkIGhvbGRpbmcKKyAgICAgKiBvbiB0byB1bnRpbCB0aGUgYWN0dWFs
IHBhZ2UgdGFibGUgc3dpdGNoIGRpZCBvY2N1ci4KKyAgICAgKi8KKyAgICBp
ZiAoICFwYWdldGFibGVfaXNfbnVsbChvbGRfZW50cnkpICYmICh2ICE9IGN1
cnJlbnQgfHwgIWlzX3B2X2RvbWFpbihkKSkgKQogICAgIHsKLSAgICAgICAg
bWZuX3Qgb2xkX3NtZm4gPSBwYWdldGFibGVfZ2V0X21mbihvbGRfZW50cnkp
OwotICAgICAgICAvKiBOZWVkIHRvIHJlcGluIHRoZSBvbGQgdG9wbGV2ZWwg
c2hhZG93IGlmIGl0J3MgYmVlbiB1bnBpbm5lZAotICAgICAgICAgKiBieSBz
aGFkb3dfcHJlYWxsb2MoKTogaW4gUFYgbW9kZSB3ZSdyZSBzdGlsbCBydW5u
aW5nIG9uIHRoaXMKLSAgICAgICAgICogc2hhZG93IGFuZCBpdCdzIG5vdCBz
YWZlIHRvIGZyZWUgaXQgeWV0LiAqLwotICAgICAgICBpZiAoICFtZm5fdG9f
cGFnZShvbGRfc21mbiktPnUuc2gucGlubmVkICYmICFzaF9waW4oZCwgb2xk
X3NtZm4pICkKLSAgICAgICAgewotICAgICAgICAgICAgcHJpbnRrKFhFTkxP
R19HX0VSUiAiY2FuJ3QgcmUtcGluICUiUFJJX21mbiJcbiIsIG1mbl94KG9s
ZF9zbWZuKSk7Ci0gICAgICAgICAgICBkb21haW5fY3Jhc2goZCk7Ci0gICAg
ICAgIH0KLSAgICAgICAgc2hfcHV0X3JlZihkLCBvbGRfc21mbiwgMCk7Cisg
ICAgICAgIHNoX3B1dF9yZWYoZCwgcGFnZXRhYmxlX2dldF9tZm4ob2xkX2Vu
dHJ5KSwgMCk7CisgICAgICAgIG9sZF9lbnRyeSA9IHBhZ2V0YWJsZV9udWxs
KCk7CiAgICAgfQorCisgICAgLyoKKyAgICAgKiAyLSBhbmQgMy1sZXZlbCBz
aGFkb3cgbW9kZSBpcyB1c2VkIGZvciBIVk0gb25seS4gVGhlcmVmb3JlIHdl
IG5ldmVyIHJ1bgorICAgICAqIG9uIHN1Y2ggYSBzaGFkb3csIHNvIG9ubHkg
Y2FsbCBzaXRlcyByZXF1ZXN0aW5nIGFuIEw0IHNoYWRvdyBuZWVkIHRvIHBh
eQorICAgICAqIGF0dGVudGlvbiB0byB0aGUgcmV0dXJuZWQgdmFsdWUuCisg
ICAgICovCisgICAgQVNTRVJUKHBhZ2V0YWJsZV9pc19udWxsKG9sZF9lbnRy
eSkgfHwgcm9vdF90eXBlID09IFNIX3R5cGVfbDRfNjRfc2hhZG93KTsKKwor
ICAgIHJldHVybiBvbGRfZW50cnk7Cit9CisKKy8qCisgKiBIZWxwZXIgaW52
b2tlZCB3aGVuIHJlbGVhc2luZyBvZiBhIHRvcC1sZXZlbCBzaGFkb3cncyBy
ZWZlcmVuY2Ugd2FzCisgKiBkZWZlcnJlZCBpbiBzaF9zZXRfdG9wbGV2ZWxf
c2hhZG93KCkgYWJvdmUuCisgKi8KK3ZvaWQgc2hhZG93X3B1dF90b3BfbGV2
ZWwoc3RydWN0IGRvbWFpbiAqZCwgcGFnZXRhYmxlX3Qgb2xkX2VudHJ5KQor
eworICAgIEFTU0VSVCghcGFnZXRhYmxlX2lzX251bGwob2xkX2VudHJ5KSk7
CisgICAgcGFnaW5nX2xvY2soZCk7CisgICAgc2hfcHV0X3JlZihkLCBwYWdl
dGFibGVfZ2V0X21mbihvbGRfZW50cnkpLCAwKTsKKyAgICBwYWdpbmdfdW5s
b2NrKGQpOwogfQogCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov
Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9zaGFkb3cvbXVsdGkuYworKysgYi94
ZW4vYXJjaC94ODYvbW0vc2hhZG93L211bHRpLmMKQEAgLTMyMjQsNyArMzIy
NCw4IEBAIHN0YXRpYyB2b2lkIGNmX2NoZWNrIHNoX2RldGFjaF9vbGRfdGFi
bGUKICAgICB9CiB9CiAKLXN0YXRpYyB2b2lkIGNmX2NoZWNrIHNoX3VwZGF0
ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGludCBkb19sb2NraW5nLCBib29sIG5v
Zmx1c2gpCitzdGF0aWMgcGFnZXRhYmxlX3QgY2ZfY2hlY2sgc2hfdXBkYXRl
X2NyMyhzdHJ1Y3QgdmNwdSAqdiwgYm9vbCBkb19sb2NraW5nLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBub2Zs
dXNoKQogLyogVXBkYXRlcyB2Y3B1LT5hcmNoLmNyMyBhZnRlciB0aGUgZ3Vl
c3QgaGFzIGNoYW5nZWQgQ1IzLgogICogUGFyYXZpcnR1YWwgZ3Vlc3RzIHNo
b3VsZCBzZXQgdi0+YXJjaC5ndWVzdF90YWJsZSAoYW5kIGd1ZXN0X3RhYmxl
X3VzZXIsCiAgKiBpZiBhcHByb3ByaWF0ZSkuCkBAIC0zMjM4LDYgKzMyMzks
NyBAQCBzdGF0aWMgdm9pZCBjZl9jaGVjayBzaF91cGRhdGVfY3IzKHN0cnVj
CiB7CiAgICAgc3RydWN0IGRvbWFpbiAqZCA9IHYtPmRvbWFpbjsKICAgICBt
Zm5fdCBnbWZuOworICAgIHBhZ2V0YWJsZV90IG9sZF9lbnRyeSA9IHBhZ2V0
YWJsZV9udWxsKCk7CiAjaWYgR1VFU1RfUEFHSU5HX0xFVkVMUyA9PSAzCiAg
ICAgY29uc3QgZ3Vlc3RfbDNlX3QgKmdsM2U7CiAgICAgdW5zaWduZWQgaW50
IGksIGd1ZXN0X2lkeDsKQEAgLTMyNDcsNyArMzI0OSw3IEBAIHN0YXRpYyB2
b2lkIGNmX2NoZWNrIHNoX3VwZGF0ZV9jcjMoc3RydWMKICAgICBpZiAoICFp
c19odm1fZG9tYWluKGQpICYmICF2LT5pc19pbml0aWFsaXNlZCApCiAgICAg
ewogICAgICAgICBBU1NFUlQodi0+YXJjaC5jcjMgPT0gMCk7Ci0gICAgICAg
IHJldHVybjsKKyAgICAgICAgcmV0dXJuIG9sZF9lbnRyeTsKICAgICB9CiAK
ICAgICBpZiAoIGRvX2xvY2tpbmcgKSBwYWdpbmdfbG9jayh2LT5kb21haW4p
OwpAQCAtMzMyMCwxMSArMzMyMiwxMiBAQCBzdGF0aWMgdm9pZCBjZl9jaGVj
ayBzaF91cGRhdGVfY3IzKHN0cnVjCiAjaWYgR1VFU1RfUEFHSU5HX0xFVkVM
UyA9PSA0CiAgICAgaWYgKCBzaF9yZW1vdmVfd3JpdGVfYWNjZXNzKGQsIGdt
Zm4sIDQsIDApICE9IDAgKQogICAgICAgICBndWVzdF9mbHVzaF90bGJfbWFz
ayhkLCBkLT5kaXJ0eV9jcHVtYXNrKTsKLSAgICBzaF9zZXRfdG9wbGV2ZWxf
c2hhZG93KHYsIDAsIGdtZm4sIFNIX3R5cGVfbDRfc2hhZG93LCBzaF9tYWtl
X3NoYWRvdyk7CisgICAgb2xkX2VudHJ5ID0gc2hfc2V0X3RvcGxldmVsX3No
YWRvdyh2LCAwLCBnbWZuLCBTSF90eXBlX2w0X3NoYWRvdywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hhZG93
KTsKICAgICBpZiAoIHVubGlrZWx5KHBhZ2V0YWJsZV9pc19udWxsKHYtPmFy
Y2gucGFnaW5nLnNoYWRvdy5zaGFkb3dfdGFibGVbMF0pKSApCiAgICAgewog
ICAgICAgICBBU1NFUlQoZC0+aXNfZHlpbmcgfHwgZC0+aXNfc2h1dHRpbmdf
ZG93bik7Ci0gICAgICAgIHJldHVybjsKKyAgICAgICAgcmV0dXJuIG9sZF9l
bnRyeTsKICAgICB9CiAgICAgaWYgKCAhc2hhZG93X21vZGVfZXh0ZXJuYWwo
ZCkgJiYgIWlzX3B2XzMyYml0X2RvbWFpbihkKSApCiAgICAgewpAQCAtMzM2
OCwyNCArMzM3MSwzMCBAQCBzdGF0aWMgdm9pZCBjZl9jaGVjayBzaF91cGRh
dGVfY3IzKHN0cnVjCiAgICAgICAgICAgICAgICAgZ2wyZ2ZuID0gZ3Vlc3Rf
bDNlX2dldF9nZm4oZ2wzZVtpXSk7CiAgICAgICAgICAgICAgICAgZ2wybWZu
ID0gZ2V0X2dmbl9xdWVyeV91bmxvY2tlZChkLCBnZm5feChnbDJnZm4pLCAm
cDJtdCk7CiAgICAgICAgICAgICAgICAgaWYgKCBwMm1faXNfcmFtKHAybXQp
ICkKLSAgICAgICAgICAgICAgICAgICAgc2hfc2V0X3RvcGxldmVsX3NoYWRv
dyh2LCBpLCBnbDJtZm4sIFNIX3R5cGVfbDJfc2hhZG93LAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoX21ha2Vfc2hh
ZG93KTsKKyAgICAgICAgICAgICAgICAgICAgb2xkX2VudHJ5ID0gc2hfc2V0
X3RvcGxldmVsX3NoYWRvdyh2LCBpLCBnbDJtZm4sCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU0hf
dHlwZV9sMl9zaGFkb3csCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hfbWFrZV9zaGFkb3cpOwog
ICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgc2hf
c2V0X3RvcGxldmVsX3NoYWRvdyh2LCBpLCBJTlZBTElEX01GTiwgMCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaF9t
YWtlX3NoYWRvdyk7CisgICAgICAgICAgICAgICAgICAgIG9sZF9lbnRyeSA9
IHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgaSwgSU5WQUxJRF9NRk4sIDAs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc2hfbWFrZV9zaGFkb3cpOwogICAgICAgICAgICAgfQog
ICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHNoX3NldF90b3Bs
ZXZlbF9zaGFkb3codiwgaSwgSU5WQUxJRF9NRk4sIDAsIHNoX21ha2Vfc2hh
ZG93KTsKKyAgICAgICAgICAgICAgICBvbGRfZW50cnkgPSBzaF9zZXRfdG9w
bGV2ZWxfc2hhZG93KHYsIGksIElOVkFMSURfTUZOLCAwLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hf
bWFrZV9zaGFkb3cpOworCisgICAgICAgICAgICBBU1NFUlQocGFnZXRhYmxl
X2lzX251bGwob2xkX2VudHJ5KSk7CiAgICAgICAgIH0KICAgICB9CiAjZWxp
ZiBHVUVTVF9QQUdJTkdfTEVWRUxTID09IDIKICAgICBpZiAoIHNoX3JlbW92
ZV93cml0ZV9hY2Nlc3MoZCwgZ21mbiwgMiwgMCkgIT0gMCApCiAgICAgICAg
IGd1ZXN0X2ZsdXNoX3RsYl9tYXNrKGQsIGQtPmRpcnR5X2NwdW1hc2spOwot
ICAgIHNoX3NldF90b3BsZXZlbF9zaGFkb3codiwgMCwgZ21mbiwgU0hfdHlw
ZV9sMl9zaGFkb3csIHNoX21ha2Vfc2hhZG93KTsKKyAgICBvbGRfZW50cnkg
PSBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHYsIDAsIGdtZm4sIFNIX3R5cGVf
bDJfc2hhZG93LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc2hfbWFrZV9zaGFkb3cpOworICAgIEFTU0VSVChwYWdldGFibGVf
aXNfbnVsbChvbGRfZW50cnkpKTsKICAgICBpZiAoIHVubGlrZWx5KHBhZ2V0
YWJsZV9pc19udWxsKHYtPmFyY2gucGFnaW5nLnNoYWRvdy5zaGFkb3dfdGFi
bGVbMF0pKSApCiAgICAgewogICAgICAgICBBU1NFUlQoZC0+aXNfZHlpbmcg
fHwgZC0+aXNfc2h1dHRpbmdfZG93bik7Ci0gICAgICAgIHJldHVybjsKKyAg
ICAgICAgcmV0dXJuIG9sZF9lbnRyeTsKICAgICB9CiAjZWxzZQogI2Vycm9y
IFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbgpAQCAtMzQ3Myw2ICszNDgyLDgg
QEAgc3RhdGljIHZvaWQgY2ZfY2hlY2sgc2hfdXBkYXRlX2NyMyhzdHJ1Ywog
CiAgICAgLyogUmVsZWFzZSB0aGUgbG9jaywgaWYgd2UgdG9vayBpdCAob3Ro
ZXJ3aXNlIGl0J3MgdGhlIGNhbGxlcidzIHByb2JsZW0pICovCiAgICAgaWYg
KCBkb19sb2NraW5nICkgcGFnaW5nX3VubG9jayh2LT5kb21haW4pOworCisg
ICAgcmV0dXJuIG9sZF9lbnRyeTsKIH0KIAogCi0tLSBhL3hlbi9hcmNoL3g4
Ni9tbS9zaGFkb3cvbm9uZS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9zaGFk
b3cvbm9uZS5jCkBAIC01Miw5ICs1MiwxMSBAQCBzdGF0aWMgdW5zaWduZWQg
bG9uZyBjZl9jaGVjayBfZ3ZhX3RvX2dmCiB9CiAjZW5kaWYKIAotc3RhdGlj
IHZvaWQgY2ZfY2hlY2sgX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGlu
dCBkb19sb2NraW5nLCBib29sIG5vZmx1c2gpCitzdGF0aWMgcGFnZXRhYmxl
X3QgY2ZfY2hlY2sgX3VwZGF0ZV9jcjMoc3RydWN0IHZjcHUgKnYsIGJvb2wg
ZG9fbG9ja2luZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBib29sIG5vZmx1c2gpCiB7CiAgICAgQVNTRVJUX1VOUkVBQ0hB
QkxFKCk7CisgICAgcmV0dXJuIHBhZ2V0YWJsZV9udWxsKCk7CiB9CiAKIHN0
YXRpYyB2b2lkIGNmX2NoZWNrIF91cGRhdGVfcGFnaW5nX21vZGVzKHN0cnVj
dCB2Y3B1ICp2KQotLS0gYS94ZW4vYXJjaC94ODYvbW0vc2hhZG93L3ByaXZh
dGUuaAorKysgYi94ZW4vYXJjaC94ODYvbW0vc2hhZG93L3ByaXZhdGUuaApA
QCAtMzkxLDEzICszOTEsMTMgQEAgbWZuX3Qgc2hhZG93X2FsbG9jKHN0cnVj
dCBkb21haW4gKmQsCiB2b2lkICBzaGFkb3dfZnJlZShzdHJ1Y3QgZG9tYWlu
ICpkLCBtZm5fdCBzbWZuKTsKIAogLyogU2V0IHVwIHRoZSB0b3AtbGV2ZWwg
c2hhZG93IGFuZCBpbnN0YWxsIGl0IGluIHNsb3QgJ3Nsb3QnIG9mIHNoYWRv
d190YWJsZSAqLwotdm9pZCBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHN0cnVj
dCB2Y3B1ICp2LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2ln
bmVkIGludCBzbG90LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1m
bl90IGdtZm4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu
ZWQgaW50IHJvb3RfdHlwZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBtZm5fdCAoKm1ha2Vfc2hhZG93KShzdHJ1Y3QgdmNwdSAqdiwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBt
Zm5fdCBnbWZuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVpbnQzMl90IHNoYWRvd190eXBlKSk7CitwYWdl
dGFibGVfdCBzaF9zZXRfdG9wbGV2ZWxfc2hhZG93KHN0cnVjdCB2Y3B1ICp2
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25l
ZCBpbnQgc2xvdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgbWZuX3QgZ21mbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdW5zaWduZWQgaW50IHJvb3RfdHlwZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgbWZuX3QgKCptYWtlX3NoYWRvdykoc3Ry
dWN0IHZjcHUgKnYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IGdtZm4sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVpbnQzMl90IHNoYWRvd190eXBlKSk7CiAKIC8qIFVwZGF0ZSB0aGUg
c2hhZG93cyBpbiByZXNwb25zZSB0byBhIHBhZ2V0YWJsZSB3cml0ZSBmcm9t
IFhlbiAqLwogaW50IHNoX3ZhbGlkYXRlX2d1ZXN0X2VudHJ5KHN0cnVjdCB2
Y3B1ICp2LCBtZm5fdCBnbWZuLCB2b2lkICplbnRyeSwgdTMyIHNpemUpOwot
LS0gYS94ZW4vYXJjaC94ODYvbW0uYworKysgYi94ZW4vYXJjaC94ODYvbW0u
YwpAQCAtNTY3LDE1ICs1NjcsMTIgQEAgdm9pZCB3cml0ZV9wdGJhc2Uoc3Ry
dWN0IHZjcHUgKnYpCiAgKgogICogVXBkYXRlIHJlZiBjb3VudHMgdG8gc2hh
ZG93IHRhYmxlcyBhcHByb3ByaWF0ZWx5LgogICovCi12b2lkIHVwZGF0ZV9j
cjMoc3RydWN0IHZjcHUgKnYpCitwYWdldGFibGVfdCB1cGRhdGVfY3IzKHN0
cnVjdCB2Y3B1ICp2KQogewogICAgIG1mbl90IGNyM19tZm47CiAKICAgICBp
ZiAoIHBhZ2luZ19tb2RlX2VuYWJsZWQodi0+ZG9tYWluKSApCi0gICAgewot
ICAgICAgICBwYWdpbmdfdXBkYXRlX2NyMyh2LCBmYWxzZSk7Ci0gICAgICAg
IHJldHVybjsKLSAgICB9CisgICAgICAgIHJldHVybiBwYWdpbmdfdXBkYXRl
X2NyMyh2LCBmYWxzZSk7CiAKICAgICBpZiAoICEodi0+YXJjaC5mbGFncyAm
IFRGX2tlcm5lbF9tb2RlKSApCiAgICAgICAgIGNyM19tZm4gPSBwYWdldGFi
bGVfZ2V0X21mbih2LT5hcmNoLmd1ZXN0X3RhYmxlX3VzZXIpOwpAQCAtNTgz
LDYgKzU4MCw4IEBAIHZvaWQgdXBkYXRlX2NyMyhzdHJ1Y3QgdmNwdSAqdikK
ICAgICAgICAgY3IzX21mbiA9IHBhZ2V0YWJsZV9nZXRfbWZuKHYtPmFyY2gu
Z3Vlc3RfdGFibGUpOwogCiAgICAgbWFrZV9jcjModiwgY3IzX21mbik7CisK
KyAgICByZXR1cm4gcGFnZXRhYmxlX251bGwoKTsKIH0KIAogc3RhdGljIGlu
bGluZSB2b2lkIHNldF90bGJmbHVzaF90aW1lc3RhbXAoc3RydWN0IHBhZ2Vf
aW5mbyAqcGFnZSkKQEAgLTMyODUsNiArMzI4NCw3IEBAIGludCBuZXdfZ3Vl
c3RfY3IzKG1mbl90IG1mbikKICAgICBzdHJ1Y3QgZG9tYWluICpkID0gY3Vy
ci0+ZG9tYWluOwogICAgIGludCByYzsKICAgICBtZm5fdCBvbGRfYmFzZV9t
Zm47CisgICAgcGFnZXRhYmxlX3Qgb2xkX3NoYWRvdzsKIAogICAgIGlmICgg
aXNfcHZfMzJiaXRfZG9tYWluKGQpICkKICAgICB7CkBAIC0zMzUyLDkgKzMz
NTIsMjIgQEAgaW50IG5ld19ndWVzdF9jcjMobWZuX3QgbWZuKQogICAgIGlm
ICggIVZNX0FTU0lTVChkLCBtMnBfc3RyaWN0KSApCiAgICAgICAgIGZpbGxf
cm9fbXB0KG1mbik7CiAgICAgY3Vyci0+YXJjaC5ndWVzdF90YWJsZSA9IHBh
Z2V0YWJsZV9mcm9tX21mbihtZm4pOwotICAgIHVwZGF0ZV9jcjMoY3Vycik7
CisgICAgb2xkX3NoYWRvdyA9IHVwZGF0ZV9jcjMoY3Vycik7CisKKyAgICAv
KgorICAgICAqIEluIHNoYWRvdyBtb2RlIHVwZGF0ZV9jcjMoKSBjYW4gZmFp
bCwgaW4gd2hpY2ggY2FzZSBoZXJlIHdlJ3JlIHN0aWxsCisgICAgICogcnVu
bmluZyBvbiB0aGUgcHJpb3IgdG9wLWxldmVsIHNoYWRvdyAod2hpY2ggd2Un
cmUgYWJvdXQgdG8gcmVsZWFzZSkuCisgICAgICogU3dpdGNoIHRvIHRoZSBp
ZGxlIHBhZ2UgdGFibGVzIGluIHN1Y2ggYW4gZXZlbnQ7IHRoZSBndWVzdCB3
aWxsIGhhdmUKKyAgICAgKiBiZWVuIGNyYXNoZWQgYWxyZWFkeS4KKyAgICAg
Ki8KKyAgICBpZiAoIGxpa2VseSghbWZuX2VxKHBhZ2V0YWJsZV9nZXRfbWZu
KG9sZF9zaGFkb3cpLAorICAgICAgICAgICAgICAgICAgICAgICAgbWFkZHJf
dG9fbWZuKGN1cnItPmFyY2guY3IzICYgflg4Nl9DUjNfTk9GTFVTSCkpKSAp
CisgICAgICAgIHdyaXRlX3B0YmFzZShjdXJyKTsKKyAgICBlbHNlCisgICAg
ICAgIHdyaXRlX3B0YmFzZShpZGxlX3ZjcHVbY3Vyci0+cHJvY2Vzc29yXSk7
CiAKLSAgICB3cml0ZV9wdGJhc2UoY3Vycik7CisgICAgaWYgKCAhcGFnZXRh
YmxlX2lzX251bGwob2xkX3NoYWRvdykgKQorICAgICAgICBzaGFkb3dfcHV0
X3RvcF9sZXZlbChkLCBvbGRfc2hhZG93KTsKIAogICAgIGlmICggbGlrZWx5
KG1mbl94KG9sZF9iYXNlX21mbikgIT0gMCkgKQogICAgIHsKLS0tIGEveGVu
L2FyY2gveDg2L3B2L2RvbWFpbi5jCisrKyBiL3hlbi9hcmNoL3g4Ni9wdi9k
b21haW4uYwpAQCAtNDI0LDEwICs0MjQsMTMgQEAgYm9vbCBfX2luaXQgeHB0
aV9wY2lkX2VuYWJsZWQodm9pZCkKIAogc3RhdGljIHZvaWQgX3RvZ2dsZV9n
dWVzdF9wdChzdHJ1Y3QgdmNwdSAqdikKIHsKKyAgICBib29sIGd1ZXN0X3Vw
ZGF0ZTsKKyAgICBwYWdldGFibGVfdCBvbGRfc2hhZG93OwogICAgIHVuc2ln
bmVkIGxvbmcgY3IzOwogCiAgICAgdi0+YXJjaC5mbGFncyBePSBURl9rZXJu
ZWxfbW9kZTsKLSAgICB1cGRhdGVfY3IzKHYpOworICAgIGd1ZXN0X3VwZGF0
ZSA9IHYtPmFyY2guZmxhZ3MgJiBURl9rZXJuZWxfbW9kZTsKKyAgICBvbGRf
c2hhZG93ID0gdXBkYXRlX2NyMyh2KTsKIAogICAgIC8qCiAgICAgICogRG9u
J3QgZmx1c2ggdXNlciBnbG9iYWwgbWFwcGluZ3MgZnJvbSB0aGUgVExCLiBE
b24ndCB0aWNrIFRMQiBjbG9jay4KQEAgLTQzNiwxMyArNDM5LDMxIEBAIHN0
YXRpYyB2b2lkIF90b2dnbGVfZ3Vlc3RfcHQoc3RydWN0IHZjcHUKICAgICAg
KiBUTEIgZmx1c2ggKGZvciBqdXN0IHRoZSBpbmNvbWluZyBQQ0lEKSwgYXMg
dGhlIHRvcCBsZXZlbCBwYWdlIHRhYmxlIG1heQogICAgICAqIGhhdmUgY2hh
bmdlZCBiZWhpbmQgb3VyIGJhY2tzLiBUbyBiZSBvbiB0aGUgc2FmZSBzaWRl
LCBzdXBwcmVzcyB0aGUKICAgICAgKiBuby1mbHVzaCB1bmNvbmRpdGlvbmFs
bHkgaW4gdGhpcyBjYXNlLgorICAgICAqCisgICAgICogRnVydGhlcm1vcmUg
aW4gc2hhZG93IG1vZGUgdXBkYXRlX2NyMygpIGNhbiBmYWlsLCBpbiB3aGlj
aCBjYXNlIGhlcmUKKyAgICAgKiB3ZSdyZSBzdGlsbCBydW5uaW5nIG9uIHRo
ZSBwcmlvciB0b3AtbGV2ZWwgc2hhZG93ICh3aGljaCB3ZSdyZSBhYm91dAor
ICAgICAqIHRvIHJlbGVhc2UpLiBTd2l0Y2ggdG8gdGhlIGlkbGUgcGFnZSB0
YWJsZXMgaW4gc3VjaCBhbiBldmVudDsgdGhlCisgICAgICogZ3Vlc3Qgd2ls
bCBoYXZlIGJlZW4gY3Jhc2hlZCBhbHJlYWR5LgogICAgICAqLwogICAgIGNy
MyA9IHYtPmFyY2guY3IzOwogICAgIGlmICggc2hhZG93X21vZGVfZW5hYmxl
ZCh2LT5kb21haW4pICkKKyAgICB7CiAgICAgICAgIGNyMyAmPSB+WDg2X0NS
M19OT0ZMVVNIOworCisgICAgICAgIGlmICggdW5saWtlbHkobWZuX2VxKHBh
Z2V0YWJsZV9nZXRfbWZuKG9sZF9zaGFkb3cpLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBtYWRkcl90b19tZm4oY3IzKSkpICkKKyAgICAgICAg
eworICAgICAgICAgICAgY3IzID0gaWRsZV92Y3B1W3YtPnByb2Nlc3Nvcl0t
PmFyY2guY3IzOworICAgICAgICAgICAgLyogQWxzbyBzdXBwcmVzcyBydW5z
dGF0ZS90aW1lIGFyZWEgdXBkYXRlcyBiZWxvdy4gKi8KKyAgICAgICAgICAg
IGd1ZXN0X3VwZGF0ZSA9IGZhbHNlOworICAgICAgICB9CisgICAgfQogICAg
IHdyaXRlX2NyMyhjcjMpOwogCi0gICAgaWYgKCAhKHYtPmFyY2guZmxhZ3Mg
JiBURl9rZXJuZWxfbW9kZSkgKQorICAgIGlmICggIXBhZ2V0YWJsZV9pc19u
dWxsKG9sZF9zaGFkb3cpICkKKyAgICAgICAgc2hhZG93X3B1dF90b3BfbGV2
ZWwodi0+ZG9tYWluLCBvbGRfc2hhZG93KTsKKworICAgIGlmICggIWd1ZXN0
X3VwZGF0ZSApCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICggdi0+YXJj
aC5wdi5uZWVkX3VwZGF0ZV9ydW5zdGF0ZV9hcmVhICYmIHVwZGF0ZV9ydW5z
dGF0ZV9hcmVhKHYpICkK

--=separator--


From xen-announce-bounces@lists.xenproject.org Mon Sep 25 16:06:16 2023
Return-path: <xen-announce-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 16:06:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607900.946222 (Exim 4.92)
	(envelope-from <xen-announce-bounces@lists.xenproject.org>)
	id 1qko5m-0004Qv-OW; Mon, 25 Sep 2023 16:05:50 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607900.946222; Mon, 25 Sep 2023 16:05:50 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-announce-bounces@lists.xenproject.org>)
	id 1qko5m-0004Oc-Fe; Mon, 25 Sep 2023 16:05:50 +0000
Received: by outflank-mailman (input) for mailman id 607900;
 Mon, 25 Sep 2023 16:05:50 +0000
Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254]
 helo=se1-gles-sth1.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=1il/=FJ=xenbits.xen.org=andrewcoop@srs-se1.protection.inumbo.net>)
 id 1qko5m-0004LH-1U
 for xen-announce@lists.xen.org; Mon, 25 Sep 2023 16:05:50 +0000
Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37])
 by se1-gles-sth1.inumbo.com (Halon) with ESMTPS
 id 624eabf2-5bbd-11ee-878a-cb3800f73035;
 Mon, 25 Sep 2023 18:05:47 +0200 (CEST)
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <andrewcoop@xenbits.xen.org>)
 id 1qko5Z-0002z9-Od; Mon, 25 Sep 2023 16:05:37 +0000
Received: from andrewcoop by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <andrewcoop@xenbits.xen.org>)
 id 1qko5Z-0003cF-KD; Mon, 25 Sep 2023 16:05:37 +0000
X-BeenThere: xen-announce@lists.xenproject.org
List-Id: "Xen announcements \(low volume\)" <xen-announce.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-announce>, 
 <mailto:xen-announce-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-announce@lists.xenproject.org>
List-Help: <mailto:xen-announce-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-announce>, 
 <mailto:xen-announce-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-announce-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-announce" <xen-announce-bounces@lists.xenproject.org>
X-Inumbo-ID: 624eabf2-5bbd-11ee-878a-cb3800f73035
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=lPmB8qQQXXuq9W/r6/iH+aRzO+9NkrUlusE1Zq/F/90=; b=v3AGhr0xJI5Z01nn0CKPu9Yp+S
	96eNghllz9dalMVS1WAZrKpjGWgqjM9aSNDEGe+QMDu9RXQZ/01hVnYkFnUg4+ok2lkxzA7VSJ5R6
	QmGVJf6I/Arru2hOcWi9ccFN/n6O3Bv1D7j8SZ4568C5/igjCI1xIqVHFOEtNQetSAbw=;
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 <security@xen.org>
CC: Xen.org security team <security-team-members@xen.org>
Subject: Xen Security Advisory 439 v1 (CVE-2023-20588) - x86/AMD: Divide
 speculative information leak
Message-Id: <E1qko5Z-0003cF-KD@xenbits.xenproject.org>
Date: Mon, 25 Sep 2023 16:05:37 +0000

--=separator
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

            Xen Security Advisory CVE-2023-20588 / XSA-439

             x86/AMD: Divide speculative information leak

ISSUE DESCRIPTION
=================

In the Zen1 microarchitecure, there is one divider in the pipeline which
services uops from both threads.  In the case of #DE, the latched result
from the previous DIV to execute will be forwarded speculatively.

This is a covert channel that allows two threads to communicate without
any system calls.  In also allows userspace to obtain the result of the
most recent DIV instruction executed (even speculatively) in the core,
which can be from a higher privilege context.

For more information, see:
 * https://www.amd.com/en/resources/product-security/bulletin/amd-sb-7008.html

IMPACT
======

An attacker might be able to infer data from a different execution
context on the same CPU core.

VULNERABLE SYSTEMS
==================

All versions of Xen are vulnerable.

Only AMD Zen1 CPUs are believed to be vulnerable.

MITIGATION
==========

There is no mitigation.

RESOLUTION
==========

The patches for Xen overwrite the buffer in the divider on the
return-to-guest path.

However, as with some prior speculative vulnerabilities, the fix is only
effective in combination with disabling SMT.  For the same reasons as
before, Xen does not disable SMT by default.

The system administrator is required to risk-assess their workload, and
choose whether to enable or disable SMT.  Xen will issue a warning if
SMT is active and the user has not provided an explicit choice via the
smt=<bool> command line option.

Details of the vulnerability became public before the Xen patches were
complete.  Hence the patches are already applied to the appropriate
trees.  They are:

Xen-unstable: 1c18d7377453^..b5926c6ecf05
Xen 4.17:     d2d2dcae879c^..9ac2f49f5fa3
Xen 4.16:     08539e8315fd^..de751c3d906d
Xen 4.15:     db3386e6cad6^..d7b78041dc81
-----BEGIN PGP SIGNATURE-----

iQFABAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAmURr2UMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZA1QH/RNSR1O6QJjd7z2gSGA9Yka7VWyYOMB2J01AaIl7
69zCRkpqg+baF1aQaAVR0fj39aF7M7xXrd/LSk+E4BBiCRSxxRzbWUGYn9qTLR9w
srbpGXqy0aWod9MiwfbTuEzf9uG8XpwOGoRg6p6YBRYE3WrQxIVnYY+KjeeToTEs
+UXZ0iZPrjaGaqKnF+PpkX4CMsqHhxk3iJw+ZFX2V4fVNRYgCOpjejmMjbWM4ABr
eSsCjTU92/YZvFOsTeIzu74h5yM6SH+XTPW2S8Ve5j3mk7sM8nIiYbIyTMWNCJID
HXeodt6eHjhZzV2z7f+/zEngnoITIqz+X3tRcTkHB9+H5jU=
=AtsG
-----END PGP SIGNATURE-----

--=separator--


From xen-announce-bounces@lists.xenproject.org Mon Sep 25 17:19:00 2023
Return-path: <xen-announce-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xen.org
Delivery-date: Mon, 25 Sep 2023 17:19:00 +0000
Received: from list by lists.xenproject.org with outflank-mailman.607981.946268 (Exim 4.92)
	(envelope-from <xen-announce-bounces@lists.xenproject.org>)
	id 1qkpE9-0000fX-EN; Mon, 25 Sep 2023 17:18:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 607981.946268; Mon, 25 Sep 2023 17:18:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <xen-announce-bounces@lists.xenproject.org>)
	id 1qkpE9-0000fQ-Aq; Mon, 25 Sep 2023 17:18:33 +0000
Received: by outflank-mailman (input) for mailman id 607981;
 Mon, 25 Sep 2023 17:18:32 +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
 <SRS0=1il/=FJ=xenbits.xen.org=andrewcoop@srs-se1.protection.inumbo.net>)
 id 1qkpE8-0000do-BI
 for xen-announce@lists.xen.org; Mon, 25 Sep 2023 17:18:32 +0000
Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37])
 by se1-gles-flk1.inumbo.com (Halon) with ESMTPS
 id 88238663-5bc7-11ee-9b0d-b553b5be7939;
 Mon, 25 Sep 2023 19:18:28 +0200 (CEST)
Received: from xenbits.xenproject.org ([104.239.192.120])
 by mail.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <andrewcoop@xenbits.xen.org>)
 id 1qkpDs-0004vH-06; Mon, 25 Sep 2023 17:18:16 +0000
Received: from andrewcoop by xenbits.xenproject.org with local (Exim 4.92)
 (envelope-from <andrewcoop@xenbits.xen.org>)
 id 1qkpDr-0005W1-UI; Mon, 25 Sep 2023 17:18:15 +0000
X-BeenThere: xen-announce@lists.xenproject.org
List-Id: "Xen announcements \(low volume\)" <xen-announce.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-announce>, 
 <mailto:xen-announce-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:xen-announce@lists.xenproject.org>
List-Help: <mailto:xen-announce-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-announce>, 
 <mailto:xen-announce-request@lists.xenproject.org?subject=subscribe>
Errors-To: xen-announce-bounces@lists.xenproject.org
Precedence: list
Sender: "Xen-announce" <xen-announce-bounces@lists.xenproject.org>
X-Inumbo-ID: 88238663-5bc7-11ee-9b0d-b553b5be7939
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=1SeR4xn+wsNgQw8XgwMb9lXe9y838lCWovJEFN+RunU=; b=oxJl0jPqT1ibAXYpXztu3+sfO+
	+Vnlx+Mgz6IB0NtzNPsMWkmHd1s/ePd8uilCSY73JsDYmDJ4MTJV6fv4oNq+AfgHxJsLKXwj7Uun0
	spLxfMmtZOJa95Tz0zWY4XifMlQWrH0kIGUh2TauM22i/XZglUrQs+9teUPo1n0eiUN4=;
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 <security@xen.org>
CC: Xen.org security team <security-team-members@xen.org>
Subject: Xen Security Advisory 439 v2 (CVE-2023-20588) - x86/AMD: Divide
 speculative information leak
Message-Id: <E1qkpDr-0005W1-UI@xenbits.xenproject.org>
Date: Mon, 25 Sep 2023 17:18:15 +0000

--=separator
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

            Xen Security Advisory CVE-2023-20588 / XSA-439
                               version 2

             x86/AMD: Divide speculative information leak

UPDATES IN VERSION 2
====================

Version 1 accidentally linked to the wrong AMD bulletin.  This has been
corrected in v2.  All other information in v1 is believed to be correct.

ISSUE DESCRIPTION
=================

In the Zen1 microarchitecure, there is one divider in the pipeline which
services uops from both threads.  In the case of #DE, the latched result
from the previous DIV to execute will be forwarded speculatively.

This is a covert channel that allows two threads to communicate without
any system calls.  In also allows userspace to obtain the result of the
most recent DIV instruction executed (even speculatively) in the core,
which can be from a higher privilege context.

For more information, see:
 * https://www.amd.com/en/resources/product-security/bulletin/amd-sb-7007.html

IMPACT
======

An attacker might be able to infer data from a different execution
context on the same CPU core.

VULNERABLE SYSTEMS
==================

All versions of Xen are vulnerable.

Only AMD Zen1 CPUs are believed to be vulnerable.

MITIGATION
==========

There is no mitigation.

RESOLUTION
==========

The patches for Xen overwrite the buffer in the divider on the
return-to-guest path.

However, as with some prior speculative vulnerabilities, the fix is only
effective in combination with disabling SMT.  For the same reasons as
before, Xen does not disable SMT by default.

The system administrator is required to risk-assess their workload, and
choose whether to enable or disable SMT.  Xen will issue a warning if
SMT is active and the user has not provided an explicit choice via the
smt=<bool> command line option.

Details of the vulnerability became public before the Xen patches were
complete.  Hence the patches are already applied to the appropriate
trees.  They are:

Xen-unstable: 1c18d7377453^..b5926c6ecf05
Xen 4.17:     d2d2dcae879c^..9ac2f49f5fa3
Xen 4.16:     08539e8315fd^..de751c3d906d
Xen 4.15:     db3386e6cad6^..d7b78041dc81
-----BEGIN PGP SIGNATURE-----

iQFABAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAmURwLwMHHBncEB4ZW4u
b3JnAAoJEIP+FMlX6CvZMjgIAI+pm7OnUq8EbuD6eyB7yDKBRwm9U7Hu2yrO47f0
CHO/HdMANfx0nCbpKS8+7GXa2gooJXgp3Fo0NGri2G0+hzXNQTsaGnMEMgBV7O0M
OXYzao39dhPATP4hi5bm0xPTZ+3zMaP06xvl7JqNqsPK8GFz/cZr/Hsz5r2boZRO
3FXEmbgsG2KTR5+HrSNoeA3LM9aoUqEiIq6oGxLaTr7UI6xK4FL5VFloWhS0r9yp
gD7HHP6NlV1Ysxt1xKCxf109HrzWEvih/Gd8hG6eqiHR+i2zyS1hna8Ll/sRFkOO
x9FpYHljtb3WKX9bUh4aZXdoAWRW0aR+SWcXToPSk5aFJiE=
=W6vz
-----END PGP SIGNATURE-----

--=separator--


