From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smarthost4.atos.net (smtppost.atos.net [193.56.114.177]) by sourceware.org (Postfix) with ESMTPS id E6EA6385840E for ; Mon, 3 Jan 2022 13:23:20 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org E6EA6385840E X-IronPort-AV: E=Sophos;i="5.88,258,1635199200"; d="scan'208,223";a="308882745" X-MGA-submission: =?us-ascii?q?MDFNrvQUYVchXaWsZ22a1iDPzwA1S/sY+w9Y1S?= =?us-ascii?q?btJ3rZDebFZShEZaYrTGnz8eOyktSeYn+FF5IVS5FiVxlOe+CA0xwW1M?= =?us-ascii?q?AViX55sJQNvgWwXNgNiZkMVrQjaiKxDhZmJe96EB6j15QKYH2+Dry9PG?= =?us-ascii?q?+l?= Received: from mail.sis.atos.net (HELO GITEXCPRDMB22.ww931.my-it-solutions.net) ([10.89.29.132]) by smarthost4.atos.net with ESMTP/TLS/AES256-GCM-SHA384; 03 Jan 2022 14:23:19 +0100 Received: from GITEXCPRDMB23.ww931.my-it-solutions.net (10.89.29.133) by GITEXCPRDMB22.ww931.my-it-solutions.net (10.89.29.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Mon, 3 Jan 2022 14:23:19 +0100 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (172.16.214.171) by GITEXCPRDMB23.ww931.my-it-solutions.net (10.89.29.133) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20 via Frontend Transport; Mon, 3 Jan 2022 14:23:19 +0100 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d+JxI5fyZ9HjtZ7NC/9miY56RxvGojBOXy8zMCj8fsA6Iq54f6TScT0ecI5SBsbr0UDSeYARNK1cUigGZ0wGwu33Nnd+RgpAO2GXyyym0hdFcB426sUjT9XtTUeFLpp467hoSVpDXO0qGtGQ5Fxt/mdFRgh4oSoP2ehixLLTQxBKMfKWVsw9wylB6VOwReABj8jpxEBAO8uClxVoXu069RmN0Gu6Y0Jbx46tIfxuO5BHH7BAJ2kk9prpxF1oGwCxfIFIFC3BBf3S/pL5gC9iDEmdsYqv5lobOoGi3F+H289hHkmv8WhIqaUWYR03bz2/qwViOHLHjLkn/yF/5b1MOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=52qwheKyI8aLMOzPJf1s68hzNs6h6/gFq3vnoNCoGkw=; b=dmBinKQ+y68HNjvKOXtxjSb0Zw/qX3DBo+Rkl3Xs2/kzO22/vpgBiYTavOXtlEhJ68QY5ei69pwZ7T50E9MDpTmLFzp06Nv4r9Hx3pzsHftGwjCFcaKaO/V7Mcc/8r/9KCQbkA3rOBxzinzLdCXByPVvf1EetbpeIvmDRqx1FqXhLhaO9EpxTNa1UZYrztJYDXXSja9rERsu/F2pSZIlnFqHh4rD48TOfM1X1I0r8j1q3sYB9EUt6oeCBJZLIJhStjF7N5grTkyW6i30+FBGZH/Uqu1Etq9ZMMAGkq88OnpyL1JJbf7qsG9kX43zGfDd2bTZGz4MKnw9PJ2zBHf+vw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=atos.net; dmarc=pass action=none header.from=atos.net; dkim=pass header.d=atos.net; arc=none Received: from PA4PR02MB6686.eurprd02.prod.outlook.com (2603:10a6:102:ff::14) by PAXPR02MB7390.eurprd02.prod.outlook.com (2603:10a6:102:1c9::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4844.14; Mon, 3 Jan 2022 13:23:13 +0000 Received: from PA4PR02MB6686.eurprd02.prod.outlook.com ([fe80::d1e2:87ab:d272:7b1c]) by PA4PR02MB6686.eurprd02.prod.outlook.com ([fe80::d1e2:87ab:d272:7b1c%7]) with mapi id 15.20.4844.016; Mon, 3 Jan 2022 13:23:13 +0000 From: "CHIGOT, CLEMENT" To: "binutils@sourceware.org" Subject: [PATCH 4/4] ld: add hidden and internal visibility support for XCOFF Thread-Topic: [PATCH 4/4] ld: add hidden and internal visibility support for XCOFF Thread-Index: AQHYAKUFFQ3ipC76sE6QB8H7h6Iu7w== Date: Mon, 3 Jan 2022 13:23:13 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: msip_labels: MSIP_Label_e463cba9-5f6c-478d-9329-7b2295e4e8ed_Enabled=True; MSIP_Label_e463cba9-5f6c-478d-9329-7b2295e4e8ed_SiteId=33440fc6-b7c7-412c-bb73-0e70b0198d5a; MSIP_Label_e463cba9-5f6c-478d-9329-7b2295e4e8ed_SetDate=2022-01-03T13:23:13.397Z; MSIP_Label_e463cba9-5f6c-478d-9329-7b2295e4e8ed_Name=Atos For Internal Use - All Employees; MSIP_Label_e463cba9-5f6c-478d-9329-7b2295e4e8ed_ContentBits=0; MSIP_Label_e463cba9-5f6c-478d-9329-7b2295e4e8ed_Method=Standard; suggested_attachment_session_id: 92b4dcd4-c28f-a296-1b02-42b1289e97da x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 04dba0e0-1605-4119-afb7-08d9cebc31f4 x-ms-traffictypediagnostic: PAXPR02MB7390:EE_ x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6430; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: OyP3ybzAkwx1C4UzfFlz5v/97Cq4xbCG+5rc0N7R24RRtXECCDW+uVCQSwGMh8EW/Ru/XetigaKwqz8x4zUJCG6l/5islaK2OXbGgGVopqzVv6aw5sDL3zXuXOoVsLjdgMGIbssnh6poWC9gts6ZeEOxB+JZDgiuI6mpyrInMOpW4sTqJX48PwPHzutPScoU11ASPdLaPw/d/6ot9S5mAl10R2/rYV8BvE4EL8nCBAhQJlLvuehcI1F/5qGTRhK3BZQae8nQsqDWFAmAQ5IRpftoaZ45AP1S+6Ig9p7tiDKkdCdMVTYe2QPz3PeiXCD30lgc1k68CPSo/h+EUW/QIKBZffhg8n2m0zatalNxqvIlVr+Q4tjL8m3pW/XN9cQcCBKvxdFkeGXWPrYyJ9RXMFbYHya5/4YihiAOBZVYsTD7EmukWP+MMubGV/zWWiFEaAVBB9vR1Hq34fAbA9nw469gOaDWmLtZvsTpNhJmUwJm3H6EeQBjKVNi3f1aSfV6JvGIyW+mchix1QFVHJATef8ULDezX4gkgrZRxbviCL9U5qwGYqJlPia9Qno9auOP21cv+wzK/abtW+UgrdWcQnJnvXZS1btEqSqG3aYNsOVwAvPiAN1DrLwUuROf0/ILONkJpw+4j0SYHnYskvxedLfIaUETlm00o8tZxTLs9v66v0AN1lzITPfwxPaoh7XeQyKVeSb9XwrEfMKm1RiklA== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PA4PR02MB6686.eurprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(9686003)(38100700002)(64756008)(86362001)(66946007)(4744005)(99936003)(122000001)(6916009)(55016003)(71200400001)(8676002)(7696005)(82960400001)(8936002)(186003)(33656002)(38070700005)(66476007)(66556008)(66446008)(26005)(76116006)(5660300002)(91956017)(52536014)(2906002)(6506007)(508600001)(316002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?471ceWCaVFDDR/7gaTJ2GtmbetIboRzZ/R7cV1yFsqf1YcK0gymWYXlaFc?= =?iso-8859-1?Q?RfXtVqmYfSjd7RTlFsuImEJe/B4HSBxKQW7ehcasBdNYlglTTwEo+oZN42?= =?iso-8859-1?Q?GQunFp6fGApVfnzx9q0RGRyeCI5Ly7SMmOY7vRHGQys+95qRQJSRXCcg59?= =?iso-8859-1?Q?iDdtQ8s0w2V3BIwyGhqFCG6mQtpF/MnKtpN2SeS+WJ1YP3wvALYsH6jkql?= =?iso-8859-1?Q?L14PaxfpFnaKuJEALqVwwiIA3Zpb27guA2rmeei/3ercIeyDEJ5PjPaix1?= =?iso-8859-1?Q?N2TcWGl1kXf0YPY+DgoZ47ADVuvgKfPGHWKjstN28G7Bf58Ose4KXRts8U?= =?iso-8859-1?Q?1piEarNv9aGZ8OJoO7kBZ2wWy7YsfIEYFEiQq3oMd1mJPL3XUv+qDBnHKY?= =?iso-8859-1?Q?e9J0QOKC59qZJsArMIf5mmckeIFcQICt7mDLw5VL97yRK9kA/HdaOVTYN0?= =?iso-8859-1?Q?GZXUaRmtMuc8i3sEco7PO/AO+lrkH8GCsX9+KE4gPdCdJNWu6L7/coPy+P?= =?iso-8859-1?Q?CiS4/ZgQqTUiGAtvlmukXYjDZfTNa03Z7bK8Rnu4NQM4BsEsHEJ01tn7pF?= =?iso-8859-1?Q?T9QCvXFtBPCOyauID4HgT3Ao3NlOlj+MpJ8nIRGVMQAz7/cHF81duqEruw?= =?iso-8859-1?Q?x47A2DodQO0mavKUu87pVq80lv/wXMXfVMGMEr9pPA19PeUWK+LkDD0lRL?= =?iso-8859-1?Q?PmAy+kzL7k9kmoVYVfq9PWxA+ChWuCbztHvwanNsqwk4czOorUpBUt6rKj?= =?iso-8859-1?Q?hG62fChP4IUZsg/q7KtnuvVKgXaoy6B2vuPqTuyybPKBuuaQZtr+Joxw0e?= =?iso-8859-1?Q?n8rfkzNni+5wrledMeXDJ3ugtC3SEDoLgr35/vYiJPHTDdp3M2iwLpjCh2?= =?iso-8859-1?Q?1aL1dzxHEiBDV0crJ0rEeZDRG8DglQlvAA7AMtaOjv5O3JKV6qC+KYa5Ft?= =?iso-8859-1?Q?rGypZk6uqZbIpMs3Zi6teBp1Lo9iZoBHQYX4REQcd8dYYRNjuaS9KDofHm?= =?iso-8859-1?Q?LCqw2HCIa+klYEbO+QZzT3Oe+nVdxFsO42ZhxJNaJMQDhsC9oujv7CcRny?= =?iso-8859-1?Q?v/yYkQdtfzUrM+hmrSohIDIJC/Hr19YYI9sQkiqbpiRZN2k0W/CHcWaGHo?= =?iso-8859-1?Q?zMprSBdxiFq/X0enUgYFTccpy08wQXxD69u1ErvjS1cE6qq5efRhH4kWzA?= =?iso-8859-1?Q?Oizap5wK6UhQyvgpjZINdHewzmEg17C1Z8+crT4JjOIneHrQFjUVDZmMIw?= =?iso-8859-1?Q?kRGlG92Gm6D1Yz9XVxpRreJNDMR0qgqiWCKY0Gn9SWIC2OzUi/ZPkBj87j?= =?iso-8859-1?Q?NDXBnrBNHNZ14RlervVNfHaRCUuVdZYKtRlnw4AktT+0r0srJ4A08ABeOO?= =?iso-8859-1?Q?qwAPshIy7NoLK1Ni2JQGzWNxkFrRYy5yrUBqF+dbmQKKe5JIsdT6yKC9m3?= =?iso-8859-1?Q?F6ZYlTlT0OBnoWbguOI+XYWdN4VZEfy/pLyl6TODM6wL3mjXhufoPM1FKz?= =?iso-8859-1?Q?aYwbqQsU0VhGj7qy7S7DEjWtKA693o7Wbw3OkbEd/TtL24YCM4yHqzFVAy?= =?iso-8859-1?Q?GcvmEgRj+QJ2tGg6YzItSo2x76b0mU4xEVfXDvKIzNNXe1Cq59F92MXM6s?= =?iso-8859-1?Q?Ozj1Fg9IqoAwJQs42X8/DOcEVApblezqlkL4r3ISYQyC+i57Wwge6j0mNE?= =?iso-8859-1?Q?5YBwLTj/kjJyC29EPDc=3D?= Content-Type: multipart/mixed; boundary="_002_PA4PR02MB66861A98F71EBD39AF7BD99CEA499PA4PR02MB6686eurp_" MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PA4PR02MB6686.eurprd02.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 04dba0e0-1605-4119-afb7-08d9cebc31f4 X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Jan 2022 13:23:13.6147 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 33440fc6-b7c7-412c-bb73-0e70b0198d5a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 9N+JIs7OutwbS1ZSWd+t0lNG7VF5ZH1Qk5XfOgQQFuZlmowIbyfxS5ihmqnB60de7ZX15o4E1B5N3+egWOChYA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR02MB7390 X-OriginatorOrg: atos.net X-Spam-Status: No, score=-2.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FORGED_SPF_HELO, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_NONE, TXREP autolearn=no autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jan 2022 13:23:22 -0000 --_002_PA4PR02MB66861A98F71EBD39AF7BD99CEA499PA4PR02MB6686eurp_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable This patch adds a primary support for hidden and internal visibility in=0A= GNU linker for XCOFF format.=0A= The protected visibility isn't yet supported.=0A= =0A= PR 22085=0A= =0A= bfd/ChangeLog:=0A= =0A= * xcofflink.c (xcoff_dynamic_definition_p): Add hidden=0A= and internal visibility support.=0A= (xcoff_link_add_symbols): Likewise.=0A= (xcoff_auto_export_p): Likewise.=0A= (bfd_xcoff_export_symbol): Likewise.=0A= (xcoff_link_input_bfd): Likewise.=0A= =0A= ld/ChangeLog:=0A= =0A= * testsuite/ld-vsb/main.c: Adapt for XCOFF.=0A= * testsuite/ld-vsb/sh1.c: Likewse.=0A= * testsuite/ld-vsb/vsb.exp: Likewise.=0A= * testsuite/ld-vsb/visibility-1-xcoff-32.d: New test.=0A= * testsuite/ld-vsb/visibility-1-xcoff-64.d: New test.=0A= * testsuite/ld-vsb/visibility-2-xcoff-32.d: New test.=0A= * testsuite/ld-vsb/visibility-2-xcoff-64.d: New test.=0A= * testsuite/ld-vsb/xcoffvsb.dat: New test.=0A= --_002_PA4PR02MB66861A98F71EBD39AF7BD99CEA499PA4PR02MB6686eurp_ Content-Type: application/octet-stream; name="0004-ld-add-hidden-and-internal-visibility-support-for-XC.patch" Content-Description: 0004-ld-add-hidden-and-internal-visibility-support-for-XC.patch Content-Disposition: attachment; filename="0004-ld-add-hidden-and-internal-visibility-support-for-XC.patch"; size=20310; creation-date="Mon, 03 Jan 2022 13:23:10 GMT"; modification-date="Mon, 03 Jan 2022 13:23:10 GMT" Content-Transfer-Encoding: base64 RnJvbSA4OGRmY2RhYWEyOWFiZDI5Njg3NzQ3ZTA2ZjNiZTEwY2I2ODBlZjMyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/Q2w9QzM9QTltZW50PTIwQ2hpZ290Pz0gPGNs ZW1lbnQuY2hpZ290QGF0b3MubmV0PgpEYXRlOiBUdWUsIDIzIE5vdiAyMDIxIDE1OjQ1OjI4ICsw MTAwClN1YmplY3Q6IFtQQVRDSCA0LzRdIGxkOiBhZGQgaGlkZGVuIGFuZCBpbnRlcm5hbCB2aXNp YmlsaXR5IHN1cHBvcnQgZm9yIFhDT0ZGCgpUaGlzIHBhdGNoIGFkZHMgYSBwcmltYXJ5IHN1cHBv cnQgZm9yIGhpZGRlbiBhbmQgaW50ZXJuYWwgdmlzaWJpbGl0eSBpbgpHTlUgbGlua2VyIGZvciBY Q09GRiBmb3JtYXQuClRoZSBwcm90ZWN0ZWQgdmlzaWJpbGl0eSBpc24ndCB5ZXQgc3VwcG9ydGVk LgoKUFIgMjIwODUKCmJmZC9DaGFuZ2VMb2c6CgoJKiB4Y29mZmxpbmsuYyAoeGNvZmZfZHluYW1p Y19kZWZpbml0aW9uX3ApOiBBZGQgaGlkZGVuCgkgIGFuZCBpbnRlcm5hbCB2aXNpYmlsaXR5IHN1 cHBvcnQuCgkoeGNvZmZfbGlua19hZGRfc3ltYm9scyk6IExpa2V3aXNlLgoJKHhjb2ZmX2F1dG9f ZXhwb3J0X3ApOiBMaWtld2lzZS4KCShiZmRfeGNvZmZfZXhwb3J0X3N5bWJvbCk6IExpa2V3aXNl LgoJKHhjb2ZmX2xpbmtfaW5wdXRfYmZkKTogTGlrZXdpc2UuCgpsZC9DaGFuZ2VMb2c6CgoJKiB0 ZXN0c3VpdGUvbGQtdnNiL21haW4uYzogQWRhcHQgZm9yIFhDT0ZGLgoJKiB0ZXN0c3VpdGUvbGQt dnNiL3NoMS5jOiBMaWtld3NlLgoJKiB0ZXN0c3VpdGUvbGQtdnNiL3ZzYi5leHA6IExpa2V3aXNl LgoJKiB0ZXN0c3VpdGUvbGQtdnNiL3Zpc2liaWxpdHktMS14Y29mZi0zMi5kOiBOZXcgdGVzdC4K CSogdGVzdHN1aXRlL2xkLXZzYi92aXNpYmlsaXR5LTEteGNvZmYtNjQuZDogTmV3IHRlc3QuCgkq IHRlc3RzdWl0ZS9sZC12c2IvdmlzaWJpbGl0eS0yLXhjb2ZmLTMyLmQ6IE5ldyB0ZXN0LgoJKiB0 ZXN0c3VpdGUvbGQtdnNiL3Zpc2liaWxpdHktMi14Y29mZi02NC5kOiBOZXcgdGVzdC4KCSogdGVz dHN1aXRlL2xkLXZzYi94Y29mZnZzYi5kYXQ6IE5ldyB0ZXN0LgotLS0KIGJmZC94Y29mZmxpbmsu YyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNTAgKysrKysrKystCiBsZC90ZXN0c3Vp dGUvbGQtdnNiL2RlZmluZS5zICAgICAgICAgICAgICAgIHwgICA2ICsrCiBsZC90ZXN0c3VpdGUv bGQtdnNiL21haW4uYyAgICAgICAgICAgICAgICAgIHwgICA4ICstCiBsZC90ZXN0c3VpdGUvbGQt dnNiL3NoMS5jICAgICAgICAgICAgICAgICAgIHwgIDEwIC0tCiBsZC90ZXN0c3VpdGUvbGQtdnNi L3Zpc2liaWxpdHktMS14Y29mZi0zMi5kIHwgIDIxICsrKysKIGxkL3Rlc3RzdWl0ZS9sZC12c2Iv dmlzaWJpbGl0eS0xLXhjb2ZmLTY0LmQgfCAgMjEgKysrKwogbGQvdGVzdHN1aXRlL2xkLXZzYi92 aXNpYmlsaXR5LTIteGNvZmYtMzIuZCB8ICAxNiArKysKIGxkL3Rlc3RzdWl0ZS9sZC12c2Ivdmlz aWJpbGl0eS0yLXhjb2ZmLTY0LmQgfCAgMTYgKysrCiBsZC90ZXN0c3VpdGUvbGQtdnNiL3ZzYi5l eHAgICAgICAgICAgICAgICAgIHwgMTEyICsrKysrKysrKysrKysrKysrLS0tCiBsZC90ZXN0c3Vp dGUvbGQtdnNiL3hjb2ZmdnNiLmRhdCAgICAgICAgICAgIHwgIDI0ICsrKysrCiAxMCBmaWxlcyBj aGFuZ2VkLCAyNTQgaW5zZXJ0aW9ucygrKSwgMzAgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAx MDA2NDQgbGQvdGVzdHN1aXRlL2xkLXZzYi92aXNpYmlsaXR5LTEteGNvZmYtMzIuZAogY3JlYXRl IG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC12c2IvdmlzaWJpbGl0eS0xLXhjb2ZmLTY0LmQK IGNyZWF0ZSBtb2RlIDEwMDY0NCBsZC90ZXN0c3VpdGUvbGQtdnNiL3Zpc2liaWxpdHktMi14Y29m Zi0zMi5kCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGQvdGVzdHN1aXRlL2xkLXZzYi92aXNpYmlsaXR5 LTIteGNvZmYtNjQuZAogY3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC12c2IveGNv ZmZ2c2IuZGF0CgpkaWZmIC0tZ2l0IGEvYmZkL3hjb2ZmbGluay5jIGIvYmZkL3hjb2ZmbGluay5j CmluZGV4IGE4MzhjNGI3NzI2Li41ZGI4ZDEyMTJiNyAxMDA2NDQKLS0tIGEvYmZkL3hjb2ZmbGlu ay5jCisrKyBiL2JmZC94Y29mZmxpbmsuYwpAQCAtNzk4LDEwICs3OTgsMTQgQEAgeGNvZmZfZHlu YW1pY19kZWZpbml0aW9uX3AgKHN0cnVjdCB4Y29mZl9saW5rX2hhc2hfZW50cnkgKmgsCiAJICB8 fCBoLT5yb290LnR5cGUgPT0gYmZkX2xpbmtfaGFzaF91bmRlZndlYWspKQogICAgIHJldHVybiB0 cnVlOwogCi0gIC8qIElmIEggaXMgY3VycmVudGx5IHVuZGVmaW5lZCwgTERTWU0gZGVmaW5lcyBp dC4gICovCisgIC8qIElmIEggaXMgY3VycmVudGx5IHVuZGVmaW5lZCwgTERTWU0gZGVmaW5lcyBp dC4KKyAgICAgSG93ZXZlciwgaWYgSCBoYXMgYSBoaWRkZW4gdmlzaWJpbGl0eSwgTERTWU0gbXVz dCBub3QKKyAgICAgZGVmaW5lIGl0LiAgKi8KICAgaWYgKChoLT5mbGFncyAmIFhDT0ZGX0RFRl9E WU5BTUlDKSA9PSAwCiAgICAgICAmJiAoaC0+cm9vdC50eXBlID09IGJmZF9saW5rX2hhc2hfdW5k ZWZpbmVkCi0JICB8fCBoLT5yb290LnR5cGUgPT0gYmZkX2xpbmtfaGFzaF91bmRlZndlYWspKQor CSAgfHwgaC0+cm9vdC50eXBlID09IGJmZF9saW5rX2hhc2hfdW5kZWZ3ZWFrKQorICAgICAgJiYg KGgtPnZpc2liaWxpdHkgIT0gU1lNX1ZfSElEREVOCisJICAmJiBoLT52aXNpYmlsaXR5ICE9IFNZ TV9WX0lOVEVSTkFMKSkKICAgICByZXR1cm4gdHJ1ZTsKIAogICByZXR1cm4gZmFsc2U7CkBAIC0x MjIzLDYgKzEyMjcsNyBAQCB4Y29mZl9saW5rX2FkZF9zeW1ib2xzIChiZmQgKmFiZmQsIHN0cnVj dCBiZmRfbGlua19pbmZvICppbmZvKQogICAgIGJmZF9ieXRlICpsaW5lbm9zOwogICB9ICpyZWxv Y19pbmZvID0gTlVMTDsKICAgYmZkX3NpemVfdHlwZSBhbXQ7CisgIHVuc2lnbmVkIHNob3J0IHZp c2liaWxpdHk7CiAKICAga2VlcF9zeW1zID0gb2JqX2NvZmZfa2VlcF9zeW1zIChhYmZkKTsKIApA QCAtMTQ2MCw2ICsxNDY1LDkgQEAgeGNvZmZfbGlua19hZGRfc3ltYm9scyAoYmZkICphYmZkLCBz dHJ1Y3QgYmZkX2xpbmtfaW5mbyAqaW5mbykKIAkgICAgfQogCX0KIAorICAgICAgLyogUmVjb3Jk IHZpc2liaWxpdHkuICAqLworICAgICAgdmlzaWJpbGl0eSA9IHN5bS5uX3R5cGUgJiBTWU1fVl9N QVNLOworCiAgICAgICAvKiBQaWNrIHVwIHRoZSBjc2VjdCBhdXhpbGlhcnkgaW5mb3JtYXRpb24u ICAqLwogICAgICAgaWYgKHN5bS5uX251bWF1eCA9PSAwKQogCXsKQEAgLTIwMTUsNiArMjAyMywy MiBAQCB4Y29mZl9saW5rX2FkZF9zeW1ib2xzIChiZmQgKmFiZmQsIHN0cnVjdCBiZmRfbGlua19p bmZvICppbmZvKQogCQkgIC8qIFRyeSBub3QgdG8gZ2l2ZSB0aGlzIGVycm9yIHRvbyBtYW55IHRp bWVzLiAgKi8KIAkJICAoKnN5bV9oYXNoKS0+ZmxhZ3MgJj0gflhDT0ZGX01VTFRJUExZX0RFRklO RUQ7CiAJCX0KKworCisJICAgICAgLyogSWYgdGhlIHN5bWJvbCBpcyBoaWRkZW4gb3IgaW50ZXJu YWwsIGNvbXBsZXRlbHkgdW5kbworCQkgYW55IGR5bmFtaWMgbGluayBzdGF0ZS4gICovCisJICAg ICAgaWYgKCgqc3ltX2hhc2gpLT5mbGFncyAmIFhDT0ZGX0RFRl9EWU5BTUlDCisJCSAgJiYgKHZp c2liaWxpdHkgPT0gU1lNX1ZfSElEREVOCisJCSAgICAgIHx8IHZpc2liaWxpdHkgPT0gU1lNX1Zf SU5URVJOQUwpKQorCQkgICgqc3ltX2hhc2gpLT5mbGFncyAmPSB+WENPRkZfREVGX0RZTkFNSUM7 CisJICAgICAgZWxzZQorCQl7CisJCSAgLyogS2VlcCB0aGUgbW9zdCBjb25zdHJhaW5pbmcgdmlz aWJpbGl0eS4gICovCisJCSAgdW5zaWduZWQgc2hvcnQgaHZpcyA9ICgqc3ltX2hhc2gpLT52aXNp YmlsaXR5OworCQkgIGlmICh2aXNpYmlsaXR5ICYmICggIWh2aXMgfHwgdmlzaWJpbGl0eSA8IGh2 aXMpKQorCQkgICAgKCpzeW1faGFzaCktPnZpc2liaWxpdHkgPSB2aXNpYmlsaXR5OworCQl9CisK IAkgICAgfQogCiAJICAvKiBfYmZkX2dlbmVyaWNfbGlua19hZGRfb25lX3N5bWJvbCBtYXkgY2Fs bCB0aGUgbGlua2VyIHRvCkBAIC0yNjA3LDYgKzI2MzEsMTEgQEAgeGNvZmZfYXV0b19leHBvcnRf cCAoc3RydWN0IGJmZF9saW5rX2luZm8gKmluZm8sCiAgIGlmIChoLT5yb290LnJvb3Quc3RyaW5n WzBdID09ICcuJykKICAgICByZXR1cm4gZmFsc2U7CiAKKyAgLyogRG9uJ3QgZXhwb3J0IGhpZGRl biBvciBpbnRlcm5hbCBzeW1ib2xzLiAgKi8KKyAgaWYgKGgtPnZpc2liaWxpdHkgPT0gU1lNX1Zf SElEREVOCisgICAgICB8fCBoLT52aXNpYmlsaXR5ID09IFNZTV9WX0lOVEVSTkFMKQorICAgIHJl dHVybiBmYWxzZTsKKwogICAvKiBXZSBkb24ndCBleHBvcnQgYSBzeW1ib2wgd2hpY2ggaXMgYmVp bmcgZGVmaW5lZCBieSBhbiBvYmplY3QKICAgICAgaW5jbHVkZWQgZnJvbSBhbiBhcmNoaXZlIHdo aWNoIGNvbnRhaW5zIGEgc2hhcmVkIG9iamVjdC4gIFRoZQogICAgICByYXRpb25hbGUgaXMgdGhh dCBpZiBhbiBhcmNoaXZlIGNvbnRhaW5zIGJvdGggYW4gdW5zaGFyZWQgYW5kCkBAIC0zMjA1LDYg KzMyMzQsMTkgQEAgYmZkX3hjb2ZmX2V4cG9ydF9zeW1ib2wgKGJmZCAqb3V0cHV0X2JmZCwKICAg aWYgKGJmZF9nZXRfZmxhdm91ciAob3V0cHV0X2JmZCkgIT0gYmZkX3RhcmdldF94Y29mZl9mbGF2 b3VyKQogICAgIHJldHVybiB0cnVlOwogCisgIC8qIEFzIEFJWCBsaW5rZXIsIHN5bWJvbHMgZXhw b3J0ZWQgd2l0aCBoaWRkZW4gdmlzaWJpbGl0eSBhcmUKKyAgICAgc2lsZW50bHkgaWdub3JlZC4g ICovCisgIGlmIChoLT52aXNpYmlsaXR5ID09IFNZTV9WX0hJRERFTikKKyAgICByZXR1cm4gdHJ1 ZTsKKworICBpZiAoaC0+dmlzaWJpbGl0eSA9PSBTWU1fVl9JTlRFUk5BTCkKKyAgICB7CisgICAg ICBfYmZkX2Vycm9yX2hhbmRsZXIgKF8oIiVwQjogY2Fubm90IGV4cG9ydCBpbnRlcm5hbCBzeW1i b2wgYCVzYC4iKSwKKwkJCSAgb3V0cHV0X2JmZCwgaC0+cm9vdC5yb290LnN0cmluZyk7CisgICAg ICBiZmRfc2V0X2Vycm9yIChiZmRfZXJyb3JfYmFkX3ZhbHVlKTsKKyAgICAgIHJldHVybiBmYWxz ZTsKKyAgICB9CisKICAgaC0+ZmxhZ3MgfD0gWENPRkZfRVhQT1JUOwogCiAgIC8qIEZJWE1FOiBJ J20gbm90IGF0IGFsbCBzdXJlIHdoYXQgc3lzY2FsbCBpcyBzdXBwb3NlZCB0byBtZWFuLCBzbwpA QCAtNDUyOSw2ICs0NTcxLDEwIEBAIHhjb2ZmX2xpbmtfaW5wdXRfYmZkIChzdHJ1Y3QgeGNvZmZf ZmluYWxfbGlua19pbmZvICpmbGluZm8sCiAJCQkgICAgICAgLSAoKmNzZWN0cHApLT52bWEpOwog CSAgICB9CiAKKwkgIC8qIFVwZGF0ZSB2aXNpYmlsaXR5LiAgKi8KKwkgIGlzeW0ubl90eXBlICY9 IH5TWU1fVl9NQVNLOworCSAgaXN5bS5uX3R5cGUgfD0gKCpzeW1faGFzaCktPnZpc2liaWxpdHk7 CisKIAkgIC8qIE91dHB1dCB0aGUgc3ltYm9sLiAgKi8KIAkgIGJmZF9jb2ZmX3N3YXBfc3ltX291 dCAob3V0cHV0X2JmZCwgKHZvaWQgKikgJmlzeW0sICh2b2lkICopIG91dHN5bSk7CiAKZGlmZiAt LWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC12c2IvZGVmaW5lLnMgYi9sZC90ZXN0c3VpdGUvbGQtdnNi L2RlZmluZS5zCmluZGV4IGIzOGUzZTBjMDUzLi4zZGMyNWVkNzE4NSAxMDA2NDQKLS0tIGEvbGQv dGVzdHN1aXRlL2xkLXZzYi9kZWZpbmUucworKysgYi9sZC90ZXN0c3VpdGUvbGQtdnNiL2RlZmlu ZS5zCkBAIC0xLDEwICsxLDE2IEBACiAJLmRhdGEKIAkuZ2xvYmwgcHJvdGVjdGVkCisJLmlmbmRl ZiBYQ09GRl9URVNUCiAJLnR5cGUgcHJvdGVjdGVkLCJvYmplY3QiCisJLmVuZGlmCiBwcm90ZWN0 ZWQ6CiAJLmdsb2JsIGhpZGRlbgorCS5pZm5kZWYgWENPRkZfVEVTVAogCS50eXBlIGhpZGRlbiwi b2JqZWN0IgorCS5lbmRpZgogaGlkZGVuOgogCS5nbG9ibCBpbnRlcm5hbAorCS5pZm5kZWYgWENP RkZfVEVTVAogCS50eXBlIGludGVybmFsLCJvYmplY3QiCisJLmVuZGlmCiBpbnRlcm5hbDoKZGlm ZiAtLWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC12c2IvbWFpbi5jIGIvbGQvdGVzdHN1aXRlL2xkLXZz Yi9tYWluLmMKaW5kZXggYzJjOTI5MTEzNDQuLmIwMzU5YzBkODE1IDEwMDY0NAotLS0gYS9sZC90 ZXN0c3VpdGUvbGQtdnNiL21haW4uYworKysgYi9sZC90ZXN0c3VpdGUvbGQtdnNiL21haW4uYwpA QCAtMjM2LDggKzIzNiw4IEBAIG1haW4gKHZvaWQpCiAgIHByaW50ZiAoIm1haW52YXIgPT0gJWRc biIsIG1haW52YXIpOwogICBwcmludGYgKCJvdmVycmlkZGVudmFyID09ICVkXG4iLCBvdmVycmlk ZGVudmFyKTsKICAgcHJpbnRmICgic2hsaWJ2YXIxID09ICVkXG4iLCBzaGxpYnZhcjEpOwotI2lm bmRlZiBYQ09GRl9URVNUCiAgIHByaW50ZiAoInNobGliX21haW52YXIgKCkgPT0gJWRcbiIsIHNo bGliX21haW52YXIgKCkpOworI2lmbmRlZiBYQ09GRl9URVNUCiAgIHByaW50ZiAoInNobGliX292 ZXJyaWRkZW52YXIgKCkgPT0gJWRcbiIsIHNobGliX292ZXJyaWRkZW52YXIgKCkpOwogI2VuZGlm CiAgIHByaW50ZiAoInNobGliX3NobGlidmFyMSAoKSA9PSAlZFxuIiwgc2hsaWJfc2hsaWJ2YXIx ICgpKTsKQEAgLTI0NSwxNSArMjQ1LDEzIEBAIG1haW4gKHZvaWQpCiAgIHByaW50ZiAoInNobGli X3NobGliY2FsbCAoKSA9PSAlZFxuIiwgc2hsaWJfc2hsaWJjYWxsICgpKTsKICNpZm5kZWYgWENP RkZfVEVTVAogICBwcmludGYgKCJzaGxpYl9zaGxpYmNhbGwyICgpID09ICVkXG4iLCBzaGxpYl9z aGxpYmNhbGwyICgpKTsKLSAgcHJpbnRmICgic2hsaWJfbWFpbmNhbGwgKCkgPT0gJWRcbiIsIHNo bGliX21haW5jYWxsICgpKTsKICNlbmRpZgorICBwcmludGYgKCJzaGxpYl9tYWluY2FsbCAoKSA9 PSAlZFxuIiwgc2hsaWJfbWFpbmNhbGwgKCkpOwogICBwcmludGYgKCJtYWluX2NhbGxlZCAoKSA9 PSAlZFxuIiwgbWFpbl9jYWxsZWQgKCkpOwogICBwcmludGYgKCJzaGxpYl9jaGVja2Z1bnB0cjEg KHNobGliX3NobGlidmFyMSkgPT0gJWRcbiIsCiAJICBzaGxpYl9jaGVja2Z1bnB0cjEgKHNobGli X3NobGlidmFyMSkpOwotI2lmbmRlZiBYQ09GRl9URVNUCiAgIHByaW50ZiAoInNobGliX2NoZWNr ZnVucHRyMiAobWFpbl9jYWxsZWQpID09ICVkXG4iLAogCSAgc2hsaWJfY2hlY2tmdW5wdHIyICht YWluX2NhbGxlZCkpOwotI2VuZGlmCiAgIHAgPSBzaGxpYl9nZXRmdW5wdHIxICgpOwogICBwcmlu dGYgKCJzaGxpYl9nZXRmdW5wdHIxICgpICIpOwogICBpZiAocCA9PSBzaGxpYl9zaGxpYnZhcjEp CkBAIC0yNjEsNyArMjU5LDYgQEAgbWFpbiAodm9pZCkKICAgZWxzZQogICAgIHByaW50ZiAoIiE9 Iik7CiAgIHByaW50ZiAoIiBzaGxpYl9zaGxpYnZhcjFcbiIpOwotI2lmbmRlZiBYQ09GRl9URVNU CiAgIHAgPSBzaGxpYl9nZXRmdW5wdHIyICgpOwogICBwcmludGYgKCJzaGxpYl9nZXRmdW5wdHIy ICgpICIpOwogICBpZiAocCA9PSBtYWluX2NhbGxlZCkKQEAgLTI2OSw3ICsyNjYsNiBAQCBtYWlu ICh2b2lkKQogICBlbHNlCiAgICAgcHJpbnRmICgiIT0iKTsKICAgcHJpbnRmICgiIG1haW5fY2Fs bGVkXG4iKTsKLSNlbmRpZgogICBwcmludGYgKCJzaGxpYl9jaGVjayAoKSA9PSAlZFxuIiwgc2hs aWJfY2hlY2sgKCkpOwogICBwcmludGYgKCJ2aXNpYmlsaXR5X2NoZWNrICgpID09ICVkXG4iLCB2 aXNpYmlsaXR5X2NoZWNrICgpKTsKICAgcHJpbnRmICgidmlzaWJpbGl0eV9jaGVja2Z1bnB0ciAo KSA9PSAlZFxuIiwKZGlmZiAtLWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC12c2Ivc2gxLmMgYi9sZC90 ZXN0c3VpdGUvbGQtdnNiL3NoMS5jCmluZGV4IDFhYmE2M2M3NTQxLi4xOTNlY2EyOTQzYiAxMDA2 NDQKLS0tIGEvbGQvdGVzdHN1aXRlL2xkLXZzYi9zaDEuYworKysgYi9sZC90ZXN0c3VpdGUvbGQt dnNiL3NoMS5jCkBAIC02LDkgKzYsNyBAQAogICAgb2YgYSBzaGFyZWQgbGlicmFyeS4gICovCiAK IC8qIFRoaXMgdmFyaWFibGUgaXMgc3VwcGxpZWQgYnkgdGhlIG1haW4gcHJvZ3JhbS4gICovCi0j aWZuZGVmIFhDT0ZGX1RFU1QKIGV4dGVybiBpbnQgbWFpbnZhcjsKLSNlbmRpZgogCiAvKiBUaGlz IHZhcmlhYmxlIGlzIGRlZmluZWQgaW4gdGhlIHNoYXJlZCBsaWJyYXJ5LCBhbmQgb3ZlcnJpZGRl biBieQogICAgdGhlIG1haW4gcHJvZ3JhbS4gICovCkBAIC0zMywxMyArMzEsMTEgQEAgZXh0ZXJu IGludCBzaGxpYnZhcjI7CiAvKiBUaGVzZSBmdW5jdGlvbnMgcmV0dXJuIHRoZSB2YWx1ZXMgb2Yg dGhlIGFib3ZlIHZhcmlhYmxlcyBhcyBzZWVuIGluCiAgICB0aGUgc2hhcmVkIGxpYnJhcnkuICAq LwogCi0jaWZuZGVmIFhDT0ZGX1RFU1QKIGludAogc2hsaWJfbWFpbnZhciAoKQogewogICByZXR1 cm4gbWFpbnZhcjsKIH0KLSNlbmRpZgogCiAjaWZuZGVmIFhDT0ZGX1RFU1QKIGludApAQCAtOTUs NyArOTEsNiBAQCBzaGxpYl9vdmVycmlkZGVuY2FsbDIgKCkKIAogLyogVGhpcyBmdW5jdGlvbiBj YWxscyBhIGZ1bmN0aW9uIGRlZmluZWQgYnkgdGhlIG1haW4gcHJvZ3JhbS4gICovCiAKLSNpZm5k ZWYgWENPRkZfVEVTVAogZXh0ZXJuIGludCBtYWluX2NhbGxlZCAoKTsKIAogaW50CkBAIC0xMDMs NyArOTgsNiBAQCBzaGxpYl9tYWluY2FsbCAoKQogewogICByZXR1cm4gbWFpbl9jYWxsZWQgKCk7 CiB9Ci0jZW5kaWYKIAogLyogVGhpcyBmdW5jdGlvbiBpcyBwYXNzZWQgYSBmdW5jdGlvbiBwb2lu dGVyIHRvIHNobGliX21haW52YXIuICBJdAogICAgY29uZmlybXMgdGhhdCB0aGUgcG9pbnRlciBj b21wYXJlcyBlcXVhbGx5LiAgKi8KQEAgLTExOCwxNCArMTEyLDEyIEBAIHNobGliX2NoZWNrZnVu cHRyMSAocCkKIC8qIFRoaXMgZnVuY3Rpb24gaXMgcGFzc2VkIGEgZnVuY3Rpb24gcG9pbnRlciB0 byBtYWluX2NhbGxlZC4gIEl0CiAgICBjb25maXJtcyB0aGF0IHRoZSBwb2ludGVyIGNvbXBhcmVz IGVxdWFsbHkuICAqLwogCi0jaWZuZGVmIFhDT0ZGX1RFU1QKIGludAogc2hsaWJfY2hlY2tmdW5w dHIyIChwKQogICAgICBpbnQgKCpwKSAoKTsKIHsKICAgcmV0dXJuIHAgPT0gbWFpbl9jYWxsZWQ7 CiB9Ci0jZW5kaWYKIAogLyogVGhpcyBmdW5jdGlvbiByZXR1cm5zIGEgcG9pbnRlciB0byBzaGxp Yl9tYWludmFyLiAgKi8KIApAQCAtMTM3LDEzICsxMjksMTEgQEAgaW50CiAKIC8qIFRoaXMgZnVu Y3Rpb24gcmV0dXJucyBhIHBvaW50ZXIgdG8gbWFpbl9jYWxsZWQuICAqLwogCi0jaWZuZGVmIFhD T0ZGX1RFU1QKIGludAogKCpzaGxpYl9nZXRmdW5wdHIyICgpKSAoKQogewogICByZXR1cm4gbWFp bl9jYWxsZWQ7CiB9Ci0jZW5kaWYKIAogLyogVGhpcyBmdW5jdGlvbiBtYWtlcyBzdXJlIHRoYXQg Y29uc3RhbnQgZGF0YSBhbmQgbG9jYWwgZnVuY3Rpb25zCiAgICB3b3JrLiAgKi8KZGlmZiAtLWdp dCBhL2xkL3Rlc3RzdWl0ZS9sZC12c2IvdmlzaWJpbGl0eS0xLXhjb2ZmLTMyLmQgYi9sZC90ZXN0 c3VpdGUvbGQtdnNiL3Zpc2liaWxpdHktMS14Y29mZi0zMi5kCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAwMDAwLi4xOWNmZjY0ODI3ZgotLS0gL2Rldi9udWxsCisrKyBiL2xkL3Rl c3RzdWl0ZS9sZC12c2IvdmlzaWJpbGl0eS0xLXhjb2ZmLTMyLmQKQEAgLTAsMCArMSwyMSBAQAor I3NvdXJjZTogZGVmaW5lLnMKKyNzb3VyY2U6IHVuZGVmLnMKKyNhczogLWEzMiAtLWRlZnN5bSBY Q09GRl9URVNUPTEKKyNsZDogLWIzMiAtcgorI29iamR1bXA6IC10CisKKy4qCisKK1NZTUJPTCBU QUJMRToKKy4qCisuKgorLioKKy4qCitcWyAgNFxdXChzZWMgIDJcKS4qXCh0eSAzMDAwXCkuKnBy b3RlY3RlZAorLioKK1xbICA2XF1cKHNlYyAgMlwpLipcKHR5IDIwMDBcKS4qaGlkZGVuCisuKgor XFsgIDhcXVwoc2VjICAyXCkuKlwodHkgMTAwMFwpLippbnRlcm5hbAorLioKKy4qCisuKgpkaWZm IC0tZ2l0IGEvbGQvdGVzdHN1aXRlL2xkLXZzYi92aXNpYmlsaXR5LTEteGNvZmYtNjQuZCBiL2xk L3Rlc3RzdWl0ZS9sZC12c2IvdmlzaWJpbGl0eS0xLXhjb2ZmLTY0LmQKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmE2M2RjZjAzODE5Ci0tLSAvZGV2L251bGwKKysrIGIv bGQvdGVzdHN1aXRlL2xkLXZzYi92aXNpYmlsaXR5LTEteGNvZmYtNjQuZApAQCAtMCwwICsxLDIx IEBACisjc291cmNlOiBkZWZpbmUucworI3NvdXJjZTogdW5kZWYucworI2FzOiAtYTY0IC0tZGVm c3ltIFhDT0ZGX1RFU1Q9MQorI2xkOiAtYjY0IC1yCisjb2JqZHVtcDogLXQKKworLioKKworU1lN Qk9MIFRBQkxFOgorLioKKy4qCisuKgorLioKK1xbICA0XF1cKHNlYyAgMlwpLipcKHR5IDMwMDBc KS4qcHJvdGVjdGVkCisuKgorXFsgIDZcXVwoc2VjICAyXCkuKlwodHkgMjAwMFwpLipoaWRkZW4K Ky4qCitcWyAgOFxdXChzZWMgIDJcKS4qXCh0eSAxMDAwXCkuKmludGVybmFsCisuKgorLioKKy4q CmRpZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQtdnNiL3Zpc2liaWxpdHktMi14Y29mZi0zMi5k IGIvbGQvdGVzdHN1aXRlL2xkLXZzYi92aXNpYmlsaXR5LTIteGNvZmYtMzIuZApuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uNTRiZWVkZDRhNjAKLS0tIC9kZXYvbnVsbAor KysgYi9sZC90ZXN0c3VpdGUvbGQtdnNiL3Zpc2liaWxpdHktMi14Y29mZi0zMi5kCkBAIC0wLDAg KzEsMTYgQEAKKyNzb3VyY2U6IHVuZGVmLnMKKyNhczogLWEzMiAtLWRlZnN5bSBYQ09GRl9URVNU PTEKKyNsZDogLWIzMiAtcgorI29iamR1bXA6IC10CisKKy4qCisKK1NZTUJPTCBUQUJMRToKKy4q CisuKgorXFsgIDJcXVwoc2VjICAwXCkuKlwodHkgMzAwMFwpLipwcm90ZWN0ZWQKKy4qCitcWyAg NFxdXChzZWMgIDBcKS4qXCh0eSAyMDAwXCkuKmhpZGRlbgorLioKK1xbICA2XF1cKHNlYyAgMFwp LipcKHR5IDEwMDBcKS4qaW50ZXJuYWwKKy4qCmRpZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQt dnNiL3Zpc2liaWxpdHktMi14Y29mZi02NC5kIGIvbGQvdGVzdHN1aXRlL2xkLXZzYi92aXNpYmls aXR5LTIteGNvZmYtNjQuZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4u YjYwN2E1MzI1ZGUKLS0tIC9kZXYvbnVsbAorKysgYi9sZC90ZXN0c3VpdGUvbGQtdnNiL3Zpc2li aWxpdHktMi14Y29mZi02NC5kCkBAIC0wLDAgKzEsMTYgQEAKKyNzb3VyY2U6IHVuZGVmLnMKKyNh czogLWE2NCAtLWRlZnN5bSBYQ09GRl9URVNUPTEKKyNsZDogLWI2NCAtcgorI29iamR1bXA6IC10 CisKKy4qCisKK1NZTUJPTCBUQUJMRToKKy4qCisuKgorXFsgIDJcXVwoc2VjICAwXCkuKlwodHkg MzAwMFwpLipwcm90ZWN0ZWQKKy4qCitcWyAgNFxdXChzZWMgIDBcKS4qXCh0eSAyMDAwXCkuKmhp ZGRlbgorLioKK1xbICA2XF1cKHNlYyAgMFwpLipcKHR5IDEwMDBcKS4qaW50ZXJuYWwKKy4qCmRp ZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQtdnNiL3ZzYi5leHAgYi9sZC90ZXN0c3VpdGUvbGQt dnNiL3ZzYi5leHAKaW5kZXggNTJhN2Q2YjVmNzQuLmJjMmE5YjhhODM2IDEwMDY0NAotLS0gYS9s ZC90ZXN0c3VpdGUvbGQtdnNiL3ZzYi5leHAKKysrIGIvbGQvdGVzdHN1aXRlL2xkLXZzYi92c2Iu ZXhwCkBAIC0yOSw3ICsyOSw4IEBAIGlmIHsgIVtjaGVja19jb21waWxlcl9hdmFpbGFibGVdIH0g ewogICAgIHJldHVybgogfQogCi0jIFRoaXMgdGVzdCBjYW4gb25seSBiZSBydW4gb24gYSBjb3Vw bGUgb2YgRUxGIHBsYXRmb3Jtcy4KKyMgVGhpcyB0ZXN0IGNhbiBvbmx5IGJlIHJ1biBvbiBhIGNv dXBsZSBvZiBFTEYgcGxhdGZvcm1zIG9yIHdpdGgKKyMgWENPRkYgZm9ybWF0cy4KICMgU3F1YXJl IGJyYWNrZXQgZXhwcmVzc2lvbnMgc2VlbSB0byBjb25mdXNlIGlzdGFyZ2V0LgogaWYgeyAhW2lz dGFyZ2V0IGhwcGEqNjQqLSotaHB1eCpdIFwKICAgICAgJiYgIVtpc3RhcmdldCBocHBhKi0qLWxp bnV4Kl0gXApAQCAtNDUsMTEgKzQ2LDE3IEBAIGlmIHsgIVtpc3RhcmdldCBocHBhKjY0Ki0qLWhw dXgqXSBcCiAgICAgICYmICFbaXN0YXJnZXQgc3BhcmMqLSotbGludXgqXSBcCiAgICAgICYmICFb aXN0YXJnZXQgczM5MCotKi1saW51eCpdIFwKICAgICAgJiYgIVtpc3RhcmdldCBzaFxbMzRcXSot Ki1saW51eCpdIFwKLSAgICAgJiYgIVtpc3RhcmdldCB4ODZfNjQtKi1saW51eCpdIH0geworICAg ICAmJiAhW2lzdGFyZ2V0IHg4Nl82NC0qLWxpbnV4Kl0gXAorICAgICAmJiAhW2lzX3hjb2ZmX2Zv cm1hdF0gfSB7CiAgICAgcmV0dXJuCiB9CiAKLXNldCB0ZXN0X2xpc3QgW2xzb3J0IFtnbG9iIC1u b2NvbXBsYWluICRzcmNkaXIvJHN1YmRpci8qLWVsZi5kXV0KK2lmIFtpc194Y29mZl9mb3JtYXRd IHsKKyAgICBzZXQgdGVzdF9saXN0IFtsc29ydCBbZ2xvYiAtbm9jb21wbGFpbiAkc3JjZGlyLyRz dWJkaXIvKi14Y29mZiouZF1dCit9IGVsc2UgeworICAgIHNldCB0ZXN0X2xpc3QgW2xzb3J0IFtn bG9iIC1ub2NvbXBsYWluICRzcmNkaXIvJHN1YmRpci8qLWVsZi5kXV0KK30KKwogZm9yZWFjaCB0 ICR0ZXN0X2xpc3QgewogICAgICMgV2UgbmVlZCB0byBzdHJpcCB0aGUgIi5kIiwgYnV0IGNhbiBs ZWF2ZSB0aGUgZGlybmFtZS4KICAgICB2ZXJib3NlIFtmaWxlIHJvb3RuYW1lICR0XQpAQCAtNjEs NiArNjgsMjggQEAgc2V0IFNIQ0ZMQUcgIiIKIHNldCBzaGFyZWRfbmVlZHNfcGljICJubyIKIHNl dCBDT01QUkVTU19MREZMQUcgIi1XbCwtLWNvbXByZXNzLWRlYnVnLXNlY3Rpb25zPXpsaWItZ2Fi aSIKIAoraWYgeyBbaXNfeGNvZmZfZm9ybWF0XSB9IHsKKyAgICAjIE5vdCBhbGwgdGhlIHVzZWZ1 bCBmZWF0dXJlcyBhcmUgYXZhaWxhYmxlIHdpdGggQUlYIHNoYXJlZAorICAgICMgbGlicmFyaWVz IGJ5IGRlZmF1bHQuCisgICAgIyBXZSBjYW4gbWFuYWdlIHRvIHNpbXVsYXRlIHNvbWUgb2YgdGhl bSB3aXRoIGV4cG9ydC9pbXBvcnQKKyAgICAjIGZpbGVzIGJ1dCB0aGUgb3ZlcnJpZGluZyBvZiBz aGFyZWQgbGlicmFyeSBmdW5jdGlvbnMgb3IKKyAgICAjIHZhcmlhYmxlcyBieSB0aGUgbWFpbiBw cm9ncmFtIGRvZXNuJ3Qgc2VlbSBwb3NzaWJsZS4KKyAgICAjIFdlIGF2b2lkIHRlc3RpbmcgdGhv c2UgZmVhdHVyZXMuCisgICAgc2V0IFNIQ0ZMQUcgIi1EWENPRkZfVEVTVCIKKworICAgICMgSW4g b3JkZXIgdG8gYXZvaWQgbGlzdGluZyBldmVyeSBzeW1ib2xzIGluIGFuIGV4cG9ydCBmaWxlLAor ICAgICMgdGhlIGV4cG9ydCB3aWxsIGJlIGRvbmUgd2l0aCAtYmV4cGFsbCBmbGFnLgorICAgICMg SG93ZXZlciBmb3IgaW1wb3J0cywgd2UgbXVzdCBjcmVhdGUgdGhlIGltcG9ydCBmaWxlLgorICAg IHNldCBmaWxlIFtvcGVuICR0bXBkaXIveGNvZmYtc2hhcmVkLmltcCB3XQorICAgIHB1dHMgJGZp bGUgIiMhIC4iCisgICAgcHV0cyAkZmlsZSBtYWludmFyCisgICAgcHV0cyAkZmlsZSBtYWluX2Nh bGxlZAorICAgIGNsb3NlICRmaWxlCisKKyAgICAjIFhDT0ZGIGRvZXNuJ3QgeWV0IHN1cHBvcnQg ZGVidWcgc2VjdGlvbnMgY29tcHJlc2lvbi4KKyAgICBzZXQgQ09NUFJFU1NfTERGTEFHICIiCit9 CisKIGlmIFtpc3RhcmdldCBhcm0qLSotbGludXgqXSB7CiAgICAgIyBPbiBBUk0gc2VjdGlvbiBh bmNob3JzIGNhbiBjaGFuZ2UgdGhlIHN5bWJvbCBwcmUtZW1wdGFiaWxpdHkgZm9yCiAgICAgIyBu b24tUElDIHNoYXJlZCBsaWJyYXJpZXMsIGNhdXNpbmcgdGhlc2UgdGVzdHMgdG8gZmFpbC4gIFR1 cm4gc2VjdGlvbgpAQCAtMTA4LDYgKzEzNywxMCBAQCBwcm9jIHZpc2liaWxpdHlfdGVzdCB7IHZp c2liaWxpdHkgcHJvZ25hbWUgdGVzdG5hbWUgbWFpbiBzaDEgc2gyIGRhdCBhcmdzIH0gewogCiAg ICAgIyBCdWlsZCB0aGUgc2hhcmVkIGxpYnJhcnkuCiAgICAgc2V0IHNoYXJlZCAtc2hhcmVkCisg ICAgaWYgeyBbaXNfeGNvZmZfZm9ybWF0XSB9IHsKKwkjIE9uIEFJWCwgc2V0dXAgaW1wb3J0cyBh bmQgZXhwb3J0cy4KKwlhcHBlbmQgc2hhcmVkICIgLVdsLC1iZXhwYWxsIC1XbCwtYkk6JHRtcGRp ci94Y29mZi1zaGFyZWQuaW1wIgorICAgIH0KICAgICBpZiB7IFtpc19lbGZfZm9ybWF0XSAmJiBb Y2hlY2tfc2hhcmVkX2xpYl9zdXBwb3J0XSB9IHsKIAlhcHBlbmQgc2hhcmVkICIgLVdsLC16LG5v dGV4dCIKICAgICB9CkBAIC0xMjgsOCArMTYxLDE1IEBAIHByb2MgdmlzaWJpbGl0eV90ZXN0IHsg dmlzaWJpbGl0eSBwcm9nbmFtZSB0ZXN0bmFtZSBtYWluIHNoMSBzaDIgZGF0IGFyZ3MgfSB7CiAK ICAgICAjIExpbmsgYWdhaW5zdCB0aGUgc2hhcmVkIGxpYnJhcnkuICBVc2UgLXJwYXRoIHNvIHRo YXQgdGhlCiAgICAgIyBkeW5hbWljIGxpbmtlciBjYW4gbG9jYXRlIHRoZSBzaGFyZWQgbGlicmFy eSBhdCBydW50aW1lLgorICAgICMgT24gQUlYLCB3ZSBtdXN0IGluY2x1ZGUgL2xpYiBpbiAtcnBh dGgsIGFzIG90aGVyd2lzZSB0aGUgbG9hZGVyCisgICAgIyBjYW4gbm90IGZpbmQgLWxjLgogICAg IHNldCBycGF0aCAkdG1wZGlyCi0gICAgaWYgIVtsZF9saW5rICRDQ19GT1JfVEFSR0VUICR0bXBk aXIvJHByb2duYW1lICItV2wsLXJwYXRoLCRycGF0aCAkdG1wZGlyLyRtYWluICR0bXBkaXIvJHBy b2duYW1lLnNvIl0geworICAgIHNldCBleHBvcnRmbGFnICIiCisgICAgaWYgeyBbaXNfeGNvZmZf Zm9ybWF0XSB9IHsKKwlzZXQgcnBhdGggL2xpYjokdG1wZGlyCisJc2V0IGV4cG9ydGZsYWcgIiAt V2wsLWJleHBhbGwiCisgICAgfQorICAgIGlmICFbbGRfbGluayAkQ0NfRk9SX1RBUkdFVCAkdG1w ZGlyLyRwcm9nbmFtZSAiLVdsLC1ycGF0aCwkcnBhdGggJHRtcGRpci8kbWFpbiAkdG1wZGlyLyRw cm9nbmFtZS5zbyAkZXhwb3J0ZmxhZyJdIHsKIAlpZiB7IFsgc3RyaW5nIG1hdGNoICR2aXNpYmls aXR5ICJoaWRkZW4iIF0KIAkgICAgICYmIFtyZWdleHAgInVuZGVmaW5lZCByZWZlcmVuY2UgdG8g XGBcLj92aXNpYmlsaXR5XCciICRsaW5rX291dHB1dF0KIAkgICAgICYmIFtyZWdleHAgInVuZGVm aW5lZCByZWZlcmVuY2UgdG8gXGB2aXNpYmlsaXR5X3ZhclwnIiAkbGlua19vdXRwdXRdIH0gewpA QCAtMjI1LDYgKzI2NSwxNCBAQCBwcm9jIHZpc2liaWxpdHlfcnVuIHt2aXNpYmlsaXR5fSB7CiAg ICAgIyB0ZXN0cyBiZWxvdy4KICAgICByZW1vdGVfZmlsZSBob3N0IGRlbGV0ZSAkdG1wZGlyL3No MXAubyAkdG1wZGlyL3NoMnAubyAkdG1wZGlyL3NoMW5wLm8gJHRtcGRpci9zaDJucC5vCiAKKyAg ICBzZXQgZGF0ZmlsZSBlbGZ2c2IKKyAgICBpZiB7IFtpc194Y29mZl9mb3JtYXRdIH0geworCSMg QXMgZXhwbGFpbmVkIGFib3ZlLCBYQ09GRiBzaGFyZWQgbGlicmFyaWVzIGRvZXNuJ3Qgc3VwcG9y dAorCSMgYWxsIHRoZSBFTEYgZmVhdHVyZXMuIFRodXMsIHRoZSBvdXRwdXQgb2YgdGhlIHRlc3Rz IGFyZQorCSMgYSBiaXQgZGlmZmVyZW50LgorCXNldCBkYXRmaWxlIHhjb2ZmdnNiCisgICAgfQor CiAgICAgaWYgeyBbaXN0YXJnZXQgcG93ZXJwYyotKi1saW51eCpdIFwKIAkgfHwgKCBbaXN0YXJn ZXQgbWlwcyotKi1saW51eCpdICYmIFthdF9sZWFzdF9nY2NfdmVyc2lvbiA0IDNdICl9IHsKIAkj IFRlc3Rpbmcgbm9uLVBJQyBsaWJyYXJpZXMgaXMgYSB3YXN0ZSBvZiBlZmZvcnQgb24gYW55IHRh cmdldC4KQEAgLTI4Nyw3ICszMzUsMTUgQEAgcHJvYyB2aXNpYmlsaXR5X3J1biB7dmlzaWJpbGl0 eX0gewogCQlzZXR1cF94ZmFpbCAiYXJtKi0qLWxpbnV4KiIKIAkgICAgfQogCi0JICAgIHZpc2li aWxpdHlfdGVzdCAkdmlzaWJpbGl0eSB2bnAgInZpc2liaWxpdHkgKCR2aXNpYmlsaXR5KSAobm9u IFBJQykiIG1haW5ucC5vIHNoMW5wLm8gc2gybnAubyBlbGZ2c2IKKwkgICAgIyBYQ09GRiBmb3Jt YXQgZG9lc24ndCBrbm93IGhvdyB0byBoYW5kbGUgd2VhayB1bmRlZmluZWQgc3ltYm9scworCSAg ICAjIGluIHNoYXJlZCBvYmplY3RzLgorCSAgICBpZiB7IFsgc3RyaW5nIG1hdGNoICR2aXNpYmls aXR5ICJoaWRkZW5fd2VhayIgXQorCQkgfHwgWyBzdHJpbmcgbWF0Y2ggJHZpc2liaWxpdHkgInBy b3RlY3RlZF93ZWFrIiBdIH0geworCQlzZXR1cF94ZmFpbCAiKi0qLWFpeCoiCisJCXNldHVwX3hm YWlsICIqLSotYmVvcyoiCisJICAgIH0KKworCSAgICB2aXNpYmlsaXR5X3Rlc3QgJHZpc2liaWxp dHkgdm5wICJ2aXNpYmlsaXR5ICgkdmlzaWJpbGl0eSkgKG5vbiBQSUMpIiBtYWlubnAubyBzaDFu cC5vIHNoMm5wLm8gJGRhdGZpbGUKIAogCSAgICAjIFRlc3QgRUxGIHNoYXJlZCBsaWJyYXJ5IHJl bG9jYXRpb25zIHdpdGggYSBub24temVybyBsb2FkCiAJICAgICMgYWRkcmVzcyBmb3IgdGhlIGxp YnJhcnkuICBOZWFyIGFzIEkgY2FuIHRlbGwsIHRoZSBSXypfUkVMQVRJVkUKQEAgLTMyOCw5ICsz ODQsMTkgQEAgcHJvYyB2aXNpYmlsaXR5X3J1biB7dmlzaWJpbGl0eX0gewogCQlzZXR1cF94ZmFp bCAiYXJtKi0qLWxpbnV4KiIKIAkgICAgfQogCi0JICAgIHZpc2liaWxpdHlfdGVzdCAkdmlzaWJp bGl0eSB2bnAgInZpc2liaWxpdHkgKCR2aXNpYmlsaXR5KSAobm9uIFBJQywgbG9hZCBvZmZzZXQp IiBcCi0JCW1haW5ucC5vIHNoMW5wLm8gc2gybnAubyBlbGZ2c2IgXAotCQkiLVdsLC1ULCRzcmNk aXIvJHN1YmRpci9lbGYtb2Zmc2V0LmxkLC0taGFzaC1zdHlsZT1zeXN2IgorCSAgICAjIFhDT0ZG IGZvcm1hdCBkb2Vzbid0IGtub3cgaG93IHRvIGhhbmRsZSB3ZWFrIHVuZGVmaW5lZCBzeW1ib2xz CisJICAgICMgaW4gc2hhcmVkIG9iamVjdHMuCisJICAgIGlmIHsgWyBzdHJpbmcgbWF0Y2ggJHZp c2liaWxpdHkgImhpZGRlbl93ZWFrIiBdCisJCSB8fCBbIHN0cmluZyBtYXRjaCAkdmlzaWJpbGl0 eSAicHJvdGVjdGVkX3dlYWsiIF0gfSB7CisJCXNldHVwX3hmYWlsICIqLSotYWl4KiIKKwkJc2V0 dXBfeGZhaWwgIiotKi1iZW9zKiIKKwkgICAgfQorCisJICAgIGlmIHsgIVtpc194Y29mZl9mb3Jt YXRdIH0geworCQl2aXNpYmlsaXR5X3Rlc3QgJHZpc2liaWxpdHkgdm5wICJ2aXNpYmlsaXR5ICgk dmlzaWJpbGl0eSkgKG5vbiBQSUMsIGxvYWQgb2Zmc2V0KSIgXAorCQkgICAgbWFpbm5wLm8gc2gx bnAubyBzaDJucC5vICRkYXRmaWxlIFwKKwkJICAgICItV2wsLVQsJHNyY2Rpci8kc3ViZGlyL2Vs Zi1vZmZzZXQubGQsLS1oYXNoLXN0eWxlPXN5c3YiCisJICAgIH0KIAl9CiAKIAkjIE5vdyBjb21w aWxlIHRoZSBjb2RlIHVzaW5nIC1mcGljLgpAQCAtMzQ1LDcgKzQxMSw3IEBAIHByb2MgdmlzaWJp bGl0eV9ydW4ge3Zpc2liaWxpdHl9IHsKIAkJICAgIHNldHVwX3hmYWlsICR0YXJnZXRfdHJpcGxl dAogCQl9CiAJICAgIH0KLQkgICAgdmlzaWJpbGl0eV90ZXN0ICR2aXNpYmlsaXR5IHZwICJ2aXNp YmlsaXR5ICgkdmlzaWJpbGl0eSkiIG1haW5ucC5vIHNoMXAubyBzaDJwLm8gZWxmdnNiICRDT01Q UkVTU19MREZMQUcKKwkgICAgdmlzaWJpbGl0eV90ZXN0ICR2aXNpYmlsaXR5IHZwICJ2aXNpYmls aXR5ICgkdmlzaWJpbGl0eSkiIG1haW5ucC5vIHNoMXAubyBzaDJwLm8gJGRhdGZpbGUgJENPTVBS RVNTX0xERkxBRwogCX0KICAgICB9fQogCkBAIC0zOTIsNyArNDU4LDE1IEBAIHByb2MgdmlzaWJp bGl0eV9ydW4ge3Zpc2liaWxpdHl9IHsKIAkJc2V0dXBfeGZhaWwgImFybSotKi1saW51eCoiCiAJ ICAgIH0KIAotCSAgICB2aXNpYmlsaXR5X3Rlc3QgJHZpc2liaWxpdHkgdm1wbnAgInZpc2liaWxp dHkgKCR2aXNpYmlsaXR5KSAoUElDIG1haW4sIG5vbiBQSUMgc28pIiBtYWlucC5vIHNoMW5wLm8g c2gybnAubyBlbGZ2c2IKKwkgICAgIyBYQ09GRiBmb3JtYXQgZG9lc24ndCBrbm93IGhvdyB0byBo YW5kbGUgd2VhayB1bmRlZmluZWQgc3ltYm9scworCSAgICAjIGluIHNoYXJlZCBvYmplY3RzLgor CSAgICBpZiB7IFsgc3RyaW5nIG1hdGNoICR2aXNpYmlsaXR5ICJoaWRkZW5fd2VhayIgXQorCQkg fHwgWyBzdHJpbmcgbWF0Y2ggJHZpc2liaWxpdHkgInByb3RlY3RlZF93ZWFrIiBdIH0geworCQlz ZXR1cF94ZmFpbCAiKi0qLWFpeCoiCisJCXNldHVwX3hmYWlsICIqLSotYmVvcyoiCisJICAgIH0K KworCSAgICB2aXNpYmlsaXR5X3Rlc3QgJHZpc2liaWxpdHkgdm1wbnAgInZpc2liaWxpdHkgKCR2 aXNpYmlsaXR5KSAoUElDIG1haW4sIG5vbiBQSUMgc28pIiBtYWlucC5vIHNoMW5wLm8gc2gybnAu byAkZGF0ZmlsZQogCX0gZWxzZSB7CiAJICAgIHVuc3VwcG9ydGVkICJ2aXNpYmlsaXR5IChQSUMg bWFpbiwgbm9uIFBJQyBzbykiCiAJfQpAQCAtNDA1LDcgKzQ3OSwxNiBAQCBwcm9jIHZpc2liaWxp dHlfcnVuIHt2aXNpYmlsaXR5fSB7CiAJCSAgICBzZXR1cF94ZmFpbCAkdGFyZ2V0X3RyaXBsZXQK IAkJfQogCSAgICB9Ci0JICAgIHZpc2liaWxpdHlfdGVzdCAkdmlzaWJpbGl0eSB2bXBwICJ2aXNp YmlsaXR5ICgkdmlzaWJpbGl0eSkgKFBJQyBtYWluKSIgbWFpbnAubyBzaDFwLm8gc2gycC5vIGVs ZnZzYgorCisJICAgICMgWENPRkYgZm9ybWF0IGRvZXNuJ3Qga25vdyBob3cgdG8gaGFuZGxlIHdl YWsgdW5kZWZpbmVkIHN5bWJvbHMKKwkgICAgIyBpbiBzaGFyZWQgb2JqZWN0cy4KKwkgICAgaWYg eyBbIHN0cmluZyBtYXRjaCAkdmlzaWJpbGl0eSAiaGlkZGVuX3dlYWsiIF0KKwkJIHx8IFsgc3Ry aW5nIG1hdGNoICR2aXNpYmlsaXR5ICJwcm90ZWN0ZWRfd2VhayIgXSB9IHsKKwkJc2V0dXBfeGZh aWwgIiotKi1haXgqIgorCQlzZXR1cF94ZmFpbCAiKi0qLWJlb3MqIgorCSAgICB9CisKKwkgICAg dmlzaWJpbGl0eV90ZXN0ICR2aXNpYmlsaXR5IHZtcHAgInZpc2liaWxpdHkgKCR2aXNpYmlsaXR5 KSAoUElDIG1haW4pIiBtYWlucC5vIHNoMXAubyBzaDJwLm8gJGRhdGZpbGUKIAl9IGVsc2Ugewog CSAgICB1bnN1cHBvcnRlZCAidmlzaWJpbGl0eSAoJHZpc2liaWxpdHkpIChQSUMgbWFpbikiCiAJ fQpAQCAtNDYxLDcgKzU0NCwxMiBAQCBpZiB7ICFbbGRfY29tcGlsZSAiJENDX0ZPUl9UQVJHRVQg LWcgJE5PU0FOSVRJWkVfQ0ZMQUdTICROT0xUT19DRkxBR1MiICRzcmNkaXIvJAogICAgaWYgeyAh W2xkX2NvbXBpbGUgIiRDQ19GT1JfVEFSR0VUIC1nICROT1NBTklUSVpFX0NGTEFHUyAkTk9MVE9f Q0ZMQUdTIC1EU0hBUkVEICRwaWNmbGFnIiAkc3JjZGlyLyRzdWJkaXIvc2gzLmMgdG1wZGlyL3No My5vXSB9IHsKIAl1bnN1cHBvcnRlZCAid2VhayBoaWRkZW4gc3ltYm9sIgogICAgIH0gZWxzZSB7 Ci0JaWYgIVtsZF9saW5rICRsZCB0bXBkaXIvc2gzLnNvICItc2hhcmVkIHRtcGRpci9zaDMubyJd IHsKKwlzZXQgc2hhcmVkICItc2hhcmVkIgorCWlmIHsgW2lzX3hjb2ZmX2Zvcm1hdF0gfSB7CisJ ICAgICMgT24gQUlYLCBzZXR1cCBpbXBvcnRzIGFuZCBleHBvcnRzLgorCSAgICBhcHBlbmQgc2hh cmVkICIgLWJleHBhbGwiCisJfQorCWlmICFbbGRfbGluayAkbGQgdG1wZGlyL3NoMy5zbyAiJHNo YXJlZCB0bXBkaXIvc2gzLm8iXSB7CiAJICAgIGZhaWwgIndlYWsgaGlkZGVuIHN5bWJvbCIKIAl9 IGVsc2UgewogCSAgICBpZiAhW2xkX2xpbmsgJGxkIHRtcGRpci93ZWFrICJ0bXBkaXIvdGVzdC5v IHRtcGRpci9zaDMuc28iXSB7CmRpZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQtdnNiL3hjb2Zm dnNiLmRhdCBiL2xkL3Rlc3RzdWl0ZS9sZC12c2IveGNvZmZ2c2IuZGF0Cm5ldyBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5hYTc1OTY5NTgzYwotLS0gL2Rldi9udWxsCisrKyBi L2xkL3Rlc3RzdWl0ZS9sZC12c2IveGNvZmZ2c2IuZGF0CkBAIC0wLDAgKzEsMjQgQEAKK21haW52 YXIgPT0gMQorb3ZlcnJpZGRlbnZhciA9PSAyCitzaGxpYnZhcjEgPT0gMworc2hsaWJfbWFpbnZh ciAoKSA9PSAxCitzaGxpYl9zaGxpYnZhcjEgKCkgPT0gMworc2hsaWJfc2hsaWJ2YXIyICgpID09 IDQKK3NobGliX3NobGliY2FsbCAoKSA9PSA1CitzaGxpYl9tYWluY2FsbCAoKSA9PSA2CittYWlu X2NhbGxlZCAoKSA9PSA2CitzaGxpYl9jaGVja2Z1bnB0cjEgKHNobGliX3NobGlidmFyMSkgPT0g MQorc2hsaWJfY2hlY2tmdW5wdHIyIChtYWluX2NhbGxlZCkgPT0gMQorc2hsaWJfZ2V0ZnVucHRy MSAoKSA9PSBzaGxpYl9zaGxpYnZhcjEKK3NobGliX2dldGZ1bnB0cjIgKCkgPT0gbWFpbl9jYWxs ZWQKK3NobGliX2NoZWNrICgpID09IDEKK3Zpc2liaWxpdHlfY2hlY2sgKCkgPT0gMQordmlzaWJp bGl0eV9jaGVja2Z1bnB0ciAoKSA9PSAxCittYWluX3Zpc2liaWxpdHlfY2hlY2sgKCkgPT0gMQor dmlzaWJpbGl0eV9jaGVja3ZhciAoKSA9PSAxCit2aXNpYmlsaXR5X2NoZWNrdmFycHRyICgpID09 IDEKK21haW5fdmlzaWJpbGl0eV9jaGVja3ZhciAoKSA9PSAxCittYWluX3Zpc2liaWxpdHlfY2hl Y2tjb20gKCkgPT0gMQorc2hsaWJfdmlzaWJpbGl0eV9jaGVja2NvbSAoKSA9PSAxCittYWluX3Zp c2liaWxpdHlfY2hlY2t3ZWFrICgpID09IDEKK3NobGliX3Zpc2liaWxpdHlfY2hlY2t3ZWFrICgp ID09IDEKLS0gCjIuMjUuMQoK --_002_PA4PR02MB66861A98F71EBD39AF7BD99CEA499PA4PR02MB6686eurp_--