From nobody Fri May 17 03:54:45 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org ARC-Seal: i=1; a=rsa-sha256; t=1667304115; cv=none; d=zohomail.com; s=zohoarc; b=JMYiMdkKfZ6NSi3Uca+9QPRX35dYN+AJjz2IubPrRfDjZqKjk+7GMyEEoS65WLMcVrlMWaHUS8+LlS6WpMrQCRZMBGK1HB8/IzvFWeaDt2hvzARkuoLVYQEkGYV4vTF+gA0Se29QsC115EXSufr7aF5N4s4h1hv2WVmLKgCSbU0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1667304115; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:To; bh=P1WSI5ToCUEuNy5hlvA47raF1Y2sdRmq+Wlh4C0fNKw=; b=BJTwMkTRQzMfuya8CrcbKJU+ikxQckNdw1zvTIbrvlEJkfzXPDJMPerPFnz6By8JpTbsJAoXKBqwlY/fVD6YadFstt50NBNzho5zSHQnNnc76zMWxQSc12LbX8qwOnnEclZ8vwe+heBP1efJjBOJL3wQzGKfmjGYhn6UBW8zSHw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1667304114802126.08937817551691; Tue, 1 Nov 2022 05:01:54 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.433486.686547 (Exim 4.92) (envelope-from ) id 1oppx5-0007Ia-Ot; Tue, 01 Nov 2022 12:01:07 +0000 Received: by outflank-mailman (output) from mailman id 433486.686547; Tue, 01 Nov 2022 12:01:07 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1oppx5-0007DR-2B; Tue, 01 Nov 2022 12:01:07 +0000 Received: by outflank-mailman (input) for mailman id 433486; Tue, 01 Nov 2022 12:01:02 +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 ) id 1oppwz-0004vc-Sr for xen-devel@lists.xen.org; Tue, 01 Nov 2022 12:01:02 +0000 Received: from mail.xenproject.org (mail.xenproject.org [104.130.215.37]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d6c52020-59dc-11ed-91b5-6bf2151ebd3b; Tue, 01 Nov 2022 13:00:55 +0100 (CET) Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1oppwi-0005XO-C4; Tue, 01 Nov 2022 12:00:44 +0000 Received: from jgross by xenbits.xenproject.org with local (Exim 4.92) (envelope-from ) id 1oppwi-0005Qa-B7; Tue, 01 Nov 2022 12:00:44 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: d6c52020-59dc-11ed-91b5-6bf2151ebd3b 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=P1WSI5ToCUEuNy5hlvA47raF1Y2sdRmq+Wlh4C0fNKw=; b=Pb1hS0308upS676kzKcc1WKhnD /68De2GRULM8HBK1UXtY2eAQ075VzpaV5/DgnuP3SBvnNs08oUZU6aokASjkbmvgTQSJ9DM+p0dU5 uQHCcUBZfBjhlkxOZSEVVozGdznrhXmaaCtorW0SYKGqe+URGlY/o1SBfmRm4HwGVVmg=; Content-Type: multipart/mixed; boundary="=separator"; charset="utf-8" Content-Transfer-Encoding: binary MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) To: xen-announce@lists.xen.org, xen-devel@lists.xen.org, xen-users@lists.xen.org, oss-security@lists.openwall.com From: Xen.org security team CC: Xen.org security team Subject: Xen Security Advisory 415 v2 (CVE-2022-42310) - Xenstore: Guests can create orphaned Xenstore nodes Message-Id: Date: Tue, 01 Nov 2022 12:00:44 +0000 X-Zoho-Virus-Status: 1 X-ZohoMail-DKIM: pass (identity @xen.org) X-ZM-MESSAGEID: 1667304117564100001 --=separator Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Reported-by: Julien Grall Reviewed-by: Juergen Gross -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Xen Security Advisory CVE-2022-42310 / XSA-415 version 2 Xenstore: Guests can create orphaned Xenstore nodes UPDATES IN VERSION 2 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Public release. ISSUE DESCRIPTION =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D By creating multiple nodes inside a transaction resulting in an error, a malicious guest can create orphaned nodes in the Xenstore data base, as the cleanup after the error will not remove all nodes already created. When the transaction is committed after this situation, nodes without a valid parent can be made permanent in the data base. IMPACT =3D=3D=3D=3D=3D=3D A malicious guest can cause inconsistencies in the xenstored data base, resulting in unusual error responses or memory leaks in xenstored. This can finally cause Denial of Service situations or long running error recoveries of xenstored. VULNERABLE SYSTEMS =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Systems with Xen version 4.9 and newer running the C variant of Xenstore (xenstored or xenstore-stubdom) are vulnerable. Systems using the Ocaml variant of Xenstore (oxenstored) are not vulnerable. MITIGATION =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Using oxenstored will avoid the vulnerability. CREDITS =3D=3D=3D=3D=3D=3D=3D This issue was discovered by Julien Grall of Amazon. RESOLUTION =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Applying the appropriate attached patch resolves this issue. Note that patches for released versions are generally prepared to apply to the stable branches, and may not apply cleanly to the most recent release tarball. Downstreams are encouraged to update to the tip of the stable branch before applying these patches. xsa415.patch xen-unstable, Xen 4.16.x xsa415-4.15.patch Xen 4.15.x xsa415-4.14.patch Xen 4.14.x - 4.13.x $ sha256sum xsa415* ff973fd3d0af2b45ba46ba74410204a60fcba30b0d0830c591dc827eac9ae484 xsa415.me= ta bc5b33bbef18c0fb15d6da6760ece9ef7f6f2cfab78664aee533ff717b379e3b xsa415.pa= tch 243e7e35ba94973252a6381977af2cf70774abfd0bfd5d0015179b94c832453e xsa415-4.= 14.patch 7b18b510b811551025cd2a86d654ee776b5003172ab468e7e86a0c6d892f4629 xsa415-4.= 15.patch $ DEPLOYMENT DURING EMBARGO =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Deployment of the patches and/or mitigations described above (or others which are substantially similar) is permitted during the embargo, even on public-facing systems with untrusted guest users and administrators. But: Distribution of updated software is prohibited (except to other members of the predisclosure list). Predisclosure list members who wish to deploy significantly different patches and/or mitigations, please contact the Xen Project Security Team. (Note: this during-embargo deployment notice is retained in post-embargo publicly released Xen Project advisories, even though it is then no longer applicable. This is to enable the community to have oversight of the Xen Project Security Team's decisionmaking.) For more information about permissible uses of embargoed information, consult the Xen Project community's agreed Security Policy: http://www.xenproject.org/security-policy.html -----BEGIN PGP SIGNATURE----- iQFABAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAmNg+6IMHHBncEB4ZW4u b3JnAAoJEIP+FMlX6CvZm88H/inrzV4zw8Po/g59rq1hUrCE/L4KwAemf5ZmWMK8 Unka74TyN2j47wous4EbBstzQQtOvf7GP2OT68qpIlqaZSAGcu+7x6TPx3M8q8kM ZFzqcDYvNye8KrUCNp9pVJIV2Y8b3JLAZXCvxxGK++yECGMjTh5ZkxzdiNK/t9NO +TmhH7CHFzkiO25Ch/8+vlwMs6eH/rKFLUVbEU/ZiD9L/P84xQr1EORhAhDJorx1 SLyprG0BlaCUIA/YbQVEftqHiG0J6ikuBYJGBHyQGVEV/MqSXGCUB/Eee6nzH4fH 1USXmeQ27OMsKwOJXyxFvrCgmKdeTNDcx0KSzSPFrED9rSc=3D =3Dhu/k -----END PGP SIGNATURE----- --=separator Content-Type: application/octet-stream; name="xsa415.meta" Content-Disposition: attachment; filename="xsa415.meta" Content-Transfer-Encoding: base64 ewogICJYU0EiOiA0MTUsCiAgIlN1cHBvcnRlZFZlcnNpb25zIjogWwogICAg Im1hc3RlciIsCiAgICAiNC4xNiIsCiAgICAiNC4xNSIsCiAgICAiNC4xNCIs CiAgICAiNC4xMyIKICBdLAogICJUcmVlcyI6IFsKICAgICJ4ZW4iCiAgXSwK ICAiUmVjaXBlcyI6IHsKICAgICI0LjEzIjogewogICAgICAiUmVjaXBlcyI6 IHsKICAgICAgICAieGVuIjogewogICAgICAgICAgIlN0YWJsZVJlZiI6ICIw YmU2M2MyNjE1YjI2ODAwMWY3Y2M5YjcyY2UyNWVlZDk1MjczN2RjIiwKICAg ICAgICAgICJQcmVyZXFzIjogWwogICAgICAgICAgICA0MTQKICAgICAgICAg IF0sCiAgICAgICAgICAiUGF0Y2hlcyI6IFsKICAgICAgICAgICAgInhzYTQx NS00LjE0LnBhdGNoIgogICAgICAgICAgXQogICAgICAgIH0KICAgICAgfQog ICAgfSwKICAgICI0LjE0IjogewogICAgICAiUmVjaXBlcyI6IHsKICAgICAg ICAieGVuIjogewogICAgICAgICAgIlN0YWJsZVJlZiI6ICIwMTZkZTYyNzQ3 YjI2ZWFkNWE1Yzc2M2I2NDBmZThlMjA1Y2QxODJiIiwKICAgICAgICAgICJQ cmVyZXFzIjogWwogICAgICAgICAgICA0MTQKICAgICAgICAgIF0sCiAgICAg ICAgICAiUGF0Y2hlcyI6IFsKICAgICAgICAgICAgInhzYTQxNS00LjE0LnBh dGNoIgogICAgICAgICAgXQogICAgICAgIH0KICAgICAgfQogICAgfSwKICAg ICI0LjE1IjogewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVuIjog ewogICAgICAgICAgIlN0YWJsZVJlZiI6ICI4MTY1ODBhZmRkMTczMGQ0Zjg1 ZjY0NDc3YTI0MmE0MzlhZjFjZGY4IiwKICAgICAgICAgICJQcmVyZXFzIjog WwogICAgICAgICAgICA0MTQKICAgICAgICAgIF0sCiAgICAgICAgICAiUGF0 Y2hlcyI6IFsKICAgICAgICAgICAgInhzYTQxNS00LjE1LnBhdGNoIgogICAg ICAgICAgXQogICAgICAgIH0KICAgICAgfQogICAgfSwKICAgICI0LjE2Ijog ewogICAgICAiUmVjaXBlcyI6IHsKICAgICAgICAieGVuIjogewogICAgICAg ICAgIlN0YWJsZVJlZiI6ICIxYmNlN2ZiMWY3MDJkYTRmN2E3NDljNmYxNDU3 ZWNiMjBiZjc0ZmNhIiwKICAgICAgICAgICJQcmVyZXFzIjogWwogICAgICAg ICAgICA0MTIsCiAgICAgICAgICAgIDQxNAogICAgICAgICAgXSwKICAgICAg ICAgICJQYXRjaGVzIjogWwogICAgICAgICAgICAieHNhNDE1LnBhdGNoIgog ICAgICAgICAgXQogICAgICAgIH0KICAgICAgfQogICAgfSwKICAgICJtYXN0 ZXIiOiB7CiAgICAgICJSZWNpcGVzIjogewogICAgICAgICJ4ZW4iOiB7CiAg ICAgICAgICAiU3RhYmxlUmVmIjogImNjNDc0N2JlOGJhMTU3YTNiMzEwOTIx ZTllZTA3ZmI4NTQ1YWEyMDYiLAogICAgICAgICAgIlByZXJlcXMiOiBbCiAg ICAgICAgICAgIDQxMiwKICAgICAgICAgICAgNDE0CiAgICAgICAgICBdLAog ICAgICAgICAgIlBhdGNoZXMiOiBbCiAgICAgICAgICAgICJ4c2E0MTUucGF0 Y2giCiAgICAgICAgICBdCiAgICAgICAgfQogICAgICB9CiAgICB9CiAgfQp9 --=separator Content-Type: application/octet-stream; name="xsa415.patch" Content-Disposition: attachment; filename="xsa415.patch" Content-Transfer-Encoding: base64 RnJvbTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4KU3ViamVj dDogdG9vbHMveGVuc3RvcmU6IEZhaWwgYSB0cmFuc2FjdGlvbiBpZiBpdCBp cyBub3QgcG9zc2libGUgdG8gY3JlYXRlIGEKIG5vZGUKCkNvbW1pdCBmMmJl YmY3MmM0ZDUgInhlbnN0b3JlOiByZXdvcmsgb2YgdHJhbnNhY3Rpb24gaGFu ZGxpbmciIG1vdmVkCm91dCBmcm9tIGNvcHlpbmcgdGhlIGVudGlyZSBkYXRh YmFzZSBldmVyeXRpbWUgYSBuZXcgdHJhbnNhY3Rpb24gaXMKb3BlbmVkIHRv IHRyYWNrIHRoZSBsaXN0IG9mIG5vZGVzIGNoYW5nZWQuCgpUaGUgY29udGVu dCBvZiBhbGwgdGhlIG5vZGVzIGFjY2Vzc2VkIGR1cmluZyBhIHRyYW5zYWN0 aW9uIHdpbGwgYmUKdGVtcG9yYXJpbHkgc3RvcmVkIGluIFREQiB1c2luZyBh IGRpZmZlcmVudCBrZXkuCgpUaGUgZnVuY3Rpb24gY3JlYXRlX25vZGUoKSBt YXkgd3JpdGUvdXBkYXRlIG11bHRpcGxlIG5vZGVzIGlmIHRoZSBjaGlsZApk b2Vzbid0IGV4aXN0LiBJbiBjYXNlIG9mIGEgZmFpbHVyZSwgdGhlIGZ1bmN0 aW9uIHdpbGwgcmV2ZXJ0IGFueQpjaGFuZ2VzICh0aGlzIGluY2x1ZGUgYW55 IHVwZGF0ZSB0byBUREIpLiBVbmZvcnR1bmF0ZWx5LCB0aGUgZnVuY3Rpb24K d2hpY2ggcmV2ZXJ0cyB0aGUgY2hhbmdlcyAoaS5lLiBkZXN0cm95X25vZGUo KSkgd2lsbCBub3QgdXNlIHRoZSBjb3JyZWN0CmtleSB0byBkZWxldGUgYW55 IHVwZGF0ZSBvciBldmVuIHJlcXVlc3QgdGhlIHRyYW5zYWN0aW9uIHRvIGZh aWwuCgpUaGlzIG1lYW5zIHRoYXQgaWYgYSBjbGllbnQgZGVjaWRlIHRvIGdv IGFoZWFkIHdpdGggY29tbWl0dGluZyB0aGUKdHJhbnNhY3Rpb24sIG9ycGhh biBub2RlcyB3aWxsIGJlIGNyZWF0ZWQgYmVjYXVzZSB0aGV5IHdlcmUgbm90 IGxpbmtlZAp0byBhbiBleGlzdGluZyBub2RlIChjcmVhdGVfbm9kZSgpIHdp bGwgd3JpdGUgdGhlIG5vZGVzIGJhY2t3YXJkcykuCgpPbmNlIHNvbWUgbm9k ZXMgaGF2ZSBiZWVuIHBhcnRpYWxseSB1cGRhdGVkIGluIGEgdHJhbnNhY3Rp b24sIGl0IGlzIG5vdAplYXNpbHkgcG9zc2libGUgdG8gdW5kbyBhbnkgY2hh bmdlcy4gU28gcmF0aGVyIHRoYW4gY29udGludWluZyBhbmQgaGl0CndlaXJk IGlzc3VlIHdoaWxlIGNvbW1pdHRpbmcsIGl0IGlzIG11Y2ggc2FuZXIgdG8g ZmFpbCB0aGUgdHJhbnNhY3Rpb24uCgpUaGlzIHdpbGwgaGF2ZSBhbiBpbXBh Y3Qgb24gYW55IGNsaWVudCB0aGF0IGRlY2lkZXMgdG8gY29tbWl0IGV2ZW4g aWYgaXQKY2FuJ3Qgd3JpdGUgYSBub2RlLiBBbHRob3VnaCwgaXQgaXMgbm90 IGNsZWFyIHdoeSBhIG5vcm1hbCBjbGllbnQgd291bGQKd2FudCB0byBkbyB0 aGF0Li4uCgpMYXN0bHksIHVwZGF0ZSBkZXN0cm95X25vZGUoKSB0byB1c2Ug dGhlIGNvcnJlY3Qga2V5IGZvciBkZWxldGluZyB0aGUKbm9kZS4gUmF0aGVy IHRoYW4gcmVjcmVhdGluZyBpdCAodGhpcyB3aWxsIGFsbG9jYXRlIG1lbW9y eSBhbmQKdGhlcmVmb3JlIGZhaWwpLCBzdGFzaCB0aGUga2V5IGluIHRoZSBz dHJ1Y3R1cmUgbm9kZS4KClRoaXMgaXMgWFNBLTQxNSAvIENWRS0yMDIyLTQy MzEwLgoKUmVwb3J0ZWQtYnk6IEp1bGllbiBHcmFsbCA8amdyYWxsQGFtYXpv bi5jb20+ClNpZ25lZC1vZmYtYnk6IEp1bGllbiBHcmFsbCA8amdyYWxsQGFt YXpvbi5jb20+ClJldmlld2VkLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NA c3VzZS5jb20+CgpkaWZmIC0tZ2l0IGEvdG9vbHMveGVuc3RvcmUveGVuc3Rv cmVkX2NvcmUuYyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMK aW5kZXggYzMwZDE0Y2JmMmFiLi41NWI3OWU0YzAzMmUgMTAwNjQ0Ci0tLSBh L3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMKKysrIGIvdG9vbHMv eGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYwpAQCAtNTYyLDE1ICs1NjIsMTcg QEAgaW50IHdyaXRlX25vZGVfcmF3KHN0cnVjdCBjb25uZWN0aW9uICpjb25u LCBUREJfREFUQSAqa2V5LCBzdHJ1Y3Qgbm9kZSAqbm9kZSwKIAlyZXR1cm4g MDsKIH0KIAorLyoKKyAqIFdyaXRlIHRoZSBub2RlLiBJZiB0aGUgbm9kZSBp cyB3cml0dGVuLCBjYWxsZXIgY2FuIGZpbmQgdGhlIGtleSB1c2VkIGluCisg KiBub2RlLT5rZXkuIFRoaXMgY2FuIGxhdGVyIGJlIHVzZWQgaWYgdGhlIGNo YW5nZSBuZWVkcyB0byBiZSByZXZlcnRlZC4KKyAqLwogc3RhdGljIGludCB3 cml0ZV9ub2RlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBzdHJ1Y3Qgbm9k ZSAqbm9kZSwKIAkJICAgICAgYm9vbCBub19xdW90YV9jaGVjaykKIHsKLQlU REJfREFUQSBrZXk7Ci0KLQlpZiAoYWNjZXNzX25vZGUoY29ubiwgbm9kZSwg Tk9ERV9BQ0NFU1NfV1JJVEUsICZrZXkpKQorCWlmIChhY2Nlc3Nfbm9kZShj b25uLCBub2RlLCBOT0RFX0FDQ0VTU19XUklURSwgJm5vZGUtPmtleSkpCiAJ CXJldHVybiBlcnJubzsKIAotCXJldHVybiB3cml0ZV9ub2RlX3Jhdyhjb25u LCAma2V5LCBub2RlLCBub19xdW90YV9jaGVjayk7CisJcmV0dXJuIHdyaXRl X25vZGVfcmF3KGNvbm4sICZub2RlLT5rZXksIG5vZGUsIG5vX3F1b3RhX2No ZWNrKTsKIH0KIAogdW5zaWduZWQgaW50IHBlcm1fZm9yX2Nvbm4oc3RydWN0 IGNvbm5lY3Rpb24gKmNvbm4sCkBAIC0xMDg2LDE2ICsxMDg4LDIxIEBAIHN0 YXRpYyBzdHJ1Y3Qgbm9kZSAqY29uc3RydWN0X25vZGUoc3RydWN0IGNvbm5l Y3Rpb24gKmNvbm4sIGNvbnN0IHZvaWQgKmN0eCwKIAogc3RhdGljIGludCBk ZXN0cm95X25vZGUoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIHN0cnVjdCBu b2RlICpub2RlKQogewotCVREQl9EQVRBIGtleTsKLQogCWlmIChzdHJlcShu b2RlLT5uYW1lLCAiLyIpKQogCQljb3JydXB0KE5VTEwsICJEZXN0cm95aW5n IHJvb3Qgbm9kZSEiKTsKIAotCXNldF90ZGJfa2V5KG5vZGUtPm5hbWUsICZr ZXkpOwotCXRkYl9kZWxldGUodGRiX2N0eCwga2V5KTsKKwl0ZGJfZGVsZXRl KHRkYl9jdHgsIG5vZGUtPmtleSk7CiAKIAlkb21haW5fZW50cnlfZGVjKGNv bm4sIG5vZGUpOwogCisJLyoKKwkgKiBJdCBpcyBub3QgcG9zc2libGUgdG8g ZWFzaWx5IHJldmVydCB0aGUgY2hhbmdlcyBpbiBhIHRyYW5zYWN0aW9uLgor CSAqIFNvIGlmIHRoZSBmYWlsdXJlIGhhcHBlbnMgaW4gYSB0cmFuc2FjdGlv biwgbWFyayBpdCBhcyBmYWlsIHRvCisJICogcHJldmVudCBhbnkgY29tbWl0 LgorCSAqLworCWlmICggY29ubi0+dHJhbnNhY3Rpb24gKQorCQlmYWlsX3Ry YW5zYWN0aW9uKGNvbm4tPnRyYW5zYWN0aW9uKTsKKwogCXJldHVybiAwOwog fQogCmRpZmYgLS1naXQgYS90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29y ZS5oIGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuaAppbmRleCA3 NDI4MTJhOTc0NjkuLjdkMGZlNzdlNzk4OSAxMDA2NDQKLS0tIGEvdG9vbHMv eGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuaAorKysgYi90b29scy94ZW5zdG9y ZS94ZW5zdG9yZWRfY29yZS5oCkBAIC0xNTUsNiArMTU1LDggQEAgc3RydWN0 IG5vZGVfcGVybXMgewogCiBzdHJ1Y3Qgbm9kZSB7CiAJY29uc3QgY2hhciAq bmFtZTsKKwkvKiBLZXkgdXNlZCB0byB1cGRhdGUgVERCICovCisJVERCX0RB VEEga2V5OwogCiAJLyogUGFyZW50IChvcHRpb25hbCkgKi8KIAlzdHJ1Y3Qg bm9kZSAqcGFyZW50OwpkaWZmIC0tZ2l0IGEvdG9vbHMveGVuc3RvcmUveGVu c3RvcmVkX3RyYW5zYWN0aW9uLmMgYi90b29scy94ZW5zdG9yZS94ZW5zdG9y ZWRfdHJhbnNhY3Rpb24uYwppbmRleCBjZDA3ZmIwZjIxOGIuLmZhZjZjOTMw ZTQyYSAxMDA2NDQKLS0tIGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX3Ry YW5zYWN0aW9uLmMKKysrIGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX3Ry YW5zYWN0aW9uLmMKQEAgLTU4MCw2ICs1ODAsMTEgQEAgdm9pZCB0cmFuc2Fj dGlvbl9lbnRyeV9kZWMoc3RydWN0IHRyYW5zYWN0aW9uICp0cmFucywgdW5z aWduZWQgaW50IGRvbWlkKQogCWxpc3RfYWRkX3RhaWwoJmQtPmxpc3QsICZ0 cmFucy0+Y2hhbmdlZF9kb21haW5zKTsKIH0KIAordm9pZCBmYWlsX3RyYW5z YWN0aW9uKHN0cnVjdCB0cmFuc2FjdGlvbiAqdHJhbnMpCit7CisJdHJhbnMt PmZhaWwgPSB0cnVlOworfQorCiB2b2lkIGNvbm5fZGVsZXRlX2FsbF90cmFu c2FjdGlvbnMoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4pCiB7CiAJc3RydWN0 IHRyYW5zYWN0aW9uICp0cmFuczsKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0 b3JlL3hlbnN0b3JlZF90cmFuc2FjdGlvbi5oIGIvdG9vbHMveGVuc3RvcmUv eGVuc3RvcmVkX3RyYW5zYWN0aW9uLmgKaW5kZXggNDNhMTYyYmVhM2YzLi4x NDA2MjczMGUzYzkgMTAwNjQ0Ci0tLSBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0 b3JlZF90cmFuc2FjdGlvbi5oCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0 b3JlZF90cmFuc2FjdGlvbi5oCkBAIC00Niw2ICs0Niw5IEBAIGludCBhY2Nl c3Nfbm9kZShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgc3RydWN0IG5vZGUg Km5vZGUsCiBpbnQgdHJhbnNhY3Rpb25fcHJlcGVuZChzdHJ1Y3QgY29ubmVj dGlvbiAqY29ubiwgY29uc3QgY2hhciAqbmFtZSwKICAgICAgICAgICAgICAg ICAgICAgICAgIFREQl9EQVRBICprZXkpOwogCisvKiBNYXJrIHRoZSB0cmFu c2FjdGlvbiBhcyBmYWlsZWQuIFRoaXMgd2lsbCBwcmV2ZW50IGl0IHRvIGJl IGNvbW1pdHRlZC4gKi8KK3ZvaWQgZmFpbF90cmFuc2FjdGlvbihzdHJ1Y3Qg dHJhbnNhY3Rpb24gKnRyYW5zKTsKKwogdm9pZCBjb25uX2RlbGV0ZV9hbGxf dHJhbnNhY3Rpb25zKHN0cnVjdCBjb25uZWN0aW9uICpjb25uKTsKIGludCBj aGVja190cmFuc2FjdGlvbnMoc3RydWN0IGhhc2h0YWJsZSAqaGFzaCk7CiAK --=separator Content-Type: application/octet-stream; name="xsa415-4.14.patch" Content-Disposition: attachment; filename="xsa415-4.14.patch" Content-Transfer-Encoding: base64 RnJvbTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4KU3ViamVj dDogdG9vbHMveGVuc3RvcmU6IEZhaWwgYSB0cmFuc2FjdGlvbiBpZiBpdCBp cyBub3QgcG9zc2libGUgdG8gY3JlYXRlIGEKIG5vZGUKCkNvbW1pdCBmMmJl YmY3MmM0ZDUgInhlbnN0b3JlOiByZXdvcmsgb2YgdHJhbnNhY3Rpb24gaGFu ZGxpbmciIG1vdmVkCm91dCBmcm9tIGNvcHlpbmcgdGhlIGVudGlyZSBkYXRh YmFzZSBldmVyeXRpbWUgYSBuZXcgdHJhbnNhY3Rpb24gaXMKb3BlbmVkIHRv IHRyYWNrIHRoZSBsaXN0IG9mIG5vZGVzIGNoYW5nZWQuCgpUaGUgY29udGVu dCBvZiBhbGwgdGhlIG5vZGVzIGFjY2Vzc2VkIGR1cmluZyBhIHRyYW5zYWN0 aW9uIHdpbGwgYmUKdGVtcG9yYXJpbHkgc3RvcmVkIGluIFREQiB1c2luZyBh IGRpZmZlcmVudCBrZXkuCgpUaGUgZnVuY3Rpb24gY3JlYXRlX25vZGUoKSBt YXkgd3JpdGUvdXBkYXRlIG11bHRpcGxlIG5vZGVzIGlmIHRoZSBjaGlsZApk b2Vzbid0IGV4aXN0LiBJbiBjYXNlIG9mIGEgZmFpbHVyZSwgdGhlIGZ1bmN0 aW9uIHdpbGwgcmV2ZXJ0IGFueQpjaGFuZ2VzICh0aGlzIGluY2x1ZGUgYW55 IHVwZGF0ZSB0byBUREIpLiBVbmZvcnR1bmF0ZWx5LCB0aGUgZnVuY3Rpb24K d2hpY2ggcmV2ZXJ0cyB0aGUgY2hhbmdlcyAoaS5lLiBkZXN0cm95X25vZGUo KSkgd2lsbCBub3QgdXNlIHRoZSBjb3JyZWN0CmtleSB0byBkZWxldGUgYW55 IHVwZGF0ZSBvciBldmVuIHJlcXVlc3QgdGhlIHRyYW5zYWN0aW9uIHRvIGZh aWwuCgpUaGlzIG1lYW5zIHRoYXQgaWYgYSBjbGllbnQgZGVjaWRlIHRvIGdv IGFoZWFkIHdpdGggY29tbWl0dGluZyB0aGUKdHJhbnNhY3Rpb24sIG9ycGhh biBub2RlcyB3aWxsIGJlIGNyZWF0ZWQgYmVjYXVzZSB0aGV5IHdlcmUgbm90 IGxpbmtlZAp0byBhbiBleGlzdGluZyBub2RlIChjcmVhdGVfbm9kZSgpIHdp bGwgd3JpdGUgdGhlIG5vZGVzIGJhY2t3YXJkcykuCgpPbmNlIHNvbWUgbm9k ZXMgaGF2ZSBiZWVuIHBhcnRpYWxseSB1cGRhdGVkIGluIGEgdHJhbnNhY3Rp b24sIGl0IGlzIG5vdAplYXNpbHkgcG9zc2libGUgdG8gdW5kbyBhbnkgY2hh bmdlcy4gU28gcmF0aGVyIHRoYW4gY29udGludWluZyBhbmQgaGl0CndlaXJk IGlzc3VlIHdoaWxlIGNvbW1pdHRpbmcsIGl0IGlzIG11Y2ggc2FuZXIgdG8g ZmFpbCB0aGUgdHJhbnNhY3Rpb24uCgpUaGlzIHdpbGwgaGF2ZSBhbiBpbXBh Y3Qgb24gYW55IGNsaWVudCB0aGF0IGRlY2lkZXMgdG8gY29tbWl0IGV2ZW4g aWYgaXQKY2FuJ3Qgd3JpdGUgYSBub2RlLiBBbHRob3VnaCwgaXQgaXMgbm90 IGNsZWFyIHdoeSBhIG5vcm1hbCBjbGllbnQgd291bGQKd2FudCB0byBkbyB0 aGF0Li4uCgpMYXN0bHksIHVwZGF0ZSBkZXN0cm95X25vZGUoKSB0byB1c2Ug dGhlIGNvcnJlY3Qga2V5IGZvciBkZWxldGluZyB0aGUKbm9kZS4gUmF0aGVy IHRoYW4gcmVjcmVhdGluZyBpdCAodGhpcyB3aWxsIGFsbG9jYXRlIG1lbW9y eSBhbmQKdGhlcmVmb3JlIGZhaWwpLCBzdGFzaCB0aGUga2V5IGluIHRoZSBz dHJ1Y3R1cmUgbm9kZS4KClRoaXMgaXMgWFNBLTQxNSAvIENWRS0yMDIyLTQy MzEwLgoKUmVwb3J0ZWQtYnk6IEp1bGllbiBHcmFsbCA8amdyYWxsQGFtYXpv bi5jb20+ClNpZ25lZC1vZmYtYnk6IEp1bGllbiBHcmFsbCA8amdyYWxsQGFt YXpvbi5jb20+ClJldmlld2VkLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NA c3VzZS5jb20+CgpkaWZmIC0tZ2l0IGEvdG9vbHMveGVuc3RvcmUveGVuc3Rv cmVkX2NvcmUuYyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMK aW5kZXggNmFmZThjYjU5ZDdlLi44ZTkxYjU1NDk4NGQgMTAwNjQ0Ci0tLSBh L3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMKKysrIGIvdG9vbHMv eGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYwpAQCAtNDY4LDE1ICs0NjgsMTcg QEAgaW50IHdyaXRlX25vZGVfcmF3KHN0cnVjdCBjb25uZWN0aW9uICpjb25u LCBUREJfREFUQSAqa2V5LCBzdHJ1Y3Qgbm9kZSAqbm9kZSwKIAlyZXR1cm4g MDsKIH0KIAorLyoKKyAqIFdyaXRlIHRoZSBub2RlLiBJZiB0aGUgbm9kZSBp cyB3cml0dGVuLCBjYWxsZXIgY2FuIGZpbmQgdGhlIGtleSB1c2VkIGluCisg KiBub2RlLT5rZXkuIFRoaXMgY2FuIGxhdGVyIGJlIHVzZWQgaWYgdGhlIGNo YW5nZSBuZWVkcyB0byBiZSByZXZlcnRlZC4KKyAqLwogc3RhdGljIGludCB3 cml0ZV9ub2RlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBzdHJ1Y3Qgbm9k ZSAqbm9kZSwKIAkJICAgICAgYm9vbCBub19xdW90YV9jaGVjaykKIHsKLQlU REJfREFUQSBrZXk7Ci0KLQlpZiAoYWNjZXNzX25vZGUoY29ubiwgbm9kZSwg Tk9ERV9BQ0NFU1NfV1JJVEUsICZrZXkpKQorCWlmIChhY2Nlc3Nfbm9kZShj b25uLCBub2RlLCBOT0RFX0FDQ0VTU19XUklURSwgJm5vZGUtPmtleSkpCiAJ CXJldHVybiBlcnJubzsKIAotCXJldHVybiB3cml0ZV9ub2RlX3Jhdyhjb25u LCAma2V5LCBub2RlLCBub19xdW90YV9jaGVjayk7CisJcmV0dXJuIHdyaXRl X25vZGVfcmF3KGNvbm4sICZub2RlLT5rZXksIG5vZGUsIG5vX3F1b3RhX2No ZWNrKTsKIH0KIAogZW51bSB4c19wZXJtX3R5cGUgcGVybV9mb3JfY29ubihz dHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwKQEAgLTk3OSwxOCArOTgxLDIxIEBA IHN0YXRpYyBzdHJ1Y3Qgbm9kZSAqY29uc3RydWN0X25vZGUoc3RydWN0IGNv bm5lY3Rpb24gKmNvbm4sIGNvbnN0IHZvaWQgKmN0eCwKIAogc3RhdGljIGlu dCBkZXN0cm95X25vZGUoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIHN0cnVj dCBub2RlICpub2RlKQogewotCVREQl9EQVRBIGtleTsKLQogCWlmIChzdHJl cShub2RlLT5uYW1lLCAiLyIpKQogCQljb3JydXB0KE5VTEwsICJEZXN0cm95 aW5nIHJvb3Qgbm9kZSEiKTsKIAotCWtleS5kcHRyID0gKHZvaWQgKilub2Rl LT5uYW1lOwotCWtleS5kc2l6ZSA9IHN0cmxlbihub2RlLT5uYW1lKTsKLQot CXRkYl9kZWxldGUodGRiX2N0eCwga2V5KTsKKwl0ZGJfZGVsZXRlKHRkYl9j dHgsIG5vZGUtPmtleSk7CiAKIAlkb21haW5fZW50cnlfZGVjKGNvbm4sIG5v ZGUpOwogCisJLyoKKwkgKiBJdCBpcyBub3QgcG9zc2libGUgdG8gZWFzaWx5 IHJldmVydCB0aGUgY2hhbmdlcyBpbiBhIHRyYW5zYWN0aW9uLgorCSAqIFNv IGlmIHRoZSBmYWlsdXJlIGhhcHBlbnMgaW4gYSB0cmFuc2FjdGlvbiwgbWFy ayBpdCBhcyBmYWlsIHRvCisJICogcHJldmVudCBhbnkgY29tbWl0LgorCSAq LworCWlmICggY29ubi0+dHJhbnNhY3Rpb24gKQorCQlmYWlsX3RyYW5zYWN0 aW9uKGNvbm4tPnRyYW5zYWN0aW9uKTsKKwogCXJldHVybiAwOwogfQogCmRp ZmYgLS1naXQgYS90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5oIGIv dG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuaAppbmRleCAxOTZhNmZk MmIwYmUuLjkzNjljNGNiZmQyNiAxMDA2NDQKLS0tIGEvdG9vbHMveGVuc3Rv cmUveGVuc3RvcmVkX2NvcmUuaAorKysgYi90b29scy94ZW5zdG9yZS94ZW5z dG9yZWRfY29yZS5oCkBAIC0xMTksNiArMTE5LDggQEAgc3RydWN0IG5vZGVf cGVybXMgewogCiBzdHJ1Y3Qgbm9kZSB7CiAJY29uc3QgY2hhciAqbmFtZTsK KwkvKiBLZXkgdXNlZCB0byB1cGRhdGUgVERCICovCisJVERCX0RBVEEga2V5 OwogCiAJLyogUGFyZW50IChvcHRpb25hbCkgKi8KIAlzdHJ1Y3Qgbm9kZSAq cGFyZW50OwpkaWZmIC0tZ2l0IGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVk X3RyYW5zYWN0aW9uLmMgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfdHJh bnNhY3Rpb24uYwppbmRleCAyODgxZjNiMmU0NGQuLjRmZmExODMxMTEyMCAx MDA2NDQKLS0tIGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX3RyYW5zYWN0 aW9uLmMKKysrIGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX3RyYW5zYWN0 aW9uLmMKQEAgLTU4Miw2ICs1ODIsMTEgQEAgdm9pZCB0cmFuc2FjdGlvbl9l bnRyeV9kZWMoc3RydWN0IHRyYW5zYWN0aW9uICp0cmFucywgdW5zaWduZWQg aW50IGRvbWlkKQogCWxpc3RfYWRkX3RhaWwoJmQtPmxpc3QsICZ0cmFucy0+ Y2hhbmdlZF9kb21haW5zKTsKIH0KIAordm9pZCBmYWlsX3RyYW5zYWN0aW9u KHN0cnVjdCB0cmFuc2FjdGlvbiAqdHJhbnMpCit7CisJdHJhbnMtPmZhaWwg PSB0cnVlOworfQorCiB2b2lkIGNvbm5fZGVsZXRlX2FsbF90cmFuc2FjdGlv bnMoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4pCiB7CiAJc3RydWN0IHRyYW5z YWN0aW9uICp0cmFuczsKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hl bnN0b3JlZF90cmFuc2FjdGlvbi5oIGIvdG9vbHMveGVuc3RvcmUveGVuc3Rv cmVkX3RyYW5zYWN0aW9uLmgKaW5kZXggNDNhMTYyYmVhM2YzLi4xNDA2Mjcz MGUzYzkgMTAwNjQ0Ci0tLSBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF90 cmFuc2FjdGlvbi5oCisrKyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF90 cmFuc2FjdGlvbi5oCkBAIC00Niw2ICs0Niw5IEBAIGludCBhY2Nlc3Nfbm9k ZShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgc3RydWN0IG5vZGUgKm5vZGUs CiBpbnQgdHJhbnNhY3Rpb25fcHJlcGVuZChzdHJ1Y3QgY29ubmVjdGlvbiAq Y29ubiwgY29uc3QgY2hhciAqbmFtZSwKICAgICAgICAgICAgICAgICAgICAg ICAgIFREQl9EQVRBICprZXkpOwogCisvKiBNYXJrIHRoZSB0cmFuc2FjdGlv biBhcyBmYWlsZWQuIFRoaXMgd2lsbCBwcmV2ZW50IGl0IHRvIGJlIGNvbW1p dHRlZC4gKi8KK3ZvaWQgZmFpbF90cmFuc2FjdGlvbihzdHJ1Y3QgdHJhbnNh Y3Rpb24gKnRyYW5zKTsKKwogdm9pZCBjb25uX2RlbGV0ZV9hbGxfdHJhbnNh Y3Rpb25zKHN0cnVjdCBjb25uZWN0aW9uICpjb25uKTsKIGludCBjaGVja190 cmFuc2FjdGlvbnMoc3RydWN0IGhhc2h0YWJsZSAqaGFzaCk7CiAK --=separator Content-Type: application/octet-stream; name="xsa415-4.15.patch" Content-Disposition: attachment; filename="xsa415-4.15.patch" Content-Transfer-Encoding: base64 RnJvbTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4KU3ViamVj dDogdG9vbHMveGVuc3RvcmU6IEZhaWwgYSB0cmFuc2FjdGlvbiBpZiBpdCBp cyBub3QgcG9zc2libGUgdG8gY3JlYXRlIGEKIG5vZGUKCkNvbW1pdCBmMmJl YmY3MmM0ZDUgInhlbnN0b3JlOiByZXdvcmsgb2YgdHJhbnNhY3Rpb24gaGFu ZGxpbmciIG1vdmVkCm91dCBmcm9tIGNvcHlpbmcgdGhlIGVudGlyZSBkYXRh YmFzZSBldmVyeXRpbWUgYSBuZXcgdHJhbnNhY3Rpb24gaXMKb3BlbmVkIHRv IHRyYWNrIHRoZSBsaXN0IG9mIG5vZGVzIGNoYW5nZWQuCgpUaGUgY29udGVu dCBvZiBhbGwgdGhlIG5vZGVzIGFjY2Vzc2VkIGR1cmluZyBhIHRyYW5zYWN0 aW9uIHdpbGwgYmUKdGVtcG9yYXJpbHkgc3RvcmVkIGluIFREQiB1c2luZyBh IGRpZmZlcmVudCBrZXkuCgpUaGUgZnVuY3Rpb24gY3JlYXRlX25vZGUoKSBt YXkgd3JpdGUvdXBkYXRlIG11bHRpcGxlIG5vZGVzIGlmIHRoZSBjaGlsZApk b2Vzbid0IGV4aXN0LiBJbiBjYXNlIG9mIGEgZmFpbHVyZSwgdGhlIGZ1bmN0 aW9uIHdpbGwgcmV2ZXJ0IGFueQpjaGFuZ2VzICh0aGlzIGluY2x1ZGUgYW55 IHVwZGF0ZSB0byBUREIpLiBVbmZvcnR1bmF0ZWx5LCB0aGUgZnVuY3Rpb24K d2hpY2ggcmV2ZXJ0cyB0aGUgY2hhbmdlcyAoaS5lLiBkZXN0cm95X25vZGUo KSkgd2lsbCBub3QgdXNlIHRoZSBjb3JyZWN0CmtleSB0byBkZWxldGUgYW55 IHVwZGF0ZSBvciBldmVuIHJlcXVlc3QgdGhlIHRyYW5zYWN0aW9uIHRvIGZh aWwuCgpUaGlzIG1lYW5zIHRoYXQgaWYgYSBjbGllbnQgZGVjaWRlIHRvIGdv IGFoZWFkIHdpdGggY29tbWl0dGluZyB0aGUKdHJhbnNhY3Rpb24sIG9ycGhh biBub2RlcyB3aWxsIGJlIGNyZWF0ZWQgYmVjYXVzZSB0aGV5IHdlcmUgbm90 IGxpbmtlZAp0byBhbiBleGlzdGluZyBub2RlIChjcmVhdGVfbm9kZSgpIHdp bGwgd3JpdGUgdGhlIG5vZGVzIGJhY2t3YXJkcykuCgpPbmNlIHNvbWUgbm9k ZXMgaGF2ZSBiZWVuIHBhcnRpYWxseSB1cGRhdGVkIGluIGEgdHJhbnNhY3Rp b24sIGl0IGlzIG5vdAplYXNpbHkgcG9zc2libGUgdG8gdW5kbyBhbnkgY2hh bmdlcy4gU28gcmF0aGVyIHRoYW4gY29udGludWluZyBhbmQgaGl0CndlaXJk IGlzc3VlIHdoaWxlIGNvbW1pdHRpbmcsIGl0IGlzIG11Y2ggc2FuZXIgdG8g ZmFpbCB0aGUgdHJhbnNhY3Rpb24uCgpUaGlzIHdpbGwgaGF2ZSBhbiBpbXBh Y3Qgb24gYW55IGNsaWVudCB0aGF0IGRlY2lkZXMgdG8gY29tbWl0IGV2ZW4g aWYgaXQKY2FuJ3Qgd3JpdGUgYSBub2RlLiBBbHRob3VnaCwgaXQgaXMgbm90 IGNsZWFyIHdoeSBhIG5vcm1hbCBjbGllbnQgd291bGQKd2FudCB0byBkbyB0 aGF0Li4uCgpMYXN0bHksIHVwZGF0ZSBkZXN0cm95X25vZGUoKSB0byB1c2Ug dGhlIGNvcnJlY3Qga2V5IGZvciBkZWxldGluZyB0aGUKbm9kZS4gUmF0aGVy IHRoYW4gcmVjcmVhdGluZyBpdCAodGhpcyB3aWxsIGFsbG9jYXRlIG1lbW9y eSBhbmQKdGhlcmVmb3JlIGZhaWwpLCBzdGFzaCB0aGUga2V5IGluIHRoZSBz dHJ1Y3R1cmUgbm9kZS4KClRoaXMgaXMgWFNBLTQxNSAvIENWRS0yMDIyLTQy MzEwLgoKUmVwb3J0ZWQtYnk6IEp1bGllbiBHcmFsbCA8amdyYWxsQGFtYXpv bi5jb20+ClNpZ25lZC1vZmYtYnk6IEp1bGllbiBHcmFsbCA8amdyYWxsQGFt YXpvbi5jb20+ClJldmlld2VkLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NA c3VzZS5jb20+CgpkaWZmIC0tZ2l0IGEvdG9vbHMveGVuc3RvcmUveGVuc3Rv cmVkX2NvcmUuYyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMK aW5kZXggYTAwYzQ5ZTQwNGExLi5iMjhjMmM2NmI1M2IgMTAwNjQ0Ci0tLSBh L3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMKKysrIGIvdG9vbHMv eGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYwpAQCAtNTMxLDE1ICs1MzEsMTcg QEAgaW50IHdyaXRlX25vZGVfcmF3KHN0cnVjdCBjb25uZWN0aW9uICpjb25u LCBUREJfREFUQSAqa2V5LCBzdHJ1Y3Qgbm9kZSAqbm9kZSwKIAlyZXR1cm4g MDsKIH0KIAorLyoKKyAqIFdyaXRlIHRoZSBub2RlLiBJZiB0aGUgbm9kZSBp cyB3cml0dGVuLCBjYWxsZXIgY2FuIGZpbmQgdGhlIGtleSB1c2VkIGluCisg KiBub2RlLT5rZXkuIFRoaXMgY2FuIGxhdGVyIGJlIHVzZWQgaWYgdGhlIGNo YW5nZSBuZWVkcyB0byBiZSByZXZlcnRlZC4KKyAqLwogc3RhdGljIGludCB3 cml0ZV9ub2RlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBzdHJ1Y3Qgbm9k ZSAqbm9kZSwKIAkJICAgICAgYm9vbCBub19xdW90YV9jaGVjaykKIHsKLQlU REJfREFUQSBrZXk7Ci0KLQlpZiAoYWNjZXNzX25vZGUoY29ubiwgbm9kZSwg Tk9ERV9BQ0NFU1NfV1JJVEUsICZrZXkpKQorCWlmIChhY2Nlc3Nfbm9kZShj b25uLCBub2RlLCBOT0RFX0FDQ0VTU19XUklURSwgJm5vZGUtPmtleSkpCiAJ CXJldHVybiBlcnJubzsKIAotCXJldHVybiB3cml0ZV9ub2RlX3Jhdyhjb25u LCAma2V5LCBub2RlLCBub19xdW90YV9jaGVjayk7CisJcmV0dXJuIHdyaXRl X25vZGVfcmF3KGNvbm4sICZub2RlLT5rZXksIG5vZGUsIG5vX3F1b3RhX2No ZWNrKTsKIH0KIAogZW51bSB4c19wZXJtX3R5cGUgcGVybV9mb3JfY29ubihz dHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwKQEAgLTEwNTYsMTYgKzEwNTgsMjEg QEAgc3RhdGljIHN0cnVjdCBub2RlICpjb25zdHJ1Y3Rfbm9kZShzdHJ1Y3Qg Y29ubmVjdGlvbiAqY29ubiwgY29uc3Qgdm9pZCAqY3R4LAogCiBzdGF0aWMg aW50IGRlc3Ryb3lfbm9kZShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwgc3Ry dWN0IG5vZGUgKm5vZGUpCiB7Ci0JVERCX0RBVEEga2V5OwotCiAJaWYgKHN0 cmVxKG5vZGUtPm5hbWUsICIvIikpCiAJCWNvcnJ1cHQoTlVMTCwgIkRlc3Ry b3lpbmcgcm9vdCBub2RlISIpOwogCi0Jc2V0X3RkYl9rZXkobm9kZS0+bmFt ZSwgJmtleSk7Ci0JdGRiX2RlbGV0ZSh0ZGJfY3R4LCBrZXkpOworCXRkYl9k ZWxldGUodGRiX2N0eCwgbm9kZS0+a2V5KTsKIAogCWRvbWFpbl9lbnRyeV9k ZWMoY29ubiwgbm9kZSk7CiAKKwkvKgorCSAqIEl0IGlzIG5vdCBwb3NzaWJs ZSB0byBlYXNpbHkgcmV2ZXJ0IHRoZSBjaGFuZ2VzIGluIGEgdHJhbnNhY3Rp b24uCisJICogU28gaWYgdGhlIGZhaWx1cmUgaGFwcGVucyBpbiBhIHRyYW5z YWN0aW9uLCBtYXJrIGl0IGFzIGZhaWwgdG8KKwkgKiBwcmV2ZW50IGFueSBj b21taXQuCisJICovCisJaWYgKCBjb25uLT50cmFuc2FjdGlvbiApCisJCWZh aWxfdHJhbnNhY3Rpb24oY29ubi0+dHJhbnNhY3Rpb24pOworCiAJcmV0dXJu IDA7CiB9CiAKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3Jl ZF9jb3JlLmggYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5oCmlu ZGV4IDBjOWEwOTYxYjU3ZS4uOTAwMzM2YWZhNDI2IDEwMDY0NAotLS0gYS90 b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5oCisrKyBiL3Rvb2xzL3hl bnN0b3JlL3hlbnN0b3JlZF9jb3JlLmgKQEAgLTE0OCw2ICsxNDgsOCBAQCBz dHJ1Y3Qgbm9kZV9wZXJtcyB7CiAKIHN0cnVjdCBub2RlIHsKIAljb25zdCBj aGFyICpuYW1lOworCS8qIEtleSB1c2VkIHRvIHVwZGF0ZSBUREIgKi8KKwlU REJfREFUQSBrZXk7CiAKIAkvKiBQYXJlbnQgKG9wdGlvbmFsKSAqLwogCXN0 cnVjdCBub2RlICpwYXJlbnQ7CmRpZmYgLS1naXQgYS90b29scy94ZW5zdG9y ZS94ZW5zdG9yZWRfdHJhbnNhY3Rpb24uYyBiL3Rvb2xzL3hlbnN0b3JlL3hl bnN0b3JlZF90cmFuc2FjdGlvbi5jCmluZGV4IGNkMDdmYjBmMjE4Yi4uZmFm NmM5MzBlNDJhIDEwMDY0NAotLS0gYS90b29scy94ZW5zdG9yZS94ZW5zdG9y ZWRfdHJhbnNhY3Rpb24uYworKysgYi90b29scy94ZW5zdG9yZS94ZW5zdG9y ZWRfdHJhbnNhY3Rpb24uYwpAQCAtNTgwLDYgKzU4MCwxMSBAQCB2b2lkIHRy YW5zYWN0aW9uX2VudHJ5X2RlYyhzdHJ1Y3QgdHJhbnNhY3Rpb24gKnRyYW5z LCB1bnNpZ25lZCBpbnQgZG9taWQpCiAJbGlzdF9hZGRfdGFpbCgmZC0+bGlz dCwgJnRyYW5zLT5jaGFuZ2VkX2RvbWFpbnMpOwogfQogCit2b2lkIGZhaWxf dHJhbnNhY3Rpb24oc3RydWN0IHRyYW5zYWN0aW9uICp0cmFucykKK3sKKwl0 cmFucy0+ZmFpbCA9IHRydWU7Cit9CisKIHZvaWQgY29ubl9kZWxldGVfYWxs X3RyYW5zYWN0aW9ucyhzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubikKIHsKIAlz dHJ1Y3QgdHJhbnNhY3Rpb24gKnRyYW5zOwpkaWZmIC0tZ2l0IGEvdG9vbHMv eGVuc3RvcmUveGVuc3RvcmVkX3RyYW5zYWN0aW9uLmggYi90b29scy94ZW5z dG9yZS94ZW5zdG9yZWRfdHJhbnNhY3Rpb24uaAppbmRleCA0M2ExNjJiZWEz ZjMuLjE0MDYyNzMwZTNjOSAxMDA2NDQKLS0tIGEvdG9vbHMveGVuc3RvcmUv eGVuc3RvcmVkX3RyYW5zYWN0aW9uLmgKKysrIGIvdG9vbHMveGVuc3RvcmUv eGVuc3RvcmVkX3RyYW5zYWN0aW9uLmgKQEAgLTQ2LDYgKzQ2LDkgQEAgaW50 IGFjY2Vzc19ub2RlKHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCBzdHJ1Y3Qg bm9kZSAqbm9kZSwKIGludCB0cmFuc2FjdGlvbl9wcmVwZW5kKHN0cnVjdCBj b25uZWN0aW9uICpjb25uLCBjb25zdCBjaGFyICpuYW1lLAogICAgICAgICAg ICAgICAgICAgICAgICAgVERCX0RBVEEgKmtleSk7CiAKKy8qIE1hcmsgdGhl IHRyYW5zYWN0aW9uIGFzIGZhaWxlZC4gVGhpcyB3aWxsIHByZXZlbnQgaXQg dG8gYmUgY29tbWl0dGVkLiAqLwordm9pZCBmYWlsX3RyYW5zYWN0aW9uKHN0 cnVjdCB0cmFuc2FjdGlvbiAqdHJhbnMpOworCiB2b2lkIGNvbm5fZGVsZXRl X2FsbF90cmFuc2FjdGlvbnMoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4pOwog aW50IGNoZWNrX3RyYW5zYWN0aW9ucyhzdHJ1Y3QgaGFzaHRhYmxlICpoYXNo KTsKIAo= --=separator--