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 1mORzB-0001zE-TF for pgsql-hackers@arkaria.postgresql.org; Thu, 09 Sep 2021 21:53:34 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1mORzA-0000u5-OP for pgsql-hackers@arkaria.postgresql.org; Thu, 09 Sep 2021 21:53:32 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mORzA-0000tx-CF for pgsql-hackers@lists.postgresql.org; Thu, 09 Sep 2021 21:53:32 +0000 Received: from smtp-fw-33001.amazon.com ([207.171.190.10]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mORz7-000690-EF for pgsql-hackers@postgresql.org; Thu, 09 Sep 2021 21:53:31 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.com; i=@amazon.com; q=dns/txt; s=amazon201209; t=1631224410; x=1662760410; h=from:to:cc:date:message-id:references:in-reply-to: mime-version:subject; bh=YKptIRhOSrIk64WFmIZ3x1Gj/p/olZF2eIWUCh7yrhA=; b=LlYyePf3Fqaxc4Wg5zHACJCqrE5TYgNxWI8kq4JDYFtIib2+x5mhYLfE IQpOnURFcD02KrZHDCc3k/2ZzA9b43JrjGhMwDQdlNHIEIbdZ1QkE07tA PIqV6iK+gScZiWzxRmDJML1zudUkQ+MM57CLWzyccyBqkih3G2iR4s+N3 Q=; X-Amazon-filename: 0001-Provide-useful-values-for-postgres-C-with-runtime-co.patch X-IronPort-AV: E=Sophos;i="5.85,281,1624320000"; d="scan'208,223";a="146986756" Subject: Re: Estimating HugePages Requirements? Thread-Topic: Estimating HugePages Requirements? Received: from iad12-co-svc-p1-lb1-vlan2.amazon.com (HELO email-inbound-relay-1a-807d4a99.us-east-1.amazon.com) ([10.43.8.2]) by smtp-border-fw-33001.sea14.amazon.com with ESMTP; 09 Sep 2021 21:53:26 +0000 Received: from EX13MTAUWB001.ant.amazon.com (iad12-ws-svc-p26-lb9-vlan3.iad.amazon.com [10.40.163.38]) by email-inbound-relay-1a-807d4a99.us-east-1.amazon.com (Postfix) with ESMTPS id E8E9FA17B7; Thu, 9 Sep 2021 21:53:23 +0000 (UTC) Received: from EX13D03UWC003.ant.amazon.com (10.43.162.79) by EX13MTAUWB001.ant.amazon.com (10.43.161.207) with Microsoft SMTP Server (TLS) id 15.0.1497.23; Thu, 9 Sep 2021 21:53:23 +0000 Received: from EX13D03UWC004.ant.amazon.com (10.43.162.49) by EX13D03UWC003.ant.amazon.com (10.43.162.79) with Microsoft SMTP Server (TLS) id 15.0.1497.23; Thu, 9 Sep 2021 21:53:22 +0000 Received: from EX13D03UWC004.ant.amazon.com ([10.43.162.49]) by EX13D03UWC004.ant.amazon.com ([10.43.162.49]) with mapi id 15.00.1497.023; Thu, 9 Sep 2021 21:53:22 +0000 From: "Bossart, Nathan" To: Michael Paquier CC: Fujii Masao , Justin Pryzby , Andres Freund , Magnus Hagander , Mark Dilger , Don Seiler , "pgsql-hackers@postgresql.org" Thread-Index: AQHXXVFlwPnSpTb+9Euy6igCA88w9KsLstEAgACWWACAX2qpAIAAxOqAgAJnLACAGIQDgIAAhGWAgABE1QD//5X4AIAAeGWA//+VZgCAANVTgIAAIL0A//+mY4AAdy/rgAAfuuyAAEOdVwAACZYSgAAqsicAAAQNtwAAIXq0gAASjQCAAIXKnoAAHlFrgAAXNKUAAAzfZIAAJRHOAAAHAQ+AAAe/pIAAJI4UAAAAIysAABYCR4A= Date: Thu, 9 Sep 2021 21:53:22 +0000 Message-ID: <6AE0285D-0917-4C05-B6AA-4AEDD2FCBA52@amazon.com> References: <7ED221D0-0D75-46F8-8D6C-8AF70D8EABE7@amazon.com> <89EFD5FB-3C28-459C-9D6D-C9F93F7C2A54@amazon.com> <578A8F79-FD13-4408-865F-4D31EE5D8123@amazon.com> <4cc5b434-b174-9aae-197b-737db6cac4e3@oss.nttdata.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-ms-exchange-messagesentrepresentingtype: 1 x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.43.160.137] Content-Type: multipart/mixed; boundary="_002_6AE0285D09174C05B6AA4AEDD2FCBA52amazoncom_" MIME-Version: 1.0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_002_6AE0285D09174C05B6AA4AEDD2FCBA52amazoncom_ Content-Type: text/plain; charset="utf-8" Content-ID: <87AE5D600B67704887339A4600B775B5@amazon.com> Content-Transfer-Encoding: base64 T24gOS84LzIxLCA5OjE5IFBNLCAiTWljaGFlbCBQYXF1aWVyIiA8bWljaGFlbEBwYXF1aWVyLnh5 ej4gd3JvdGU6DQo+IEZXSVcsIEkgZG9uJ3QgaGF2ZSBhbiBlbnZpcm9ubWVudCBhdCBoYW5kIHRo ZXNlIGRheXMgdG8gdGVzdCBwcm9wZXJseQ0KPiAwMDAxLCBzbyB0aGlzIHdpbGwgaGF2ZSB0byB3 YWl0IGEgYml0LiAgSSByZWFsbHkgbGlrZSB0aGUgYXBwcm9hY2gNCj4gdGFrZW4gYnkgMDAwMiwg YW5kIGl0IGlzIGluZGVwZW5kZW50IG9mIHRoZSBvdGhlciBwYXRjaCB3aGlsZQ0KPiBleHRlbmRp bmcgc3VwcG9ydCBmb3IgcG9zdGdyZXMgLWMgdG8gcHJvdmlkZSB0aGUgY29ycmVjdCBydW50aW1l DQo+IHZhbHVlcy4gIFNvIGxldCdzIHdyYXAgdGhpcyBwYXJ0IGZpcnN0LiAgTm8gbmVlZCB0byBz ZW5kIGEgcmVvcmdhbml6ZWQNCj4gcGF0Y2ggc2V0Lg0KDQpTb3VuZHMgZ29vZC4NCg0KRm9yIDAw MDEsIHRoZSBiaWdnZXN0IHRoaW5nIG9uIG15IG1pbmQgYXQgdGhlIG1vbWVudCBpcyB0aGUgbmFt ZSBvZg0KdGhlIEdVQy4gICJodWdlX3BhZ2VzX3JlcXVpcmVkIiBmZWVscyBraW5kIG9mIGFtYmln dW91cy4gIEZyb20gdGhlDQpuYW1lIGFsb25lLCBpdCBjb3VsZCBtZWFuIGVpdGhlciAidGhlIG51 bWJlciBvZiBodWdlIHBhZ2VzIHJlcXVpcmVkIg0Kb3IgImh1Z2UgcGFnZXMgYXJlIHJlcXVpcmVk IGZvciB0aGUgc2VydmVyIHRvIHJ1bi4iICBBbHNvLCB0aGUgbnVtYmVyDQpvZiBodWdlIHBhZ2Vz IHJlcXVpcmVkIGlzIG5vdCBhY3R1YWxseSByZXF1aXJlZCBpZiB5b3UgZG9uJ3Qgd2FudCB0bw0K cnVuIHRoZSBzZXJ2ZXIgd2l0aCBodWdlIHBhZ2VzLiAgSSB0aGluayBpdCBtaWdodCBiZSBjbGVh cmVyIHRvDQpzb21laG93IGluZGljYXRlIHRoYXQgdGhlIHZhbHVlIGlzIGVzc2VudGlhbGx5IHRo ZSBzaXplIG9mIHRoZSBtYWluDQpzaGFyZWQgbWVtb3J5IGFyZWEgaW4gdGVybXMgb2YgdGhlIGh1 Z2UgcGFnZSBzaXplLCBidXQgSSdtIG5vdCBzdXJlDQpob3cgdG8gZG8gdGhhdCBjb25jaXNlbHku ICBQZXJoYXBzIGl0IGlzIGVub3VnaCB0byBqdXN0IG1ha2Ugc3VyZSB0aGUNCmRlc2NyaXB0aW9u IG9mICJodWdlX3BhZ2VzX3JlcXVpcmVkIiBpcyBkZXRhaWxlZCBlbm91Z2guDQoNCkZvciAwMDAy LCBJIGhhdmUgdHdvIHNtYWxsIGNvbmNlcm5zLiAgTXkgZmlyc3QgY29uY2VybiBpcyB0aGF0IGl0 DQptaWdodCBiZSBjb25mdXNpbmcgdG8gY3VzdG9tZXJzIHdoZW4gdGhlIHJ1bnRpbWUgR1VDcyBj YW5ub3QgYmUNCnJldHVybmVkIGZvciBhIHJ1bm5pbmcgc2VydmVyLiAgV2UgaGF2ZSB0aGUgbm90 ZSBpbiB0aGUgZG9jcywgYnV0IGlmDQp5b3UncmUgZW5jb3VudGVyaW5nIGl0IG9uIHRoZSBjb21t YW5kIGxpbmUsIGl0J3Mgbm90IHRvdGFsbHkgY2xlYXINCndoYXQgdGhlIHByb2JsZW0gaXMuDQoN CiAgICAgICAgJCBwb3N0Z3JlcyAtRCAuIC1DIGxvZ19taW5fbWVzc2FnZXMNCiAgICAgICAgd2Fy bmluZw0KICAgICAgICAkIHBvc3RncmVzIC1EIC4gLUMgc2hhcmVkX21lbW9yeV9zaXplDQogICAg ICAgIDIwMjEtMDktMDkgMTg6NTE6MjEuNjE3IFVUQyBbNzkyNF0gRkFUQUw6ICBsb2NrIGZpbGUg InBvc3RtYXN0ZXIucGlkIiBhbHJlYWR5IGV4aXN0cw0KICAgICAgICAyMDIxLTA5LTA5IDE4OjUx OjIxLjYxNyBVVEMgWzc5MjRdIEhJTlQ6ICBJcyBhbm90aGVyIHBvc3RtYXN0ZXIgKFBJRCA3OTEy KSBydW5uaW5nIGluIGRhdGEgZGlyZWN0b3J5ICIvbG9jYWwvaG9tZS9ib3NzYXJ0bi9wZ2RhdGEi Pw0KDQpNeSBvdGhlciBjb25jZXJuIGlzIHRoYXQgYnkgZGVmYXVsdCwgdmlld2luZyB0aGUgcnVu dGltZS1jb21wdXRlZCBHVUNzDQp3aWxsIGFsc28gZW1pdCBhIExPRy4NCg0KICAgICAgICAkIHBv c3RncmVzIC1EIC4gLUMgc2hhcmVkX21lbW9yeV9zaXplDQogICAgICAgIDE0Mg0KICAgICAgICAy MDIxLTA5LTA5IDE4OjUzOjI1LjE5NCBVVEMgWzgwMDZdIExPRzogIGRhdGFiYXNlIHN5c3RlbSBp cyBzaHV0IGRvd24NCg0KUnVubmluZyB0aGVzZSBjb21tYW5kcyB3aXRoIGxvZ19taW5fbWVzc2Fn ZXM9ZGVidWc1IGVtaXRzIHdheSBtb3JlDQppbmZvcm1hdGlvbiBmb3IgdGhlIHJ1bnRpbWUtY29t cHV0ZWQgR1VDcyB0aGFuIGZvciBvdGhlcnMsIGJ1dCBJTU8NCnRoYXQgaXMgYWxyaWdodC4gIEhv d2V2ZXIsIHBlcmhhcHMgd2Ugc2hvdWxkIGFkanVzdCB0aGUgbG9nZ2luZyBpbg0KMDAwMiB0byBp bXByb3ZlIHRoZSBkZWZhdWx0IHVzZXIgZXhwZXJpZW5jZS4gIEkgYXR0YWNoZWQgYW4gYXR0ZW1w dCBhdA0KdGhhdC4NCg0KV2l0aCB0aGUgYXR0YWNoZWQgcGF0Y2gsIHRyeWluZyB0byB2aWV3IGEg cnVudGltZS1jb21wdXRlZCBHVUMgb24gYQ0KcnVubmluZyBzZXJ2ZXIgd2lsbCBsb29rIGxpa2Ug dGhpczoNCg0KICAgICAgICAkIHBvc3RncmVzIC1EIC4gLUMgc2hhcmVkX21lbW9yeV9zaXplDQog ICAgICAgIDIwMjEtMDktMDkgMjE6MjQ6MjEuNTUyIFVUQyBbNjIyNF0gRkFUQUw6ICBsb2NrIGZp bGUgInBvc3RtYXN0ZXIucGlkIiBhbHJlYWR5IGV4aXN0cw0KICAgICAgICAyMDIxLTA5LTA5IDIx OjI0OjIxLjU1MiBVVEMgWzYyMjRdIERFVEFJTDogIFJ1bnRpbWUtY29tcHV0ZWQgR1VDICJzaGFy ZWRfbWVtb3J5X3NpemUiIGNhbm5vdCBiZSB2aWV3ZWQgb24gYSBydW5uaW5nIHNlcnZlci4NCiAg ICAgICAgMjAyMS0wOS0wOSAyMToyNDoyMS41NTIgVVRDIFs2MjI0XSBISU5UOiAgSXMgYW5vdGhl ciBwb3N0bWFzdGVyIChQSUQgMzYyOCkgcnVubmluZyBpbiBkYXRhIGRpcmVjdG9yeSAiL2xvY2Fs L2hvbWUvYm9zc2FydG4vcGdkYXRhIj8NCg0KQW5kIHZpZXdpbmcgYSBydW50aW1lLWNvbXB1dGVk IEdVQyBvbiBhIHNlcnZlciB0aGF0IGlzIHNodXQgZG93biB3aWxsDQpsb29rIGxpa2UgdGhpczoN Cg0KICAgICAgICAkIHBvc3RncmVzIC1EIC4gLUMgc2hhcmVkX21lbW9yeV9zaXplDQogICAgICAg IDE0Mg0KDQpJJ20gbm90IHRyZW1lbmRvdXNseSBoYXBweSB3aXRoIHRoZSBwYXRjaCwgYnV0IEkg aG9wZSB0aGF0IGl0IGF0IGxlYXN0DQpoZWxwcyB3aXRoIHRoZSBkaXNjdXNzaW9uLg0KDQpOYXRo YW4NCg0K --_002_6AE0285D09174C05B6AA4AEDD2FCBA52amazoncom_ Content-Type: application/octet-stream; name="0001-Provide-useful-values-for-postgres-C-with-runtime-co.patch" Content-Description: 0001-Provide-useful-values-for-postgres-C-with-runtime-co.patch Content-Disposition: attachment; filename="0001-Provide-useful-values-for-postgres-C-with-runtime-co.patch"; size=19545; creation-date="Thu, 09 Sep 2021 21:53:22 GMT"; modification-date="Thu, 09 Sep 2021 21:53:22 GMT" Content-ID: <5C25F503584A5D45B1BF7E7FEC35B173@amazon.com> Content-Transfer-Encoding: base64 RnJvbSBhYmEwOTIxOWJiY2JkYjVkOTc0N2M2M2RiZjc1MzgwYzc3NDg3M2U3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYXRoYW4gQm9zc2FydCA8Ym9zc2FydG5AYW1hem9uLmNvbT4K RGF0ZTogVGh1LCA5IFNlcCAyMDIxIDIxOjQyOjQxICswMDAwClN1YmplY3Q6IFtQQVRDSCAxLzFd IFByb3ZpZGUgdXNlZnVsIHZhbHVlcyBmb3IgJ3Bvc3RncmVzIC1DJyB3aXRoCiBydW50aW1lLWNv bXB1dGVkIEdVQ3MuCgpUaGUgLUMgb3B0aW9uIGlzIGhhbmRsZWQgYmVmb3JlIGEgc21hbGwgc3Vi c2V0IG9mIEdVQ3MgdGhhdCBhcmUKY29tcHV0ZWQgYXQgcnVudGltZSBhcmUgaW5pdGlhbGl6ZWQu ICBVbmZvcnR1bmF0ZWx5LCB3ZSBjYW5ub3QgbW92ZQp0aGlzIGhhbmRsaW5nIHRvIGFmdGVyIHRo ZXkgYXJlIGluaXRpYWxpemVkIHdpdGhvdXQgZGlzYWxsb3dpbmcKJ3Bvc3RncmVzIC1DJyBvbiBh IHJ1bm5pbmcgc2VydmVyLiAgT25lIG5vdGFibGUgcmVhc29uIGZvciB0aGlzIGlzCnRoYXQgbG9h ZGFibGUgbGlicmFyaWVzJyBfUEdfaW5pdCgpIGZ1bmN0aW9ucyBhcmUgY2FsbGVkIGJlZm9yZSBh bGwKcnVudGltZS1jb21wdXRlZCBHVUNzIGFyZSBpbml0aWFsaXplZCwgYW5kIHRoaXMgaXMgbm90 IGd1YXJhbnRlZWQKdG8gYmUgc2FmZSB0byBkbyBvbiBydW5uaW5nIHNlcnZlcnMuCgpJbiBvcmRl ciB0byBwcm92aWRlIHVzZWZ1bCB2YWx1ZXMgZm9yICdwb3N0Z3JlcyAtQycgZm9yIHJ1bnRpbWUt CmNvbXB1dGVkIEdVQ3MsIHRoaXMgY2hhbmdlIGFkZHMgYSBuZXcgc2VjdGlvbiBmb3IgaGFuZGxp bmcganVzdAp0aGVzZSBHVUNzIGp1c3QgYmVmb3JlIHNoYXJlZCBtZW1vcnkgaXMgaW5pdGlhbGl6 ZWQuICBXaGlsZSB1c2Vycwp3b24ndCBiZSBhYmxlIHRvIHVzZSAtQyBmb3IgcnVudGltZS1jb21w dXRlZCBHVUNzIG9uIHJ1bm5pbmcKc2VydmVycywgcHJvdmlkaW5nIGEgdXNlZnVsIHZhbHVlIHdp dGggdGhpcyByZXN0cmljdGlvbiBzZWVtcwpiZXR0ZXIgdGhhbiBub3QgcHJvdmlkaW5nIGEgdXNl ZnVsIHZhbHVlIGF0IGFsbC4KLS0tCiBkb2Mvc3JjL3NnbWwvcmVmL3Bvc3RncmVzLXJlZi5zZ21s ICB8IDEyICsrKysrKy0tCiBkb2Mvc3JjL3NnbWwvcnVudGltZS5zZ21sICAgICAgICAgICB8IDMz ICsrKysrKystLS0tLS0tLS0tLS0tCiBzcmMvYmFja2VuZC9ib290c3RyYXAvYm9vdHN0cmFwLmMg ICB8ICAyICstCiBzcmMvYmFja2VuZC9wb3N0bWFzdGVyL3Bvc3RtYXN0ZXIuYyB8IDUyICsrKysr KysrKysrKysrKysrKysrKysrKysrKy0tLS0tCiBzcmMvYmFja2VuZC90Y29wL3Bvc3RncmVzLmMg ICAgICAgICB8ICAyICstCiBzcmMvYmFja2VuZC91dGlscy9pbml0L21pc2Npbml0LmMgICB8IDYw ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0KIHNyYy9iYWNrZW5kL3V0aWxz L21pc2MvZ3VjLmMgICAgICAgIHwgIDggKystLS0KIHNyYy9pbmNsdWRlL21pc2NhZG1pbi5oICAg ICAgICAgICAgIHwgIDMgKy0KIHNyYy9pbmNsdWRlL3V0aWxzL2d1Yy5oICAgICAgICAgICAgIHwg IDYgKysrKwogOSBmaWxlcyBjaGFuZ2VkLCAxMjUgaW5zZXJ0aW9ucygrKSwgNTMgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3JlZi9wb3N0Z3Jlcy1yZWYuc2dtbCBiL2Rv Yy9zcmMvc2dtbC9yZWYvcG9zdGdyZXMtcmVmLnNnbWwKaW5kZXggNGFhYTdhYmUxYS4uODljYzNj ZGI0ZSAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3JlZi9wb3N0Z3Jlcy1yZWYuc2dtbAorKysg Yi9kb2Mvc3JjL3NnbWwvcmVmL3Bvc3RncmVzLXJlZi5zZ21sCkBAIC0xMzMsMTMgKzEzMywyMSBA QCBQb3N0Z3JlU1FMIGRvY3VtZW50YXRpb24KICAgICAgIDxsaXN0aXRlbT4KICAgICAgICA8cGFy YT4KICAgICAgICAgUHJpbnRzIHRoZSB2YWx1ZSBvZiB0aGUgbmFtZWQgcnVuLXRpbWUgcGFyYW1l dGVyLCBhbmQgZXhpdHMuCi0gICAgICAgIChTZWUgdGhlIDxvcHRpb24+LWM8L29wdGlvbj4gb3B0 aW9uIGFib3ZlIGZvciBkZXRhaWxzLikgIFRoaXMgY2FuCi0gICAgICAgIGJlIHVzZWQgb24gYSBy dW5uaW5nIHNlcnZlciwgYW5kIHJldHVybnMgdmFsdWVzIGZyb20KKyAgICAgICAgKFNlZSB0aGUg PG9wdGlvbj4tYzwvb3B0aW9uPiBvcHRpb24gYWJvdmUgZm9yIGRldGFpbHMuKSAgVGhpcworICAg ICAgICByZXR1cm5zIHZhbHVlcyBmcm9tCiAgICAgICAgIDxmaWxlbmFtZT5wb3N0Z3Jlc3FsLmNv bmY8L2ZpbGVuYW1lPiwgbW9kaWZpZWQgYnkgYW55IHBhcmFtZXRlcnMKICAgICAgICAgc3VwcGxp ZWQgaW4gdGhpcyBpbnZvY2F0aW9uLiAgSXQgZG9lcyBub3QgcmVmbGVjdCBwYXJhbWV0ZXJzCiAg ICAgICAgIHN1cHBsaWVkIHdoZW4gdGhlIGNsdXN0ZXIgd2FzIHN0YXJ0ZWQuCiAgICAgICAgPC9w YXJhPgogCisgICAgICAgPHBhcmE+CisgICAgICAgIFRoaXMgY2FuIGJlIHVzZWQgb24gYSBydW5u aW5nIHNlcnZlciBmb3IgbW9zdCBwYXJhbWV0ZXJzLiAgSG93ZXZlciwKKyAgICAgICAgdGhlIHNl cnZlciBtdXN0IGJlIHNodXQgZG93biBmb3Igc29tZSBydW50aW1lLWNvbXB1dGVkIHBhcmFtZXRl cnMKKyAgICAgICAgKGUuZy4sIDx4cmVmIGxpbmtlbmQ9Imd1Yy1odWdlLXBhZ2VzLXJlcXVpcmVk Ii8+LAorICAgICAgICA8eHJlZiBsaW5rZW5kPSJndWMtc2hhcmVkLW1lbW9yeS1zaXplIi8+LCBh bmQKKyAgICAgICAgPHhyZWYgbGlua2VuZD0iZ3VjLXdhbC1zZWdtZW50LXNpemUiLz4pLgorICAg ICAgIDwvcGFyYT4KKwogICAgICAgIDxwYXJhPgogICAgICAgICBUaGlzIG9wdGlvbiBpcyBtZWFu dCBmb3Igb3RoZXIgcHJvZ3JhbXMgdGhhdCBpbnRlcmFjdCB3aXRoIGEgc2VydmVyCiAgICAgICAg IGluc3RhbmNlLCBzdWNoIGFzIDx4cmVmIGxpbmtlbmQ9ImFwcC1wZy1jdGwiLz4sIHRvIHF1ZXJ5 IGNvbmZpZ3VyYXRpb24KZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9ydW50aW1lLnNnbWwgYi9k b2Mvc3JjL3NnbWwvcnVudGltZS5zZ21sCmluZGV4IGYxY2JjMWQ5ZTkuLmQ5NTU2Mzk5MDAgMTAw NjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9ydW50aW1lLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL3J1 bnRpbWUuc2dtbApAQCAtMTQ0MiwzMiArMTQ0MiwyMSBAQCBleHBvcnQgUEdfT09NX0FESlVTVF9W QUxVRT0wCiAgICAgd2l0aCA8dmFybmFtZT5DT05GSUdfSFVHRVRMQkZTPXk8L3Zhcm5hbWU+IGFu ZAogICAgIDx2YXJuYW1lPkNPTkZJR19IVUdFVExCX1BBR0U9eTwvdmFybmFtZT4uIFlvdSB3aWxs IGFsc28gaGF2ZSB0byBjb25maWd1cmUKICAgICB0aGUgb3BlcmF0aW5nIHN5c3RlbSB0byBwcm92 aWRlIGVub3VnaCBodWdlIHBhZ2VzIG9mIHRoZSBkZXNpcmVkIHNpemUuCi0gICAgVG8gZXN0aW1h dGUgdGhlIG51bWJlciBvZiBodWdlIHBhZ2VzIG5lZWRlZCwgc3RhcnQKLSAgICA8cHJvZHVjdG5h bWU+UG9zdGdyZVNRTDwvcHJvZHVjdG5hbWU+IHdpdGhvdXQgaHVnZSBwYWdlcyBlbmFibGVkIGFu ZCBjaGVjawotICAgIHRoZSBwb3N0bWFzdGVyJ3MgYW5vbnltb3VzIHNoYXJlZCBtZW1vcnkgc2Vn bWVudCBzaXplLCBhcyB3ZWxsIGFzIHRoZQotICAgIHN5c3RlbSdzIGRlZmF1bHQgYW5kIHN1cHBv cnRlZCBodWdlIHBhZ2Ugc2l6ZXMsIHVzaW5nIHRoZQotICAgIDxmaWxlbmFtZT4vcHJvYzwvZmls ZW5hbWU+IGFuZCA8ZmlsZW5hbWU+L3N5czwvZmlsZW5hbWU+IGZpbGUgc3lzdGVtcy4KLSAgICBU aGlzIG1pZ2h0IGxvb2sgbGlrZToKKyAgICBUbyBlc3RpbWF0ZSB0aGUgbnVtYmVyIG9mIGh1Z2Ug cGFnZXMgbmVlZGVkLCB1c2UgdGhlCisgICAgPGNvbW1hbmQ+cG9zdGdyZXM8L2NvbW1hbmQ+IGNv bW1hbmQgdG8gc2VlIHRoZSB2YWx1ZSBvZgorICAgIDx4cmVmIGxpbmtlbmQ9Imd1Yy1odWdlLXBh Z2VzLXJlcXVpcmVkIi8+LiAgVGhpcyBtaWdodCBsb29rIGxpa2U6CiA8cHJvZ3JhbWxpc3Rpbmc+ Ci0kIDx1c2VyaW5wdXQ+aGVhZCAtMSAkUEdEQVRBL3Bvc3RtYXN0ZXIucGlkPC91c2VyaW5wdXQ+ Ci00MTcwCi0kIDx1c2VyaW5wdXQ+cG1hcCA0MTcwIHwgYXdrICcvcnctcy8gJmFtcDsmYW1wOyAv emVyby8ge3ByaW50ICQyfSc8L3VzZXJpbnB1dD4KLTY0OTA0MjhLCi0kIDx1c2VyaW5wdXQ+Z3Jl cCBeSHVnZXBhZ2VzaXplIC9wcm9jL21lbWluZm88L3VzZXJpbnB1dD4KLUh1Z2VwYWdlc2l6ZTog ICAgICAgMjA0OCBrQgotJCA8dXNlcmlucHV0PmxzIC9zeXMva2VybmVsL21tL2h1Z2VwYWdlczwv dXNlcmlucHV0PgotaHVnZXBhZ2VzLTEwNDg1NzZrQiAgaHVnZXBhZ2VzLTIwNDhrQgorJCA8dXNl cmlucHV0PnBvc3RncmVzIC1EICRQR0RBVEEgLUMgaHVnZV9wYWdlc19yZXF1aXJlZDwvdXNlcmlu cHV0PgorMzE3MAogPC9wcm9ncmFtbGlzdGluZz4KIAotICAgICBJbiB0aGlzIGV4YW1wbGUgdGhl IGRlZmF1bHQgaXMgMk1CLCBidXQgeW91IGNhbiBhbHNvIGV4cGxpY2l0bHkgcmVxdWVzdAotICAg ICBlaXRoZXIgMk1CIG9yIDFHQiB3aXRoIDx4cmVmIGxpbmtlbmQ9Imd1Yy1odWdlLXBhZ2Utc2l6 ZSIvPi4KKyAgICAgTm90ZSB0aGF0IHlvdSBjYW4gZXhwbGljaXRseSByZXF1ZXN0IGVpdGhlciAy TUIgb3IgMUdCIGh1Z2UgcGFnZXMgd2l0aAorICAgICA8eHJlZiBsaW5rZW5kPSJndWMtaHVnZS1w YWdlLXNpemUiLz4uCiAKLSAgICAgQXNzdW1pbmcgPGxpdGVyYWw+Mk1CPC9saXRlcmFsPiBodWdl IHBhZ2VzLAotICAgICA8bGl0ZXJhbD42NDkwNDI4PC9saXRlcmFsPiAvIDxsaXRlcmFsPjIwNDg8 L2xpdGVyYWw+IGdpdmVzIGFwcHJveGltYXRlbHkKLSAgICAgPGxpdGVyYWw+MzE2OS4xNTQ8L2xp dGVyYWw+LCBzbyBpbiB0aGlzIGV4YW1wbGUgd2UgbmVlZCBhdAotICAgICBsZWFzdCA8bGl0ZXJh bD4zMTcwPC9saXRlcmFsPiBodWdlIHBhZ2VzLiAgQSBsYXJnZXIgc2V0dGluZyB3b3VsZCBiZQot ICAgICBhcHByb3ByaWF0ZSBpZiBvdGhlciBwcm9ncmFtcyBvbiB0aGUgbWFjaGluZSBhbHNvIG5l ZWQgaHVnZSBwYWdlcy4KLSAgICAgV2UgY2FuIHNldCB0aGlzIHdpdGg6CisgICAgIFdoaWxlIHdl IG5lZWQgYXQgbGVhc3QgPGxpdGVyYWw+MzE3MDwvbGl0ZXJhbD4gaHVnZSBwYWdlcyBpbiB0aGlz CisgICAgIGV4YW1wbGUsIGEgbGFyZ2VyIHNldHRpbmcgd291bGQgYmUgYXBwcm9wcmlhdGUgaWYg b3RoZXIgcHJvZ3JhbXMgb24KKyAgICAgdGhlIG1hY2hpbmUgYWxzbyBuZWVkIGh1Z2UgcGFnZXMu ICBXZSBjYW4gYWxsb2NhdGUgdGhlIGh1Z2UgcGFnZXMKKyAgICAgd2l0aDoKIDxwcm9ncmFtbGlz dGluZz4KICMgPHVzZXJpbnB1dD5zeXNjdGwgLXcgdm0ubnJfaHVnZXBhZ2VzPTMxNzA8L3VzZXJp bnB1dD4KIDwvcHJvZ3JhbWxpc3Rpbmc+CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9ib290c3Ry YXAvYm9vdHN0cmFwLmMgYi9zcmMvYmFja2VuZC9ib290c3RyYXAvYm9vdHN0cmFwLmMKaW5kZXgg NDg2MTVjMGViYy4uMmM5ZTgzMjk1MSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvYm9vdHN0cmFw L2Jvb3RzdHJhcC5jCisrKyBiL3NyYy9iYWNrZW5kL2Jvb3RzdHJhcC9ib290c3RyYXAuYwpAQCAt MzE3LDcgKzMxNyw3IEBAIEJvb3RzdHJhcE1vZGVNYWluKGludCBhcmdjLCBjaGFyICphcmd2W10s IGJvb2wgY2hlY2tfb25seSkKIAljaGVja0RhdGFEaXIoKTsKIAlDaGFuZ2VUb0RhdGFEaXIoKTsK IAotCUNyZWF0ZURhdGFEaXJMb2NrRmlsZShmYWxzZSk7CisJQ3JlYXRlRGF0YURpckxvY2tGaWxl KGZhbHNlLCBOVUxMKTsKIAogCVNldFByb2Nlc3NpbmdNb2RlKEJvb3RzdHJhcFByb2Nlc3Npbmcp OwogCUlnbm9yZVN5c3RlbUluZGV4ZXMgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQv cG9zdG1hc3Rlci9wb3N0bWFzdGVyLmMgYi9zcmMvYmFja2VuZC9wb3N0bWFzdGVyL3Bvc3RtYXN0 ZXIuYwppbmRleCBiMmZlNDIwYzNjLi41ODEzNmFhYzA5IDEwMDY0NAotLS0gYS9zcmMvYmFja2Vu ZC9wb3N0bWFzdGVyL3Bvc3RtYXN0ZXIuYworKysgYi9zcmMvYmFja2VuZC9wb3N0bWFzdGVyL3Bv c3RtYXN0ZXIuYwpAQCAtODk2LDE1ICs4OTYsMzEgQEAgUG9zdG1hc3Rlck1haW4oaW50IGFyZ2Ms IGNoYXIgKmFyZ3ZbXSkKIAlpZiAob3V0cHV0X2NvbmZpZ192YXJpYWJsZSAhPSBOVUxMKQogCXsK IAkJLyoKLQkJICogIi1DIGd1YyIgd2FzIHNwZWNpZmllZCwgc28gcHJpbnQgR1VDJ3MgdmFsdWUg YW5kIGV4aXQuICBObyBleHRyYQotCQkgKiBwZXJtaXNzaW9uIGNoZWNrIGlzIG5lZWRlZCBiZWNh dXNlIHRoZSB1c2VyIGlzIHJlYWRpbmcgaW5zaWRlIHRoZQotCQkgKiBkYXRhIGRpci4KKwkJICog SWYgdGhpcyBpcyBhIHJ1bnRpbWUtY29tcHV0ZWQgR1VDLCBpdCBoYXNuJ3QgeWV0IGJlZW4gaW5p dGlhbGl6ZWQsCisJCSAqIGFuZCB0aGUgcHJlc2VudCB2YWx1ZSBpcyBub3QgdXNlZnVsLiAgSG93 ZXZlciwgdGhpcyBpcyBhIGNvbnZlbmllbnQKKwkJICogcGxhY2UgdG8gcHJpbnQgdGhlIHZhbHVl IGZvciBtb3N0IEdVQ3MgYmVjYXVzZSBpdCBpcyBzYWZlIHRvIHJ1bgorCQkgKiBwb3N0bWFzdGVy IHN0YXJ0dXAgdG8gdGhpcyBwb2ludCBldmVuIGlmIHRoZSBzZXJ2ZXIgaXMgYWxyZWFkeQorCQkg KiBydW5uaW5nLiAgRm9yIHRoZSBoYW5kZnVsIG9mIHJ1bnRpbWUtY29tcHV0ZWQgR1VDcyB0aGF0 IHdlIGNhbid0CisJCSAqIHByb3ZpZGUgbWVhbmluZ2Z1bCB2YWx1ZXMgZm9yIHlldCwgd2Ugd2Fp dCB1bnRpbCBsYXRlciBpbiBwb3N0bWFzdGVyCisJCSAqIHN0YXJ0dXAgdG8gcHJpbnQgdGhlIHZh bHVlLiAgV2Ugd29uJ3QgYmUgYWJsZSB0byB1c2UgLUMgb24gcnVubmluZworCQkgKiBzZXJ2ZXJz IGZvciB0aG9zZSBHVUNzLCBidXQgb3RoZXJ3aXNlIHRoaXMgb3B0aW9uIGlzIHVudXNhYmxlIGZv cgorCQkgKiB0aGVtLgogCQkgKi8KLQkJY29uc3QgY2hhciAqY29uZmlnX3ZhbCA9IEdldENvbmZp Z09wdGlvbihvdXRwdXRfY29uZmlnX3ZhcmlhYmxlLAotCQkJCQkJCQkJCQkJIGZhbHNlLCBmYWxz ZSk7CisJCWludCBmbGFncyA9IEdldENvbmZpZ09wdGlvbkZsYWdzKG91dHB1dF9jb25maWdfdmFy aWFibGUsIHRydWUpOwogCi0JCXB1dHMoY29uZmlnX3ZhbCA/IGNvbmZpZ192YWwgOiAiIik7Ci0J CUV4aXRQb3N0bWFzdGVyKDApOworCQlpZiAoKGZsYWdzICYgR1VDX1JVTlRJTUVfQ09NUFVURUQp ID09IDApCisJCXsKKwkJCS8qCisJCQkgKiAiLUMgZ3VjIiB3YXMgc3BlY2lmaWVkLCBzbyBwcmlu dCBHVUMncyB2YWx1ZSBhbmQgZXhpdC4gIE5vIGV4dHJhCisJCQkgKiBwZXJtaXNzaW9uIGNoZWNr IGlzIG5lZWRlZCBiZWNhdXNlIHRoZSB1c2VyIGlzIHJlYWRpbmcgaW5zaWRlCisJCQkgKiB0aGUg ZGF0YSBkaXIuCisJCQkgKi8KKwkJCWNvbnN0IGNoYXIgKmNvbmZpZ192YWwgPSBHZXRDb25maWdP cHRpb24ob3V0cHV0X2NvbmZpZ192YXJpYWJsZSwKKwkJCQkJCQkJCQkJCQkgZmFsc2UsIGZhbHNl KTsKKworCQkJcHV0cyhjb25maWdfdmFsID8gY29uZmlnX3ZhbCA6ICIiKTsKKwkJCUV4aXRQb3N0 bWFzdGVyKDApOworCQl9CiAJfQogCiAJLyogVmVyaWZ5IHRoYXQgRGF0YURpciBsb29rcyByZWFz b25hYmxlICovCkBAIC05ODMsNyArOTk5LDcgQEAgUG9zdG1hc3Rlck1haW4oaW50IGFyZ2MsIGNo YXIgKmFyZ3ZbXSkKIAkgKiBzbyBpdCBtdXN0IGhhcHBlbiBiZWZvcmUgb3BlbmluZyBzb2NrZXRz IHNvIHRoYXQgYXQgZXhpdCwgdGhlIHNvY2tldAogCSAqIGxvY2tmaWxlcyBnbyBhd2F5IGFmdGVy IENsb3NlU2VydmVyUG9ydHMgcnVucy4KIAkgKi8KLQlDcmVhdGVEYXRhRGlyTG9ja0ZpbGUodHJ1 ZSk7CisJQ3JlYXRlRGF0YURpckxvY2tGaWxlKHRydWUsIG91dHB1dF9jb25maWdfdmFyaWFibGUp OwogCiAJLyoKIAkgKiBSZWFkIHRoZSBjb250cm9sIGZpbGUgKGZvciBlcnJvciBjaGVja2luZyBh bmQgY29uZmlnIGluZm8pLgpAQCAtMTAzMyw2ICsxMDQ5LDI2IEBAIFBvc3RtYXN0ZXJNYWluKGlu dCBhcmdjLCBjaGFyICphcmd2W10pCiAJICovCiAJSW5pdGlhbGl6ZVNobWVtR1VDcygpOwogCisJ LyoKKwkgKiBJZiAtQyB3YXMgc3BlY2lmaWVkIHdpdGggYSBydW50aW1lLWNvbXB1dGVkIEdVQywg d2UgaGVsZCBvZmYgcHJpbnRpbmcKKwkgKiB0aGUgdmFsdWUgZWFybGllciwgYXMgdGhlIEdVQyB3 YXMgbm90IHlldCBpbml0aWFsaXplZC4gIFdlIGhhbmRsZSAtQyBmb3IKKwkgKiBtb3N0IEdVQ3Mg YmVmb3JlIHdlIGxvY2sgdGhlIGRhdGEgZGlyZWN0b3J5IHNvIHRoYXQgdGhlIG9wdGlvbiBtYXkg YmUKKwkgKiB1c2VkIG9uIGEgcnVubmluZyBzZXJ2ZXIuICBIb3dldmVyLCBhIGhhbmRmdWwgb2Yg R1VDcyBhcmUgcnVudGltZS0KKwkgKiBjb21wdXRlZCBhbmQgZG8gbm90IGhhdmUgbWVhbmluZ2Z1 bCB2YWx1ZXMgdW50aWwgYWZ0ZXIgbG9ja2luZyB0aGUgZGF0YQorCSAqIGRpcmVjdG9yeSwgYW5k IHdlIGNhbm5vdCBzYWZlbHkgY2FsY3VsYXRlIHRoZWlyIHZhbHVlcyBlYXJsaWVyIG9uIGEKKwkg KiBydW5uaW5nIHNlcnZlci4gIEF0IHRoaXMgcG9pbnQsIHN1Y2ggR1VDcyBzaG91bGQgYmUgcHJv cGVybHkKKwkgKiBpbml0aWFsaXplZCwgYW5kIHdlIGhhdmVuJ3QgeWV0IHNldCB1cCBzaGFyZWQg bWVtb3J5LCBzbyB0aGlzIGlzIGEgZ29vZAorCSAqIHRpbWUgdG8gaGFuZGxlIHRoZSAtQyBvcHRp b24gZm9yIHRoZXNlIHNwZWNpYWwgR1VDcy4KKwkgKi8KKwlpZiAob3V0cHV0X2NvbmZpZ192YXJp YWJsZSAhPSBOVUxMKQorCXsKKwkJY29uc3QgY2hhciAqY29uZmlnX3ZhbCA9IEdldENvbmZpZ09w dGlvbihvdXRwdXRfY29uZmlnX3ZhcmlhYmxlLAorCQkJCQkJCQkJCQkJIGZhbHNlLCBmYWxzZSk7 CisKKwkJcHV0cyhjb25maWdfdmFsID8gY29uZmlnX3ZhbCA6ICIiKTsKKwkJRXhpdFBvc3RtYXN0 ZXIoMCk7CisJfQorCiAJLyoKIAkgKiBTZXQgdXAgc2hhcmVkIG1lbW9yeSBhbmQgc2VtYXBob3Jl cy4KIAkgKi8KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3Rjb3AvcG9zdGdyZXMuYyBiL3NyYy9i YWNrZW5kL3Rjb3AvcG9zdGdyZXMuYwppbmRleCA1OGI1OTYwZTI3Li5kODQ3NTlhZTU5IDEwMDY0 NAotLS0gYS9zcmMvYmFja2VuZC90Y29wL3Bvc3RncmVzLmMKKysrIGIvc3JjL2JhY2tlbmQvdGNv cC9wb3N0Z3Jlcy5jCkBAIC00MDQzLDcgKzQwNDMsNyBAQCBQb3N0Z3Jlc01haW4oaW50IGFyZ2Ms IGNoYXIgKmFyZ3ZbXSwKIAkJLyoKIAkJICogQ3JlYXRlIGxvY2tmaWxlIGZvciBkYXRhIGRpcmVj dG9yeS4KIAkJICovCi0JCUNyZWF0ZURhdGFEaXJMb2NrRmlsZShmYWxzZSk7CisJCUNyZWF0ZURh dGFEaXJMb2NrRmlsZShmYWxzZSwgTlVMTCk7CiAKIAkJLyogcmVhZCBjb250cm9sIGZpbGUgKGVy cm9yIGNoZWNraW5nIGFuZCBjb250YWlucyBjb25maWcgKSAqLwogCQlMb2NhbFByb2Nlc3NDb250 cm9sRmlsZShmYWxzZSk7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9pbml0L21pc2Np bml0LmMgYi9zcmMvYmFja2VuZC91dGlscy9pbml0L21pc2Npbml0LmMKaW5kZXggODg4MDEzNzRi NS4uYTYzYWJhNmY1NyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvaW5pdC9taXNjaW5p dC5jCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2luaXQvbWlzY2luaXQuYwpAQCAtOTUyLDYgKzk1 Miw3IEBAIHN0YXRpYyB2b2lkCiBVbmxpbmtMb2NrRmlsZXMoaW50IHN0YXR1cywgRGF0dW0gYXJn KQogewogCUxpc3RDZWxsICAgKmw7CisJYm9vbAkJbG9nU2h1dERvd24gPSBEYXR1bUdldEJvb2wo YXJnKTsKIAogCWZvcmVhY2gobCwgbG9ja19maWxlcykKIAl7CkBAIC05NjgsMTAgKzk2OSwxMCBA QCBVbmxpbmtMb2NrRmlsZXMoaW50IHN0YXR1cywgRGF0dW0gYXJnKQogCSAqIG9mIGEgcG9zdG1h c3RlciBvciBzdGFuZGFsb25lIGJhY2tlbmQsIHdoaWxlIHdlIHdvbid0IGNvbWUgaGVyZSBhdCBh bGwKIAkgKiB3aGVuIGV4aXRpbmcgcG9zdG1hc3RlciBjaGlsZCBwcm9jZXNzZXMuICBUaGVyZWZv cmUsIHRoaXMgaXMgYSBnb29kCiAJICogcGxhY2UgdG8gbG9nIGNvbXBsZXRpb24gb2Ygc2h1dGRv d24uICBXZSBjb3VsZCBhbHRlcm5hdGl2ZWx5IHRlYWNoCi0JICogcHJvY19leGl0KCkgdG8gZG8g aXQsIGJ1dCB0aGF0IHNlZW1zIHVnbGllci4gIEluIGEgc3RhbmRhbG9uZSBiYWNrZW5kLAotCSAq IHVzZSBOT1RJQ0UgZWxldmVsIHRvIGJlIGxlc3MgY2hhdHR5LgorCSAqIHByb2NfZXhpdCgpIHRv IGRvIGl0LCBidXQgdGhhdCBzZWVtcyB1Z2xpZXIuICBJbiBhIHN0YW5kYWxvbmUgYmFja2VuZAor CSAqIGFuZCB3aGVuIGxvZ1NodXREb3duIGlzIGZhbHNlLCB1c2UgTk9USUNFIGVsZXZlbCB0byBi ZSBsZXNzIGNoYXR0eS4KIAkgKi8KLQllcmVwb3J0KElzUG9zdG1hc3RlckVudmlyb25tZW50ID8g TE9HIDogTk9USUNFLAorCWVyZXBvcnQoSXNQb3N0bWFzdGVyRW52aXJvbm1lbnQgJiYgbG9nU2h1 dERvd24gPyBMT0cgOiBOT1RJQ0UsCiAJCQkoZXJybXNnKCJkYXRhYmFzZSBzeXN0ZW0gaXMgc2h1 dCBkb3duIikpKTsKIH0KIApAQCAtOTg2LDcgKzk4Nyw4IEBAIFVubGlua0xvY2tGaWxlcyhpbnQg c3RhdHVzLCBEYXR1bSBhcmcpCiBzdGF0aWMgdm9pZAogQ3JlYXRlTG9ja0ZpbGUoY29uc3QgY2hh ciAqZmlsZW5hbWUsIGJvb2wgYW1Qb3N0bWFzdGVyLAogCQkJICAgY29uc3QgY2hhciAqc29ja2V0 RGlyLAotCQkJICAgYm9vbCBpc0RETG9jaywgY29uc3QgY2hhciAqcmVmTmFtZSkKKwkJCSAgIGJv b2wgaXNERExvY2ssIGNvbnN0IGNoYXIgKnJlZk5hbWUsCisJCQkgICBjb25zdCBjaGFyICpvdXRw dXRfY29uZmlnX3ZhcmlhYmxlKQogewogCWludAkJCWZkOwogCWNoYXIJCWJ1ZmZlcltNQVhQR1BB VEggKiAyICsgMjU2XTsKQEAgLTk5OSw2ICsxMDAxLDE4IEBAIENyZWF0ZUxvY2tGaWxlKGNvbnN0 IGNoYXIgKmZpbGVuYW1lLCBib29sIGFtUG9zdG1hc3RlciwKIAkJCQlteV9ncF9waWQ7CiAJY29u c3QgY2hhciAqZW52dmFyOwogCisJLyoKKwkgKiBJZiBvdXRwdXRfY29uZmlnX3ZhcmlhYmxlIGlz IG5vdCBOVUxMLCB3ZSB0cnkgdG8gYWRkIHNvbWUgdXNlZnVsIGNvbnRleHQKKwkgKiB0byB0aGUg RkFUQUwgbWVzc2FnZXMgdG8gbWFrZSBpdCBjbGVhciB3aHkgJ3Bvc3RncmVzIC1DJyBpcyBmYWls aW5nIGZvcgorCSAqIHRoaXMgcGFydGljdWxhciBHVUMgKG9ubHkgYSBzbWFsbCBzZXQgb2YgcnVu dGltZS1jb21wdXRlZCBHVUNzIHJlcXVpcmUKKwkgKiB0aGUgc2VydmVyIHRvIGJlIHNodXQgZG93 bikuCisJICovCisjZGVmaW5lIExPQ0tfRklMRV9FUlJERVRBSUwgKG91dHB1dF9jb25maWdfdmFy aWFibGUgPyBcCisJCQkJCQkJIGVycmRldGFpbCgiUnVudGltZS1jb21wdXRlZCBHVUMgXCIlc1wi IGNhbm5vdCAiIFwKKwkJCQkJCQkJCSAgICJiZSB2aWV3ZWQgb24gYSBydW5uaW5nIHNlcnZlci4i LCBcCisJCQkJCQkJCQkgICBvdXRwdXRfY29uZmlnX3ZhcmlhYmxlKSA6IFwKKwkJCQkJCQkgMCkK KwogCS8qCiAJICogSWYgdGhlIFBJRCBpbiB0aGUgbG9ja2ZpbGUgaXMgb3VyIG93biBQSUQgb3Ig b3VyIHBhcmVudCdzIG9yCiAJICogZ3JhbmRwYXJlbnQncyBQSUQsIHRoZW4gdGhlIGZpbGUgbXVz dCBiZSBzdGFsZSAocHJvYmFibHkgbGVmdCBvdmVyIGZyb20KQEAgLTEwNjAsNyArMTA3NCw4IEBA IENyZWF0ZUxvY2tGaWxlKGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBib29sIGFtUG9zdG1hc3RlciwK IAkJCWVyZXBvcnQoRkFUQUwsCiAJCQkJCShlcnJjb2RlX2Zvcl9maWxlX2FjY2VzcygpLAogCQkJ CQkgZXJybXNnKCJjb3VsZCBub3QgY3JlYXRlIGxvY2sgZmlsZSBcIiVzXCI6ICVtIiwKLQkJCQkJ CQlmaWxlbmFtZSkpKTsKKwkJCQkJCQlmaWxlbmFtZSksCisJCQkJCSBMT0NLX0ZJTEVfRVJSREVU QUlMKSk7CiAKIAkJLyoKIAkJICogUmVhZCB0aGUgZmlsZSB0byBnZXQgdGhlIG9sZCBvd25lcidz IFBJRC4gIE5vdGUgcmFjZSBjb25kaXRpb24KQEAgLTEwNzQsMTQgKzEwODksMTYgQEAgQ3JlYXRl TG9ja0ZpbGUoY29uc3QgY2hhciAqZmlsZW5hbWUsIGJvb2wgYW1Qb3N0bWFzdGVyLAogCQkJZXJl cG9ydChGQVRBTCwKIAkJCQkJKGVycmNvZGVfZm9yX2ZpbGVfYWNjZXNzKCksCiAJCQkJCSBlcnJt c2coImNvdWxkIG5vdCBvcGVuIGxvY2sgZmlsZSBcIiVzXCI6ICVtIiwKLQkJCQkJCQlmaWxlbmFt ZSkpKTsKKwkJCQkJCQlmaWxlbmFtZSksCisJCQkJCSBMT0NLX0ZJTEVfRVJSREVUQUlMKSk7CiAJ CX0KIAkJcGdzdGF0X3JlcG9ydF93YWl0X3N0YXJ0KFdBSVRfRVZFTlRfTE9DS19GSUxFX0NSRUFU RV9SRUFEKTsKIAkJaWYgKChsZW4gPSByZWFkKGZkLCBidWZmZXIsIHNpemVvZihidWZmZXIpIC0g MSkpIDwgMCkKIAkJCWVyZXBvcnQoRkFUQUwsCiAJCQkJCShlcnJjb2RlX2Zvcl9maWxlX2FjY2Vz cygpLAogCQkJCQkgZXJybXNnKCJjb3VsZCBub3QgcmVhZCBsb2NrIGZpbGUgXCIlc1wiOiAlbSIs Ci0JCQkJCQkJZmlsZW5hbWUpKSk7CisJCQkJCQkJZmlsZW5hbWUpLAorCQkJCQkgTE9DS19GSUxF X0VSUkRFVEFJTCkpOwogCQlwZ3N0YXRfcmVwb3J0X3dhaXRfZW5kKCk7CiAJCWNsb3NlKGZkKTsK IApAQCAtMTA5MCw2ICsxMTA3LDcgQEAgQ3JlYXRlTG9ja0ZpbGUoY29uc3QgY2hhciAqZmlsZW5h bWUsIGJvb2wgYW1Qb3N0bWFzdGVyLAogCQkJZXJlcG9ydChGQVRBTCwKIAkJCQkJKGVycmNvZGUo RVJSQ09ERV9MT0NLX0ZJTEVfRVhJU1RTKSwKIAkJCQkJIGVycm1zZygibG9jayBmaWxlIFwiJXNc IiBpcyBlbXB0eSIsIGZpbGVuYW1lKSwKKwkJCQkJIExPQ0tfRklMRV9FUlJERVRBSUwsCiAJCQkJ CSBlcnJoaW50KCJFaXRoZXIgYW5vdGhlciBzZXJ2ZXIgaXMgc3RhcnRpbmcsIG9yIHRoZSBsb2Nr IGZpbGUgaXMgdGhlIHJlbW5hbnQgb2YgYSBwcmV2aW91cyBzZXJ2ZXIgc3RhcnR1cCBjcmFzaC4i KSkpOwogCQl9CiAKQEAgLTExMzYsNiArMTE1NCw3IEBAIENyZWF0ZUxvY2tGaWxlKGNvbnN0IGNo YXIgKmZpbGVuYW1lLCBib29sIGFtUG9zdG1hc3RlciwKIAkJCQkJCShlcnJjb2RlKEVSUkNPREVf TE9DS19GSUxFX0VYSVNUUyksCiAJCQkJCQkgZXJybXNnKCJsb2NrIGZpbGUgXCIlc1wiIGFscmVh ZHkgZXhpc3RzIiwKIAkJCQkJCQkJZmlsZW5hbWUpLAorCQkJCQkJIExPQ0tfRklMRV9FUlJERVRB SUwsCiAJCQkJCQkgaXNERExvY2sgPwogCQkJCQkJIChlbmNvZGVkX3BpZCA8IDAgPwogCQkJCQkJ ICBlcnJoaW50KCJJcyBhbm90aGVyIHBvc3RncmVzIChQSUQgJWQpIHJ1bm5pbmcgaW4gZGF0YSBk aXJlY3RvcnkgXCIlc1wiPyIsCkBAIC0xMTgzLDYgKzEyMDIsNyBAQCBDcmVhdGVMb2NrRmlsZShj b25zdCBjaGFyICpmaWxlbmFtZSwgYm9vbCBhbVBvc3RtYXN0ZXIsCiAJCQkJCQkJKGVycmNvZGUo RVJSQ09ERV9MT0NLX0ZJTEVfRVhJU1RTKSwKIAkJCQkJCQkgZXJybXNnKCJwcmUtZXhpc3Rpbmcg c2hhcmVkIG1lbW9yeSBibG9jayAoa2V5ICVsdSwgSUQgJWx1KSBpcyBzdGlsbCBpbiB1c2UiLAog CQkJCQkJCQkJaWQxLCBpZDIpLAorCQkJCQkJCSBMT0NLX0ZJTEVfRVJSREVUQUlMLAogCQkJCQkJ CSBlcnJoaW50KCJUZXJtaW5hdGUgYW55IG9sZCBzZXJ2ZXIgcHJvY2Vzc2VzIGFzc29jaWF0ZWQg d2l0aCBkYXRhIGRpcmVjdG9yeSBcIiVzXCIuIiwKIAkJCQkJCQkJCSByZWZOYW1lKSkpOwogCQkJ fQpAQCAtMTE5OCw2ICsxMjE4LDcgQEAgQ3JlYXRlTG9ja0ZpbGUoY29uc3QgY2hhciAqZmlsZW5h bWUsIGJvb2wgYW1Qb3N0bWFzdGVyLAogCQkJCQkoZXJyY29kZV9mb3JfZmlsZV9hY2Nlc3MoKSwK IAkJCQkJIGVycm1zZygiY291bGQgbm90IHJlbW92ZSBvbGQgbG9jayBmaWxlIFwiJXNcIjogJW0i LAogCQkJCQkJCWZpbGVuYW1lKSwKKwkJCQkJIExPQ0tfRklMRV9FUlJERVRBSUwsCiAJCQkJCSBl cnJoaW50KCJUaGUgZmlsZSBzZWVtcyBhY2NpZGVudGFsbHkgbGVmdCBvdmVyLCBidXQgIgogCQkJ CQkJCSAiaXQgY291bGQgbm90IGJlIHJlbW92ZWQuIFBsZWFzZSByZW1vdmUgdGhlIGZpbGUgIgog CQkJCQkJCSAiYnkgaGFuZCBhbmQgdHJ5IGFnYWluLiIpKSk7CkBAIC0xMjM1LDcgKzEyNTYsOCBA QCBDcmVhdGVMb2NrRmlsZShjb25zdCBjaGFyICpmaWxlbmFtZSwgYm9vbCBhbVBvc3RtYXN0ZXIs CiAJCWVycm5vID0gc2F2ZV9lcnJubyA/IHNhdmVfZXJybm8gOiBFTk9TUEM7CiAJCWVyZXBvcnQo RkFUQUwsCiAJCQkJKGVycmNvZGVfZm9yX2ZpbGVfYWNjZXNzKCksCi0JCQkJIGVycm1zZygiY291 bGQgbm90IHdyaXRlIGxvY2sgZmlsZSBcIiVzXCI6ICVtIiwgZmlsZW5hbWUpKSk7CisJCQkJIGVy cm1zZygiY291bGQgbm90IHdyaXRlIGxvY2sgZmlsZSBcIiVzXCI6ICVtIiwgZmlsZW5hbWUpLAor CQkJCSBMT0NLX0ZJTEVfRVJSREVUQUlMKSk7CiAJfQogCXBnc3RhdF9yZXBvcnRfd2FpdF9lbmQo KTsKIApAQCAtMTI0OSw3ICsxMjcxLDggQEAgQ3JlYXRlTG9ja0ZpbGUoY29uc3QgY2hhciAqZmls ZW5hbWUsIGJvb2wgYW1Qb3N0bWFzdGVyLAogCQllcnJubyA9IHNhdmVfZXJybm87CiAJCWVyZXBv cnQoRkFUQUwsCiAJCQkJKGVycmNvZGVfZm9yX2ZpbGVfYWNjZXNzKCksCi0JCQkJIGVycm1zZygi Y291bGQgbm90IHdyaXRlIGxvY2sgZmlsZSBcIiVzXCI6ICVtIiwgZmlsZW5hbWUpKSk7CisJCQkJ IGVycm1zZygiY291bGQgbm90IHdyaXRlIGxvY2sgZmlsZSBcIiVzXCI6ICVtIiwgZmlsZW5hbWUp LAorCQkJCSBMT0NLX0ZJTEVfRVJSREVUQUlMKSk7CiAJfQogCXBnc3RhdF9yZXBvcnRfd2FpdF9l bmQoKTsKIAlpZiAoY2xvc2UoZmQpICE9IDApCkBAIC0xMjYwLDE2ICsxMjgzLDIxIEBAIENyZWF0 ZUxvY2tGaWxlKGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBib29sIGFtUG9zdG1hc3RlciwKIAkJZXJy bm8gPSBzYXZlX2Vycm5vOwogCQllcmVwb3J0KEZBVEFMLAogCQkJCShlcnJjb2RlX2Zvcl9maWxl X2FjY2VzcygpLAotCQkJCSBlcnJtc2coImNvdWxkIG5vdCB3cml0ZSBsb2NrIGZpbGUgXCIlc1wi OiAlbSIsIGZpbGVuYW1lKSkpOworCQkJCSBlcnJtc2coImNvdWxkIG5vdCB3cml0ZSBsb2NrIGZp bGUgXCIlc1wiOiAlbSIsIGZpbGVuYW1lKSwKKwkJCQkgTE9DS19GSUxFX0VSUkRFVEFJTCkpOwog CX0KIAogCS8qCiAJICogQXJyYW5nZSB0byB1bmxpbmsgdGhlIGxvY2sgZmlsZShzKSBhdCBwcm9j X2V4aXQuICBJZiB0aGlzIGlzIHRoZSBmaXJzdAogCSAqIG9uZSwgc2V0IHVwIHRoZSBvbl9wcm9j X2V4aXQgZnVuY3Rpb24gdG8gZG8gaXQ7IHRoZW4gYWRkIHRoaXMgbG9jayBmaWxlCiAJICogdG8g dGhlIGxpc3Qgb2YgZmlsZXMgdG8gdW5saW5rLgorCSAqCisJICogSWYgb3V0cHV0X2NvbmZpZ192 YXJpYWJsZSBpcyBub3QgTlVMTCwgd2UgYXNrIFVubGlua0xvY2tGaWxlcyB0byBiZSBsZXNzCisJ ICogY2hhdHR5IHRvIGltcHJvdmUgdGhlIHVzZXIgZXhwZXJpZW5jZSB3aXRoICdwb3N0Z3JlcyAt QycuCiAJICovCiAJaWYgKGxvY2tfZmlsZXMgPT0gTklMKQotCQlvbl9wcm9jX2V4aXQoVW5saW5r TG9ja0ZpbGVzLCAwKTsKKwkJb25fcHJvY19leGl0KFVubGlua0xvY2tGaWxlcywKKwkJCQkJIEJv b2xHZXREYXR1bShvdXRwdXRfY29uZmlnX3ZhcmlhYmxlID09IE5VTEwpKTsKIAogCS8qCiAJICog VXNlIGxjb25zIHNvIHRoYXQgdGhlIGxvY2sgZmlsZXMgYXJlIHVubGlua2VkIGluIHJldmVyc2Ug b3JkZXIgb2YKQEAgLTEyODcsMTEgKzEzMTUsMTUgQEAgQ3JlYXRlTG9ja0ZpbGUoY29uc3QgY2hh ciAqZmlsZW5hbWUsIGJvb2wgYW1Qb3N0bWFzdGVyLAogICoKICAqIE5vdGUgdGhhdCB0aGUgc29j a2V0IGRpcmVjdG9yeSBwYXRoIGxpbmUgaXMgaW5pdGlhbGx5IHdyaXR0ZW4gYXMgZW1wdHkuCiAg KiBwb3N0bWFzdGVyLmMgd2lsbCByZXdyaXRlIGl0IHVwb24gY3JlYXRpbmcgdGhlIGZpcnN0IFVu aXggc29ja2V0LgorICoKKyAqIElmIG91dHB1dF9jb25maWdfdmFyaWFibGUgaXMgbm90IE5VTEwg KGkuZS4sIHdlIGFyZSBydW5uaW5nICdwb3N0Z3JlcworICogLUMnKSwgdGhlIGxvZ3Mgd2UgZW1p dCB3aWxsIGJlIHNsaWdodGx5IGFkanVzdGVkIHRvIHByb3ZpZGUgYSBiZXR0ZXIKKyAqIHVzZXIg ZXhwZXJpZW5jZS4KICAqLwogdm9pZAotQ3JlYXRlRGF0YURpckxvY2tGaWxlKGJvb2wgYW1Qb3N0 bWFzdGVyKQorQ3JlYXRlRGF0YURpckxvY2tGaWxlKGJvb2wgYW1Qb3N0bWFzdGVyLCBjb25zdCBj aGFyICpvdXRwdXRfY29uZmlnX3ZhcmlhYmxlKQogewotCUNyZWF0ZUxvY2tGaWxlKERJUkVDVE9S WV9MT0NLX0ZJTEUsIGFtUG9zdG1hc3RlciwgIiIsIHRydWUsIERhdGFEaXIpOworCUNyZWF0ZUxv Y2tGaWxlKERJUkVDVE9SWV9MT0NLX0ZJTEUsIGFtUG9zdG1hc3RlciwgIiIsIHRydWUsIERhdGFE aXIsIG91dHB1dF9jb25maWdfdmFyaWFibGUpOwogfQogCiAvKgpAQCAtMTMwNCw3ICsxMzM2LDcg QEAgQ3JlYXRlU29ja2V0TG9ja0ZpbGUoY29uc3QgY2hhciAqc29ja2V0ZmlsZSwgYm9vbCBhbVBv c3RtYXN0ZXIsCiAJY2hhcgkJbG9ja2ZpbGVbTUFYUEdQQVRIXTsKIAogCXNucHJpbnRmKGxvY2tm aWxlLCBzaXplb2YobG9ja2ZpbGUpLCAiJXMubG9jayIsIHNvY2tldGZpbGUpOwotCUNyZWF0ZUxv Y2tGaWxlKGxvY2tmaWxlLCBhbVBvc3RtYXN0ZXIsIHNvY2tldERpciwgZmFsc2UsIHNvY2tldGZp bGUpOworCUNyZWF0ZUxvY2tGaWxlKGxvY2tmaWxlLCBhbVBvc3RtYXN0ZXIsIHNvY2tldERpciwg ZmFsc2UsIHNvY2tldGZpbGUsIE5VTEwpOwogfQogCiAvKgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tl bmQvdXRpbHMvbWlzYy9ndWMuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvZ3VjLmMKaW5kZXgg MjMyMzZmYTRjMy4uYTZlNGZjYzI0ZSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvbWlz Yy9ndWMuYworKysgYi9zcmMvYmFja2VuZC91dGlscy9taXNjL2d1Yy5jCkBAIC0xOTgzLDcgKzE5 ODMsNyBAQCBzdGF0aWMgc3RydWN0IGNvbmZpZ19ib29sIENvbmZpZ3VyZU5hbWVzQm9vbFtdID0K IAkJeyJkYXRhX2NoZWNrc3VtcyIsIFBHQ19JTlRFUk5BTCwgUFJFU0VUX09QVElPTlMsCiAJCQln ZXR0ZXh0X25vb3AoIlNob3dzIHdoZXRoZXIgZGF0YSBjaGVja3N1bXMgYXJlIHR1cm5lZCBvbiBm b3IgdGhpcyBjbHVzdGVyLiIpLAogCQkJTlVMTCwKLQkJCUdVQ19OT1RfSU5fU0FNUExFIHwgR1VD X0RJU0FMTE9XX0lOX0ZJTEUKKwkJCUdVQ19OT1RfSU5fU0FNUExFIHwgR1VDX0RJU0FMTE9XX0lO X0ZJTEUgfCBHVUNfUlVOVElNRV9DT01QVVRFRAogCQl9LAogCQkmZGF0YV9jaGVja3N1bXMsCiAJ CWZhbHNlLApAQCAtMjM0Miw3ICsyMzQyLDcgQEAgc3RhdGljIHN0cnVjdCBjb25maWdfaW50IENv bmZpZ3VyZU5hbWVzSW50W10gPQogCQl7InNoYXJlZF9tZW1vcnlfc2l6ZSIsIFBHQ19JTlRFUk5B TCwgUFJFU0VUX09QVElPTlMsCiAJCQlnZXR0ZXh0X25vb3AoIlNob3dzIHRoZSBzaXplIG9mIHRo ZSBzZXJ2ZXIncyBtYWluIHNoYXJlZCBtZW1vcnkgYXJlYSAocm91bmRlZCB1cCB0byB0aGUgbmVh cmVzdCBNQikuIiksCiAJCQlOVUxMLAotCQkJR1VDX05PVF9JTl9TQU1QTEUgfCBHVUNfRElTQUxM T1dfSU5fRklMRSB8IEdVQ19VTklUX01CCisJCQlHVUNfTk9UX0lOX1NBTVBMRSB8IEdVQ19ESVNB TExPV19JTl9GSUxFIHwgR1VDX1VOSVRfTUIgfCBHVUNfUlVOVElNRV9DT01QVVRFRAogCQl9LAog CQkmc2hhcmVkX21lbW9yeV9zaXplX21iLAogCQkwLCAwLCBJTlRfTUFYLApAQCAtMjQwNyw3ICsy NDA3LDcgQEAgc3RhdGljIHN0cnVjdCBjb25maWdfaW50IENvbmZpZ3VyZU5hbWVzSW50W10gPQog CQkJCQkJICJpbiB0aGUgZm9ybSBhY2NlcHRlZCBieSB0aGUgY2htb2QgYW5kIHVtYXNrIHN5c3Rl bSAiCiAJCQkJCQkgImNhbGxzLiAoVG8gdXNlIHRoZSBjdXN0b21hcnkgb2N0YWwgZm9ybWF0IHRo ZSBudW1iZXIgIgogCQkJCQkJICJtdXN0IHN0YXJ0IHdpdGggYSAwICh6ZXJvKS4pIiksCi0JCQlH VUNfTk9UX0lOX1NBTVBMRSB8IEdVQ19ESVNBTExPV19JTl9GSUxFCisJCQlHVUNfTk9UX0lOX1NB TVBMRSB8IEdVQ19ESVNBTExPV19JTl9GSUxFIHwgR1VDX1JVTlRJTUVfQ09NUFVURUQKIAkJfSwK IAkJJmRhdGFfZGlyZWN0b3J5X21vZGUsCiAJCTA3MDAsIDAwMDAsIDA3NzcsCkBAIC0zMjMxLDcg KzMyMzEsNyBAQCBzdGF0aWMgc3RydWN0IGNvbmZpZ19pbnQgQ29uZmlndXJlTmFtZXNJbnRbXSA9 CiAJCXsid2FsX3NlZ21lbnRfc2l6ZSIsIFBHQ19JTlRFUk5BTCwgUFJFU0VUX09QVElPTlMsCiAJ CQlnZXR0ZXh0X25vb3AoIlNob3dzIHRoZSBzaXplIG9mIHdyaXRlIGFoZWFkIGxvZyBzZWdtZW50 cy4iKSwKIAkJCU5VTEwsCi0JCQlHVUNfVU5JVF9CWVRFIHwgR1VDX05PVF9JTl9TQU1QTEUgfCBH VUNfRElTQUxMT1dfSU5fRklMRQorCQkJR1VDX1VOSVRfQllURSB8IEdVQ19OT1RfSU5fU0FNUExF IHwgR1VDX0RJU0FMTE9XX0lOX0ZJTEUgfCBHVUNfUlVOVElNRV9DT01QVVRFRAogCQl9LAogCQkm d2FsX3NlZ21lbnRfc2l6ZSwKIAkJREVGQVVMVF9YTE9HX1NFR19TSVpFLApkaWZmIC0tZ2l0IGEv c3JjL2luY2x1ZGUvbWlzY2FkbWluLmggYi9zcmMvaW5jbHVkZS9taXNjYWRtaW4uaAppbmRleCAy ZTJlOWEzNjRhLi5kNjMwZmZhMzEwIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9taXNjYWRtaW4u aAorKysgYi9zcmMvaW5jbHVkZS9taXNjYWRtaW4uaApAQCAtNDY2LDcgKzQ2Niw4IEBAIGV4dGVy biBjaGFyICpzZXNzaW9uX3ByZWxvYWRfbGlicmFyaWVzX3N0cmluZzsKIGV4dGVybiBjaGFyICpz aGFyZWRfcHJlbG9hZF9saWJyYXJpZXNfc3RyaW5nOwogZXh0ZXJuIGNoYXIgKmxvY2FsX3ByZWxv YWRfbGlicmFyaWVzX3N0cmluZzsKIAotZXh0ZXJuIHZvaWQgQ3JlYXRlRGF0YURpckxvY2tGaWxl KGJvb2wgYW1Qb3N0bWFzdGVyKTsKK2V4dGVybiB2b2lkIENyZWF0ZURhdGFEaXJMb2NrRmlsZShi b29sIGFtUG9zdG1hc3RlciwKKwkJCQkJCQkJICBjb25zdCBjaGFyICpvdXRwdXRfY29uZmlnX3Zh cmlhYmxlKTsKIGV4dGVybiB2b2lkIENyZWF0ZVNvY2tldExvY2tGaWxlKGNvbnN0IGNoYXIgKnNv Y2tldGZpbGUsIGJvb2wgYW1Qb3N0bWFzdGVyLAogCQkJCQkJCQkgY29uc3QgY2hhciAqc29ja2V0 RGlyKTsKIGV4dGVybiB2b2lkIFRvdWNoU29ja2V0TG9ja0ZpbGVzKHZvaWQpOwpkaWZmIC0tZ2l0 IGEvc3JjL2luY2x1ZGUvdXRpbHMvZ3VjLmggYi9zcmMvaW5jbHVkZS91dGlscy9ndWMuaAppbmRl eCBhN2MzYTQ5NThlLi5hYTE4ZDMwNGFjIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS91dGlscy9n dWMuaAorKysgYi9zcmMvaW5jbHVkZS91dGlscy9ndWMuaApAQCAtMjI5LDYgKzIyOSwxMiBAQCB0 eXBlZGVmIGVudW0KIAogI2RlZmluZSBHVUNfRVhQTEFJTgkJCSAgMHgxMDAwMDAJLyogaW5jbHVk ZSBpbiBleHBsYWluICovCiAKKy8qCisgKiBHVUNfUlVOVElNRV9DT01QVVRFRCBpcyBpbnRlbmRl ZCBmb3IgcnVudGltZS1jb21wdXRlZCBHVUNzIHRoYXQgYXJlIG9ubHkKKyAqIGF2YWlsYWJsZSB2 aWEgJ3Bvc3RncmVzIC1DJyBpZiB0aGUgc2VydmVyIGlzIG5vdCBydW5uaW5nLgorICovCisjZGVm aW5lIEdVQ19SVU5USU1FX0NPTVBVVEVEICAweDIwMDAwMAorCiAjZGVmaW5lIEdVQ19VTklUCQkJ CShHVUNfVU5JVF9NRU1PUlkgfCBHVUNfVU5JVF9USU1FKQogCiAKLS0gCjIuMTYuNgoK --_002_6AE0285D09174C05B6AA4AEDD2FCBA52amazoncom_--