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 1pFyAP-0000sp-LQ for pgsql-hackers@arkaria.postgresql.org; Thu, 12 Jan 2023 14:02:54 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pFyAN-0002Fa-NS for pgsql-hackers@arkaria.postgresql.org; Thu, 12 Jan 2023 14:02:51 +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 1pFyAM-0002F6-Tq for pgsql-hackers@lists.postgresql.org; Thu, 12 Jan 2023 14:02:51 +0000 Received: from smtp-fw-33001.amazon.com ([207.171.190.10]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pFyAE-0001CS-FI for pgsql-hackers@postgresql.org; Thu, 12 Jan 2023 14:02:49 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.com; i=@amazon.com; q=dns/txt; s=amazon201209; t=1673532163; x=1705068163; h=from:to:cc:date:message-id:references:in-reply-to: mime-version:subject; bh=ctPQGADwfmW7+uuszqijjhaUr6ComcU/eB+QLSbRvvs=; b=atdtbXJhtZJ9PFCCsZQ7fB3jJ0C7mE8x6JXRpCzPQaWAHoncDViS0SYg 7qt4eJek+okBeNd84U82oIaxCZMZVzXhkO/SARTUUcZkm70iq+eAzCCUX x2OrWgKy+19Zdfh+FQMRo7UegrWjU/U2Dq+H0yQ97fUcxEAPfdQRa8GN/ c=; X-Amazon-filename: v22-0001-Add-2-new-columns-to-pg_stat_progress_vacuum.-Th.patch X-IronPort-AV: E=Sophos;i="5.97,211,1669075200"; d="scan'208,223";a="254639801" Subject: Re: Add index scan progress to pg_stat_progress_vacuum Thread-Topic: Add index scan progress to pg_stat_progress_vacuum Received: from iad12-co-svc-p1-lb1-vlan3.amazon.com (HELO email-inbound-relay-pdx-2c-m6i4x-94edd59b.us-west-2.amazon.com) ([10.43.8.6]) by smtp-border-fw-33001.sea14.amazon.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jan 2023 14:02:38 +0000 Received: from EX13MTAUWB001.ant.amazon.com (pdx1-ws-svc-p6-lb9-vlan3.pdx.amazon.com [10.236.137.198]) by email-inbound-relay-pdx-2c-m6i4x-94edd59b.us-west-2.amazon.com (Postfix) with ESMTPS id 0C9FD40DB4; Thu, 12 Jan 2023 14:02:36 +0000 (UTC) Received: from EX19D003UWB002.ant.amazon.com (10.13.138.11) by EX13MTAUWB001.ant.amazon.com (10.43.161.249) with Microsoft SMTP Server (TLS) id 15.0.1497.42; Thu, 12 Jan 2023 14:02:33 +0000 Received: from EX19D013UWA001.ant.amazon.com (10.13.138.253) by EX19D003UWB002.ant.amazon.com (10.13.138.11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA) id 15.2.1118.7; Thu, 12 Jan 2023 14:02:33 +0000 Received: from EX19D013UWA001.ant.amazon.com ([fe80::e912:ae5e:9427:9964]) by EX19D013UWA001.ant.amazon.com ([fe80::e912:ae5e:9427:9964%5]) with mapi id 15.02.1118.020; Thu, 12 Jan 2023 14:02:33 +0000 From: "Imseih (AWS), Sami" To: Andres Freund CC: Masahiko Sawada , "Drouvot, Bertrand" , vignesh C , "Nathan Bossart" , Robert Haas , "Bossart, Nathan" , Peter Geoghegan , Justin Pryzby , "pgsql-hackers@postgresql.org" Thread-Index: AQHZA4UjiGMtZ7l1bk+swoIiaI4jE65gO6uAgAqyogCAAcWAAP//1SQAgBpsPYCAA2YugIACX5aA////NwCAAYLDgIAAO8SAgAE67gCAANixAIAAtUEAgADKN4CABRmogIADi7YA Date: Thu, 12 Jan 2023 14:02:33 +0000 Message-ID: <72CD33F6-C2B5-45E4-A78F-85EC923DCF0F@amazon.com> References: <20221230183955.GB437226@nathanxps13> <3D992C93-AA5D-4719-8712-6ECD3D864966@amazon.com> <7A191516-3D65-4819-BF19-E116B53E783C@amazon.com> <977c555e-5d10-526f-ada0-b58d12267075@gmail.com> <2397CA8A-DAD7-46C7-AF69-97365DA47AF8@amazon.com> <84DF5E2A-3AB5-4744-92B3-DA63F9C4B3AE@amazon.com> <39C09108-1A6A-4105-9E16-5F0F68503658@amazon.com> <20230110015247.yspx3hkz2sk6p6u3@awork3.anarazel.de> In-Reply-To: <20230110015247.yspx3hkz2sk6p6u3@awork3.anarazel.de> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-originating-ip: [10.95.212.102] Content-Type: multipart/mixed; boundary="_002_72CD33F6C2B545E4A78F85EC923DCF0Famazoncom_" MIME-Version: 1.0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_002_72CD33F6C2B545E4A78F85EC923DCF0Famazoncom_ Content-Type: text/plain; charset="utf-8" Content-ID: <8CF220EBCB253A48BFFDCF508C394A99@amazon.com> Content-Transfer-Encoding: base64 VGhhbmtzIGZvciB0aGUgZmVlZGJhY2sgYW5kIEkgYXBvbG9naXplIGZvciB0aGUgZGVsYXkgaW4g cmVzcG9uc2UuDQoNCj4gICAgSSB0aGluayB0aGUgcHJvYmxlbSBoZXJlIGlzIHRoYXQgeW91J3Jl IGJhc2ljYWxseSB0cnlpbmcgdG8gd29yayBhcm91bmQgdGhlDQo+ICAgIGxhY2sgb2YgYW4gYXN5 bmNocm9ub3VzIHN0YXRlIHVwZGF0ZSBtZWNoYW5pc20gYmV0d2VlbiBsZWFkZXIgYW5kIHdvcmtl cnMuIFRoZQ0KPiAgICB3b3JrYXJvdW5kIGlzIHRvIGFkZCBhIGxvdCBvZiBkaWZmZXJlbnQgcGxh Y2VzIHRoYXQgcG9sbCB3aGV0aGVyIHRoZXJlIGhhcw0KPiAgICBiZWVuIGFueSBwcm9ncmVzcy4g QW5kIHlvdSdyZSBub3QgZG9pbmcgdGhhdCBieSBpbnRlZ3JhdGluZyB3aXRoIHRoZSBleGlzdGlu Zw0KPiAgICBtYWNoaW5lcnkgZm9yIGludGVycnVwdCBwcm9jZXNzaW5nIChpLmUuIENIRUNLX0ZP Ul9JTlRFUlJVUFRTKCkpLCBidXQgYnkNCj4gICAgZGV2ZWxvcGluZyBhIG5ldyBtZWNoYW5pc20u DQoNCj4gICAgSSB0aGluayB5b3VyIGJlc3QgYmV0IHdvdWxkIGJlIHRvIGludGVncmF0ZSB3aXRo IEhhbmRsZVBhcmFsbGVsTWVzc2FnZXMoKS4NCg0KWW91IGFyZSBjb3JyZWN0LiBJIGhhdmUgYmVl biB0cnlpbmcgdG8gd29yayBhcm91bmQgdGhlIGFzeW5jIG5hdHVyZQ0Kb2YgcGFyYWxsZWwgd29y a2VycyBwZXJmb3JtaW5nIHRoZSBpbmRleCB2YWN1dW0uIEFzIHlvdSBoYXZlIHBvaW50ZWQgb3V0 LA0KaW50ZWdyYXRpbmcgd2l0aCBIYW5kbGVQYXJhbGxlbE1lc3NhZ2VzIGRvZXMgYXBwZWFyIHRv IGJlIHRoZSBwcm9wZXIgd2F5Lg0KRG9pbmcgc28gd2lsbCBhbHNvIGF2b2lkIGhhdmluZyB0byBk byBhbnkgcHJvZ3Jlc3MgdXBkYXRlcyBpbiB0aGUgaW5kZXggQU1zLg0KDQpJbiB0aGUgYXR0YWNo ZWQgcGF0Y2gsIHRoZSBwYXJhbGxlbCB3b3JrZXJzIHNlbmQgYSBuZXcgdHlwZSBvZiBwcm90b2Nv bCBtZXNzYWdlDQp0eXBlIHRvIHRoZSBsZWFkZXIgY2FsbGVkICdQJyB3aGljaCBzaWduYWxzIHRo ZSBsZWFkZXIgdGhhdCBpdCBzaG91bGQgaGFuZGxlIGENCnByb2dyZXNzIHVwZGF0ZS4gVGhlIGxl YWRlciB0aGVuIHBlcmZvcm1zIHRoZSBwcm9ncmVzcyB1cGRhdGUgYnkNCmludm9raW5nIGEgY2Fs bGJhY2sgc2V0IGluIHRoZSBQYXJhbGxlbENvbnRleHQuIFRoaXMgaXMgZG9uZSBpbnNpZGUgIEhh bmRsZVBhcmFsbGVsTWVzc2FnZXMuDQpJbiB0aGUgaW5kZXggdmFjdXVtIGNhc2UsIHRoZSBjYWxs YmFjayBpcyBwYXJhbGxlbF92YWN1dW1fdXBkYXRlX3Byb2dyZXNzLiANCg0KVGhlIG5ldyBtZXNz YWdlIGRvZXMgbm90IGNvbnRhaW4gYSBwYXlsb2FkLCBhbmQgaXQncyBtZXJlbHkgdXNlZCB0bw0K c2lnbmFsIHRoZSBsZWFkZXIgdGhhdCBpdCBjYW4gaW52b2tlIGEgcHJvZ3Jlc3MgdXBkYXRlLg0K DQpBbHNvLCBJZiB0aGUgbGVhZGVyIHBlcmZvcm1zIHRoZSBpbmRleCB2YWN1dW0sIGl0IGNhbiBj YWxsIHBhcmFsbGVsX3ZhY3V1bV91cGRhdGVfcHJvZ3Jlc3MNCmRpcmVjdGx5IGluc2lkZSB2YWN1 dW1wYXJhbGxlbC5jLg0KDQpSZWdhcmRzLA0KDQpTYW1pIEltc2VpaA0KQW1hem9uIFdlYiBTZXJ2 aWNlcyAoQVdTKQ0KDQoNCg0KDQo= --_002_72CD33F6C2B545E4A78F85EC923DCF0Famazoncom_ Content-Type: application/octet-stream; name="v22-0001-Add-2-new-columns-to-pg_stat_progress_vacuum.-Th.patch" Content-Description: v22-0001-Add-2-new-columns-to-pg_stat_progress_vacuum.-Th.patch Content-Disposition: attachment; filename="v22-0001-Add-2-new-columns-to-pg_stat_progress_vacuum.-Th.patch"; size=16951; creation-date="Thu, 12 Jan 2023 14:02:33 GMT"; modification-date="Thu, 12 Jan 2023 14:02:33 GMT" Content-ID: <927F15BBB1FF9A4FAF483EE1915D81EE@amazon.com> Content-Transfer-Encoding: base64 RnJvbSA1N2YzN2MxZmRhYjE0NTU3YWJkNWEwMjg2MjUxMThlM2ZhZWViZmQ0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiSW1zZWloIChBV1MpIiA8c2ltc2VpaEA4ODY2NWEyMjc5NWYu YW50LmFtYXpvbi5jb20+CkRhdGU6IFRodSwgMTIgSmFuIDIwMjMgMDc6MzM6MzggLTA2MDAKU3Vi amVjdDogW1BBVENIIDEvMV0gUmVwb3J0IGluZGV4IHZhY3V1bSBwcm9ncmVzcy4KCkFkZCAyIG5l dyBjb2x1bW5zIHRvIHBnX3N0YXRfcHJvZ3Jlc3NfdmFjdXVtLgpUaGUgY29sdW1ucyBhcmUgbmRl eGVzX3RvdGFsIGFzIHRoZSB0b3RhbCBpbmRleGVzIHRvIGJlIHZhY3V1bWVkIG9yIGNsZWFuZWQg YW5kCmluZGV4ZXNfcHJvY2Vzc2VkIGFzIHRoZSBudW1iZXIgb2YgaW5kZXhlcyB2YWN1dW1lZCBv ciBjbGVhbmVkIHVwIHNvIGZhci4KCkF1dGhvcjogU2FtaSBJbXNlaWgsIGJhc2VkIG9uIHN1Z2dl c3Rpb25zIGJ5IE5hdGhhbiBCb3NzYXJ0LCBQZXRlciBHZW9naGVnYW4gYW5kIE1hc2FoaWtvIFNh d2FkYQpSZXZpZXdlZCBieTogTmF0aGFuIEJvc3NhcnQsIE1hc2FoaWtvIFNhd2FkYQpEaXNjdXNz aW9uOiBodHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9tZXNzYWdlLWlkL2ZsYXQvNTQ3OERGQ0Qt MjMzMy00MDFBLUIyRjAtMEQxODZBQjA5MjI4QGFtYXpvbi5jb20KLS0tCiBkb2Mvc3JjL3NnbWwv bW9uaXRvcmluZy5zZ21sICAgICAgICAgIHwgMzEgKysrKysrKysrKysKIHNyYy9iYWNrZW5kL2Fj Y2Vzcy9oZWFwL3ZhY3V1bWxhenkuYyAgfCA4MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0K IHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3BhcmFsbGVsLmMgfCAxNyArKysrKysKIHNyYy9i YWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbCAgfCAgMyArLQogc3JjL2JhY2tlbmQvY29t bWFuZHMvdmFjdXVtcGFyYWxsZWwuYyB8IDU4ICsrKysrKysrKysrKysrKysrKy0KIHNyYy9pbmNs dWRlL2FjY2Vzcy9wYXJhbGxlbC5oICAgICAgICAgfCAgNSArKwogc3JjL2luY2x1ZGUvY29tbWFu ZHMvcHJvZ3Jlc3MuaCAgICAgICB8ICAyICsKIHNyYy9pbmNsdWRlL2NvbW1hbmRzL3ZhY3V1bS5o ICAgICAgICAgfCAgMSArCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3J1bGVzLm91dCAgIHwg IDQgKy0KIDkgZmlsZXMgY2hhbmdlZCwgMTg4IGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9tb25pdG9yaW5nLnNnbWwgYi9kb2Mvc3JjL3Nn bWwvbW9uaXRvcmluZy5zZ21sCmluZGV4IDM1OGQyZmY5MGYuLmI0NmM2YTk1YWEgMTAwNjQ0Ci0t LSBhL2RvYy9zcmMvc2dtbC9tb25pdG9yaW5nLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL21vbml0 b3Jpbmcuc2dtbApAQCAtMTc3Nyw2ICsxNzc3LDEwIEBAIHBvc3RncmVzICAgMjcwOTMgIDAuMCAg MC4wICAzMDA5NiAgMjc1MiA/ICAgICAgICBTcyAgIDExOjM0ICAgMDowMCBwb3N0Z3Jlczogc2Vy CiAgICAgICA8ZW50cnk+PGxpdGVyYWw+UGFyYWxsZWxGaW5pc2g8L2xpdGVyYWw+PC9lbnRyeT4K ICAgICAgIDxlbnRyeT5XYWl0aW5nIGZvciBwYXJhbGxlbCB3b3JrZXJzIHRvIGZpbmlzaCBjb21w dXRpbmcuPC9lbnRyeT4KICAgICAgPC9yb3c+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnk+PGxp dGVyYWw+UGFyYWxsZWxWYWN1dW1GaW5pc2g8L2xpdGVyYWw+PC9lbnRyeT4KKyAgICAgIDxlbnRy eT5XYWl0aW5nIGZvciBwYXJhbGxlbCB2YWN1dW0gd29ya2VycyB0byBmaW5pc2ggaW5kZXggdmFj dXVtLjwvZW50cnk+CisgICAgIDwvcm93PgogICAgICA8cm93PgogICAgICAgPGVudHJ5PjxsaXRl cmFsPlByb2NBcnJheUdyb3VwVXBkYXRlPC9saXRlcmFsPjwvZW50cnk+CiAgICAgICA8ZW50cnk+ V2FpdGluZyBmb3IgdGhlIGdyb3VwIGxlYWRlciB0byBjbGVhciB0aGUgdHJhbnNhY3Rpb24gSUQg YXQKQEAgLTY4NTcsNiArNjg2MSwzMyBAQCBGUk9NIHBnX3N0YXRfZ2V0X2JhY2tlbmRfaWRzZXQo KSBBUyBiYWNrZW5kaWQ7CiAgICAgICAgTnVtYmVyIG9mIGRlYWQgdHVwbGVzIGNvbGxlY3RlZCBz aW5jZSB0aGUgbGFzdCBpbmRleCB2YWN1dW0gY3ljbGUuCiAgICAgICA8L3BhcmE+PC9lbnRyeT4K ICAgICAgPC9yb3c+CisKKyAgICAgPHJvdz4KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3Rh YmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVj dGZpZWxkPmluZGV4ZXNfdG90YWw8L3N0cnVjdGZpZWxkPiA8dHlwZT5iaWdpbnQ8L3R5cGU+Cisg ICAgICA8L3BhcmE+CisgICAgICA8cGFyYT4KKyAgICAgICBOdW1iZXIgb2YgaW5kZXhlcyB0aGF0 IHdpbGwgYmUgdmFjdXVtZWQgb3IgY2xlYW5lZCB1cC4gVGhpcyB2YWx1ZSB3aWxsIGJlCisgICAg ICAgPGxpdGVyYWw+MDwvbGl0ZXJhbD4gaWYgdGhlIHBoYXNlIGlzIG5vdCA8bGl0ZXJhbD52YWN1 dW1pbmcgaW5kZXhlczwvbGl0ZXJhbD4KKyAgICAgICBvciA8bGl0ZXJhbD5jbGVhbmluZyB1cCBp bmRleGVzPC9saXRlcmFsPiwgPGxpdGVyYWw+SU5ERVhfQ0xFQU5VUDwvbGl0ZXJhbD4KKyAgICAg ICBpcyBzZXQgdG8gPGxpdGVyYWw+T0ZGPC9saXRlcmFsPiwgaW5kZXggdmFjdXVtIGlzIHNraXBw ZWQgZHVlIHRvIHZlcnkKKyAgICAgICBmZXcgZGVhZCB0dXBsZXMgaW4gdGhlIHRhYmxlLCBvciB2 YWN1dW0gZmFpbHNhZmUgaXMgdHJpZ2dlcmVkLgorICAgICAgIFNlZSA8eHJlZiBsaW5rZW5kPSJn dWMtdmFjdXVtLWZhaWxzYWZlLWFnZSIvPgorICAgICAgIGZvciBtb3JlIG9uIHZhY3V1bSBmYWls c2FmZS4KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKworICAgICA8cm93Pgor ICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVt bl9kZWZpbml0aW9uIj4KKyAgICAgICA8c3RydWN0ZmllbGQ+aW5kZXhlc19jb21wbGV0ZWQ8L3N0 cnVjdGZpZWxkPiA8dHlwZT5iaWdpbnQ8L3R5cGU+CisgICAgICA8L3BhcmE+CisgICAgICA8cGFy YT4KKyAgICAgICBOdW1iZXIgb2YgaW5kZXhlcyB2YWN1dW1lZCBpbiB0aGUgY3VycmVudCB2YWN1 dW0gY3ljbGUgd2hlbiB0aGUKKyAgICAgICBwaGFzZSBpcyA8bGl0ZXJhbD52YWN1dW1pbmcgaW5k ZXhlczwvbGl0ZXJhbD4sIG9yIHRoZSBudW1iZXIKKyAgICAgICBvZiBpbmRleGVzIGNsZWFuZWQg dXAgZHVyaW5nIHRoZSA8bGl0ZXJhbD5jbGVhbmluZyB1cCBpbmRleGVzPC9saXRlcmFsPgorICAg ICAgIHBoYXNlLgorICAgICAgPC9wYXJhPjwvZW50cnk+CisgICAgIDwvcm93PgogICAgIDwvdGJv ZHk+CiAgICA8L3Rncm91cD4KICAgPC90YWJsZT4KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2Fj Y2Vzcy9oZWFwL3ZhY3V1bWxhenkuYyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3ZhY3V1bWxh enkuYwppbmRleCAzNjk0NTE1MTY3Li42ODkyZjVhMjI2IDEwMDY0NAotLS0gYS9zcmMvYmFja2Vu ZC9hY2Nlc3MvaGVhcC92YWN1dW1sYXp5LmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAv dmFjdXVtbGF6eS5jCkBAIC0yMjk0LDYgKzIyOTQsMTcgQEAgbGF6eV92YWN1dW1fYWxsX2luZGV4 ZXMoTFZSZWxTdGF0ZSAqdmFjcmVsKQogewogCWJvb2wJCWFsbGluZGV4ZXMgPSB0cnVlOwogCWRv dWJsZQkJb2xkX2xpdmVfdHVwbGVzID0gdmFjcmVsLT5yZWwtPnJkX3JlbC0+cmVsdHVwbGVzOwor CWNvbnN0IGludCBwcm9ncmVzc19zdGFydF9pbmRleFtdID0geworCQlQUk9HUkVTU19WQUNVVU1f UEhBU0UsCisJCVBST0dSRVNTX1ZBQ1VVTV9JTkRFWF9UT1RBTAorCX07CisJY29uc3QgaW50IHBy b2dyZXNzX2VuZF9pbmRleFtdID0geworCQlQUk9HUkVTU19WQUNVVU1fSU5ERVhfVE9UQUwsCisJ CVBST0dSRVNTX1ZBQ1VVTV9JTkRFWF9DT01QTEVURUQsCisJCVBST0dSRVNTX1ZBQ1VVTV9OVU1f SU5ERVhfVkFDVVVNUworCX07CisJaW50NjQgICAgICAgcHJvZ3Jlc3Nfc3RhcnRfdmFsWzJdOwor CWludDY0ICAgICAgIHByb2dyZXNzX2VuZF92YWxbM107CiAKIAlBc3NlcnQodmFjcmVsLT5uaW5k ZXhlcyA+IDApOwogCUFzc2VydCh2YWNyZWwtPmRvX2luZGV4X3ZhY3V1bWluZyk7CkBAIC0yMzA2 LDkgKzIzMTcsMTMgQEAgbGF6eV92YWN1dW1fYWxsX2luZGV4ZXMoTFZSZWxTdGF0ZSAqdmFjcmVs KQogCQlyZXR1cm4gZmFsc2U7CiAJfQogCi0JLyogUmVwb3J0IHRoYXQgd2UgYXJlIG5vdyB2YWN1 dW1pbmcgaW5kZXhlcyAqLwotCXBnc3RhdF9wcm9ncmVzc191cGRhdGVfcGFyYW0oUFJPR1JFU1Nf VkFDVVVNX1BIQVNFLAotCQkJCQkJCQkgUFJPR1JFU1NfVkFDVVVNX1BIQVNFX1ZBQ1VVTV9JTkRF WCk7CisJLyoKKwkgKiBSZXBvcnQgdGhhdCB3ZSBhcmUgbm93IHZhY3V1bWluZyBpbmRleGVzCisJ ICogYW5kIHRoZSBudW1iZXIgb2YgaW5kZXhlcyB0byB2YWN1dW0uCisJICovCisJcHJvZ3Jlc3Nf c3RhcnRfdmFsWzBdID0gUFJPR1JFU1NfVkFDVVVNX1BIQVNFX1ZBQ1VVTV9JTkRFWDsKKwlwcm9n cmVzc19zdGFydF92YWxbMV0gPSB2YWNyZWwtPm5pbmRleGVzOworCXBnc3RhdF9wcm9ncmVzc191 cGRhdGVfbXVsdGlfcGFyYW0oMiwgcHJvZ3Jlc3Nfc3RhcnRfaW5kZXgsIHByb2dyZXNzX3N0YXJ0 X3ZhbCk7CiAKIAlpZiAoIVBhcmFsbGVsVmFjdXVtSXNBY3RpdmUodmFjcmVsKSkKIAl7CkBAIC0y MzIxLDYgKzIzMzYsMTAgQEAgbGF6eV92YWN1dW1fYWxsX2luZGV4ZXMoTFZSZWxTdGF0ZSAqdmFj cmVsKQogCQkJCQkJCQkJCQkJCQkgIG9sZF9saXZlX3R1cGxlcywKIAkJCQkJCQkJCQkJCQkJICB2 YWNyZWwpOwogCisJCQkvKiBEb25lIHZhY3V1bWluZyBhbiBpbmRleCAtLSBpbmNyZW1lbnQgdGhl IGluZGV4ZXMgY29tcGxldGVkICovCisJCQlwZ3N0YXRfcHJvZ3Jlc3NfdXBkYXRlX3BhcmFtKFBS T0dSRVNTX1ZBQ1VVTV9JTkRFWF9DT01QTEVURUQsCisJCQkJCQkJCQkJIGlkeCArIDEpOworCiAJ CQlpZiAobGF6eV9jaGVja193cmFwYXJvdW5kX2ZhaWxzYWZlKHZhY3JlbCkpCiAJCQl7CiAJCQkJ LyogV3JhcGFyb3VuZCBlbWVyZ2VuY3kgLS0gZW5kIGN1cnJlbnQgaW5kZXggc2NhbiAqLwpAQCAt MjM1NSwxNCArMjM3NCwxOCBAQCBsYXp5X3ZhY3V1bV9hbGxfaW5kZXhlcyhMVlJlbFN0YXRlICp2 YWNyZWwpCiAJQXNzZXJ0KGFsbGluZGV4ZXMgfHwgdmFjcmVsLT5mYWlsc2FmZV9hY3RpdmUpOwog CiAJLyoKLQkgKiBJbmNyZWFzZSBhbmQgcmVwb3J0IHRoZSBudW1iZXIgb2YgaW5kZXggc2NhbnMu CisJICogUmVzZXQgYW5kIHJlcG9ydCB0aGUgdG90YWwgaW5kZXhlcyB0byB2YWN1dW0gYW5kIHRo ZSBudW1iZXIgb2YKKwkgKiBpbmRleGVzIHZhY3V1bWVkLgorCSAqIEFsc28sIGluY3JlYXNlIGFu ZCByZXBvcnQgdGhlIG51bWJlciBvZiBpbmRleCBzY2FucyBjb21wbGV0ZWQuCiAJICoKIAkgKiBX ZSBkZWxpYmVyYXRlbHkgaW5jbHVkZSB0aGUgY2FzZSB3aGVyZSB3ZSBzdGFydGVkIGEgcm91bmQg b2YgYnVsawogCSAqIGRlbGV0ZXMgdGhhdCB3ZSB3ZXJlbid0IGFibGUgdG8gZmluaXNoIGR1ZSB0 byB0aGUgZmFpbHNhZmUgdHJpZ2dlcmluZy4KIAkgKi8KIAl2YWNyZWwtPm51bV9pbmRleF9zY2Fu cysrOwotCXBnc3RhdF9wcm9ncmVzc191cGRhdGVfcGFyYW0oUFJPR1JFU1NfVkFDVVVNX05VTV9J TkRFWF9WQUNVVU1TLAotCQkJCQkJCQkgdmFjcmVsLT5udW1faW5kZXhfc2NhbnMpOworCXByb2dy ZXNzX2VuZF92YWxbMF0gPSAwOworCXByb2dyZXNzX2VuZF92YWxbMV0gPSAwOworCXByb2dyZXNz X2VuZF92YWxbMl0gPSB2YWNyZWwtPm51bV9pbmRleF9zY2FuczsKKwlwZ3N0YXRfcHJvZ3Jlc3Nf dXBkYXRlX211bHRpX3BhcmFtKDMsIHByb2dyZXNzX2VuZF9pbmRleCwgcHJvZ3Jlc3NfZW5kX3Zh bCk7CiAKIAlyZXR1cm4gYWxsaW5kZXhlczsKIH0KQEAgLTI1OTksMTIgKzI2MjIsMjMgQEAgbGF6 eV9jaGVja193cmFwYXJvdW5kX2ZhaWxzYWZlKExWUmVsU3RhdGUgKnZhY3JlbCkKIAogCWlmICh1 bmxpa2VseSh2YWN1dW1feGlkX2ZhaWxzYWZlX2NoZWNrKCZ2YWNyZWwtPmN1dG9mZnMpKSkKIAl7 CisJCWNvbnN0IGludCAgIHByb2dyZXNzX2luZGV4W10gPSB7CisJCQlQUk9HUkVTU19WQUNVVU1f SU5ERVhfVE9UQUwsCisJCQlQUk9HUkVTU19WQUNVVU1fSU5ERVhfQ09NUExFVEVECisJCX07CisJ CWludDY0ICAgICAgIHByb2dyZXNzX3ZhbFsyXSA9IHswLCAwfTsKKwogCQl2YWNyZWwtPmZhaWxz YWZlX2FjdGl2ZSA9IHRydWU7CiAKLQkJLyogRGlzYWJsZSBpbmRleCB2YWN1dW1pbmcsIGluZGV4 IGNsZWFudXAsIGFuZCBoZWFwIHJlbCB0cnVuY2F0aW9uICovCisJCS8qCisJCSAqIERpc2FibGUg aW5kZXggdmFjdXVtaW5nLCBpbmRleCBjbGVhbnVwLCBhbmQgaGVhcCByZWwgdHJ1bmNhdGlvbi4K KwkJICoKKwkJICogQWxzbywgcmVwb3J0IHRoYXQgd2UgYXJlIG5vIGxvbmdlciB0cmFja2luZyBp bmRleCB2YWN1dW0vY2xlYW51cC4KKwkJICovCiAJCXZhY3JlbC0+ZG9faW5kZXhfdmFjdXVtaW5n ID0gZmFsc2U7CiAJCXZhY3JlbC0+ZG9faW5kZXhfY2xlYW51cCA9IGZhbHNlOwogCQl2YWNyZWwt PmRvX3JlbF90cnVuY2F0ZSA9IGZhbHNlOworCQlwZ3N0YXRfcHJvZ3Jlc3NfdXBkYXRlX211bHRp X3BhcmFtKDIsIHByb2dyZXNzX2luZGV4LCBwcm9ncmVzc192YWwpOwogCiAJCWVyZXBvcnQoV0FS TklORywKIAkJCQkoZXJybXNnKCJieXBhc3Npbmcgbm9uZXNzZW50aWFsIG1haW50ZW5hbmNlIG9m IHRhYmxlIFwiJXMuJXMuJXNcIiBhcyBhIGZhaWxzYWZlIGFmdGVyICVkIGluZGV4IHNjYW5zIiwK QEAgLTI2MzIsMTMgKzI2NjYsMjcgQEAgbGF6eV9jbGVhbnVwX2FsbF9pbmRleGVzKExWUmVsU3Rh dGUgKnZhY3JlbCkKIHsKIAlkb3VibGUJCXJlbHR1cGxlcyA9IHZhY3JlbC0+bmV3X3JlbF90dXBs ZXM7CiAJYm9vbAkJZXN0aW1hdGVkX2NvdW50ID0gdmFjcmVsLT5zY2FubmVkX3BhZ2VzIDwgdmFj cmVsLT5yZWxfcGFnZXM7CisJY29uc3QgaW50IHByb2dyZXNzX3N0YXJ0X2luZGV4W10gPSB7CisJ CVBST0dSRVNTX1ZBQ1VVTV9QSEFTRSwKKwkJUFJPR1JFU1NfVkFDVVVNX0lOREVYX1RPVEFMCisJ fTsKKwljb25zdCBpbnQgcHJvZ3Jlc3NfZW5kX2luZGV4W10gPSB7CisJCVBST0dSRVNTX1ZBQ1VV TV9JTkRFWF9UT1RBTCwKKwkJUFJPR1JFU1NfVkFDVVVNX0lOREVYX0NPTVBMRVRFRAorCX07CisJ aW50NjQgICAgICAgcHJvZ3Jlc3Nfc3RhcnRfdmFsWzJdOworCWludDY0ICAgICAgIHByb2dyZXNz X2VuZF92YWxbMl07CiAKIAlBc3NlcnQodmFjcmVsLT5kb19pbmRleF9jbGVhbnVwKTsKIAlBc3Nl cnQodmFjcmVsLT5uaW5kZXhlcyA+IDApOwogCi0JLyogUmVwb3J0IHRoYXQgd2UgYXJlIG5vdyBj bGVhbmluZyB1cCBpbmRleGVzICovCi0JcGdzdGF0X3Byb2dyZXNzX3VwZGF0ZV9wYXJhbShQUk9H UkVTU19WQUNVVU1fUEhBU0UsCi0JCQkJCQkJCSBQUk9HUkVTU19WQUNVVU1fUEhBU0VfSU5ERVhf Q0xFQU5VUCk7CisJLyoKKwkgKiBSZXBvcnQgdGhhdCB3ZSBhcmUgbm93IGNsZWFuaW5nIHVwIGlu ZGV4ZXMKKwkgKiBhbmQgdGhlIG51bWJlciBvZiBpbmRleGVzIHRvIGNsZWFudXAuCisJICovCisJ cHJvZ3Jlc3Nfc3RhcnRfdmFsWzBdID0gUFJPR1JFU1NfVkFDVVVNX1BIQVNFX0lOREVYX0NMRUFO VVA7CisJcHJvZ3Jlc3Nfc3RhcnRfdmFsWzFdID0gdmFjcmVsLT5uaW5kZXhlczsKKwlwZ3N0YXRf cHJvZ3Jlc3NfdXBkYXRlX211bHRpX3BhcmFtKDIsIHByb2dyZXNzX3N0YXJ0X2luZGV4LCBwcm9n cmVzc19zdGFydF92YWwpOwogCiAJaWYgKCFQYXJhbGxlbFZhY3V1bUlzQWN0aXZlKHZhY3JlbCkp CiAJewpAQCAtMjY1MCw2ICsyNjk4LDEwIEBAIGxhenlfY2xlYW51cF9hbGxfaW5kZXhlcyhMVlJl bFN0YXRlICp2YWNyZWwpCiAJCQl2YWNyZWwtPmluZHN0YXRzW2lkeF0gPQogCQkJCWxhenlfY2xl YW51cF9vbmVfaW5kZXgoaW5kcmVsLCBpc3RhdCwgcmVsdHVwbGVzLAogCQkJCQkJCQkJICAgZXN0 aW1hdGVkX2NvdW50LCB2YWNyZWwpOworCisJCQkvKiBEb25lIGNsZWFuaW5nIGFuIGluZGV4IC0t IGluY3JlbWVudCB0aGUgaW5kZXhlcyBjb21wbGV0ZWQgKi8KKwkJCXBnc3RhdF9wcm9ncmVzc191 cGRhdGVfcGFyYW0oUFJPR1JFU1NfVkFDVVVNX0lOREVYX0NPTVBMRVRFRCwKKwkJCQkJCQkJCQkg aWR4ICsgMSk7CiAJCX0KIAl9CiAJZWxzZQpAQCAtMjY1OSw2ICsyNzExLDE0IEBAIGxhenlfY2xl YW51cF9hbGxfaW5kZXhlcyhMVlJlbFN0YXRlICp2YWNyZWwpCiAJCQkJCQkJCQkJCXZhY3JlbC0+ bnVtX2luZGV4X3NjYW5zLAogCQkJCQkJCQkJCQllc3RpbWF0ZWRfY291bnQpOwogCX0KKworCS8q CisJICogUmVzZXQgYW5kIHJlcG9ydCB0aGUgdG90YWwgbnVtYmVyIG9mIGluZGV4ZXMgdG8gY2xl YW51cAorCSAqIGFuZCB0aGUgbnVtYmVyIG9mIGluZGV4ZXMgY2xlYW5lZC4KKwkgKi8KKwlwcm9n cmVzc19lbmRfdmFsWzBdID0gMDsKKwlwcm9ncmVzc19lbmRfdmFsWzFdID0gMDsKKwlwZ3N0YXRf cHJvZ3Jlc3NfdXBkYXRlX211bHRpX3BhcmFtKDIsIHByb2dyZXNzX2VuZF9pbmRleCwgcHJvZ3Jl c3NfZW5kX3ZhbCk7CiB9CiAKIC8qCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJh bnNhbS9wYXJhbGxlbC5jIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vcGFyYWxsZWwuYwpp bmRleCA5ZTNlYzBkNWQ4Li41OGU0N2Q3NzNiIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nl c3MvdHJhbnNhbS9wYXJhbGxlbC5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3Bh cmFsbGVsLmMKQEAgLTE4NSw2ICsxODUsOCBAQCBDcmVhdGVQYXJhbGxlbENvbnRleHQoY29uc3Qg Y2hhciAqbGlicmFyeV9uYW1lLCBjb25zdCBjaGFyICpmdW5jdGlvbl9uYW1lLAogCXBjeHQtPmxp YnJhcnlfbmFtZSA9IHBzdHJkdXAobGlicmFyeV9uYW1lKTsKIAlwY3h0LT5mdW5jdGlvbl9uYW1l ID0gcHN0cmR1cChmdW5jdGlvbl9uYW1lKTsKIAlwY3h0LT5lcnJvcl9jb250ZXh0X3N0YWNrID0g ZXJyb3JfY29udGV4dF9zdGFjazsKKwlwY3h0LT5wYXJhbGxlbF9wcm9ncmVzc19jYWxsYmFjayA9 IE5VTEw7CisJcGN4dC0+cGFyYWxsZWxfcHJvZ3Jlc3NfY2FsbGJhY2tfYXJnID0gTlVMTDsKIAlz aG1fdG9jX2luaXRpYWxpemVfZXN0aW1hdG9yKCZwY3h0LT5lc3RpbWF0b3IpOwogCWRsaXN0X3B1 c2hfaGVhZCgmcGN4dF9saXN0LCAmcGN4dC0+bm9kZSk7CiAKQEAgLTExOTksNiArMTIwMSwyMSBA QCBIYW5kbGVQYXJhbGxlbE1lc3NhZ2UoUGFyYWxsZWxDb250ZXh0ICpwY3h0LCBpbnQgaSwgU3Ry aW5nSW5mbyBtc2cpCiAJCQkJYnJlYWs7CiAJCQl9CiAKKwkJY2FzZSAnUCc6CQkJCS8qIFBhcmFs bGVsIHByb2dyZXNzIHJlcG9ydGluZyAqLworCQkJeworCQkJCS8qCisJCQkJICogQSBMZWFkZXIg cHJvY2VzcyB0aGF0IHJlY2VpdmVzIHRoaXMgbWVzc2FnZQorCQkJCSAqIG11c3QgYmUgcmVhZHkg dG8gdXBkYXRlIHByb2dyZXNzLgorCQkJCSAqLworCQkJCUFzc2VydChwY3h0LT5wYXJhbGxlbF9w cm9ncmVzc19jYWxsYmFjayk7CisJCQkJQXNzZXJ0KHBjeHQtPnBhcmFsbGVsX3Byb2dyZXNzX2Nh bGxiYWNrX2FyZyk7CisKKwkJCQkvKiBSZXBvcnQgcHJvZ3Jlc3MgKi8KKwkJCQlwY3h0LT5wYXJh bGxlbF9wcm9ncmVzc19jYWxsYmFjayhwY3h0LT5wYXJhbGxlbF9wcm9ncmVzc19jYWxsYmFja19h cmcpOworCisJCQkJYnJlYWs7CisJCQl9CisKIAkJY2FzZSAnWCc6CQkJCS8qIFRlcm1pbmF0ZSwg aW5kaWNhdGluZyBjbGVhbiBleGl0ICovCiAJCQl7CiAJCQkJc2htX21xX2RldGFjaChwY3h0LT53 b3JrZXJbaV0uZXJyb3JfbXFoKTsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lz dGVtX3ZpZXdzLnNxbCBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX3ZpZXdzLnNxbAppbmRl eCA0NDdjOWI5NzBmLi4wYWI4NjQxODVmIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9n L3N5c3RlbV92aWV3cy5zcWwKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fdmlld3Mu c3FsCkBAIC0xMTY1LDcgKzExNjUsOCBAQCBDUkVBVEUgVklFVyBwZ19zdGF0X3Byb2dyZXNzX3Zh Y3V1bSBBUwogICAgICAgICAgICAgICAgICAgICAgIEVORCBBUyBwaGFzZSwKICAgICAgICAgUy5w YXJhbTIgQVMgaGVhcF9ibGtzX3RvdGFsLCBTLnBhcmFtMyBBUyBoZWFwX2Jsa3Nfc2Nhbm5lZCwK ICAgICAgICAgUy5wYXJhbTQgQVMgaGVhcF9ibGtzX3ZhY3V1bWVkLCBTLnBhcmFtNSBBUyBpbmRl eF92YWN1dW1fY291bnQsCi0gICAgICAgIFMucGFyYW02IEFTIG1heF9kZWFkX3R1cGxlcywgUy5w YXJhbTcgQVMgbnVtX2RlYWRfdHVwbGVzCisgICAgICAgIFMucGFyYW02IEFTIG1heF9kZWFkX3R1 cGxlcywgUy5wYXJhbTcgQVMgbnVtX2RlYWRfdHVwbGVzLAorICAgICAgICBTLnBhcmFtOCBBUyBp bmRleGVzX3RvdGFsLCBTLnBhcmFtOSBBUyBpbmRleGVzX2NvbXBsZXRlZAogICAgIEZST00gcGdf c3RhdF9nZXRfcHJvZ3Jlc3NfaW5mbygnVkFDVVVNJykgQVMgUwogICAgICAgICBMRUZUIEpPSU4g cGdfZGF0YWJhc2UgRCBPTiBTLmRhdGlkID0gRC5vaWQ7CiAKZGlmZiAtLWdpdCBhL3NyYy9iYWNr ZW5kL2NvbW1hbmRzL3ZhY3V1bXBhcmFsbGVsLmMgYi9zcmMvYmFja2VuZC9jb21tYW5kcy92YWN1 dW1wYXJhbGxlbC5jCmluZGV4IGJjZDQwYzgwYTEuLjM3OTFhZDNhMmQgMTAwNjQ0Ci0tLSBhL3Ny Yy9iYWNrZW5kL2NvbW1hbmRzL3ZhY3V1bXBhcmFsbGVsLmMKKysrIGIvc3JjL2JhY2tlbmQvY29t bWFuZHMvdmFjdXVtcGFyYWxsZWwuYwpAQCAtMzAsNyArMzAsOSBAQAogI2luY2x1ZGUgImFjY2Vz cy90YWJsZS5oIgogI2luY2x1ZGUgImFjY2Vzcy94YWN0LmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9p bmRleC5oIgorI2luY2x1ZGUgImNvbW1hbmRzL3Byb2dyZXNzLmgiCiAjaW5jbHVkZSAiY29tbWFu ZHMvdmFjdXVtLmgiCisjaW5jbHVkZSAibGlicHEvcHFmb3JtYXQuaCIKICNpbmNsdWRlICJvcHRp bWl6ZXIvcGF0aHMuaCIKICNpbmNsdWRlICJwZ3N0YXQuaCIKICNpbmNsdWRlICJzdG9yYWdlL2J1 Zm1nci5oIgpAQCAtMTAzLDYgKzEwNSwxNyBAQCB0eXBlZGVmIHN0cnVjdCBQVlNoYXJlZAogCiAJ LyogQ291bnRlciBmb3IgdmFjdXVtaW5nIGFuZCBjbGVhbnVwICovCiAJcGdfYXRvbWljX3VpbnQz MiBpZHg7CisKKwkvKgorCSAqIENvdW50ZXIgZm9yIHZhY3V1bWluZyBhbmQgY2xlYW51cCBwcm9n cmVzcyByZXBvcnRpbmcuCisJICogVGhpcyB2YWx1ZSBpcyB1c2VkIHRvIHJlcG9ydCBpbmRleCB2 YWN1dW0vY2xlYW51cCBwcm9ncmVzcworCSAqIGluIHBhcmFsbGVsX3ZhY3V1bV9wcm9ncmVzc19y ZXBvcnQuIFdlIGtlZXAgdGhpcworCSAqIGNvdW50ZXIgdG8gYXZvaWQgaGF2aW5nIHRvIGxvb3Ag dGhyb3VnaAorCSAqIFBhcmFsbGVsVmFjdXVtU3RhdGUtPmluZHN0YXRzIHRvIGRldGVybWluZSB0 aGUgbnVtYmVyCisJICogb2YgaW5kZXhlcyBjb21wbGV0ZWQuCisJICovCisJcGdfYXRvbWljX3Vp bnQzMiBuaW5kZXhlc19jb21wbGV0ZWQ7CisKIH0gUFZTaGFyZWQ7CiAKIC8qIFN0YXR1cyB1c2Vk IGR1cmluZyBwYXJhbGxlbCBpbmRleCB2YWN1dW0gb3IgY2xlYW51cCAqLwpAQCAtMjcyLDYgKzI4 NSw4IEBAIHBhcmFsbGVsX3ZhY3V1bV9pbml0KFJlbGF0aW9uIHJlbCwgUmVsYXRpb24gKmluZHJl bHMsIGludCBuaW5kZXhlcywKIAkJCQkJCQkJIHBhcmFsbGVsX3dvcmtlcnMpOwogCUFzc2VydChw Y3h0LT5ud29ya2VycyA+IDApOwogCXB2cy0+cGN4dCA9IHBjeHQ7CisJcGN4dC0+cGFyYWxsZWxf cHJvZ3Jlc3NfY2FsbGJhY2sgPSBwYXJhbGxlbF92YWN1dW1fdXBkYXRlX3Byb2dyZXNzOworCXBj eHQtPnBhcmFsbGVsX3Byb2dyZXNzX2NhbGxiYWNrX2FyZyA9IHB2czsKIAogCS8qIEVzdGltYXRl IHNpemUgZm9yIGluZGV4IHZhY3V1bSBzdGF0cyAtLSBQQVJBTExFTF9WQUNVVU1fS0VZX0lOREVY X1NUQVRTICovCiAJZXN0X2luZHN0YXRzX2xlbiA9IG11bF9zaXplKHNpemVvZihQVkluZFN0YXRz KSwgbmluZGV4ZXMpOwpAQCAtMzY0LDYgKzM3OSw3IEBAIHBhcmFsbGVsX3ZhY3V1bV9pbml0KFJl bGF0aW9uIHJlbCwgUmVsYXRpb24gKmluZHJlbHMsIGludCBuaW5kZXhlcywKIAlwZ19hdG9taWNf aW5pdF91MzIoJihzaGFyZWQtPmNvc3RfYmFsYW5jZSksIDApOwogCXBnX2F0b21pY19pbml0X3Uz MigmKHNoYXJlZC0+YWN0aXZlX253b3JrZXJzKSwgMCk7CiAJcGdfYXRvbWljX2luaXRfdTMyKCYo c2hhcmVkLT5pZHgpLCAwKTsKKwlwZ19hdG9taWNfaW5pdF91MzIoJihzaGFyZWQtPm5pbmRleGVz X2NvbXBsZXRlZCksIDApOwogCiAJc2htX3RvY19pbnNlcnQocGN4dC0+dG9jLCBQQVJBTExFTF9W QUNVVU1fS0VZX1NIQVJFRCwgc2hhcmVkKTsKIAlwdnMtPnNoYXJlZCA9IHNoYXJlZDsKQEAgLTYx OCw4ICs2MzQsOSBAQCBwYXJhbGxlbF92YWN1dW1fcHJvY2Vzc19hbGxfaW5kZXhlcyhQYXJhbGxl bFZhY3V1bVN0YXRlICpwdnMsIGludCBudW1faW5kZXhfc2NhbgogCQkJCQkJCQkJCQkJCXZhY3V1 bSkpOwogCX0KIAotCS8qIFJlc2V0IHRoZSBwYXJhbGxlbCBpbmRleCBwcm9jZXNzaW5nIGNvdW50 ZXIgKi8KKwkvKiBSZXNldCB0aGUgcGFyYWxsZWwgaW5kZXggcHJvY2Vzc2luZyBhbmQgcHJvZ3Jl c3MgY291bnRlcnMgKi8KIAlwZ19hdG9taWNfd3JpdGVfdTMyKCYocHZzLT5zaGFyZWQtPmlkeCks IDApOworCXBnX2F0b21pY193cml0ZV91MzIoJihwdnMtPnNoYXJlZC0+bmluZGV4ZXNfY29tcGxl dGVkKSwgMCk7CiAKIAkvKiBTZXR1cCB0aGUgc2hhcmVkIGNvc3QtYmFzZWQgdmFjdXVtIGRlbGF5 IGFuZCBsYXVuY2ggd29ya2VycyAqLwogCWlmIChud29ya2VycyA+IDApCkBAIC04ODgsNiArOTA1 LDI2IEBAIHBhcmFsbGVsX3ZhY3V1bV9wcm9jZXNzX29uZV9pbmRleChQYXJhbGxlbFZhY3V1bVN0 YXRlICpwdnMsIFJlbGF0aW9uIGluZHJlbCwKIAlwdnMtPnN0YXR1cyA9IFBBUkFMTEVMX0lORFZB Q19TVEFUVVNfQ09NUExFVEVEOwogCXBmcmVlKHB2cy0+aW5kbmFtZSk7CiAJcHZzLT5pbmRuYW1l ID0gTlVMTDsKKworCS8qCisJICogVXBkYXRlIGluZGV4IHZhY3V1bSBwcm9ncmVzcy4KKwkgKgor CSAqIFdoZW4gYSBwYXJhbGxlbCB3b3JrZXIgY29tcGxldGVzIGFuCisJICogaW5kZXggdmFjdXVt LCBpdCBzZW5kcyBhIHByb3RvY29sIG1lc3NhZ2UKKwkgKiB0byBub3RpZnkgdGhlIGxlYWRlci4g VGhlIGxlYWRlciB0aGVuCisJICogdXBkYXRlcyB0aGUgcHJvZ3Jlc3MuIFNlZSBIYW5kbGVQYXJh bGxlbE1lc3NhZ2UoKS4KKwkgKgorCSAqIFdoZW4gYSBsZWFkZXIgcGVyZm9ybXMgdGhlIGluZGV4 IHZhY3V1bSwKKwkgKiBpdCBjYW4gdXBkYXRlIHRoZSBwcm9ncmVzcyBkaXJlY3RseS4KKwkgKi8K KwlpZiAoSXNQYXJhbGxlbFdvcmtlcigpKQorCXsKKwkJU3RyaW5nSW5mb0RhdGEgbXNnYnVmOwor CisJCXBxX2JlZ2lubWVzc2FnZSgmbXNnYnVmLCAnUCcpOworCQlwcV9lbmRtZXNzYWdlKCZtc2di dWYpOworCX0gZWxzZQorCQlwYXJhbGxlbF92YWN1dW1fdXBkYXRlX3Byb2dyZXNzKHB2cyk7CiB9 CiAKIC8qCkBAIC0xMDcyLDMgKzExMDksMjIgQEAgcGFyYWxsZWxfdmFjdXVtX2Vycm9yX2NhbGxi YWNrKHZvaWQgKmFyZykKIAkJCXJldHVybjsKIAl9CiB9CisKKy8qCisgKiBSZWFkIHB2cy0+c2hh cmVkLT5uaW5kZXhlc19jb21wbGV0ZWQgYW5kIHJlcG9ydCB0aGUgbnVtYmVyIG9mIGluZGV4ZXMK KyAqIHZhY3V1bWVkIHNvIGZhci4KKyAqCisgKiBOb3RlOiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBi ZSBjYWxsZWQgYnkgdGhlIGxlYWRlciBwcm9jZXNzIG9ubHksCisgKiBhbmQgaXQncyB1cCB0byB0 aGUgY2FsbGVyIHRvIGVuc3VyZSB0aGlzLgorICovCit2b2lkCitwYXJhbGxlbF92YWN1dW1fdXBk YXRlX3Byb2dyZXNzKHZvaWQgKmFyZykKK3sKKwlQYXJhbGxlbFZhY3V1bVN0YXRlICpwdnMgPSAo UGFyYWxsZWxWYWN1dW1TdGF0ZSAqKWFyZzsKKworCUFzc2VydCghSXNQYXJhbGxlbFdvcmtlcigp KTsKKworCWlmIChwdnMpCisJCXBnc3RhdF9wcm9ncmVzc191cGRhdGVfcGFyYW0oUFJPR1JFU1Nf VkFDVVVNX0lOREVYX0NPTVBMRVRFRCwKKwkJCQkJCQkJCSBwZ19hdG9taWNfYWRkX2ZldGNoX3Uz MigmKHB2cy0+c2hhcmVkLT5uaW5kZXhlc19jb21wbGV0ZWQpLCAxKSk7Cit9ClwgTm8gbmV3bGlu ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvYWNjZXNzL3BhcmFsbGVs LmggYi9zcmMvaW5jbHVkZS9hY2Nlc3MvcGFyYWxsZWwuaAppbmRleCAwNjFmOGE0YzRjLi43ZGRj NzFkYWUyIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9hY2Nlc3MvcGFyYWxsZWwuaAorKysgYi9z cmMvaW5jbHVkZS9hY2Nlc3MvcGFyYWxsZWwuaApAQCAtMjAsNiArMjAsOSBAQAogI2luY2x1ZGUg InN0b3JhZ2Uvc2htX21xLmgiCiAjaW5jbHVkZSAic3RvcmFnZS9zaG1fdG9jLmgiCiAKKy8qIHBy b2dyZXNzIGNhbGxiYWNrIGRlZmluaXRpb24gKi8KK3R5cGVkZWYgdm9pZCAoKlBhcmFsbGVsUHJv Z3Jlc3NDYWxsYmFjaykgKHZvaWQgKnBhcmFsbGVsX3Byb2dyZXNzX2NhbGxiYWNrX3N0YXRlKTsK KwogdHlwZWRlZiB2b2lkICgqcGFyYWxsZWxfd29ya2VyX21haW5fdHlwZSkgKGRzbV9zZWdtZW50 ICpzZWcsIHNobV90b2MgKnRvYyk7CiAKIHR5cGVkZWYgc3RydWN0IFBhcmFsbGVsV29ya2VySW5m bwpAQCAtNDYsNiArNDksOCBAQCB0eXBlZGVmIHN0cnVjdCBQYXJhbGxlbENvbnRleHQKIAlQYXJh bGxlbFdvcmtlckluZm8gKndvcmtlcjsKIAlpbnQJCQlua25vd25fYXR0YWNoZWRfd29ya2VyczsK IAlib29sCSAgICprbm93bl9hdHRhY2hlZF93b3JrZXJzOworCVBhcmFsbGVsUHJvZ3Jlc3NDYWxs YmFjayBwYXJhbGxlbF9wcm9ncmVzc19jYWxsYmFjazsKKwl2b2lkCQkqcGFyYWxsZWxfcHJvZ3Jl c3NfY2FsbGJhY2tfYXJnOwogfSBQYXJhbGxlbENvbnRleHQ7CiAKIHR5cGVkZWYgc3RydWN0IFBh cmFsbGVsV29ya2VyQ29udGV4dApkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY29tbWFuZHMvcHJv Z3Jlc3MuaCBiL3NyYy9pbmNsdWRlL2NvbW1hbmRzL3Byb2dyZXNzLmgKaW5kZXggZTVhZGQ0MTM1 Mi4uNmI4YjYwOWE0ZiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY29tbWFuZHMvcHJvZ3Jlc3Mu aAorKysgYi9zcmMvaW5jbHVkZS9jb21tYW5kcy9wcm9ncmVzcy5oCkBAIC0yNSw2ICsyNSw4IEBA CiAjZGVmaW5lIFBST0dSRVNTX1ZBQ1VVTV9OVU1fSU5ERVhfVkFDVVVNUwkJNAogI2RlZmluZSBQ Uk9HUkVTU19WQUNVVU1fTUFYX0RFQURfVFVQTEVTCQkJNQogI2RlZmluZSBQUk9HUkVTU19WQUNV VU1fTlVNX0RFQURfVFVQTEVTCQkJNgorI2RlZmluZSBQUk9HUkVTU19WQUNVVU1fSU5ERVhfVE9U QUwgICAgICAgICAgICAgNworI2RlZmluZSBQUk9HUkVTU19WQUNVVU1fSU5ERVhfQ09NUExFVEVE ICAgICAgICAgOAogCiAvKiBQaGFzZXMgb2YgdmFjdXVtIChhcyBhZHZlcnRpc2VkIHZpYSBQUk9H UkVTU19WQUNVVU1fUEhBU0UpICovCiAjZGVmaW5lIFBST0dSRVNTX1ZBQ1VVTV9QSEFTRV9TQ0FO X0hFQVAJCQkxCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jb21tYW5kcy92YWN1dW0uaCBiL3Ny Yy9pbmNsdWRlL2NvbW1hbmRzL3ZhY3V1bS5oCmluZGV4IDY4OWRiYjc3MDIuLjdiMTMwNjlkMzMg MTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2NvbW1hbmRzL3ZhY3V1bS5oCisrKyBiL3NyYy9pbmNs dWRlL2NvbW1hbmRzL3ZhY3V1bS5oCkBAIC0zNzAsNSArMzcwLDYgQEAgZXh0ZXJuIGJvb2wgc3Rk X3R5cGFuYWx5emUoVmFjQXR0clN0YXRzICpzdGF0cyk7CiBleHRlcm4gZG91YmxlIGFubF9yYW5k b21fZnJhY3Qodm9pZCk7CiBleHRlcm4gZG91YmxlIGFubF9pbml0X3NlbGVjdGlvbl9zdGF0ZShp bnQgbik7CiBleHRlcm4gZG91YmxlIGFubF9nZXRfbmV4dF9TKGRvdWJsZSB0LCBpbnQgbiwgZG91 YmxlICpzdGF0ZXB0cik7CitleHRlcm4gdm9pZCBwYXJhbGxlbF92YWN1dW1fdXBkYXRlX3Byb2dy ZXNzKHZvaWQgKmFyZyk7CiAKICNlbmRpZgkJCQkJCQkvKiBWQUNVVU1fSCAqLwpkaWZmIC0tZ2l0 IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9ydWxlcy5vdXQgYi9zcmMvdGVzdC9yZWdyZXNz L2V4cGVjdGVkL3J1bGVzLm91dAppbmRleCBmYjlmOTM2ZDQzLi5kZjZmMjMwNzE1IDEwMDY0NAot LS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3J1bGVzLm91dAorKysgYi9zcmMvdGVzdC9y ZWdyZXNzL2V4cGVjdGVkL3J1bGVzLm91dApAQCAtMjAyMSw3ICsyMDIxLDkgQEAgcGdfc3RhdF9w cm9ncmVzc192YWN1dW18IFNFTEVDVCBzLnBpZCwKICAgICBzLnBhcmFtNCBBUyBoZWFwX2Jsa3Nf dmFjdXVtZWQsCiAgICAgcy5wYXJhbTUgQVMgaW5kZXhfdmFjdXVtX2NvdW50LAogICAgIHMucGFy YW02IEFTIG1heF9kZWFkX3R1cGxlcywKLSAgICBzLnBhcmFtNyBBUyBudW1fZGVhZF90dXBsZXMK KyAgICBzLnBhcmFtNyBBUyBudW1fZGVhZF90dXBsZXMsCisgICAgcy5wYXJhbTggQVMgaW5kZXhl c190b3RhbCwKKyAgICBzLnBhcmFtOSBBUyBpbmRleGVzX2NvbXBsZXRlZAogICAgRlJPTSAocGdf c3RhdF9nZXRfcHJvZ3Jlc3NfaW5mbygnVkFDVVVNJzo6dGV4dCkgcyhwaWQsIGRhdGlkLCByZWxp ZCwgcGFyYW0xLCBwYXJhbTIsIHBhcmFtMywgcGFyYW00LCBwYXJhbTUsIHBhcmFtNiwgcGFyYW03 LCBwYXJhbTgsIHBhcmFtOSwgcGFyYW0xMCwgcGFyYW0xMSwgcGFyYW0xMiwgcGFyYW0xMywgcGFy YW0xNCwgcGFyYW0xNSwgcGFyYW0xNiwgcGFyYW0xNywgcGFyYW0xOCwgcGFyYW0xOSwgcGFyYW0y MCkKICAgICAgTEVGVCBKT0lOIHBnX2RhdGFiYXNlIGQgT04gKChzLmRhdGlkID0gZC5vaWQpKSk7 CiBwZ19zdGF0X3JlY292ZXJ5X3ByZWZldGNofCBTRUxFQ1Qgcy5zdGF0c19yZXNldCwKLS0gCjIu MzIuMSAoQXBwbGUgR2l0LTEzMykKCg== --_002_72CD33F6C2B545E4A78F85EC923DCF0Famazoncom_--