Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lTSHX-0001hY-Ma for pgsql-hackers@arkaria.postgresql.org; Mon, 05 Apr 2021 16:40:56 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1lTSHW-0004Lp-En for pgsql-hackers@arkaria.postgresql.org; Mon, 05 Apr 2021 16:40:54 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lTSHV-0004J4-JC for pgsql-hackers@lists.postgresql.org; Mon, 05 Apr 2021 16:40:54 +0000 Received: from mail-mw2nam12on2062.outbound.protection.outlook.com ([40.107.244.62] helo=NAM12-MW2-obe.outbound.protection.outlook.com) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lTSHM-00064R-Ps for pgsql-hackers@postgresql.org; Mon, 05 Apr 2021 16:40:52 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JSUfMAom5xShYZ526YZy0DdlMcM2TKWhGvb3Kcod8Wc0uMpHZ4NsSIMnXhtPB+6O81DaPG1Sp8vcq0DdqeTSaNm2Ub/9RaDMnT5ckX8peqrLXBgA1h6oPWidrNqVkHowh0YzFFDTr6v5/OvmTyIzxUH5LvyvjLfPwUyyCeC30qlWnzzCJFTOkralafuiQ1awfK/AxpE3B3GEoHeLPkZKaePtNwcBt4SzbMHT+qdT6wGW3W4obemoSC303lrDOxuJSmlyA9LGG1PgD+E0bNZEBzDLBOGTmjFngirfnRtcvlemYNlb//0AQp4oka6aEcOe+59tlja8n/Ee2Lre11cBpg== 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-SenderADCheck; bh=oKXu8YYsY1A1uJBxOR2CIbfB4m+npAh8HWhoCfmJQyY=; b=P5Mnj2ZVeE4WO0os3M4IIMbzhBViu2tuvZWjxflybF7hsGYUqb8JCjLV5Lwz5OCRDswMi4rIrVPOGkQbrzOXvf98iMkyZBc/PVitcqFBdY6VvdogtjbtxuSdmV/Zw/+IO6PM8aJosBJInYIPHPYlzb+qE/kSc0YkYBUTCDUNgzOLJah6pIYEZ2pLZIWPJFM5punh/9jgdMmeL4+F6jmy+qNt2xL9sn81N4r1vdQpa5rukwAvtSt9gik7zzFfH7pThnzxVz+/nk2xlJ2/f7r4H/WNRyV3OOrv/IAKfJOdVrjWwQKdZc9aRB+wno/MepJzocwocqR+aeTMzAbDAcD/Sw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=vmware.com; dmarc=pass action=none header.from=vmware.com; dkim=pass header.d=vmware.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vmware.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oKXu8YYsY1A1uJBxOR2CIbfB4m+npAh8HWhoCfmJQyY=; b=mqHtkmYXcbZMlPSGSvrIwUJ0agnk/y3PmLnSTNNZ9ntD85Y/ntLbXCJ7Rqa5Abs9SReUT+Lt6XREzHPTxxYP5/YzdacJBw2zjYuBKTSdTnDaHwPu/eqp3vx8cpfTPmhEDFJV6grqAkpVDaLrJ6OBSq9Or8/h8Efp/8TESoglVRU= Received: from MWHPR05MB2896.namprd05.prod.outlook.com (2603:10b6:300:65::20) by MWHPR05MB3661.namprd05.prod.outlook.com (2603:10b6:301:3f::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.9; Mon, 5 Apr 2021 16:40:41 +0000 Received: from MWHPR05MB2896.namprd05.prod.outlook.com ([fe80::4c6d:a666:643c:9244]) by MWHPR05MB2896.namprd05.prod.outlook.com ([fe80::4c6d:a666:643c:9244%8]) with mapi id 15.20.4020.015; Mon, 5 Apr 2021 16:40:41 +0000 From: Jacob Champion To: "michael@paquier.xyz" CC: "magnus@hagander.net" , "stark@mit.edu" , "pgsql-hackers@postgresql.org" , "sfrost@snowman.net" , "tgl@sss.pgh.pa.us" Subject: Re: Proposal: Save user's original authenticated identity for logging Thread-Topic: Proposal: Save user's original authenticated identity for logging Thread-Index: AQHW9aJ84UHIxxQGM0uvKhvSVw/fl6pFeJoAgAmCVACABIPmgIAXhdMAgAxttwCAA3O0AIABS40AgAAS9ACACTYWgIAEN3sAgAGUV4CAAI82AIAAHMKAgAPoFgCAANotgIAAqOOAgAJRW4CAANjsgIAA3IyAgABZqgCAAXjXAIADvkIAgAEM2gCAABGMAIABD02AgABnFICAAI2VAIABJ+IAgAF8fACAAE7XgIACFDmAgAK0B4CAALaOAA== Date: Mon, 5 Apr 2021 16:40:41 +0000 Message-ID: <4f5b0b3dc0b6fe9ae6a34886b4d4000f61eb567e.camel@vmware.com> References: <4a87886f034c713c056c43850f55e6e0ba50d8b5.camel@vmware.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: user-agent: Evolution 3.36.4-0ubuntu1 authentication-results: paquier.xyz; dkim=none (message not signed) header.d=none;paquier.xyz; dmarc=none action=none header.from=vmware.com; x-originating-ip: [50.39.198.229] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 027d0527-0708-4e02-256f-08d8f8518d1b x-ms-traffictypediagnostic: MWHPR05MB3661: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: bv4Fa20TeiDAudTFk+z0j6NoD+hVC7afyaAhlRdxZkAoFmeS6OwXUFtYs5C0XzIFsdm2vp3THTEzlATJAsjvfJafuGxbP+JitLXbCy+34JowHcxpzt4e4JcR3+8/ythLzBFa9ZAke86oEeRvujzjCimNYpCHiZCTxYRYNkT3H+ylqf+9VXIpBZoopqV1/I9MYWtExO0lXHxs4JGc84seW7+gah/gZ+mlgLCHK4fDLUWAobwO7YZYcx1ZDSCUb7Mq9/SBJ1SaRRGQQvK12cLm8P9luSkMmXdS8e8OpjQBaxyHwS5JfF2dXwimRdF9tuRJj0kxW+G7CeWGgKrYLHz2+AAS2z/xOd7TO4GR7NDYQ08bNuUCA03OAgEBprVvvFV5kdz8h3ALzDHrekhCFIEgnpt4VWPYoX0VavyaK7OZvteJWCrvwXjM8wOEBP9cpFqbLlBMusVcMc3pPAV0H6ZEPUzT/3xRCyeLXvjLUS/mVDFUl89MJOiDPSD6vTdl33seZGxzNpH+qsSPmgcakV0EUq5MnDk6fGg/cUAoY7ydQIzOotEsVJcFafti52PHMZ9CHJoLVPLT7Zeeh1oVmg3414wcURW5p7Tpea09Az7aKS9Ar7Css89s7N3YuBbKTBwgTANfJk2Wbq9FhYO65lVmpk96gqKAYobRDI/nGyvzTezSGJpAu45BlNMr6dvIH1xqL/gNIExru95qrpMYC9TXTK0teUGSeVPQTk71SYseObc= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR05MB2896.namprd05.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(396003)(346002)(39860400002)(136003)(366004)(6506007)(36756003)(71200400001)(4326008)(38100700001)(2906002)(5660300002)(6486002)(26005)(6916009)(66476007)(186003)(99936003)(66556008)(64756008)(66446008)(66576008)(66946007)(54906003)(86362001)(316002)(478600001)(8936002)(83380400001)(8676002)(2616005)(76116006)(6512007)(966005);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata: =?utf-8?B?eUNpR2I2MDdxSGhROUo0SVJPT3F4b2pOekxSSDhzdGFWMmxlWUU0cXlWOHFy?= =?utf-8?B?VmNoRkkydFNnVTBHQWJXZTBBUGNJM3BsY1o3YTIrcVdCSXdVWlpsYitad0VU?= =?utf-8?B?ZlhwRnk4Vm50YlpTQmIxSVZ0cGxsd2JNa1Y5MHR2ZEphQjRlZVltb081dUxQ?= =?utf-8?B?dTg3OTV4aW9DNTlDblFFWGxPUFNoR2lNbHd0N1lvaThWbUFiS29jWHB3U3Rv?= =?utf-8?B?bmZGbHpndzlDSnl5T3FFSnhmN3hBRlEyM0FMQkZFYnNuYm1SSGtLN3NJMzk4?= =?utf-8?B?TXJDbjRTb3V4WWFaOEc2cFIyOWVScS9yeHpMbnZTcXdEVFBYYXREekJKUEk4?= =?utf-8?B?encyQUZ2QmJTd2NXam9DajZycU80UEtheHVqNE4yTXAzU3V1R1BoSjk4VW5t?= =?utf-8?B?Z041eXFSMit2dDNsam5EYWdRaVdHYTFWR2ZGQWZUOFl2VDAvaWFweVpka0kr?= =?utf-8?B?Qm13Y1FoT1hBcGpJbW9pMDZWSFlPbkp1YXdJcVhlMzhOZ1JuWi9wenYzdUZO?= =?utf-8?B?L3NDRDk2NlJHVFlZUjRLU1k5b1p4d2tKWldsaDBLR0ZORUZ4aTZPSDJLb1ZJ?= =?utf-8?B?VHFzOHNqcnE4ODRvSU9qSmVWZ1pIWENOYU9QRitDUjNQam95YnFoeDZPdVhl?= =?utf-8?B?NXphWStGbjVnaDdFbFk3aW5lcGFsdnRDTldoZG1zL2lSNC9lbHJSa2N2ZGpZ?= =?utf-8?B?QXgvcnJmSmlua2tGMVdtSXZmdEpjWndXalJIcEV0ZUM0ZEYvVUFMM2c2Sisw?= =?utf-8?B?ZlB4T3djME5mUXAvL2o4SE5ReDdZellrVi9Bczd6THByZHUwZ3lOVkw1YlFU?= =?utf-8?B?cFpjWm5HbCtFUkFCOWRrL00zYXpQNjhIUmU2RVNCQXIzUEt4TGR4OXh1RTFJ?= =?utf-8?B?WHZkc2lycm0xWDRDcFhZRXJ1ZXVlZEdycElEVDVhb29TbmU5bmptamtlbEpK?= =?utf-8?B?VWdFQkFrWDIyWXRLVGNqSkpWTW5FTDI1OVRpTjc0RStHbkdKZ1l0ajZ6VStZ?= =?utf-8?B?YnNncTFzYk5wdm1zUm9DV1Q3MkVzTnBxdzNrVmFjVVpCVzlPODdsZW52UmNz?= =?utf-8?B?Q3RkKzNadkdwTHRMOFhNYVNhMDVBUjBJM3YwSGo1cFV1am9ZTGVyYmZJak9G?= =?utf-8?B?REhCRjZkVzhvVTR5RUs1ZHVUcTNjK1JBd0dFUUM3dzhsU0J5dlg1ZzlSeXZH?= =?utf-8?B?dnhncEdlZDdOcHB5RGdsaVlsM29JVDBwMUVVaGMzTkExQ0tXaWlJeExySWVX?= =?utf-8?B?NUVIU01hODBjNHVvNnd6cDFrNnUyeXd0OHJDU0l2YnpCYzMwVCtVMTlMZnFL?= =?utf-8?B?d3kyejNyT3RPbnJ0eEFacERJN3VCYWVJd1NIOXZRbFN1V2FqZjVBZlhyTUhq?= =?utf-8?B?a1hBM1l2S0J3TGtUUW4wT05qRHVRR0grdnV1U3FyMlRHK2x2dEJGVzJlbzZM?= =?utf-8?B?aUZtdG9kN2Y3RkpQVHN2Zk1NVlFUdWFiQVBQQzBzc0VQZ2RJanprdmtOVW1H?= =?utf-8?B?U2ZYSEtWRFNwcHcxdGpra0tlWHEyT1RJdjhUUHI2WUhWem1ycE5GRktGQzRN?= =?utf-8?B?YzdvNGN1K2NoQzk0NnZKQUY0TTlZSUJUcG9zK2ZNNmVDQkgxRGV2TXVRaTF3?= =?utf-8?B?L1V6S2ZtdGhuY1Z6Vm01TithRnBmSGVqT2M0NW9vTlR2MUtGbUh4UlE1RHNW?= =?utf-8?B?aXJsYlhtbjhRc1QxdGdzeDlBT1RvUHpsM3VkbmtDYUt1djl5Sml5dXlLOUJU?= =?utf-8?Q?q8/sOL5+D0aAH8o4xzOCoJcDNnzLtjST0/gPXhX?= x-ms-exchange-transport-forked: True Content-Type: multipart/mixed; boundary="_003_4f5b0b3dc0b6fe9ae6a34886b4d4000f61eb567ecamelvmwarecom_" MIME-Version: 1.0 X-OriginatorOrg: vmware.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MWHPR05MB2896.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 027d0527-0708-4e02-256f-08d8f8518d1b X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Apr 2021 16:40:41.5221 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b39138ca-3cee-4b4a-a4d6-cd83d9dd62f0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 92J7r+F9kLhy1T/8WCXyV+wXDO5wsaeZAy+OVtWsxMXMvg1YXUf8Uv26d5jJv5u1k+6LKZSR4tlSLy47JQtS+A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR05MB3661 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_003_4f5b0b3dc0b6fe9ae6a34886b4d4000f61eb567ecamelvmwarecom_ Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 T24gTW9uLCAyMDIxLTA0LTA1IGF0IDE0OjQ3ICswOTAwLCBNaWNoYWVsIFBhcXVpZXIgd3JvdGU6 DQo+IE9uIFNhdCwgQXByIDAzLCAyMDIxIGF0IDA5OjMwOjI1UE0gKzA5MDAsIE1pY2hhZWwgUGFx dWllciB3cm90ZToNCj4gPiBTbGlnaHQgcmViYXNlIGZvciB0aGlzIG9uZSB0byB0YWtlIGNhcmUg b2YgdGhlIHVwZGF0ZXMgd2l0aCB0aGUgU1NMDQo+ID4gZXJyb3IgbWVzc2FnZXMuDQo+IA0KPiBJ IGhhdmUgYmVlbiBsb29raW5nIGFnYWluIGF0IHRoYXQgYW5kIGFwcGxpZWQgaXQgYXMgYzUwNjI0 Y2QgYWZ0ZXINCj4gc29tZSBzbGlnaHQgbW9kaWZpY2F0aW9ucy4NCg0KVGhpcyBsb3NlcyB0aGUg dGVzdCBmaXhlcyBJIG1hZGUgaW4gbXkgdjE5IFsxXTsgc29tZSBvZiB0aGUgdGVzdHMgb24NCkhF QUQgYXJlbid0IHRlc3RpbmcgYW55dGhpbmcgYW55bW9yZS4gSSd2ZSBwdXQgdGhvc2UgZml4dXBz IGludG8gMDAwMSwNCmF0dGFjaGVkLg0KDQo+IEF0dGFjaGVkIGlzIHRoZSBtYWluLCByZWZhY3Rv cmVkLCBwYXRjaA0KPiB0aGF0IHBsdWdzIG9uIHRvcCBvZiB0aGUgZXhpc3RpbmcgaW5mcmFzdHJ1 Y3R1cmUuICBjb25uZWN0X29rKCkgYW5kDQo+IGNvbm5lY3RfZmFpbHMoKSBnYWluIHR3byBwYXJh bWV0ZXJzIGVhY2ggdG8gbWF0Y2ggb3IgdG8gbm90IG1hdGNoIHRoZQ0KPiBsb2dzIG9mIHRoZSBi YWNrZW5kLCB3aXRoIGEgdHJ1bmNhdGlvbiBvZiB0aGUgbG9ncyBkb25lIGJlZm9yZSBhbnkNCj4g Y29ubmVjdGlvbiBhdHRlbXB0Lg0KDQpJdCBsb29rcyBsaWtlIHRoaXMgaXMgYSByZWltcGxlbWVu dGF0aW9uIG9mIHYxOSwgYnV0IGl0IGxvc2VzIHRoZQ0KYWRkaXRpb25hbCB0ZXN0cyBJIHdyb3Rl PyBOb3Qgc3VyZS4gTWF5YmUgbXkgdjE5IHdhcyBzZW50IHRvIHNwYW0/DQoNCkluIGFueSBjYXNl IEkgaGF2ZSBhdHRhY2hlZCBteSBGcmlkYXkgcGF0Y2ggYXMgMDAwMi4NCg0KPiBJIGhhdmUgc3Bl bnQgbW9yZSB0aW1lIHJldmlld2luZyB0aGUgYmFja2VuZCBjb2RlIHdoaWxlIG9uIGl0IGFuZA0K PiB0aGVyZSB3YXMgb25lIHRoaW5nIHRoYXQgc3Rvb2Qgb3V0Og0KPiArICAgICAgIGVyZXBvcnQo RkFUQUwsDQo+ICsgICAgICAgICAgICAgICAoZXJybXNnKCJjb25uZWN0aW9uIHdhcyByZS1hdXRo ZW50aWNhdGVkIiksDQo+ICsgICAgICAgICAgICAgICAgZXJyZGV0YWlsX2xvZygicHJldmlvdXMg SUQ6IFwiJXNcIjsgbmV3IElEOiBcIiVzXCIiLA0KPiArICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcG9ydC0+YXV0aG5faWQsIGlkKSkpOw0KPiBUaGlzIG1lc3NhZ2Ugd291bGQgbm90IGFj dHVhbGx5IHRyaWdnZXIgYmVjYXVzZSBhdXRoX2ZhaWxlZCgpIGlzIHRoZQ0KPiBjb2RlIHBhdGgg aW4gY2hhcmdlIG9mIHNob3dpbmcgYW4gZXJyb3IgaGVyZQ0KDQpJdCB0cmlnZ2VycyBqdXN0IGZp bmUgZm9yIG1lICh5b3UgY2FuIGR1cGxpY2F0ZSBvbmUgb2YgdGhlDQpzZXRfYXV0aG5faWQoKSBj YWxscyB0byBzZWUpOg0KDQogICAgRkFUQUw6ICBjb25uZWN0aW9uIHdhcyByZS1hdXRoZW50aWNh dGVkDQogICAgREVUQUlMOiAgcHJldmlvdXMgSUQ6ICJ1aWQ9dGVzdDIsZGM9ZXhhbXBsZSxkYz1u ZXQiOyBuZXcgSUQ6ICJ1aWQ9dGVzdDIsZGM9ZXhhbXBsZSxkYz1uZXQiDQoNCj4gc28gdGhpcyBj b3VsZCBqdXN0IGJlDQo+IHJlcGxhY2VkIGJ5IGFuIGFzc2VydGlvbiBvbiBhdXRobl9pZCBiZWlu ZyBOVUxMPw0KDQpBbiBhc3NlcnRpb24gc2VlbXMgbGlrZSB0aGUgd3Jvbmcgd2F5IHRvIGdvOyBp biB0aGUgZXZlbnQgdGhhdCBhIGZ1dHVyZQ0KY29kZSBwYXRoIGFjY2lkZW50YWxseSBwZXJmb3Jt cyBhIGR1cGxpY2F0ZWQgYXV0aGVudGljYXRpb24sIHRoZSBGQVRBTA0Kd2lsbCBqdXN0IGtpbGwg b2ZmIGFuIGF0dGFja2VyJ3MgY29ubmVjdGlvbiwgd2hpbGUgYW4gYXNzZXJ0aW9uIHdpbGwNCkRv UyB0aGUgc2VydmVyLg0KDQo+IFRoZSBjb250ZW50cyBvZiB0aGlzDQo+IGxvZyB3ZXJlIGEgYml0 IGluIGNvbnRyYWRpY3Rpb24gd2l0aCB0aGUgY29tbWVudHMgYSBjb3VwbGUgb2YgbGluZXMNCj4g YWJvdmUgYW55d2F5Lg0KDQpXaGF0IGRvIHlvdSBtZWFuIGJ5IHRoaXM/IEkgdG9vayBhbm90aGVy IGxvb2sgYXQgdGhlIGNvbW1lbnQgYW5kIGl0DQpzZWVtcyB0byBtYXRjaCB0aGUgaW1wbGVtZW50 YXRpb24uDQoNCnYyMSBhdHRhY2hlZCwgd2hpY2ggaXMganVzdCBhIHJlYmFzZSBvZiBteSBvcmln aW5hbCB2MTkuDQoNCi0tSmFjb2INCg0KWzFdIGh0dHBzOi8vd3d3LnBvc3RncmVzcWwub3JnL21l c3NhZ2UtaWQvOGMwOGM2NDAyMDUxYjUzNDhkNTk5YzBlMDdiYmQ4M2Y4NjE0ZmExNi5jYW1lbCU0 MHZtd2FyZS5jb20NCg== --_003_4f5b0b3dc0b6fe9ae6a34886b4d4000f61eb567ecamelvmwarecom_ Content-Type: text/x-patch; name="v21-0001-test-kerberos-fix-up-test_query.patch" Content-Description: v21-0001-test-kerberos-fix-up-test_query.patch Content-Disposition: attachment; filename="v21-0001-test-kerberos-fix-up-test_query.patch"; size=3968; creation-date="Mon, 05 Apr 2021 16:40:41 GMT"; modification-date="Mon, 05 Apr 2021 16:40:41 GMT" Content-ID: Content-Transfer-Encoding: base64 RnJvbSA5YTJlOGVhYjVmMmQzMzg0MTQ2NTI0MzhjY2UxYzc1OWFmNDUxYzExIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKYWNvYiBDaGFtcGlvbiA8cGNoYW1waW9uQHZtd2FyZS5jb20+ CkRhdGU6IE1vbiwgNSBBcHIgMjAyMSAwOTozNToxMSAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggdjIx IDEvMl0gdGVzdC9rZXJiZXJvczogZml4IHVwIHRlc3RfcXVlcnkKCmM1MDYyNGNkZCBhY2NpZGVu dGFsbHkgZGlzYWJsZWQgdGVzdF9xdWVyeTsgYWRkIGl0cyBmdW5jdGlvbmFsaXR5IGJhY2sKaGVy ZS4gZXhwZWN0ZWRfc3RkZXJyIGhhcyBiZWVuIGFkZGVkIHRvIFBvc3RncmVzTm9kZTo6Y29ubmVj dF9vaygpLgoKQWxzbyBmaXggc29tZSBUT0RPIHRlc3RzIGluIHRlc3Qvc3NsLgotLS0KIHNyYy90 ZXN0L2tlcmJlcm9zL3QvMDAxX2F1dGgucGwgfCAxMiArKysrKysrLS0tLS0KIHNyYy90ZXN0L3Bl cmwvUG9zdGdyZXNOb2RlLnBtICAgfCAxMiArKysrKysrKysrLS0KIHNyYy90ZXN0L3NzbC90LzAw MV9zc2x0ZXN0cy5wbCAgfCAgOCArKysrLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCAyMSBpbnNlcnRp b25zKCspLCAxMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9rZXJiZXJvcy90 LzAwMV9hdXRoLnBsIGIvc3JjL3Rlc3Qva2VyYmVyb3MvdC8wMDFfYXV0aC5wbAppbmRleCBkZTUy YTY2Nzg1Li44YjhjN2M0ODE0IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9rZXJiZXJvcy90LzAwMV9h dXRoLnBsCisrKyBiL3NyYy90ZXN0L2tlcmJlcm9zL3QvMDAxX2F1dGgucGwKQEAgLTIwLDcgKzIw LDcgQEAgdXNlIFRpbWU6OkhpUmVzIHF3KHVzbGVlcCk7CiAKIGlmICgkRU5We3dpdGhfZ3NzYXBp fSBlcSAneWVzJykKIHsKLQlwbGFuIHRlc3RzID0+IDMwOworCXBsYW4gdGVzdHMgPT4gMzQ7CiB9 CiBlbHNlCiB7CkBAIC0xOTYsNyArMTk2LDcgQEAgc3ViIHRlc3RfYWNjZXNzCiAJCSRub2RlLT5j b25uZWN0X29rKAogCQkJJGNvbm5zdHIsICR0ZXN0X25hbWUsCiAJCQlzcWwgICAgICAgICAgICAg PT4gJHF1ZXJ5LAotCQkJZXhwZWN0ZWRfc3Rkb3V0ID0+IHFyL3QvKTsKKwkJCWV4cGVjdGVkX3N0 ZG91dCA9PiBxci9edCQvKTsKIAl9CiAJZWxzZQogCXsKQEAgLTIyNyw5ICsyMjcsMTEgQEAgc3Vi IHRlc3RfcXVlcnkKIAlteSAkY29ubnN0ciA9ICRub2RlLT5jb25uc3RyKCdwb3N0Z3JlcycpCiAJ ICAuICIgdXNlcj0kcm9sZSBob3N0PSRob3N0IGhvc3RhZGRyPSRob3N0YWRkciAkZ3NzZW5jbW9k ZSI7CiAKLQlteSAoJHN0ZG91dHJlcywgJHN0ZGVycnJlcyk7Ci0KLQkkbm9kZS0+Y29ubmVjdF9v aygkY29ubnN0ciwgJHRlc3RfbmFtZSwgJHF1ZXJ5LCAkZXhwZWN0ZWQpOworCSRub2RlLT5jb25u ZWN0X29rKAorCQkkY29ubnN0ciwgJHRlc3RfbmFtZSwKKwkJc3FsICAgICAgICAgICAgID0+ICRx dWVyeSwKKwkJZXhwZWN0ZWRfc3Rkb3V0ID0+ICRleHBlY3RlZCwKKwkJZXhwZWN0ZWRfc3RkZXJy ID0+IHFyL14kLyk7CiAJcmV0dXJuOwogfQogCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9wZXJsL1Bv c3RncmVzTm9kZS5wbSBiL3NyYy90ZXN0L3BlcmwvUG9zdGdyZXNOb2RlLnBtCmluZGV4IGJiZGUz NGM5MjkuLjM0Mjc5ZTcxYTggMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3BlcmwvUG9zdGdyZXNOb2Rl LnBtCisrKyBiL3NyYy90ZXN0L3BlcmwvUG9zdGdyZXNOb2RlLnBtCkBAIC0xODc2LDYgKzE4NzYs MTAgQEAgaW5zdGVhZCBvZiB0aGUgZGVmYXVsdC4KIAogSWYgdGhpcyByZWd1bGFyIGV4cHJlc3Np b24gaXMgc2V0LCBtYXRjaGVzIGl0IHdpdGggdGhlIG91dHB1dCBnZW5lcmF0ZWQuCiAKKz1pdGVt IGV4cGVjdGVkX3N0ZGVyciA9PiBCPHZhbHVlPgorCitJZiB0aGlzIHJlZ3VsYXIgZXhwcmVzc2lv biBpcyBzZXQsIG1hdGNoZXMgaXQgd2l0aCB0aGUgc3RkZXJyIGdlbmVyYXRlZC4KKwogPWJhY2sK IAogPWN1dApAQCAtMTkwOCw3ICsxOTEyLDExIEBAIHN1YiBjb25uZWN0X29rCiAKIAlpZiAoZGVm aW5lZCgkcGFyYW1ze2V4cGVjdGVkX3N0ZG91dH0pKQogCXsKLQkJbGlrZSgkc3Rkb3V0LCAkcGFy YW1ze2V4cGVjdGVkX3N0ZG91dH0sICIkdGVzdF9uYW1lOiBtYXRjaGVzIik7CisJCWxpa2UoJHN0 ZG91dCwgJHBhcmFtc3tleHBlY3RlZF9zdGRvdXR9LCAiJHRlc3RfbmFtZTogc3Rkb3V0IG1hdGNo ZXMiKTsKKwl9CisJaWYgKGRlZmluZWQoJHBhcmFtc3tleHBlY3RlZF9zdGRlcnJ9KSkKKwl7CisJ ICAgIGxpa2UoJHN0ZGVyciwgJHBhcmFtc3tleHBlY3RlZF9zdGRlcnJ9LCAiJHRlc3RfbmFtZTog c3RkZXJyIG1hdGNoZXMiKTsKIAl9CiB9CiAKQEAgLTE5NDYsNyArMTk1NCw3IEBAIHN1YiBjb25u ZWN0X2ZhaWxzCiAKIAlpZiAoZGVmaW5lZCgkcGFyYW1ze2V4cGVjdGVkX3N0ZGVycn0pKQogCXsK LQkJbGlrZSgkc3RkZXJyLCAkcGFyYW1ze2V4cGVjdGVkX3N0ZGVycn0sICIkdGVzdF9uYW1lOiBt YXRjaGVzIik7CisJCWxpa2UoJHN0ZGVyciwgJHBhcmFtc3tleHBlY3RlZF9zdGRlcnJ9LCAiJHRl c3RfbmFtZTogc3RkZXJyIG1hdGNoZXMiKTsKIAl9CiB9CiAKZGlmZiAtLWdpdCBhL3NyYy90ZXN0 L3NzbC90LzAwMV9zc2x0ZXN0cy5wbCBiL3NyYy90ZXN0L3NzbC90LzAwMV9zc2x0ZXN0cy5wbApp bmRleCAyMTg2NWFjMzBmLi4wZGVjYmU3MTc3IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9zc2wvdC8w MDFfc3NsdGVzdHMucGwKKysrIGIvc3JjL3Rlc3Qvc3NsL3QvMDAxX3NzbHRlc3RzLnBsCkBAIC00 NTksMTcgKzQ1OSwxNyBAQCBUT0RPOgogCSMgY29ycmVjdCBjbGllbnQgY2VydCBpbiBlbmNyeXB0 ZWQgUEVNIHdpdGggZW1wdHkgcGFzc3dvcmQKIAkkbm9kZS0+Y29ubmVjdF9mYWlscygKIAkJIiRj b21tb25fY29ubnN0ciB1c2VyPXNzbHRlc3R1c2VyIHNzbGNlcnQ9c3NsL2NsaWVudC5jcnQgc3Ns a2V5PXNzbC9jbGllbnQtZW5jcnlwdGVkLXBlbV90bXAua2V5IHNzbHBhc3N3b3JkPScnIiwKKwkJ ImNlcnRpZmljYXRlIGF1dGhvcml6YXRpb24gZmFpbHMgd2l0aCBjb3JyZWN0IGNsaWVudCBjZXJ0 IGFuZCBlbXB0eSBwYXNzd29yZCBpbiBlbmNyeXB0ZWQgUEVNIGZvcm1hdCIsCiAJCWV4cGVjdGVk X3N0ZGVyciA9PgotCQkgIHFyIVxRcHJpdmF0ZSBrZXkgZmlsZSAic3NsL2NsaWVudC1lbmNyeXB0 ZWQtcGVtX3RtcC5rZXkiOiBwcm9jZXNzaW5nIGVycm9yXEUhLAotCQkiY2VydGlmaWNhdGUgYXV0 aG9yaXphdGlvbiBmYWlscyB3aXRoIGNvcnJlY3QgY2xpZW50IGNlcnQgYW5kIGVtcHR5IHBhc3N3 b3JkIGluIGVuY3J5cHRlZCBQRU0gZm9ybWF0IgorCQkgIHFyIVxRcHJpdmF0ZSBrZXkgZmlsZSAi c3NsL2NsaWVudC1lbmNyeXB0ZWQtcGVtX3RtcC5rZXkiOiBwcm9jZXNzaW5nIGVycm9yXEUhCiAJ KTsKIAogCSMgY29ycmVjdCBjbGllbnQgY2VydCBpbiBlbmNyeXB0ZWQgUEVNIHdpdGggbm8gcGFz c3dvcmQKIAkkbm9kZS0+Y29ubmVjdF9mYWlscygKIAkJIiRjb21tb25fY29ubnN0ciB1c2VyPXNz bHRlc3R1c2VyIHNzbGNlcnQ9c3NsL2NsaWVudC5jcnQgc3Nsa2V5PXNzbC9jbGllbnQtZW5jcnlw dGVkLXBlbV90bXAua2V5IiwKKwkJImNlcnRpZmljYXRlIGF1dGhvcml6YXRpb24gZmFpbHMgd2l0 aCBjb3JyZWN0IGNsaWVudCBjZXJ0IGFuZCBubyBwYXNzd29yZCBpbiBlbmNyeXB0ZWQgUEVNIGZv cm1hdCIsCiAJCWV4cGVjdGVkX3N0ZGVyciA9PgotCQkgIHFyIVxRcHJpdmF0ZSBrZXkgZmlsZSAi c3NsL2NsaWVudC1lbmNyeXB0ZWQtcGVtX3RtcC5rZXkiOiBwcm9jZXNzaW5nIGVycm9yXEUhLAot CQkiY2VydGlmaWNhdGUgYXV0aG9yaXphdGlvbiBmYWlscyB3aXRoIGNvcnJlY3QgY2xpZW50IGNl cnQgYW5kIG5vIHBhc3N3b3JkIGluIGVuY3J5cHRlZCBQRU0gZm9ybWF0IgorCQkgIHFyIVxRcHJp dmF0ZSBrZXkgZmlsZSAic3NsL2NsaWVudC1lbmNyeXB0ZWQtcGVtX3RtcC5rZXkiOiBwcm9jZXNz aW5nIGVycm9yXEUhCiAJKTsKIAogfQotLSAKMi4yNS4xCgo= --_003_4f5b0b3dc0b6fe9ae6a34886b4d4000f61eb567ecamelvmwarecom_ Content-Type: text/x-patch; name="v21-0002-Log-authenticated-identity-from-all-auth-backend.patch" Content-Description: v21-0002-Log-authenticated-identity-from-all-auth-backend.patch Content-Disposition: attachment; filename="v21-0002-Log-authenticated-identity-from-all-auth-backend.patch"; size=34431; creation-date="Mon, 05 Apr 2021 16:40:41 GMT"; modification-date="Mon, 05 Apr 2021 16:40:41 GMT" Content-ID: Content-Transfer-Encoding: base64 RnJvbSA4Nzg3ZjIxMTQ5ZDU3NzVlYjE4NjI0ZjZlNjU4YTQ1OTBjZWI5NThjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKYWNvYiBDaGFtcGlvbiA8cGNoYW1waW9uQHZtd2FyZS5jb20+ CkRhdGU6IFRodSwgMSBBcHIgMjAyMSAxNjowMToyNyAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggdjIx IDIvMl0gTG9nIGF1dGhlbnRpY2F0ZWQgaWRlbnRpdHkgZnJvbSBhbGwgYXV0aCBiYWNrZW5kcwoK VGhlICJhdXRoZW50aWNhdGVkIGlkZW50aXR5IiBpcyB0aGUgc3RyaW5nIHVzZWQgYnkgYW4gYXV0 aCBtZXRob2QgdG8KaWRlbnRpZnkgYSBwYXJ0aWN1bGFyIHVzZXIuIEluIG1hbnkgY29tbW9uIGNh c2VzIHRoaXMgaXMgdGhlIHNhbWUgYXMgdGhlClBvc3RncmVzIHVzZXJuYW1lLCBidXQgZm9yIHNv bWUgdGhpcmQtcGFydHkgYXV0aCBtZXRob2RzLCB0aGUgaWRlbnRpZmllcgppbiB1c2UgbWF5IGJl IHNob3J0ZW5lZCBvciBvdGhlcndpc2UgdHJhbnNsYXRlZCAoZS5nLiB0aHJvdWdoIHBnX2lkZW50 Cm1hcHBpbmdzKSBiZWZvcmUgdGhlIHNlcnZlciBzdG9yZXMgaXQuCgpUbyBoZWxwIERCQXMgc2Vl IHdobyBoYXMgYWN0dWFsbHkgaW50ZXJhY3RlZCB3aXRoIHRoZSBzeXN0ZW0sIHN0b3JlIHRoZQpv cmlnaW5hbCBpZGVudGl0eSB3aGVuIGF1dGhlbnRpY2F0aW9uIHN1Y2NlZWRzLCBhbmQgZXhwb3Nl IGl0IHZpYSB0aGUKbG9nX2Nvbm5lY3Rpb25zIHNldHRpbmcuIFRoZSBsb2cgZW50cmllcyBsb29r IHNvbWV0aGluZyBsaWtlIHRoaXMKZXhhbXBsZSAod2hlcmUgYSBsb2NhbCB1c2VyIG5hbWVkICJw Y2hhbXBpb24iIGlzIGNvbm5lY3RpbmcgdG8gdGhlCmRhdGFiYXNlIGFzIHRoZSAiYWRtaW4iIHVz ZXIpOgoKICAgIExPRzogIGNvbm5lY3Rpb24gcmVjZWl2ZWQ6IGhvc3Q9W2xvY2FsXQogICAgTE9H OiAgY29ubmVjdGlvbiBhdXRoZW50aWNhdGVkOiBpZGVudGl0eT0icGNoYW1waW9uIiBtZXRob2Q9 cGVlciAoL2RhdGEvcGdfaGJhLmNvbmY6ODgpCiAgICBMT0c6ICBjb25uZWN0aW9uIGF1dGhvcml6 ZWQ6IHVzZXI9YWRtaW4gZGF0YWJhc2U9cG9zdGdyZXMgYXBwbGljYXRpb25fbmFtZT1wc3FsCgpw b3J0LT5hdXRobl9pZCBpcyBzZXQgYWNjb3JkaW5nIHRvIHRoZSBhdXRoIG1ldGhvZDoKCiAgICBi c2Q6IHRoZSBQb3N0Z3JlcyB1c2VybmFtZSAod2hpY2ggaXMgdGhlIGxvY2FsIHVzZXJuYW1lKQog ICAgY2VydDogdGhlIGNsaWVudCdzIFN1YmplY3QgRE4KICAgIGdzczogdGhlIHVzZXIgcHJpbmNp cGFsCiAgICBpZGVudDogdGhlIHJlbW90ZSB1c2VybmFtZQogICAgbGRhcDogdGhlIGZpbmFsIGJp bmQgRE4KICAgIHBhbTogdGhlIFBvc3RncmVzIHVzZXJuYW1lICh3aGljaCBpcyB0aGUgUEFNIHVz ZXJuYW1lKQogICAgcGFzc3dvcmQgKGFuZCBhbGwgcHctY2hhbGxlbmdlIG1ldGhvZHMpOiB0aGUg UG9zdGdyZXMgdXNlcm5hbWUKICAgIHBlZXI6IHRoZSBwZWVyJ3MgcHdfbmFtZQogICAgcmFkaXVz OiB0aGUgUG9zdGdyZXMgdXNlcm5hbWUgKHdoaWNoIGlzIHRoZSBSQURJVVMgdXNlcm5hbWUpCiAg ICBzc3BpOiBlaXRoZXIgdGhlIGRvd24tbGV2ZWwgKFNBTS1jb21wYXRpYmxlKSBsb2dvbiBuYW1l LCBpZgogICAgICAgICAgY29tcGF0X3JlYWxtPTEsIG9yIHRoZSBVc2VyIFByaW5jaXBhbCBOYW1l IGlmIGNvbXBhdF9yZWFsbT0wCgpUaGUgdHJ1c3QgYXV0aCBtZXRob2QgZG9lcyBub3Qgc2V0IGFu IGF1dGhlbnRpY2F0ZWQgaWRlbnRpdHkuIE5laXRoZXIKZG9lcyB1c2luZyBjbGllbnRjZXJ0PXZl cmlmeS1mdWxsICh1c2UgdGhlIGNlcnQgYXV0aCBtZXRob2QgaW5zdGVhZCkuCgpQb3N0Z3Jlc05v ZGU6OmNvbm5lY3Rfb2svZmFpbHMoKSBoYXZlIGJlZW4gbW9kaWZpZWQgdG8gbGV0IHRlc3RzIGNo ZWNrCnRoZSBsb2dmaWxlcyBmb3IgcmVxdWlyZWQgb3IgcHJvaGliaXRlZCBwYXR0ZXJucywgdXNp bmcgdGhlIHJlc3BlY3RpdmUKbG9nX2xpa2UgYW5kIGxvZ191bmxpa2UgcGFyYW1ldGVycy4KLS0t CiBkb2Mvc3JjL3NnbWwvY29uZmlnLnNnbWwgICAgICAgICAgICAgICAgICB8ICAgMyArLQogc3Jj L2JhY2tlbmQvbGlicHEvYXV0aC5jICAgICAgICAgICAgICAgICAgfCAxMzYgKysrKysrKysrKysr KysrKysrKystLQogc3JjL2JhY2tlbmQvbGlicHEvaGJhLmMgICAgICAgICAgICAgICAgICAgfCAg MjQgKysrKwogc3JjL2luY2x1ZGUvbGlicHEvaGJhLmggICAgICAgICAgICAgICAgICAgfCAgIDEg Kwogc3JjL2luY2x1ZGUvbGlicHEvbGlicHEtYmUuaCAgICAgICAgICAgICAgfCAgMTMgKysrCiBz cmMvdGVzdC9hdXRoZW50aWNhdGlvbi90LzAwMV9wYXNzd29yZC5wbCB8ICA0OSArKysrKy0tLQog c3JjL3Rlc3Qva2VyYmVyb3MvdC8wMDFfYXV0aC5wbCAgICAgICAgICAgfCAgNzkgKysrKysrKysr LS0tLQogc3JjL3Rlc3QvbGRhcC90LzAwMV9hdXRoLnBsICAgICAgICAgICAgICAgfCAgMzIgKysr LS0KIHNyYy90ZXN0L3BlcmwvUG9zdGdyZXNOb2RlLnBtICAgICAgICAgICAgIHwgIDc4ICsrKysr KysrKysrKysKIHNyYy90ZXN0L3NzbC90LzAwMV9zc2x0ZXN0cy5wbCAgICAgICAgICAgIHwgIDM0 ICsrKystLQogc3JjL3Rlc3Qvc3NsL3QvMDAyX3NjcmFtLnBsICAgICAgICAgICAgICAgfCAgIDgg Ky0KIDExIGZpbGVzIGNoYW5nZWQsIDM4NyBpbnNlcnRpb25zKCspLCA3MCBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvY29uZmlnLnNnbWwgYi9kb2Mvc3JjL3NnbWwvY29u ZmlnLnNnbWwKaW5kZXggMGM5MTI4YTU1ZC4uZDQ3YjVlYWYxZCAxMDA2NDQKLS0tIGEvZG9jL3Ny Yy9zZ21sL2NvbmZpZy5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9jb25maWcuc2dtbApAQCAtNjc1 MSw3ICs2NzUxLDggQEAgbG9jYWwwLiogICAgL3Zhci9sb2cvcG9zdGdyZXNxbAogICAgICAgPGxp c3RpdGVtPgogICAgICAgIDxwYXJhPgogICAgICAgICBDYXVzZXMgZWFjaCBhdHRlbXB0ZWQgY29u bmVjdGlvbiB0byB0aGUgc2VydmVyIHRvIGJlIGxvZ2dlZCwKLSAgICAgICAgYXMgd2VsbCBhcyBz dWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgY2xpZW50IGF1dGhlbnRpY2F0aW9uLgorICAgICAgICBh cyB3ZWxsIGFzIHN1Y2Nlc3NmdWwgY29tcGxldGlvbiBvZiBib3RoIGNsaWVudCBhdXRoZW50aWNh dGlvbiAoaWYKKyAgICAgICAgbmVjZXNzYXJ5KSBhbmQgYXV0aG9yaXphdGlvbi4KICAgICAgICAg T25seSBzdXBlcnVzZXJzIGNhbiBjaGFuZ2UgdGhpcyBwYXJhbWV0ZXIgYXQgc2Vzc2lvbiBzdGFy dCwKICAgICAgICAgYW5kIGl0IGNhbm5vdCBiZSBjaGFuZ2VkIGF0IGFsbCB3aXRoaW4gYSBzZXNz aW9uLgogICAgICAgICBUaGUgZGVmYXVsdCBpcyA8bGl0ZXJhbD5vZmY8L2xpdGVyYWw+LgpkaWZm IC0tZ2l0IGEvc3JjL2JhY2tlbmQvbGlicHEvYXV0aC5jIGIvc3JjL2JhY2tlbmQvbGlicHEvYXV0 aC5jCmluZGV4IDlkYzI4ZTE5YWEuLmRlZTA1NmIwZDYgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5k L2xpYnBxL2F1dGguYworKysgYi9zcmMvYmFja2VuZC9saWJwcS9hdXRoLmMKQEAgLTM0LDggKzM0 LDEwIEBACiAjaW5jbHVkZSAibGlicHEvc2NyYW0uaCIKICNpbmNsdWRlICJtaXNjYWRtaW4uaCIK ICNpbmNsdWRlICJwb3J0L3BnX2Jzd2FwLmgiCisjaW5jbHVkZSAicG9zdG1hc3Rlci9wb3N0bWFz dGVyLmgiCiAjaW5jbHVkZSAicmVwbGljYXRpb24vd2Fsc2VuZGVyLmgiCiAjaW5jbHVkZSAic3Rv cmFnZS9pcGMuaCIKKyNpbmNsdWRlICJ1dGlscy9ndWMuaCIKICNpbmNsdWRlICJ1dGlscy9tZW11 dGlscy5oIgogI2luY2x1ZGUgInV0aWxzL3RpbWVzdGFtcC5oIgogCkBAIC00Nyw2ICs0OSw3IEBA IHN0YXRpYyB2b2lkIHNlbmRBdXRoUmVxdWVzdChQb3J0ICpwb3J0LCBBdXRoUmVxdWVzdCBhcmVx LCBjb25zdCBjaGFyICpleHRyYWRhdGEsCiAJCQkJCQkJaW50IGV4dHJhbGVuKTsKIHN0YXRpYyB2 b2lkIGF1dGhfZmFpbGVkKFBvcnQgKnBvcnQsIGludCBzdGF0dXMsIGNoYXIgKmxvZ2RldGFpbCk7 CiBzdGF0aWMgY2hhciAqcmVjdl9wYXNzd29yZF9wYWNrZXQoUG9ydCAqcG9ydCk7CitzdGF0aWMg dm9pZCBzZXRfYXV0aG5faWQoUG9ydCAqcG9ydCwgY29uc3QgY2hhciAqaWQpOwogCiAKIC8qLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQpAQCAtMzM3LDYgKzM0MCw1MSBAQCBhdXRoX2ZhaWxlZChQb3J0ICpwb3J0LCBpbnQgc3Rh dHVzLCBjaGFyICpsb2dkZXRhaWwpCiB9CiAKIAorLyoKKyAqIFNldHMgdGhlIGF1dGhlbnRpY2F0 ZWQgaWRlbnRpdHkgZm9yIHRoZSBjdXJyZW50IHVzZXIuICBUaGUgcHJvdmlkZWQgc3RyaW5nCisg KiB3aWxsIGJlIGNvcGllZCBpbnRvIHRoZSBUb3BNZW1vcnlDb250ZXh0LiAgVGhlIElEIHdpbGwg YmUgbG9nZ2VkIGlmCisgKiBsb2dfY29ubmVjdGlvbnMgaXMgZW5hYmxlZC4KKyAqCisgKiBBdXRo IG1ldGhvZHMgc2hvdWxkIGNhbGwgdGhpcyByb3V0aW5lIGV4YWN0bHkgb25jZSwgYXMgc29vbiBh cyB0aGUgdXNlciBpcworICogc3VjY2Vzc2Z1bGx5IGF1dGhlbnRpY2F0ZWQsIGV2ZW4gaWYgdGhl eSBoYXZlIHJlYXNvbnMgdG8ga25vdyB0aGF0CisgKiBhdXRob3JpemF0aW9uIHdpbGwgZmFpbCBs YXRlci4KKyAqCisgKiBUaGUgcHJvdmlkZWQgc3RyaW5nIHdpbGwgYmUgY29waWVkIGludG8gVG9w TWVtb3J5Q29udGV4dCwgdG8gbWF0Y2ggdGhlCisgKiBsaWZldGltZSBvZiB0aGUgUG9ydCwgc28g aXQgaXMgc2FmZSB0byBwYXNzIGEgc3RyaW5nIHRoYXQgaXMgbWFuYWdlZCBieSBhbgorICogZXh0 ZXJuYWwgbGlicmFyeS4KKyAqLworc3RhdGljIHZvaWQKK3NldF9hdXRobl9pZChQb3J0ICpwb3J0 LCBjb25zdCBjaGFyICppZCkKK3sKKwlBc3NlcnQoaWQpOworCisJaWYgKHBvcnQtPmF1dGhuX2lk KQorCXsKKwkJLyoKKwkJICogQW4gZXhpc3RpbmcgYXV0aG5faWQgc2hvdWxkIG5ldmVyIGJlIG92 ZXJ3cml0dGVuOyB0aGF0IG1lYW5zIHR3bworCQkgKiBhdXRoZW50aWNhdGlvbiBwcm92aWRlcnMg YXJlIGZpZ2h0aW5nIChvciBvbmUgaXMgZmlnaHRpbmcgaXRzZWxmKS4KKwkJICogRG9uJ3QgbGVh ayBhbnkgYXV0aG4gZGV0YWlscyB0byB0aGUgY2xpZW50LCBidXQgZG9uJ3QgbGV0IHRoZQorCQkg KiBjb25uZWN0aW9uIGNvbnRpbnVlLCBlaXRoZXIuCisJCSAqLworCQllcmVwb3J0KEZBVEFMLAor CQkJCShlcnJtc2coImNvbm5lY3Rpb24gd2FzIHJlLWF1dGhlbnRpY2F0ZWQiKSwKKwkJCQkgZXJy ZGV0YWlsX2xvZygicHJldmlvdXMgSUQ6IFwiJXNcIjsgbmV3IElEOiBcIiVzXCIiLAorCQkJCQkJ CSAgIHBvcnQtPmF1dGhuX2lkLCBpZCkpKTsKKwl9CisKKwlwb3J0LT5hdXRobl9pZCA9IE1lbW9y eUNvbnRleHRTdHJkdXAoVG9wTWVtb3J5Q29udGV4dCwgaWQpOworCisJaWYgKExvZ19jb25uZWN0 aW9ucykKKwl7CisJCWVyZXBvcnQoTE9HLAorCQkJCWVycm1zZygiY29ubmVjdGlvbiBhdXRoZW50 aWNhdGVkOiBpZGVudGl0eT1cIiVzXCIgbWV0aG9kPSVzICIKKwkJCQkJICAgIiglczolZCkiLAor CQkJCQkgICBwb3J0LT5hdXRobl9pZCwgaGJhX2F1dGhuYW1lKHBvcnQpLCBIYmFGaWxlTmFtZSwK KwkJCQkJICAgcG9ydC0+aGJhLT5saW5lbnVtYmVyKSk7CisJfQorfQorCisKIC8qCiAgKiBDbGll bnQgYXV0aGVudGljYXRpb24gc3RhcnRzIGhlcmUuICBJZiB0aGVyZSBpcyBhbiBlcnJvciwgdGhp cwogICogZnVuY3Rpb24gZG9lcyBub3QgcmV0dXJuIGFuZCB0aGUgYmFja2VuZCBwcm9jZXNzIGlz IHRlcm1pbmF0ZWQuCkBAIC03NTcsNiArODA1LDkgQEAgQ2hlY2tQYXNzd29yZEF1dGgoUG9ydCAq cG9ydCwgY2hhciAqKmxvZ2RldGFpbCkKIAkJcGZyZWUoc2hhZG93X3Bhc3MpOwogCXBmcmVlKHBh c3N3ZCk7CiAKKwlpZiAocmVzdWx0ID09IFNUQVRVU19PSykKKwkJc2V0X2F1dGhuX2lkKHBvcnQs IHBvcnQtPnVzZXJfbmFtZSk7CisKIAlyZXR1cm4gcmVzdWx0OwogfQogCkBAIC04MTYsNiArODY3 LDEwIEBAIENoZWNrUFdDaGFsbGVuZ2VBdXRoKFBvcnQgKnBvcnQsIGNoYXIgKipsb2dkZXRhaWwp CiAJCUFzc2VydChhdXRoX3Jlc3VsdCAhPSBTVEFUVVNfT0spOwogCQlyZXR1cm4gU1RBVFVTX0VS Uk9SOwogCX0KKworCWlmIChhdXRoX3Jlc3VsdCA9PSBTVEFUVVNfT0spCisJCXNldF9hdXRobl9p ZChwb3J0LCBwb3J0LT51c2VyX25hbWUpOworCiAJcmV0dXJuIGF1dGhfcmVzdWx0OwogfQogCkBA IC0xMTc0LDggKzEyMjksMTMgQEAgcGdfR1NTX2NoZWNrYXV0aChQb3J0ICpwb3J0KQogCS8qCiAJ ICogQ29weSB0aGUgb3JpZ2luYWwgbmFtZSBvZiB0aGUgYXV0aGVudGljYXRlZCBwcmluY2lwYWwg aW50byBvdXIgYmFja2VuZAogCSAqIG1lbW9yeSBmb3IgZGlzcGxheSBsYXRlci4KKwkgKgorCSAq IFRoaXMgaXMgYWxzbyBvdXIgYXV0aGVudGljYXRlZCBpZGVudGl0eS4gIFNldCBpdCBub3csIHJh dGhlciB0aGFuCisJICogd2FpdGluZyBmb3IgdGhlIHVzZXJtYXAgY2hlY2sgYmVsb3csIGJlY2F1 c2UgYXV0aGVudGljYXRpb24gaGFzIGFscmVhZHkKKwkgKiBzdWNjZWVkZWQgYW5kIHdlIHdhbnQg dGhlIGxvZyBmaWxlIHRvIHJlZmxlY3QgdGhhdC4KIAkgKi8KIAlwb3J0LT5nc3MtPnByaW5jID0g TWVtb3J5Q29udGV4dFN0cmR1cChUb3BNZW1vcnlDb250ZXh0LCBnYnVmLnZhbHVlKTsKKwlzZXRf YXV0aG5faWQocG9ydCwgZ2J1Zi52YWx1ZSk7CiAKIAkvKgogCSAqIFNwbGl0IHRoZSB1c2VybmFt ZSBhdCB0aGUgcmVhbG0gc2VwYXJhdG9yCkBAIC0xMjg1LDYgKzEzNDUsNyBAQCBwZ19TU1BJX3Jl Y3ZhdXRoKFBvcnQgKnBvcnQpCiAJRFdPUkQJCWRvbWFpbm5hbWVzaXplID0gc2l6ZW9mKGRvbWFp bm5hbWUpOwogCVNJRF9OQU1FX1VTRSBhY2NvdW50bmFtZXVzZTsKIAlITU9EVUxFCQlzZWN1cjMy OworCWNoYXIJICAgKmF1dGhuX2lkOwogCiAJUVVFUllfU0VDVVJJVFlfQ09OVEVYVF9UT0tFTl9G TiBfUXVlcnlTZWN1cml0eUNvbnRleHRUb2tlbjsKIApAQCAtMTUxNCw2ICsxNTc1LDI2IEBAIHBn X1NTUElfcmVjdmF1dGgoUG9ydCAqcG9ydCkKIAkJCXJldHVybiBzdGF0dXM7CiAJfQogCisJLyoK KwkgKiBXZSBoYXZlIGFsbCBvZiB0aGUgaW5mb3JtYXRpb24gbmVjZXNzYXJ5IHRvIGNvbnN0cnVj dCB0aGUgYXV0aGVudGljYXRlZAorCSAqIGlkZW50aXR5LiAgU2V0IGl0IG5vdywgcmF0aGVyIHRo YW4gd2FpdGluZyBmb3IgY2hlY2tfdXNlcm1hcCBiZWxvdywKKwkgKiBiZWNhdXNlIGF1dGhlbnRp Y2F0aW9uIGhhcyBhbHJlYWR5IHN1Y2NlZWRlZCBhbmQgd2Ugd2FudCB0aGUgbG9nIGZpbGUKKwkg KiB0byByZWZsZWN0IHRoYXQuCisJICovCisJaWYgKHBvcnQtPmhiYS0+Y29tcGF0X3JlYWxtKQor CXsKKwkJLyogU0FNLWNvbXBhdGlibGUgZm9ybWF0LiAqLworCQlhdXRobl9pZCA9IHBzcHJpbnRm KCIlc1xcJXMiLCBkb21haW5uYW1lLCBhY2NvdW50bmFtZSk7CisJfQorCWVsc2UKKwl7CisJCS8q IEtlcmJlcm9zIHByaW5jaXBhbCBmb3JtYXQuICovCisJCWF1dGhuX2lkID0gcHNwcmludGYoIiVz QCVzIiwgYWNjb3VudG5hbWUsIGRvbWFpbm5hbWUpOworCX0KKworCXNldF9hdXRobl9pZChwb3J0 LCBhdXRobl9pZCk7CisJcGZyZWUoYXV0aG5faWQpOworCiAJLyoKIAkgKiBDb21wYXJlIHJlYWxt L2RvbWFpbiBpZiByZXF1ZXN0ZWQuIEluIFNTUEksIGFsd2F5cyBjb21wYXJlIGNhc2UKIAkgKiBp bnNlbnNpdGl2ZS4KQEAgLTE5MDEsOCArMTk4MiwxNSBAQCBpZGVudF9pbmV0X2RvbmU6CiAJCXBn X2ZyZWVhZGRyaW5mb19hbGwobG9jYWxfYWRkci5hZGRyLnNzX2ZhbWlseSwgbGEpOwogCiAJaWYg KGlkZW50X3JldHVybikKLQkJLyogU3VjY2VzcyEgQ2hlY2sgdGhlIHVzZXJtYXAgKi8KKwl7CisJ CS8qCisJCSAqIFN1Y2Nlc3MhICBTdG9yZSB0aGUgaWRlbnRpdHksIHRoZW4gY2hlY2sgdGhlIHVz ZXJtYXAuIE5vdGUgdGhhdAorCQkgKiBzZXR0aW5nIHRoZSBhdXRoZW50aWNhdGVkIGlkZW50aXR5 IGlzIGRvbmUgYmVmb3JlIGNoZWNraW5nIHRoZQorCQkgKiB1c2VybWFwLCBiZWNhdXNlIGF0IHRo aXMgcG9pbnQgYXV0aGVudGljYXRpb24gaGFzIHN1Y2NlZWRlZC4KKwkJICovCisJCXNldF9hdXRo bl9pZChwb3J0LCBpZGVudF91c2VyKTsKIAkJcmV0dXJuIGNoZWNrX3VzZXJtYXAocG9ydC0+aGJh LT51c2VybWFwLCBwb3J0LT51c2VyX25hbWUsIGlkZW50X3VzZXIsIGZhbHNlKTsKKwl9CiAJcmV0 dXJuIFNUQVRVU19FUlJPUjsKIH0KIApAQCAtMTkyNiw3ICsyMDE0LDYgQEAgYXV0aF9wZWVyKGhi YVBvcnQgKnBvcnQpCiAJZ2lkX3QJCWdpZDsKICNpZm5kZWYgV0lOMzIKIAlzdHJ1Y3QgcGFzc3dk ICpwdzsKLQljaGFyCSAgICpwZWVyX3VzZXI7CiAJaW50CQkJcmV0OwogI2VuZGlmCiAKQEAgLTE5 NTgsMTIgKzIwNDUsMTQgQEAgYXV0aF9wZWVyKGhiYVBvcnQgKnBvcnQpCiAJCXJldHVybiBTVEFU VVNfRVJST1I7CiAJfQogCi0JLyogTWFrZSBhIGNvcHkgb2Ygc3RhdGljIGdldHB3KigpIHJlc3Vs dCBhcmVhLiAqLwotCXBlZXJfdXNlciA9IHBzdHJkdXAocHctPnB3X25hbWUpOwotCi0JcmV0ID0g Y2hlY2tfdXNlcm1hcChwb3J0LT5oYmEtPnVzZXJtYXAsIHBvcnQtPnVzZXJfbmFtZSwgcGVlcl91 c2VyLCBmYWxzZSk7CisJLyoKKwkgKiBNYWtlIGEgY29weSBvZiBzdGF0aWMgZ2V0cHcqKCkgcmVz dWx0IGFyZWE7IHRoaXMgaXMgb3VyIGF1dGhlbnRpY2F0ZWQKKwkgKiBpZGVudGl0eS4gIFNldCBp dCBiZWZvcmUgY2FsbGluZyBjaGVja191c2VybWFwLCBiZWNhdXNlIGF1dGhlbnRpY2F0aW9uCisJ ICogaGFzIGFscmVhZHkgc3VjY2VlZGVkIGFuZCB3ZSB3YW50IHRoZSBsb2cgZmlsZSB0byByZWZs ZWN0IHRoYXQuCisJICovCisJc2V0X2F1dGhuX2lkKHBvcnQsIHB3LT5wd19uYW1lKTsKIAotCXBm cmVlKHBlZXJfdXNlcik7CisJcmV0ID0gY2hlY2tfdXNlcm1hcChwb3J0LT5oYmEtPnVzZXJtYXAs IHBvcnQtPnVzZXJfbmFtZSwgcG9ydC0+YXV0aG5faWQsIGZhbHNlKTsKIAogCXJldHVybiByZXQ7 CiAjZWxzZQpAQCAtMjIyMCw2ICsyMzA5LDkgQEAgQ2hlY2tQQU1BdXRoKFBvcnQgKnBvcnQsIGNv bnN0IGNoYXIgKnVzZXIsIGNvbnN0IGNoYXIgKnBhc3N3b3JkKQogCiAJcGFtX3Bhc3N3ZCA9IE5V TEw7CQkJLyogVW5zZXQgcGFtX3Bhc3N3ZCAqLwogCisJaWYgKHJldHZhbCA9PSBQQU1fU1VDQ0VT UykKKwkJc2V0X2F1dGhuX2lkKHBvcnQsIHVzZXIpOworCiAJcmV0dXJuIChyZXR2YWwgPT0gUEFN X1NVQ0NFU1MgPyBTVEFUVVNfT0sgOiBTVEFUVVNfRVJST1IpOwogfQogI2VuZGlmCQkJCQkJCS8q IFVTRV9QQU0gKi8KQEAgLTIyNTUsNiArMjM0Nyw3IEBAIENoZWNrQlNEQXV0aChQb3J0ICpwb3J0 LCBjaGFyICp1c2VyKQogCWlmICghcmV0dmFsKQogCQlyZXR1cm4gU1RBVFVTX0VSUk9SOwogCisJ c2V0X2F1dGhuX2lkKHBvcnQsIHVzZXIpOwogCXJldHVybiBTVEFUVVNfT0s7CiB9CiAjZW5kaWYJ CQkJCQkJLyogVVNFX0JTRF9BVVRIICovCkBAIC0yNzYxLDYgKzI4NTQsOSBAQCBDaGVja0xEQVBB dXRoKFBvcnQgKnBvcnQpCiAJCXJldHVybiBTVEFUVVNfRVJST1I7CiAJfQogCisJLyogU2F2ZSB0 aGUgb3JpZ2luYWwgYmluZCBETiBhcyB0aGUgYXV0aGVudGljYXRlZCBpZGVudGl0eS4gKi8KKwlz ZXRfYXV0aG5faWQocG9ydCwgZnVsbHVzZXIpOworCiAJbGRhcF91bmJpbmQobGRhcCk7CiAJcGZy ZWUocGFzc3dkKTsKIAlwZnJlZShmdWxsdXNlcik7CkBAIC0yODI0LDYgKzI5MjAsMzAgQEAgQ2hl Y2tDZXJ0QXV0aChQb3J0ICpwb3J0KQogCQlyZXR1cm4gU1RBVFVTX0VSUk9SOwogCX0KIAorCWlm IChwb3J0LT5oYmEtPmF1dGhfbWV0aG9kID09IHVhQ2VydCkKKwl7CisJCS8qCisJCSAqIEZvciBj ZXJ0IGF1dGgsIHRoZSBjbGllbnQncyBTdWJqZWN0IEROIGlzIGFsd2F5cyBvdXIgYXV0aGVudGlj YXRlZAorCQkgKiBpZGVudGl0eSwgZXZlbiBpZiB3ZSdyZSBvbmx5IHVzaW5nIGl0cyBDTiBmb3Ig YXV0aG9yaXphdGlvbi4gIFNldAorCQkgKiBpdCBub3csIHJhdGhlciB0aGFuIHdhaXRpbmcgZm9y IGNoZWNrX3VzZXJtYXAoKSBiZWxvdywgYmVjYXVzZQorCQkgKiBhdXRoZW50aWNhdGlvbiBoYXMg YWxyZWFkeSBzdWNjZWVkZWQgYW5kIHdlIHdhbnQgdGhlIGxvZyBmaWxlIHRvCisJCSAqIHJlZmxl Y3QgdGhhdC4KKwkJICovCisJCWlmICghcG9ydC0+cGVlcl9kbikKKwkJeworCQkJLyoKKwkJCSAq IFRoaXMgc2hvdWxkIG5vdCBoYXBwZW4gYXMgYm90aCBwZWVyX2RuIGFuZCBwZWVyX2NuIHNob3Vs ZCBiZQorCQkJICogc2V0IGluIHRoaXMgY29udGV4dC4KKwkJCSAqLworCQkJZXJlcG9ydChMT0cs CisJCQkJCShlcnJtc2coImNlcnRpZmljYXRlIGF1dGhlbnRpY2F0aW9uIGZhaWxlZCBmb3IgdXNl ciBcIiVzXCI6IHVuYWJsZSB0byByZXRyaWV2ZSBzdWJqZWN0IEROIiwKKwkJCQkJCQlwb3J0LT51 c2VyX25hbWUpKSk7CisJCQlyZXR1cm4gU1RBVFVTX0VSUk9SOworCQl9CisKKwkJc2V0X2F1dGhu X2lkKHBvcnQsIHBvcnQtPnBlZXJfZG4pOworCX0KKwogCS8qIEp1c3QgcGFzcyB0aGUgY2VydGlm aWNhdGUgY24vZG4gdG8gdGhlIHVzZXJtYXAgY2hlY2sgKi8KIAlzdGF0dXNfY2hlY2tfdXNlcm1h cCA9IGNoZWNrX3VzZXJtYXAocG9ydC0+aGJhLT51c2VybWFwLCBwb3J0LT51c2VyX25hbWUsIHBl ZXJfdXNlcm5hbWUsIGZhbHNlKTsKIAlpZiAoc3RhdHVzX2NoZWNrX3VzZXJtYXAgIT0gU1RBVFVT X09LKQpAQCAtMjk5NSw2ICszMTE1LDggQEAgQ2hlY2tSQURJVVNBdXRoKFBvcnQgKnBvcnQpCiAJ CSAqLwogCQlpZiAocmV0ID09IFNUQVRVU19PSykKIAkJeworCQkJc2V0X2F1dGhuX2lkKHBvcnQs IHBvcnQtPnVzZXJfbmFtZSk7CisKIAkJCXBmcmVlKHBhc3N3ZCk7CiAJCQlyZXR1cm4gU1RBVFVT X09LOwogCQl9CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9saWJwcS9oYmEuYyBiL3NyYy9iYWNr ZW5kL2xpYnBxL2hiYS5jCmluZGV4IGZlYjcxMWE2ZWYuLmI3MjBiMDNlOWEgMTAwNjQ0Ci0tLSBh L3NyYy9iYWNrZW5kL2xpYnBxL2hiYS5jCisrKyBiL3NyYy9iYWNrZW5kL2xpYnBxL2hiYS5jCkBA IC0zMTQxLDMgKzMxNDEsMjcgQEAgaGJhX2dldGF1dGhtZXRob2QoaGJhUG9ydCAqcG9ydCkKIHsK IAljaGVja19oYmEocG9ydCk7CiB9CisKKworLyoKKyAqIFJldHVybiB0aGUgbmFtZSBvZiB0aGUg YXV0aCBtZXRob2QgaW4gdXNlICgiZ3NzIiwgIm1kNSIsICJ0cnVzdCIsIGV0Yy4pLgorICoKKyAq IFRoZSByZXR1cm4gdmFsdWUgaXMgc3RhdGljYWxseSBhbGxvY2F0ZWQgKHNlZSB0aGUgVXNlckF1 dGhOYW1lIGFycmF5KSBhbmQKKyAqIHNob3VsZCBub3QgYmUgZnJlZWQuCisgKi8KK2NvbnN0IGNo YXIgKgoraGJhX2F1dGhuYW1lKGhiYVBvcnQgKnBvcnQpCit7CisJVXNlckF1dGgJYXV0aF9tZXRo b2Q7CisKKwlBc3NlcnQocG9ydC0+aGJhKTsKKwlhdXRoX21ldGhvZCA9IHBvcnQtPmhiYS0+YXV0 aF9tZXRob2Q7CisKKwlpZiAoYXV0aF9tZXRob2QgPCAwIHx8IFVTRVJfQVVUSF9MQVNUIDwgYXV0 aF9tZXRob2QpCisJeworCQkvKiBTaG91bGQgbmV2ZXIgaGFwcGVuLiAqLworCQllbG9nKEZBVEFM LCAicG9ydCBoYXMgb3V0LW9mLWJvdW5kcyBVc2VyQXV0aDogJWQiLCBhdXRoX21ldGhvZCk7CisJ fQorCisJcmV0dXJuIFVzZXJBdXRoTmFtZVthdXRoX21ldGhvZF07Cit9CmRpZmYgLS1naXQgYS9z cmMvaW5jbHVkZS9saWJwcS9oYmEuaCBiL3NyYy9pbmNsdWRlL2xpYnBxL2hiYS5oCmluZGV4IDFl Yzg2MDNkYTcuLjYzZjI5NjIxMzkgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2xpYnBxL2hiYS5o CisrKyBiL3NyYy9pbmNsdWRlL2xpYnBxL2hiYS5oCkBAIC0xMzcsNiArMTM3LDcgQEAgdHlwZWRl ZiBzdHJ1Y3QgUG9ydCBoYmFQb3J0OwogCiBleHRlcm4gYm9vbCBsb2FkX2hiYSh2b2lkKTsKIGV4 dGVybiBib29sIGxvYWRfaWRlbnQodm9pZCk7CitleHRlcm4gY29uc3QgY2hhciAqaGJhX2F1dGhu YW1lKGhiYVBvcnQgKnBvcnQpOwogZXh0ZXJuIHZvaWQgaGJhX2dldGF1dGhtZXRob2QoaGJhUG9y dCAqcG9ydCk7CiBleHRlcm4gaW50CWNoZWNrX3VzZXJtYXAoY29uc3QgY2hhciAqdXNlcm1hcF9u YW1lLAogCQkJCQkJICBjb25zdCBjaGFyICpwZ19yb2xlLCBjb25zdCBjaGFyICphdXRoX3VzZXIs CmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9saWJwcS9saWJwcS1iZS5oIGIvc3JjL2luY2x1ZGUv bGlicHEvbGlicHEtYmUuaAppbmRleCA3MTNjMzRmZWRkLi4wMjAxNWVmZTEzIDEwMDY0NAotLS0g YS9zcmMvaW5jbHVkZS9saWJwcS9saWJwcS1iZS5oCisrKyBiL3NyYy9pbmNsdWRlL2xpYnBxL2xp YnBxLWJlLmgKQEAgLTE1OSw2ICsxNTksMTkgQEAgdHlwZWRlZiBzdHJ1Y3QgUG9ydAogCSAqLwog CUhiYUxpbmUgICAgKmhiYTsKIAorCS8qCisJICogQXV0aGVudGljYXRlZCBpZGVudGl0eS4gIFRo ZSBtZWFuaW5nIG9mIHRoaXMgaWRlbnRpZmllciBpcyBkZXBlbmRlbnQgb24KKwkgKiBoYmEtPmF1 dGhfbWV0aG9kOyBpdCBpcyB0aGUgaWRlbnRpdHkgKGlmIGFueSkgdGhhdCB0aGUgdXNlciBwcmVz ZW50ZWQKKwkgKiBkdXJpbmcgdGhlIGF1dGhlbnRpY2F0aW9uIGN5Y2xlLCBiZWZvcmUgdGhleSB3 ZXJlIGFzc2lnbmVkIGEgZGF0YWJhc2UKKwkgKiByb2xlLiAgKEl0IGlzIGVmZmVjdGl2ZWx5IHRo ZSAiU1lTVEVNLVVTRVJOQU1FIiBvZiBhIHBnX2lkZW50IHVzZXJtYXAKKwkgKiAtLSB0aG91Z2gg dGhlIGV4YWN0IHN0cmluZyBpbiB1c2UgbWF5IGJlIGRpZmZlcmVudCwgZGVwZW5kaW5nIG9uIHBn X2hiYQorCSAqIG9wdGlvbnMuKQorCSAqCisJICogYXV0aG5faWQgaXMgTlVMTCBpZiB0aGUgdXNl ciBoYXMgbm90IGFjdHVhbGx5IGJlZW4gYXV0aGVudGljYXRlZCwgZm9yCisJICogZXhhbXBsZSBp ZiB0aGUgInRydXN0IiBhdXRoIG1ldGhvZCBpcyBpbiB1c2UuCisJICovCisJY29uc3QgY2hhciAq YXV0aG5faWQ7CisKIAkvKgogCSAqIFRDUCBrZWVwYWxpdmUgYW5kIHVzZXIgdGltZW91dCBzZXR0 aW5ncy4KIAkgKgpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvYXV0aGVudGljYXRpb24vdC8wMDFfcGFz c3dvcmQucGwgYi9zcmMvdGVzdC9hdXRoZW50aWNhdGlvbi90LzAwMV9wYXNzd29yZC5wbAppbmRl eCA2NTMwM2NhM2Y1Li43NzVmYWNlMzA2IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9hdXRoZW50aWNh dGlvbi90LzAwMV9wYXNzd29yZC5wbAorKysgYi9zcmMvdGVzdC9hdXRoZW50aWNhdGlvbi90LzAw MV9wYXNzd29yZC5wbApAQCAtMTcsNyArMTcsNyBAQCBpZiAoISR1c2VfdW5peF9zb2NrZXRzKQog fQogZWxzZQogewotCXBsYW4gdGVzdHMgPT4gMTM7CisJcGxhbiB0ZXN0cyA9PiAyMzsKIH0KIAog CkBAIC0zNSwxNSArMzUsMTIgQEAgc3ViIHJlc2V0X3BnX2hiYQogCXJldHVybjsKIH0KIAotIyBU ZXN0IGFjY2VzcyBmb3IgYSBzaW5nbGUgcm9sZSwgdXNlZnVsIHRvIHdyYXAgYWxsIHRlc3RzIGlu dG8gb25lLgorIyBUZXN0IGFjY2VzcyBmb3IgYSBzaW5nbGUgcm9sZSwgdXNlZnVsIHRvIHdyYXAg YWxsIHRlc3RzIGludG8gb25lLiAgRXh0cmEKKyMgbmFtZWQgcGFyYW1ldGVycyBhcmUgcGFzc2Vk IHRvIGNvbm5lY3Rfb2svZmFpbHMgYXMtaXMuCiBzdWIgdGVzdF9yb2xlCiB7Ci0JbXkgJG5vZGUg ICAgICAgICAgPSBzaGlmdDsKLQlteSAkcm9sZSAgICAgICAgICA9IHNoaWZ0OwotCW15ICRtZXRo b2QgICAgICAgID0gc2hpZnQ7Ci0JbXkgJGV4cGVjdGVkX3JlcyAgPSBzaGlmdDsKKwlteSAoJG5v ZGUsICRyb2xlLCAkbWV0aG9kLCAkZXhwZWN0ZWRfcmVzLCAlcGFyYW1zKSA9IEBfOwogCW15ICRz dGF0dXNfc3RyaW5nID0gJ2ZhaWxlZCc7Ci0KIAkkc3RhdHVzX3N0cmluZyA9ICdzdWNjZXNzJyBp ZiAoJGV4cGVjdGVkX3JlcyBlcSAwKTsKIAogCW15ICRjb25uc3RyID0gInVzZXI9JHJvbGUiOwpA QCAtNTIsMTggKzQ5LDE5IEBAIHN1YiB0ZXN0X3JvbGUKIAogCWlmICgkZXhwZWN0ZWRfcmVzIGVx IDApCiAJewotCQkkbm9kZS0+Y29ubmVjdF9vaygkY29ubnN0ciwgJHRlc3RuYW1lKTsKKwkJJG5v ZGUtPmNvbm5lY3Rfb2soJGNvbm5zdHIsICR0ZXN0bmFtZSwgJXBhcmFtcyk7CiAJfQogCWVsc2UK IAl7CiAJCSMgTm8gY2hlY2tzIG9mIHRoZSBlcnJvciBtZXNzYWdlLCBvbmx5IHRoZSBzdGF0dXMg Y29kZS4KLQkJJG5vZGUtPmNvbm5lY3RfZmFpbHMoJGNvbm5zdHIsICR0ZXN0bmFtZSk7CisJCSRu b2RlLT5jb25uZWN0X2ZhaWxzKCRjb25uc3RyLCAkdGVzdG5hbWUsICVwYXJhbXMpOwogCX0KIH0K IAogIyBJbml0aWFsaXplIHByaW1hcnkgbm9kZQogbXkgJG5vZGUgPSBnZXRfbmV3X25vZGUoJ3By aW1hcnknKTsKICRub2RlLT5pbml0OworJG5vZGUtPmFwcGVuZF9jb25mKCdwb3N0Z3Jlc3FsLmNv bmYnLCAibG9nX2Nvbm5lY3Rpb25zID0gb25cbiIpOwogJG5vZGUtPnN0YXJ0OwogCiAjIENyZWF0 ZSAzIHJvbGVzIHdpdGggZGlmZmVyZW50IHBhc3N3b3JkIG1ldGhvZHMgZm9yIGVhY2ggb25lLiBU aGUgc2FtZQpAQCAtNzYsMjYgKzc0LDQxIEBAICRub2RlLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywK ICk7CiAkRU5WeyJQR1BBU1NXT1JEIn0gPSAncGFzcyc7CiAKLSMgRm9yICJ0cnVzdCIgbWV0aG9k LCBhbGwgdXNlcnMgc2hvdWxkIGJlIGFibGUgdG8gY29ubmVjdC4KKyMgRm9yICJ0cnVzdCIgbWV0 aG9kLCBhbGwgdXNlcnMgc2hvdWxkIGJlIGFibGUgdG8gY29ubmVjdC4gVGhlc2UgdXNlcnMgYXJl IG5vdAorIyBjb25zaWRlcmVkIHRvIGJlIGF1dGhlbnRpY2F0ZWQuCiByZXNldF9wZ19oYmEoJG5v ZGUsICd0cnVzdCcpOwotdGVzdF9yb2xlKCRub2RlLCAnc2NyYW1fcm9sZScsICd0cnVzdCcsIDAp OwotdGVzdF9yb2xlKCRub2RlLCAnbWQ1X3JvbGUnLCAgICd0cnVzdCcsIDApOwordGVzdF9yb2xl KCRub2RlLCAnc2NyYW1fcm9sZScsICd0cnVzdCcsIDAsCisJbG9nX3VubGlrZSA9PiBbIHFyL2Nv bm5lY3Rpb24gYXV0aGVudGljYXRlZDovIF0pOwordGVzdF9yb2xlKCRub2RlLCAnbWQ1X3JvbGUn LCAgICd0cnVzdCcsIDAsCisJbG9nX3VubGlrZSA9PiBbIHFyL2Nvbm5lY3Rpb24gYXV0aGVudGlj YXRlZDovIF0pOwogCiAjIEZvciBwbGFpbiAicGFzc3dvcmQiIG1ldGhvZCwgYWxsIHVzZXJzIHNo b3VsZCBhbHNvIGJlIGFibGUgdG8gY29ubmVjdC4KIHJlc2V0X3BnX2hiYSgkbm9kZSwgJ3Bhc3N3 b3JkJyk7Ci10ZXN0X3JvbGUoJG5vZGUsICdzY3JhbV9yb2xlJywgJ3Bhc3N3b3JkJywgMCk7Ci10 ZXN0X3JvbGUoJG5vZGUsICdtZDVfcm9sZScsICAgJ3Bhc3N3b3JkJywgMCk7Cit0ZXN0X3JvbGUo JG5vZGUsICdzY3JhbV9yb2xlJywgJ3Bhc3N3b3JkJywgMCwKKwlsb2dfbGlrZSA9PiBbIHFyL2Nv bm5lY3Rpb24gYXV0aGVudGljYXRlZDogaWRlbnRpdHk9InNjcmFtX3JvbGUiIG1ldGhvZD1wYXNz d29yZC8gXSk7Cit0ZXN0X3JvbGUoJG5vZGUsICdtZDVfcm9sZScsICdwYXNzd29yZCcsIDAsCisJ bG9nX2xpa2UgPT4gWyBxci9jb25uZWN0aW9uIGF1dGhlbnRpY2F0ZWQ6IGlkZW50aXR5PSJtZDVf cm9sZSIgbWV0aG9kPXBhc3N3b3JkLyBdKTsKIAogIyBGb3IgInNjcmFtLXNoYS0yNTYiIG1ldGhv ZCwgdXNlciAic2NyYW1fcm9sZSIgc2hvdWxkIGJlIGFibGUgdG8gY29ubmVjdC4KIHJlc2V0X3Bn X2hiYSgkbm9kZSwgJ3NjcmFtLXNoYS0yNTYnKTsKLXRlc3Rfcm9sZSgkbm9kZSwgJ3NjcmFtX3Jv bGUnLCAnc2NyYW0tc2hhLTI1NicsIDApOwotdGVzdF9yb2xlKCRub2RlLCAnbWQ1X3JvbGUnLCAg ICdzY3JhbS1zaGEtMjU2JywgMik7Cit0ZXN0X3JvbGUoJG5vZGUsICdzY3JhbV9yb2xlJywgJ3Nj cmFtLXNoYS0yNTYnLCAwLAorCWxvZ19saWtlID0+IFsgcXIvY29ubmVjdGlvbiBhdXRoZW50aWNh dGVkOiBpZGVudGl0eT0ic2NyYW1fcm9sZSIgbWV0aG9kPXNjcmFtLXNoYS0yNTYvIF0pOwordGVz dF9yb2xlKCRub2RlLCAnbWQ1X3JvbGUnLCAnc2NyYW0tc2hhLTI1NicsIDIsCisJbG9nX3VubGlr ZSA9PiBbIHFyL2Nvbm5lY3Rpb24gYXV0aGVudGljYXRlZDovIF0pOworCisjIFRlc3QgdGhhdCBi YWQgcGFzc3dvcmRzIGFyZSByZWplY3RlZC4KKyRFTlZ7IlBHUEFTU1dPUkQifSA9ICdiYWRwYXNz JzsKK3Rlc3Rfcm9sZSgkbm9kZSwgJ3NjcmFtX3JvbGUnLCAnc2NyYW0tc2hhLTI1NicsIDIsCisJ bG9nX3VubGlrZSA9PiBbIHFyL2Nvbm5lY3Rpb24gYXV0aGVudGljYXRlZDovIF0pOworJEVOVnsi UEdQQVNTV09SRCJ9ID0gJ3Bhc3MnOwogCiAjIEZvciAibWQ1IiBtZXRob2QsIGFsbCB1c2VycyBz aG91bGQgYmUgYWJsZSB0byBjb25uZWN0IChTQ1JBTQogIyBhdXRoZW50aWNhdGlvbiB3aWxsIGJl IHBlcmZvcm1lZCBmb3IgdGhlIHVzZXIgd2l0aCBhIFNDUkFNIHNlY3JldC4pCiByZXNldF9wZ19o YmEoJG5vZGUsICdtZDUnKTsKLXRlc3Rfcm9sZSgkbm9kZSwgJ3NjcmFtX3JvbGUnLCAnbWQ1Jywg MCk7Ci10ZXN0X3JvbGUoJG5vZGUsICdtZDVfcm9sZScsICAgJ21kNScsIDApOwordGVzdF9yb2xl KCRub2RlLCAnc2NyYW1fcm9sZScsICdtZDUnLCAwLAorCWxvZ19saWtlID0+IFsgcXIvY29ubmVj dGlvbiBhdXRoZW50aWNhdGVkOiBpZGVudGl0eT0ic2NyYW1fcm9sZSIgbWV0aG9kPW1kNS8gXSk7 Cit0ZXN0X3JvbGUoJG5vZGUsICdtZDVfcm9sZScsICdtZDUnLCAwLAorCWxvZ19saWtlID0+IFsg cXIvY29ubmVjdGlvbiBhdXRoZW50aWNhdGVkOiBpZGVudGl0eT0ibWQ1X3JvbGUiIG1ldGhvZD1t ZDUvIF0pOwogCiAjIFRlc3RzIGZvciBjaGFubmVsIGJpbmRpbmcgd2l0aG91dCBTU0wuCiAjIFVz aW5nIHRoZSBwYXNzd29yZCBhdXRoZW50aWNhdGlvbiBtZXRob2Q7IGNoYW5uZWwgYmluZGluZyBj YW4ndCB3b3JrCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9rZXJiZXJvcy90LzAwMV9hdXRoLnBsIGIv c3JjL3Rlc3Qva2VyYmVyb3MvdC8wMDFfYXV0aC5wbAppbmRleCA4YjhjN2M0ODE0Li43NTMwOGVj ZWQ4IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9rZXJiZXJvcy90LzAwMV9hdXRoLnBsCisrKyBiL3Ny Yy90ZXN0L2tlcmJlcm9zL3QvMDAxX2F1dGgucGwKQEAgLTIwLDcgKzIwLDcgQEAgdXNlIFRpbWU6 OkhpUmVzIHF3KHVzbGVlcCk7CiAKIGlmICgkRU5We3dpdGhfZ3NzYXBpfSBlcSAneWVzJykKIHsK LQlwbGFuIHRlc3RzID0+IDM0OworCXBsYW4gdGVzdHMgPT4gNDY7CiB9CiBlbHNlCiB7CkBAIC0x ODMsMzkgKzE4MywzNiBAQCBub3RlICJydW5uaW5nIHRlc3RzIjsKIHN1YiB0ZXN0X2FjY2Vzcwog ewogCW15ICgkbm9kZSwgJHJvbGUsICRxdWVyeSwgJGV4cGVjdGVkX3JlcywgJGdzc2VuY21vZGUs ICR0ZXN0X25hbWUsCi0JCSRleHBlY3RfbG9nX21zZykKKwkJQGV4cGVjdF9sb2dfbXNncykKIAkg ID0gQF87CiAKIAkjIG5lZWQgdG8gY29ubmVjdCBvdmVyIFRDUC9JUCBmb3IgS2VyYmVyb3MKIAlt eSAkY29ubnN0ciA9ICRub2RlLT5jb25uc3RyKCdwb3N0Z3JlcycpCiAJICAuICIgdXNlcj0kcm9s ZSBob3N0PSRob3N0IGhvc3RhZGRyPSRob3N0YWRkciAkZ3NzZW5jbW9kZSI7CiAKKwlteSAlcGFy YW1zID0gKAorCQlzcWwgPT4gJHF1ZXJ5LAorCSk7CisKKwlpZiAoQGV4cGVjdF9sb2dfbXNncykK Kwl7CisJCSMgTWF0Y2ggZXZlcnkgbWVzc2FnZSBsaXRlcmFsbHkuCisJCW15IEByZWdleGVzID0g bWFwIHsgcXIvXFEkX1xFLyB9IEBleHBlY3RfbG9nX21zZ3M7CisKKwkJJHBhcmFtc3tsb2dfbGlr ZX0gPSBcQHJlZ2V4ZXM7CisJfQorCiAJaWYgKCRleHBlY3RlZF9yZXMgZXEgMCkKIAl7CiAJCSMg VGhlIHJlc3VsdCBpcyBhc3N1bWVkIHRvIG1hdGNoICJ0cnVlIiwgb3IgInQiLCBoZXJlLgotCQkk bm9kZS0+Y29ubmVjdF9vaygKLQkJCSRjb25uc3RyLCAkdGVzdF9uYW1lLAotCQkJc3FsICAgICAg ICAgICAgID0+ICRxdWVyeSwKLQkJCWV4cGVjdGVkX3N0ZG91dCA9PiBxci9edCQvKTsKKwkJJHBh cmFtc3tleHBlY3RlZF9zdGRvdXR9ID0gcXIvXnQkLzsKKworCQkkbm9kZS0+Y29ubmVjdF9vaygk Y29ubnN0ciwgJHRlc3RfbmFtZSwgJXBhcmFtcyk7CiAJfQogCWVsc2UKIAl7Ci0JCSRub2RlLT5j b25uZWN0X2ZhaWxzKCRjb25uc3RyLCAkdGVzdF9uYW1lKTsKKwkJJG5vZGUtPmNvbm5lY3RfZmFp bHMoJGNvbm5zdHIsICR0ZXN0X25hbWUsICVwYXJhbXMpOwogCX0KLQotCSMgVmVyaWZ5IHNwZWNp ZmllZCBsb2cgbWVzc2FnZSBpcyBsb2dnZWQgaW4gdGhlIGxvZyBmaWxlLgotCWlmICgkZXhwZWN0 X2xvZ19tc2cgbmUgJycpCi0JewotCQlteSAkZmlyc3RfbG9nZmlsZSA9IHNsdXJwX2ZpbGUoJG5v ZGUtPmxvZ2ZpbGUpOwotCi0JCWxpa2UoJGZpcnN0X2xvZ2ZpbGUsIHFyL1xRJGV4cGVjdF9sb2df bXNnXEUvLAotCQkJICdmb3VuZCBleHBlY3RlZCBsb2cgZmlsZSBjb250ZW50Jyk7Ci0JfQotCi0J IyBDbGVhbiB1cCBhbnkgZXhpc3RpbmcgY29udGVudHMgaW4gdGhlIG5vZGUncyBsb2cgZmlsZSBz byBhcwotCSMgZnV0dXJlIHRlc3RzIGRvbid0IHN0ZXAgb24gZWFjaCBvdGhlcidzIGdlbmVyYXRl ZCBjb250ZW50cy4KLQl0cnVuY2F0ZSAkbm9kZS0+bG9nZmlsZSwgMDsKLQlyZXR1cm47CiB9CiAK ICMgQXMgYWJvdmUsIGJ1dCB0ZXN0IGZvciBhbiBhcmJpdHJhcnkgcXVlcnkgcmVzdWx0LgpAQCAt MjQwLDExICsyMzcsMTkgQEAgJG5vZGUtPmFwcGVuZF9jb25mKCdwZ19oYmEuY29uZicsCiAJcXF7 aG9zdCBhbGwgYWxsICRob3N0YWRkci8zMiBnc3MgbWFwPW15bWFwfSk7CiAkbm9kZS0+cmVzdGFy dDsKIAotdGVzdF9hY2Nlc3MoJG5vZGUsICd0ZXN0MScsICdTRUxFQ1QgdHJ1ZScsIDIsICcnLCAn ZmFpbHMgd2l0aG91dCB0aWNrZXQnLCAnJyk7Cit0ZXN0X2FjY2Vzcygkbm9kZSwgJ3Rlc3QxJywg J1NFTEVDVCB0cnVlJywgMiwgJycsICdmYWlscyB3aXRob3V0IHRpY2tldCcpOwogCiBydW5fbG9n IFsgJGtpbml0LCAndGVzdDEnIF0sIFwkdGVzdDFfcGFzc3dvcmQgb3IgQkFJTF9PVVQoJD8pOwog Ci10ZXN0X2FjY2Vzcygkbm9kZSwgJ3Rlc3QxJywgJ1NFTEVDVCB0cnVlJywgMiwgJycsICdmYWls cyB3aXRob3V0IG1hcHBpbmcnLCAnJyk7Cit0ZXN0X2FjY2VzcygKKwkkbm9kZSwKKwkndGVzdDEn LAorCSdTRUxFQ1QgdHJ1ZScsCisJMiwKKwknJywKKwknZmFpbHMgd2l0aG91dCBtYXBwaW5nJywK KwkiY29ubmVjdGlvbiBhdXRoZW50aWNhdGVkOiBpZGVudGl0eT1cInRlc3QxXEAkcmVhbG1cIiBt ZXRob2Q9Z3NzIiwKKwkibm8gbWF0Y2ggaW4gdXNlcm1hcCBcIm15bWFwXCIgZm9yIHVzZXIgXCJ0 ZXN0MVwiIik7CiAKICRub2RlLT5hcHBlbmRfY29uZigncGdfaWRlbnQuY29uZicsIHFxe215bWFw ICAvXiguKilcQCRyZWFsbVwkICBcXDF9KTsKICRub2RlLT5yZXN0YXJ0OwpAQCAtMjU2LDYgKzI2 MSw3IEBAIHRlc3RfYWNjZXNzKAogCTAsCiAJJycsCiAJJ3N1Y2NlZWRzIHdpdGggbWFwcGluZyB3 aXRoIGRlZmF1bHQgZ3NzZW5jbW9kZSBhbmQgaG9zdCBoYmEnLAorCSJjb25uZWN0aW9uIGF1dGhl bnRpY2F0ZWQ6IGlkZW50aXR5PVwidGVzdDFcQCRyZWFsbVwiIG1ldGhvZD1nc3MiLAogCSJjb25u ZWN0aW9uIGF1dGhvcml6ZWQ6IHVzZXI9JHVzZXJuYW1lIGRhdGFiYXNlPSRkYm5hbWUgYXBwbGlj YXRpb25fbmFtZT0kYXBwbGljYXRpb24gR1NTIChhdXRoZW50aWNhdGVkPXllcywgZW5jcnlwdGVk PXllcywgcHJpbmNpcGFsPXRlc3QxXEAkcmVhbG0pIgogKTsKIApAQCAtMjY2LDYgKzI3Miw3IEBA IHRlc3RfYWNjZXNzKAogCTAsCiAJJ2dzc2VuY21vZGU9cHJlZmVyJywKIAknc3VjY2VlZHMgd2l0 aCBHU1MtZW5jcnlwdGVkIGFjY2VzcyBwcmVmZXJyZWQgd2l0aCBob3N0IGhiYScsCisJImNvbm5l Y3Rpb24gYXV0aGVudGljYXRlZDogaWRlbnRpdHk9XCJ0ZXN0MVxAJHJlYWxtXCIgbWV0aG9kPWdz cyIsCiAJImNvbm5lY3Rpb24gYXV0aG9yaXplZDogdXNlcj0kdXNlcm5hbWUgZGF0YWJhc2U9JGRi bmFtZSBhcHBsaWNhdGlvbl9uYW1lPSRhcHBsaWNhdGlvbiBHU1MgKGF1dGhlbnRpY2F0ZWQ9eWVz LCBlbmNyeXB0ZWQ9eWVzLCBwcmluY2lwYWw9dGVzdDFcQCRyZWFsbSkiCiApOwogdGVzdF9hY2Nl c3MoCkBAIC0yNzUsNiArMjgyLDcgQEAgdGVzdF9hY2Nlc3MoCiAJMCwKIAknZ3NzZW5jbW9kZT1y ZXF1aXJlJywKIAknc3VjY2VlZHMgd2l0aCBHU1MtZW5jcnlwdGVkIGFjY2VzcyByZXF1aXJlZCB3 aXRoIGhvc3QgaGJhJywKKwkiY29ubmVjdGlvbiBhdXRoZW50aWNhdGVkOiBpZGVudGl0eT1cInRl c3QxXEAkcmVhbG1cIiBtZXRob2Q9Z3NzIiwKIAkiY29ubmVjdGlvbiBhdXRob3JpemVkOiB1c2Vy PSR1c2VybmFtZSBkYXRhYmFzZT0kZGJuYW1lIGFwcGxpY2F0aW9uX25hbWU9JGFwcGxpY2F0aW9u IEdTUyAoYXV0aGVudGljYXRlZD15ZXMsIGVuY3J5cHRlZD15ZXMsIHByaW5jaXBhbD10ZXN0MVxA JHJlYWxtKSIKICk7CiAKQEAgLTMxMSw2ICszMTksNyBAQCB0ZXN0X2FjY2VzcygKIAkwLAogCSdn c3NlbmNtb2RlPXByZWZlcicsCiAJJ3N1Y2NlZWRzIHdpdGggR1NTLWVuY3J5cHRlZCBhY2Nlc3Mg cHJlZmVycmVkIGFuZCBob3N0Z3NzZW5jIGhiYScsCisJImNvbm5lY3Rpb24gYXV0aGVudGljYXRl ZDogaWRlbnRpdHk9XCJ0ZXN0MVxAJHJlYWxtXCIgbWV0aG9kPWdzcyIsCiAJImNvbm5lY3Rpb24g YXV0aG9yaXplZDogdXNlcj0kdXNlcm5hbWUgZGF0YWJhc2U9JGRibmFtZSBhcHBsaWNhdGlvbl9u YW1lPSRhcHBsaWNhdGlvbiBHU1MgKGF1dGhlbnRpY2F0ZWQ9eWVzLCBlbmNyeXB0ZWQ9eWVzLCBw cmluY2lwYWw9dGVzdDFcQCRyZWFsbSkiCiApOwogdGVzdF9hY2Nlc3MoCkBAIC0zMjAsMTAgKzMy OSwxMSBAQCB0ZXN0X2FjY2VzcygKIAkwLAogCSdnc3NlbmNtb2RlPXJlcXVpcmUnLAogCSdzdWNj ZWVkcyB3aXRoIEdTUy1lbmNyeXB0ZWQgYWNjZXNzIHJlcXVpcmVkIGFuZCBob3N0Z3NzZW5jIGhi YScsCisJImNvbm5lY3Rpb24gYXV0aGVudGljYXRlZDogaWRlbnRpdHk9XCJ0ZXN0MVxAJHJlYWxt XCIgbWV0aG9kPWdzcyIsCiAJImNvbm5lY3Rpb24gYXV0aG9yaXplZDogdXNlcj0kdXNlcm5hbWUg ZGF0YWJhc2U9JGRibmFtZSBhcHBsaWNhdGlvbl9uYW1lPSRhcHBsaWNhdGlvbiBHU1MgKGF1dGhl bnRpY2F0ZWQ9eWVzLCBlbmNyeXB0ZWQ9eWVzLCBwcmluY2lwYWw9dGVzdDFcQCRyZWFsbSkiCiAp OwogdGVzdF9hY2Nlc3MoJG5vZGUsICd0ZXN0MScsICdTRUxFQ1QgdHJ1ZScsIDIsICdnc3NlbmNt b2RlPWRpc2FibGUnLAotCSdmYWlscyB3aXRoIEdTUyBlbmNyeXB0aW9uIGRpc2FibGVkIGFuZCBo b3N0Z3NzZW5jIGhiYScsICcnKTsKKwknZmFpbHMgd2l0aCBHU1MgZW5jcnlwdGlvbiBkaXNhYmxl ZCBhbmQgaG9zdGdzc2VuYyBoYmEnKTsKIAogdW5saW5rKCRub2RlLT5kYXRhX2RpciAuICcvcGdf aGJhLmNvbmYnKTsKICRub2RlLT5hcHBlbmRfY29uZigncGdfaGJhLmNvbmYnLApAQCAtMzM3LDEw ICszNDcsMTEgQEAgdGVzdF9hY2Nlc3MoCiAJMCwKIAknZ3NzZW5jbW9kZT1wcmVmZXInLAogCSdz dWNjZWVkcyB3aXRoIEdTUy1lbmNyeXB0ZWQgYWNjZXNzIHByZWZlcnJlZCBhbmQgaG9zdG5vZ3Nz ZW5jIGhiYSwgYnV0IG5vIGVuY3J5cHRpb24nLAorCSJjb25uZWN0aW9uIGF1dGhlbnRpY2F0ZWQ6 IGlkZW50aXR5PVwidGVzdDFcQCRyZWFsbVwiIG1ldGhvZD1nc3MiLAogCSJjb25uZWN0aW9uIGF1 dGhvcml6ZWQ6IHVzZXI9JHVzZXJuYW1lIGRhdGFiYXNlPSRkYm5hbWUgYXBwbGljYXRpb25fbmFt ZT0kYXBwbGljYXRpb24gR1NTIChhdXRoZW50aWNhdGVkPXllcywgZW5jcnlwdGVkPW5vLCBwcmlu Y2lwYWw9dGVzdDFcQCRyZWFsbSkiCiApOwogdGVzdF9hY2Nlc3MoJG5vZGUsICd0ZXN0MScsICdT RUxFQ1QgdHJ1ZScsIDIsICdnc3NlbmNtb2RlPXJlcXVpcmUnLAotCSdmYWlscyB3aXRoIEdTUy1l bmNyeXB0ZWQgYWNjZXNzIHJlcXVpcmVkIGFuZCBob3N0bm9nc3NlbmMgaGJhJywgJycpOworCSdm YWlscyB3aXRoIEdTUy1lbmNyeXB0ZWQgYWNjZXNzIHJlcXVpcmVkIGFuZCBob3N0bm9nc3NlbmMg aGJhJyk7CiB0ZXN0X2FjY2VzcygKIAkkbm9kZSwKIAkndGVzdDEnLApAQCAtMzQ4LDYgKzM1OSw3 IEBAIHRlc3RfYWNjZXNzKAogCTAsCiAJJ2dzc2VuY21vZGU9ZGlzYWJsZScsCiAJJ3N1Y2NlZWRz IHdpdGggR1NTIGVuY3J5cHRpb24gZGlzYWJsZWQgYW5kIGhvc3Rub2dzc2VuYyBoYmEnLAorCSJj b25uZWN0aW9uIGF1dGhlbnRpY2F0ZWQ6IGlkZW50aXR5PVwidGVzdDFcQCRyZWFsbVwiIG1ldGhv ZD1nc3MiLAogCSJjb25uZWN0aW9uIGF1dGhvcml6ZWQ6IHVzZXI9JHVzZXJuYW1lIGRhdGFiYXNl PSRkYm5hbWUgYXBwbGljYXRpb25fbmFtZT0kYXBwbGljYXRpb24gR1NTIChhdXRoZW50aWNhdGVk PXllcywgZW5jcnlwdGVkPW5vLCBwcmluY2lwYWw9dGVzdDFcQCRyZWFsbSkiCiApOwogCkBAIC0z NjQsNSArMzc2LDIyIEBAIHRlc3RfYWNjZXNzKAogCTAsCiAJJycsCiAJJ3N1Y2NlZWRzIHdpdGgg aW5jbHVkZV9yZWFsbT0wIGFuZCBkZWZhdWx0cycsCisJImNvbm5lY3Rpb24gYXV0aGVudGljYXRl ZDogaWRlbnRpdHk9XCJ0ZXN0MVxAJHJlYWxtXCIgbWV0aG9kPWdzcyIsCiAJImNvbm5lY3Rpb24g YXV0aG9yaXplZDogdXNlcj0kdXNlcm5hbWUgZGF0YWJhc2U9JGRibmFtZSBhcHBsaWNhdGlvbl9u YW1lPSRhcHBsaWNhdGlvbiBHU1MgKGF1dGhlbnRpY2F0ZWQ9eWVzLCBlbmNyeXB0ZWQ9eWVzLCBw cmluY2lwYWw9dGVzdDFcQCRyZWFsbSkiCiApOworCisjIFJlc2V0IHBnX2hiYS5jb25mLCBhbmQg Y2F1c2UgYSB1c2VybWFwIGZhaWx1cmUgd2l0aCBhbiBhdXRoZW50aWNhdGlvbgorIyB0aGF0IGhh cyBwYXNzZWQuCit1bmxpbmsoJG5vZGUtPmRhdGFfZGlyIC4gJy9wZ19oYmEuY29uZicpOworJG5v ZGUtPmFwcGVuZF9jb25mKCdwZ19oYmEuY29uZicsCisJcXF7aG9zdCBhbGwgYWxsICRob3N0YWRk ci8zMiBnc3MgaW5jbHVkZV9yZWFsbT0wIGtyYl9yZWFsbT1FWEFNUExFLk9SR30pOworJG5vZGUt PnJlc3RhcnQ7CisKK3Rlc3RfYWNjZXNzKAorCSRub2RlLAorCSd0ZXN0MScsCisJJ1NFTEVDVCB0 cnVlJywKKwkyLAorCScnLAorCSdmYWlscyB3aXRoIHdyb25nIGtyYl9yZWFsbSwgYnV0IHN0aWxs IGF1dGhlbnRpY2F0ZXMnLAorCSJjb25uZWN0aW9uIGF1dGhlbnRpY2F0ZWQ6IGlkZW50aXR5PVwi dGVzdDFcQCRyZWFsbVwiIG1ldGhvZD1nc3MiKTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L2xkYXAv dC8wMDFfYXV0aC5wbCBiL3NyYy90ZXN0L2xkYXAvdC8wMDFfYXV0aC5wbAppbmRleCBhZDU0ODU0 YTQyLi5kZjg4MWMyOTVlIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9sZGFwL3QvMDAxX2F1dGgucGwK KysrIGIvc3JjL3Rlc3QvbGRhcC90LzAwMV9hdXRoLnBsCkBAIC02LDcgKzYsNyBAQCB1c2UgVGVz dDo6TW9yZTsKIAogaWYgKCRFTlZ7d2l0aF9sZGFwfSBlcSAneWVzJykKIHsKLQlwbGFuIHRlc3Rz ID0+IDIyOworCXBsYW4gdGVzdHMgPT4gMjg7CiB9CiBlbHNlCiB7CkBAIC0xNTIsNiArMTUyLDcg QEAgbm90ZSAic2V0dGluZyB1cCBQb3N0Z3JlU1FMIGluc3RhbmNlIjsKIAogbXkgJG5vZGUgPSBn ZXRfbmV3X25vZGUoJ25vZGUnKTsKICRub2RlLT5pbml0OworJG5vZGUtPmFwcGVuZF9jb25mKCdw b3N0Z3Jlc3FsLmNvbmYnLCAibG9nX2Nvbm5lY3Rpb25zID0gb25cbiIpOwogJG5vZGUtPnN0YXJ0 OwogCiAkbm9kZS0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsICdDUkVBVEUgVVNFUiB0ZXN0MDsnKTsK QEAgLTE2MiwxNyArMTYzLDE3IEBAIG5vdGUgInJ1bm5pbmcgdGVzdHMiOwogCiBzdWIgdGVzdF9h Y2Nlc3MKIHsKLQlteSAoJG5vZGUsICRyb2xlLCAkZXhwZWN0ZWRfcmVzLCAkdGVzdF9uYW1lKSA9 IEBfOworCW15ICgkbm9kZSwgJHJvbGUsICRleHBlY3RlZF9yZXMsICR0ZXN0X25hbWUsICVwYXJh bXMpID0gQF87CiAJbXkgJGNvbm5zdHIgPSAidXNlcj0kcm9sZSI7CiAKIAlpZiAoJGV4cGVjdGVk X3JlcyBlcSAwKQogCXsKLQkJJG5vZGUtPmNvbm5lY3Rfb2soJGNvbm5zdHIsICR0ZXN0X25hbWUp OworCQkkbm9kZS0+Y29ubmVjdF9vaygkY29ubnN0ciwgJHRlc3RfbmFtZSwgJXBhcmFtcyk7CiAJ fQogCWVsc2UKIAl7CiAJCSMgTm8gY2hlY2tzIG9mIHRoZSBlcnJvciBtZXNzYWdlLCBvbmx5IHRo ZSBzdGF0dXMgY29kZS4KLQkJJG5vZGUtPmNvbm5lY3RfZmFpbHMoJGNvbm5zdHIsICR0ZXN0X25h bWUpOworCQkkbm9kZS0+Y29ubmVjdF9mYWlscygkY29ubnN0ciwgJHRlc3RfbmFtZSwgJXBhcmFt cyk7CiAJfQogfQogCkBAIC0xODYsMTEgKzE4NywxNiBAQCAkbm9kZS0+cmVzdGFydDsKIAogJEVO VnsiUEdQQVNTV09SRCJ9ID0gJ3dyb25nJzsKIHRlc3RfYWNjZXNzKCRub2RlLCAndGVzdDAnLCAy LAotCSdzaW1wbGUgYmluZCBhdXRoZW50aWNhdGlvbiBmYWlscyBpZiB1c2VyIG5vdCBmb3VuZCBp biBMREFQJyk7CisJJ3NpbXBsZSBiaW5kIGF1dGhlbnRpY2F0aW9uIGZhaWxzIGlmIHVzZXIgbm90 IGZvdW5kIGluIExEQVAnLAorCWxvZ191bmxpa2UgPT4gWyBxci9jb25uZWN0aW9uIGF1dGhlbnRp Y2F0ZWQ6LyBdKTsKIHRlc3RfYWNjZXNzKCRub2RlLCAndGVzdDEnLCAyLAotCSdzaW1wbGUgYmlu ZCBhdXRoZW50aWNhdGlvbiBmYWlscyB3aXRoIHdyb25nIHBhc3N3b3JkJyk7CisJJ3NpbXBsZSBi aW5kIGF1dGhlbnRpY2F0aW9uIGZhaWxzIHdpdGggd3JvbmcgcGFzc3dvcmQnLAorCWxvZ191bmxp a2UgPT4gWyBxci9jb25uZWN0aW9uIGF1dGhlbnRpY2F0ZWQ6LyBdKTsKKwogJEVOVnsiUEdQQVNT V09SRCJ9ID0gJ3NlY3JldDEnOwotdGVzdF9hY2Nlc3MoJG5vZGUsICd0ZXN0MScsIDAsICdzaW1w bGUgYmluZCBhdXRoZW50aWNhdGlvbiBzdWNjZWVkcycpOwordGVzdF9hY2Nlc3MoJG5vZGUsICd0 ZXN0MScsIDAsICdzaW1wbGUgYmluZCBhdXRoZW50aWNhdGlvbiBzdWNjZWVkcycsCisJbG9nX2xp a2UgPT4gWyBxci9jb25uZWN0aW9uIGF1dGhlbnRpY2F0ZWQ6IGlkZW50aXR5PSJ1aWQ9dGVzdDEs ZGM9ZXhhbXBsZSxkYz1uZXQiIG1ldGhvZD1sZGFwLyBdLAorKTsKIAogbm90ZSAic2VhcmNoK2Jp bmQiOwogCkBAIC0yMDYsNyArMjEyLDkgQEAgdGVzdF9hY2Nlc3MoJG5vZGUsICd0ZXN0MCcsIDIs CiB0ZXN0X2FjY2Vzcygkbm9kZSwgJ3Rlc3QxJywgMiwKIAknc2VhcmNoK2JpbmQgYXV0aGVudGlj YXRpb24gZmFpbHMgd2l0aCB3cm9uZyBwYXNzd29yZCcpOwogJEVOVnsiUEdQQVNTV09SRCJ9ID0g J3NlY3JldDEnOwotdGVzdF9hY2Nlc3MoJG5vZGUsICd0ZXN0MScsIDAsICdzZWFyY2grYmluZCBh dXRoZW50aWNhdGlvbiBzdWNjZWVkcycpOwordGVzdF9hY2Nlc3MoJG5vZGUsICd0ZXN0MScsIDAs ICdzZWFyY2grYmluZCBhdXRoZW50aWNhdGlvbiBzdWNjZWVkcycsCisJbG9nX2xpa2UgPT4gWyBx ci9jb25uZWN0aW9uIGF1dGhlbnRpY2F0ZWQ6IGlkZW50aXR5PSJ1aWQ9dGVzdDEsZGM9ZXhhbXBs ZSxkYz1uZXQiIG1ldGhvZD1sZGFwLyBdLAorKTsKIAogbm90ZSAibXVsdGlwbGUgc2VydmVycyI7 CiAKQEAgLTI1MCw5ICsyNTgsMTMgQEAgJG5vZGUtPmFwcGVuZF9jb25mKCdwZ19oYmEuY29uZics CiAkbm9kZS0+cmVzdGFydDsKIAogJEVOVnsiUEdQQVNTV09SRCJ9ID0gJ3NlY3JldDEnOwotdGVz dF9hY2Nlc3MoJG5vZGUsICd0ZXN0MScsIDAsICdzZWFyY2ggZmlsdGVyIGZpbmRzIGJ5IHVpZCcp OwordGVzdF9hY2Nlc3MoJG5vZGUsICd0ZXN0MScsIDAsICdzZWFyY2ggZmlsdGVyIGZpbmRzIGJ5 IHVpZCcsCisJbG9nX2xpa2UgPT4gWyBxci9jb25uZWN0aW9uIGF1dGhlbnRpY2F0ZWQ6IGlkZW50 aXR5PSJ1aWQ9dGVzdDEsZGM9ZXhhbXBsZSxkYz1uZXQiIG1ldGhvZD1sZGFwLyBdLAorKTsKICRF TlZ7IlBHUEFTU1dPUkQifSA9ICdzZWNyZXQyJzsKLXRlc3RfYWNjZXNzKCRub2RlLCAndGVzdDJA ZXhhbXBsZS5uZXQnLCAwLCAnc2VhcmNoIGZpbHRlciBmaW5kcyBieSBtYWlsJyk7Cit0ZXN0X2Fj Y2Vzcygkbm9kZSwgJ3Rlc3QyQGV4YW1wbGUubmV0JywgMCwgJ3NlYXJjaCBmaWx0ZXIgZmluZHMg YnkgbWFpbCcsCisJbG9nX2xpa2UgPT4gWyBxci9jb25uZWN0aW9uIGF1dGhlbnRpY2F0ZWQ6IGlk ZW50aXR5PSJ1aWQ9dGVzdDIsZGM9ZXhhbXBsZSxkYz1uZXQiIG1ldGhvZD1sZGFwLyBdLAorKTsK IAogbm90ZSAic2VhcmNoIGZpbHRlcnMgaW4gTERBUCBVUkxzIjsKIApkaWZmIC0tZ2l0IGEvc3Jj L3Rlc3QvcGVybC9Qb3N0Z3Jlc05vZGUucG0gYi9zcmMvdGVzdC9wZXJsL1Bvc3RncmVzTm9kZS5w bQppbmRleCAzNDI3OWU3MWE4Li5hNWQ2NmM4MDUyIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9wZXJs L1Bvc3RncmVzTm9kZS5wbQorKysgYi9zcmMvdGVzdC9wZXJsL1Bvc3RncmVzTm9kZS5wbQpAQCAt MTg4MCw2ICsxODgwLDE5IEBAIElmIHRoaXMgcmVndWxhciBleHByZXNzaW9uIGlzIHNldCwgbWF0 Y2hlcyBpdCB3aXRoIHRoZSBvdXRwdXQgZ2VuZXJhdGVkLgogCiBJZiB0aGlzIHJlZ3VsYXIgZXhw cmVzc2lvbiBpcyBzZXQsIG1hdGNoZXMgaXQgd2l0aCB0aGUgc3RkZXJyIGdlbmVyYXRlZC4KIAor PWl0ZW0gbG9nX2xpa2UgPT4gWyBxci9yZXF1aXJlZCBtZXNzYWdlLyBdCisKK0lmIGdpdmVuLCBp dCBtdXN0IGJlIGFuIGFycmF5IHJlZmVyZW5jZSBjb250YWluaW5nIGEgbGlzdCBvZiByZWd1bGFy IGV4cHJlc3Npb25zCit0aGF0IG11c3QgbWF0Y2ggYWdhaW5zdCB0aGUgc2VydmVyIGxvZywgdXNp bmcgQzxUZXN0OjpNb3JlOjpsaWtlKCk+LgorCis9aXRlbSBsb2dfdW5saWtlID0+IFsgcXIvcHJv aGliaXRlZCBtZXNzYWdlLyBdCisKK0lmIGdpdmVuLCBpdCBtdXN0IGJlIGFuIGFycmF5IHJlZmVy ZW5jZSBjb250YWluaW5nIGEgbGlzdCBvZiByZWd1bGFyIGV4cHJlc3Npb25zCit0aGF0IG11c3Qg Tk9UIG1hdGNoIGFnYWluc3QgdGhlIHNlcnZlciBsb2cuIFRoZXkgd2lsbCBiZSBwYXNzZWQgdG8K K0M8VGVzdDo6TW9yZTo6dW5saWtlKCk+LgorCis9YmFjaworCiA9YmFjawogCiA9Y3V0CkBAIC0x ODk5LDYgKzE5MTIsMjIgQEAgc3ViIGNvbm5lY3Rfb2sKIAkJJHNxbCA9ICJTRUxFQ1QgXCRcJGNv bm5lY3RlZCB3aXRoICRjb25uc3RyXCRcJCI7CiAJfQogCisJbXkgKEBsb2dfbGlrZSwgQGxvZ191 bmxpa2UpOworCWlmIChkZWZpbmVkKCRwYXJhbXN7bG9nX2xpa2V9KSkKKwl7CisJCUBsb2dfbGlr ZSA9IEB7ICRwYXJhbXN7bG9nX2xpa2V9IH07CisJfQorCWlmIChkZWZpbmVkKCRwYXJhbXN7bG9n X3VubGlrZX0pKQorCXsKKwkJQGxvZ191bmxpa2UgPSBAeyAkcGFyYW1ze2xvZ191bmxpa2V9IH07 CisJfQorCisJaWYgKEBsb2dfbGlrZSBvciBAbG9nX3VubGlrZSkKKwl7CisJCSMgRG9uJ3QgbGV0 IHByZXZpb3VzIGxvZyBlbnRyaWVzIG1hdGNoIGZvciB0aGlzIGNvbm5lY3Rpb24uCisJCXRydW5j YXRlICRzZWxmLT5sb2dmaWxlLCAwOworCX0KKwogCSMgTmV2ZXIgcHJvbXB0IGZvciBhIHBhc3N3 b3JkLCBhbnkgY2FsbGVycyBvZiB0aGlzIHJvdXRpbmUgc2hvdWxkCiAJIyBoYXZlIHNldCB1cCB0 aGluZ3MgcHJvcGVybHksIGFuZCB0aGlzIHNob3VsZCBub3QgYmxvY2suCiAJbXkgKCRyZXQsICRz dGRvdXQsICRzdGRlcnIpID0gJHNlbGYtPnBzcWwoCkBAIC0xOTE4LDYgKzE5NDcsMTkgQEAgc3Vi IGNvbm5lY3Rfb2sKIAl7CiAJICAgIGxpa2UoJHN0ZGVyciwgJHBhcmFtc3tleHBlY3RlZF9zdGRl cnJ9LCAiJHRlc3RfbmFtZTogc3RkZXJyIG1hdGNoZXMiKTsKIAl9CisJaWYgKEBsb2dfbGlrZSBv ciBAbG9nX3VubGlrZSkKKwl7CisJCW15ICRsb2dfY29udGVudHMgPSBUZXN0TGliOjpzbHVycF9m aWxlKCRzZWxmLT5sb2dmaWxlKTsKKworCQl3aGlsZSAobXkgJHJlZ2V4ID0gc2hpZnQgQGxvZ19s aWtlKQorCQl7CisJCQlsaWtlKCRsb2dfY29udGVudHMsICRyZWdleCwgIiR0ZXN0X25hbWU6IGxv ZyBtYXRjaGVzIik7CisJCX0KKwkJd2hpbGUgKG15ICRyZWdleCA9IHNoaWZ0IEBsb2dfdW5saWtl KQorCQl7CisJCQl1bmxpa2UoJGxvZ19jb250ZW50cywgJHJlZ2V4LCAiJHRlc3RfbmFtZTogbG9n IGRvZXMgbm90IG1hdGNoIik7CisJCX0KKwl9CiB9CiAKID1wb2QKQEAgLTE5MzMsNiArMTk3NSwx MiBAQCB0byBmYWlsLgogCiBJZiB0aGlzIHJlZ3VsYXIgZXhwcmVzc2lvbiBpcyBzZXQsIG1hdGNo ZXMgaXQgd2l0aCB0aGUgb3V0cHV0IGdlbmVyYXRlZC4KIAorPWl0ZW0gbG9nX2xpa2UgPT4gWyBx ci9yZXF1aXJlZCBtZXNzYWdlLyBdCisKKz1pdGVtIGxvZ191bmxpa2UgPT4gWyBxci9wcm9oaWJp dGVkIG1lc3NhZ2UvIF0KKworU2VlIEM8Y29ubmVjdF9vaygpPiwgYWJvdmUuCisKID1iYWNrCiAK ID1jdXQKQEAgLTE5NDIsNiArMTk5MCwyMiBAQCBzdWIgY29ubmVjdF9mYWlscwogCWxvY2FsICRU ZXN0OjpCdWlsZGVyOjpMZXZlbCA9ICRUZXN0OjpCdWlsZGVyOjpMZXZlbCArIDE7CiAJbXkgKCRz ZWxmLCAkY29ubnN0ciwgJHRlc3RfbmFtZSwgJXBhcmFtcykgPSBAXzsKIAorCW15IChAbG9nX2xp a2UsIEBsb2dfdW5saWtlKTsKKwlpZiAoZGVmaW5lZCgkcGFyYW1ze2xvZ19saWtlfSkpCisJewor CQlAbG9nX2xpa2UgPSBAeyBkZWxldGUgJHBhcmFtc3tsb2dfbGlrZX0gfTsKKwl9CisJaWYgKGRl ZmluZWQoJHBhcmFtc3tsb2dfdW5saWtlfSkpCisJeworCQlAbG9nX3VubGlrZSA9IEB7IGRlbGV0 ZSAkcGFyYW1ze2xvZ191bmxpa2V9IH07CisJfQorCisJaWYgKEBsb2dfbGlrZSBvciBAbG9nX3Vu bGlrZSkKKwl7CisJCSMgRG9uJ3QgbGV0IHByZXZpb3VzIGxvZyBlbnRyaWVzIG1hdGNoIGZvciB0 aGlzIGNvbm5lY3Rpb24uCisJCXRydW5jYXRlICRzZWxmLT5sb2dmaWxlLCAwOworCX0KKwogCSMg TmV2ZXIgcHJvbXB0IGZvciBhIHBhc3N3b3JkLCBhbnkgY2FsbGVycyBvZiB0aGlzIHJvdXRpbmUg c2hvdWxkCiAJIyBoYXZlIHNldCB1cCB0aGluZ3MgcHJvcGVybHksIGFuZCB0aGlzIHNob3VsZCBu b3QgYmxvY2suCiAJbXkgKCRyZXQsICRzdGRvdXQsICRzdGRlcnIpID0gJHNlbGYtPnBzcWwoCkBA IC0xOTU2LDYgKzIwMjAsMjAgQEAgc3ViIGNvbm5lY3RfZmFpbHMKIAl7CiAJCWxpa2UoJHN0ZGVy ciwgJHBhcmFtc3tleHBlY3RlZF9zdGRlcnJ9LCAiJHRlc3RfbmFtZTogc3RkZXJyIG1hdGNoZXMi KTsKIAl9CisKKwlpZiAoQGxvZ19saWtlIG9yIEBsb2dfdW5saWtlKQorCXsKKwkJbXkgJGxvZ19j b250ZW50cyA9IFRlc3RMaWI6OnNsdXJwX2ZpbGUoJHNlbGYtPmxvZ2ZpbGUpOworCisJCXdoaWxl IChteSAkcmVnZXggPSBzaGlmdCBAbG9nX2xpa2UpCisJCXsKKwkJCWxpa2UoJGxvZ19jb250ZW50 cywgJHJlZ2V4LCAiJHRlc3RfbmFtZTogbG9nIG1hdGNoZXMiKTsKKwkJfQorCQl3aGlsZSAobXkg JHJlZ2V4ID0gc2hpZnQgQGxvZ191bmxpa2UpCisJCXsKKwkJCXVubGlrZSgkbG9nX2NvbnRlbnRz LCAkcmVnZXgsICIkdGVzdF9uYW1lOiBsb2cgZG9lcyBub3QgbWF0Y2giKTsKKwkJfQorCX0KIH0K IAogPXBvZApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3Qvc3NsL3QvMDAxX3NzbHRlc3RzLnBsIGIvc3Jj L3Rlc3Qvc3NsL3QvMDAxX3NzbHRlc3RzLnBsCmluZGV4IDBkZWNiZTcxNzcuLmIxOTQ5ZTI5MDMg MTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3NzbC90LzAwMV9zc2x0ZXN0cy5wbAorKysgYi9zcmMvdGVz dC9zc2wvdC8wMDFfc3NsdGVzdHMucGwKQEAgLTE3LDcgKzE3LDcgQEAgaWYgKCRFTlZ7d2l0aF9z c2x9IG5lICdvcGVuc3NsJykKIH0KIGVsc2UKIHsKLQlwbGFuIHRlc3RzID0+IDEwMzsKKwlwbGFu IHRlc3RzID0+IDExMDsKIH0KIAogIyMjIyBTb21lIGNvbmZpZ3VyYXRpb24KQEAgLTQzMSw3ICs0 MzEsOSBAQCBteSAkZG5fY29ubnN0ciA9ICIkY29tbW9uX2Nvbm5zdHIgZGJuYW1lPWNlcnRkYl9k biI7CiAKICRub2RlLT5jb25uZWN0X29rKAogCSIkZG5fY29ubnN0ciB1c2VyPXNzbHRlc3R1c2Vy IHNzbGNlcnQ9c3NsL2NsaWVudC1kbi5jcnQgc3Nsa2V5PXNzbC9jbGllbnQtZG5fdG1wLmtleSIs Ci0JImNlcnRpZmljYXRlIGF1dGhvcml6YXRpb24gc3VjY2VlZHMgd2l0aCBETiBtYXBwaW5nIik7 CisJImNlcnRpZmljYXRlIGF1dGhvcml6YXRpb24gc3VjY2VlZHMgd2l0aCBETiBtYXBwaW5nIiwK Kwlsb2dfbGlrZSA9PiBbIHFyL2Nvbm5lY3Rpb24gYXV0aGVudGljYXRlZDogaWRlbnRpdHk9IkNO PXNzbHRlc3R1c2VyLWRuLE9VPVRlc3RpbmcsT1U9RW5naW5lZXJpbmcsTz1QR0RHIiBtZXRob2Q9 Y2VydC8gXSwKKyk7CiAKICMgc2FtZSB0aGluZyBidXQgd2l0aCBhIHJlZ2V4CiAkZG5fY29ubnN0 ciA9ICIkY29tbW9uX2Nvbm5zdHIgZGJuYW1lPWNlcnRkYl9kbl9yZSI7CkBAIC00NDUsNyArNDQ3 LDEwIEBAICRkbl9jb25uc3RyID0gIiRjb21tb25fY29ubnN0ciBkYm5hbWU9Y2VydGRiX2NuIjsK IAogJG5vZGUtPmNvbm5lY3Rfb2soCiAJIiRkbl9jb25uc3RyIHVzZXI9c3NsdGVzdHVzZXIgc3Ns Y2VydD1zc2wvY2xpZW50LWRuLmNydCBzc2xrZXk9c3NsL2NsaWVudC1kbl90bXAua2V5IiwKLQki Y2VydGlmaWNhdGUgYXV0aG9yaXphdGlvbiBzdWNjZWVkcyB3aXRoIENOIG1hcHBpbmciKTsKKwki Y2VydGlmaWNhdGUgYXV0aG9yaXphdGlvbiBzdWNjZWVkcyB3aXRoIENOIG1hcHBpbmciLAorCSMg dGhlIGZ1bGwgRE4gc2hvdWxkIHN0aWxsIGJlIHVzZWQgYXMgdGhlIGF1dGhlbnRpY2F0ZWQgaWRl bnRpdHkKKwlsb2dfbGlrZSA9PiBbIHFyL2Nvbm5lY3Rpb24gYXV0aGVudGljYXRlZDogaWRlbnRp dHk9IkNOPXNzbHRlc3R1c2VyLWRuLE9VPVRlc3RpbmcsT1U9RW5naW5lZXJpbmcsTz1QR0RHIiBt ZXRob2Q9Y2VydC8gXSwKKyk7CiAKIAogCkBAIC01MTEsMTMgKzUxNiwxOSBAQCAkbm9kZS0+Y29u bmVjdF9mYWlscygKIAkiJGNvbW1vbl9jb25uc3RyIHVzZXI9YW5vdGhlcnVzZXIgc3NsY2VydD1z c2wvY2xpZW50LmNydCBzc2xrZXk9c3NsL2NsaWVudF90bXAua2V5IiwKIAkiY2VydGlmaWNhdGUg YXV0aG9yaXphdGlvbiBmYWlscyB3aXRoIGNsaWVudCBjZXJ0IGJlbG9uZ2luZyB0byBhbm90aGVy IHVzZXIiLAogCWV4cGVjdGVkX3N0ZGVyciA9PgotCSAgcXIvY2VydGlmaWNhdGUgYXV0aGVudGlj YXRpb24gZmFpbGVkIGZvciB1c2VyICJhbm90aGVydXNlciIvKTsKKwkgIHFyL2NlcnRpZmljYXRl IGF1dGhlbnRpY2F0aW9uIGZhaWxlZCBmb3IgdXNlciAiYW5vdGhlcnVzZXIiLywKKwkjIGNlcnRp ZmljYXRlIGF1dGhlbnRpY2F0aW9uIHNob3VsZCBiZSBsb2dnZWQgZXZlbiBvbiBmYWlsdXJlCisJ bG9nX2xpa2UgPT4gWyBxci9jb25uZWN0aW9uIGF1dGhlbnRpY2F0ZWQ6IGlkZW50aXR5PSJDTj1z c2x0ZXN0dXNlciIgbWV0aG9kPWNlcnQvIF0sCispOwogCiAjIHJldm9rZWQgY2xpZW50IGNlcnQK ICRub2RlLT5jb25uZWN0X2ZhaWxzKAogCSIkY29tbW9uX2Nvbm5zdHIgdXNlcj1zc2x0ZXN0dXNl ciBzc2xjZXJ0PXNzbC9jbGllbnQtcmV2b2tlZC5jcnQgc3Nsa2V5PXNzbC9jbGllbnQtcmV2b2tl ZF90bXAua2V5IiwKIAkiY2VydGlmaWNhdGUgYXV0aG9yaXphdGlvbiBmYWlscyB3aXRoIHJldm9r ZWQgY2xpZW50IGNlcnQiLAotCWV4cGVjdGVkX3N0ZGVyciA9PiBxci9TU0wgZXJyb3I6IHNzbHYz IGFsZXJ0IGNlcnRpZmljYXRlIHJldm9rZWQvKTsKKwlleHBlY3RlZF9zdGRlcnIgPT4gcXIvU1NM IGVycm9yOiBzc2x2MyBhbGVydCBjZXJ0aWZpY2F0ZSByZXZva2VkLywKKwkjIHJldm9rZWQgY2Vy dGlmaWNhdGVzIHNob3VsZCBub3QgYXV0aGVudGljYXRlIHRoZSB1c2VyCisJbG9nX3VubGlrZSA9 PiBbIHFyL2Nvbm5lY3Rpb24gYXV0aGVudGljYXRlZDovIF0sCispOwogCiAjIENoZWNrIHRoYXQg Y29ubmVjdGluZyB3aXRoIGF1dGgtb3B0aW9uIHZlcmlmeS1mdWxsIGluIHBnX2hiYToKICMgd29y a3MsIGlmZiB1c2VybmFtZSBtYXRjaGVzIENvbW1vbiBOYW1lCkBAIC01MjcsMjAgKzUzOCwyNyBA QCAkY29tbW9uX2Nvbm5zdHIgPQogCiAkbm9kZS0+Y29ubmVjdF9vaygKIAkiJGNvbW1vbl9jb25u c3RyIHVzZXI9c3NsdGVzdHVzZXIgc3NsY2VydD1zc2wvY2xpZW50LmNydCBzc2xrZXk9c3NsL2Ns aWVudF90bXAua2V5IiwKLQkiYXV0aF9vcHRpb24gY2xpZW50Y2VydD12ZXJpZnktZnVsbCBzdWNj ZWVkcyB3aXRoIG1hdGNoaW5nIHVzZXJuYW1lIGFuZCBDb21tb24gTmFtZSIKKwkiYXV0aF9vcHRp b24gY2xpZW50Y2VydD12ZXJpZnktZnVsbCBzdWNjZWVkcyB3aXRoIG1hdGNoaW5nIHVzZXJuYW1l IGFuZCBDb21tb24gTmFtZSIsCisJIyB2ZXJpZnktZnVsbCBkb2VzIG5vdCBwcm92aWRlIGF1dGhl bnRpY2F0aW9uCisJbG9nX3VubGlrZSA9PiBbIHFyL2Nvbm5lY3Rpb24gYXV0aGVudGljYXRlZDov IF0sCiApOwogCiAkbm9kZS0+Y29ubmVjdF9mYWlscygKIAkiJGNvbW1vbl9jb25uc3RyIHVzZXI9 YW5vdGhlcnVzZXIgc3NsY2VydD1zc2wvY2xpZW50LmNydCBzc2xrZXk9c3NsL2NsaWVudF90bXAu a2V5IiwKIAkiYXV0aF9vcHRpb24gY2xpZW50Y2VydD12ZXJpZnktZnVsbCBmYWlscyB3aXRoIG1p c21hdGNoaW5nIHVzZXJuYW1lIGFuZCBDb21tb24gTmFtZSIsCiAJZXhwZWN0ZWRfc3RkZXJyID0+ Ci0JICBxci9GQVRBTDogLiogInRydXN0IiBhdXRoZW50aWNhdGlvbiBmYWlsZWQgZm9yIHVzZXIg ImFub3RoZXJ1c2VyIi8sKTsKKwkgIHFyL0ZBVEFMOiAuKiAidHJ1c3QiIGF1dGhlbnRpY2F0aW9u IGZhaWxlZCBmb3IgdXNlciAiYW5vdGhlcnVzZXIiLywKKwkjIHZlcmlmeS1mdWxsIGRvZXMgbm90 IHByb3ZpZGUgYXV0aGVudGljYXRpb24KKwlsb2dfdW5saWtlID0+IFsgcXIvY29ubmVjdGlvbiBh dXRoZW50aWNhdGVkOi8gXSwKKyk7CiAKICMgQ2hlY2sgdGhhdCBjb25uZWN0aW5nIHdpdGggYXV0 aC1vcHRpb252ZXJpZnktY2EgaW4gcGdfaGJhIDoKICMgd29ya3MsIHdoZW4gdXNlcm5hbWUgZG9l c24ndCBtYXRjaCBDb21tb24gTmFtZQogJG5vZGUtPmNvbm5lY3Rfb2soCiAJIiRjb21tb25fY29u bnN0ciB1c2VyPXlldGFub3RoZXJ1c2VyIHNzbGNlcnQ9c3NsL2NsaWVudC5jcnQgc3Nsa2V5PXNz bC9jbGllbnRfdG1wLmtleSIsCi0JImF1dGhfb3B0aW9uIGNsaWVudGNlcnQ9dmVyaWZ5LWNhIHN1 Y2NlZWRzIHdpdGggbWlzbWF0Y2hpbmcgdXNlcm5hbWUgYW5kIENvbW1vbiBOYW1lIgorCSJhdXRo X29wdGlvbiBjbGllbnRjZXJ0PXZlcmlmeS1jYSBzdWNjZWVkcyB3aXRoIG1pc21hdGNoaW5nIHVz ZXJuYW1lIGFuZCBDb21tb24gTmFtZSIsCisJIyB2ZXJpZnktZnVsbCBkb2VzIG5vdCBwcm92aWRl IGF1dGhlbnRpY2F0aW9uCisJbG9nX3VubGlrZSA9PiBbIHFyL2Nvbm5lY3Rpb24gYXV0aGVudGlj YXRlZDovIF0sCiApOwogCiAjIGludGVybWVkaWF0ZSBjbGllbnRfY2EuY3J0IGlzIHByb3ZpZGVk IGJ5IGNsaWVudCwgYW5kIGlzbid0IGluIHNlcnZlcidzIHNzbF9jYV9maWxlCmRpZmYgLS1naXQg YS9zcmMvdGVzdC9zc2wvdC8wMDJfc2NyYW0ucGwgYi9zcmMvdGVzdC9zc2wvdC8wMDJfc2NyYW0u cGwKaW5kZXggNTgzYjYyYjNhMS4uMDI4MGQwYTFlZiAxMDA2NDQKLS0tIGEvc3JjL3Rlc3Qvc3Ns L3QvMDAyX3NjcmFtLnBsCisrKyBiL3NyYy90ZXN0L3NzbC90LzAwMl9zY3JhbS5wbApAQCAtMjcs NyArMjcsNyBAQCBteSAkU0VSVkVSSE9TVENJRFIgPSAnMTI3LjAuMC4xLzMyJzsKIG15ICRzdXBw b3J0c190bHNfc2VydmVyX2VuZF9wb2ludCA9CiAgIGNoZWNrX3BnX2NvbmZpZygiI2RlZmluZSBI QVZFX1g1MDlfR0VUX1NJR05BVFVSRV9OSUQgMSIpOwogCi1teSAkbnVtYmVyX29mX3Rlc3RzID0g JHN1cHBvcnRzX3Rsc19zZXJ2ZXJfZW5kX3BvaW50ID8gOSA6IDEwOworbXkgJG51bWJlcl9vZl90 ZXN0cyA9ICRzdXBwb3J0c190bHNfc2VydmVyX2VuZF9wb2ludCA/IDExIDogMTI7CiAKICMgQWxs b2NhdGlvbiBvZiBiYXNlIGNvbm5lY3Rpb24gc3RyaW5nIHNoYXJlZCBhbW9uZyBtdWx0aXBsZSB0 ZXN0cy4KIG15ICRjb21tb25fY29ubnN0cjsKQEAgLTEwMiw2ICsxMDIsMTIgQEAgJG5vZGUtPmNv bm5lY3RfZmFpbHMoCiAJICBxci9jaGFubmVsIGJpbmRpbmcgcmVxdWlyZWQsIGJ1dCBzZXJ2ZXIg YXV0aGVudGljYXRlZCBjbGllbnQgd2l0aG91dCBjaGFubmVsIGJpbmRpbmcvCiApOwogCisjIENl cnRpZmljYXRlIHZlcmlmaWNhdGlvbiBhdCB0aGUgY29ubmVjdGlvbiBsZXZlbCBzaG91bGQgc3Rp bGwgd29yayBmaW5lLgorJG5vZGUtPmNvbm5lY3Rfb2soCisJInNzbGNlcnQ9c3NsL2NsaWVudC5j cnQgc3Nsa2V5PSRjbGllbnRfdG1wX2tleSBzc2xyb290Y2VydD1pbnZhbGlkIGhvc3RhZGRyPSRT RVJWRVJIT1NUQUREUiBkYm5hbWU9dmVyaWZ5ZGIgdXNlcj1zc2x0ZXN0dXNlciBjaGFubmVsX2Jp bmRpbmc9cmVxdWlyZSIsCisJIlNDUkFNIHdpdGggY2xpZW50Y2VydD12ZXJpZnktZnVsbCBhbmQg Y2hhbm5lbF9iaW5kaW5nPXJlcXVpcmUiLAorCWxvZ19saWtlID0+IFsgcXIvY29ubmVjdGlvbiBh dXRoZW50aWNhdGVkOiBpZGVudGl0eT0ic3NsdGVzdHVzZXIiIG1ldGhvZD1zY3JhbS1zaGEtMjU2 LyBdKTsKKwogIyBjbGVhbiB1cAogdW5saW5rKCRjbGllbnRfdG1wX2tleSk7CiAKLS0gCjIuMjUu MQoK --_003_4f5b0b3dc0b6fe9ae6a34886b4d4000f61eb567ecamelvmwarecom_--