From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id F3BEA1FF183 for ; Wed, 13 Aug 2025 18:02:48 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 1596739C5C; Wed, 13 Aug 2025 18:04:26 +0200 (CEST) From: Fiona Ebner To: pve-devel@lists.proxmox.com Date: Wed, 13 Aug 2025 18:04:00 +0200 Message-ID: <20250813160416.194472-3-f.ebner@proxmox.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250813160416.194472-1-f.ebner@proxmox.com> References: <20250813160416.194472-1-f.ebner@proxmox.com> MIME-Version: 1.0 X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1755101027544 X-SPAM-LEVEL: Spam detection results: 0 AWL -0.148 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment KAM_LOTSOFHASH 0.25 Emails with lots of hash-like gibberish SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [gitlab.com, c.inc] Subject: [pve-devel] [PATCH qemu 2/2] cherry-pick some more stable fixes X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" U2lnbmVkLW9mZi1ieTogRmlvbmEgRWJuZXIgPGYuZWJuZXJAcHJveG1veC5jb20+Ci0tLQogLi4u dC1GaXgtVkxBTi1maWx0ZXItdGFibGUtcmVzZXQtdGltaW5nLnBhdGNoIHwgMTA3ICsrKysrKysr KysrKysrKwogLi4ud2lkdGgtb2YtdGhpcmQtb3BlcmFuZC1vZi1WSU5TRVJUeDEyLnBhdGNoIHwg IDQ2ICsrKysrKysKIC4uLm1lbS1maXgtdXNlLWFmdGVyLWZyZWUtd2l0aC1kaXNwYXRjaC5wYXRj aCB8IDEyNiArKysrKysrKysrKysrKysrKysKIC4uLnktb25lLWFuZC1pbnZhbGlkLWFjY2Vzcy1p bi12aXJ0cXVldS5wYXRjaCB8ICA4NiArKysrKysrKysrKysKIGRlYmlhbi9wYXRjaGVzL3Nlcmll cyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNCArCiA1IGZpbGVzIGNoYW5nZWQsIDM2OSBp bnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgZGViaWFuL3BhdGNoZXMvZXh0cmEvMDAw My12aXJ0aW8tbmV0LUZpeC1WTEFOLWZpbHRlci10YWJsZS1yZXNldC10aW1pbmcucGF0Y2gKIGNy ZWF0ZSBtb2RlIDEwMDY0NCBkZWJpYW4vcGF0Y2hlcy9leHRyYS8wMDA0LXRhcmdldC1pMzg2LWZp eC13aWR0aC1vZi10aGlyZC1vcGVyYW5kLW9mLVZJTlNFUlR4MTIucGF0Y2gKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBkZWJpYW4vcGF0Y2hlcy9leHRyYS8wMDA1LXN5c3RlbS1waHlzbWVtLWZpeC11c2Ut YWZ0ZXItZnJlZS13aXRoLWRpc3BhdGNoLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgZGViaWFu L3BhdGNoZXMvZXh0cmEvMDAwNi12aXJ0aW8tZml4LW9mZi1ieS1vbmUtYW5kLWludmFsaWQtYWNj ZXNzLWluLXZpcnRxdWV1LnBhdGNoCgpkaWZmIC0tZ2l0IGEvZGViaWFuL3BhdGNoZXMvZXh0cmEv MDAwMy12aXJ0aW8tbmV0LUZpeC1WTEFOLWZpbHRlci10YWJsZS1yZXNldC10aW1pbmcucGF0Y2gg Yi9kZWJpYW4vcGF0Y2hlcy9leHRyYS8wMDAzLXZpcnRpby1uZXQtRml4LVZMQU4tZmlsdGVyLXRh YmxlLXJlc2V0LXRpbWluZy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw Li45Y2ZhZGZmCi0tLSAvZGV2L251bGwKKysrIGIvZGViaWFuL3BhdGNoZXMvZXh0cmEvMDAwMy12 aXJ0aW8tbmV0LUZpeC1WTEFOLWZpbHRlci10YWJsZS1yZXNldC10aW1pbmcucGF0Y2gKQEAgLTAs MCArMSwxMDcgQEAKK0Zyb20gMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IEFraWhpa28gT2Rha2kgPG9kYWtpQHJz Zy5jaS5pLnUtdG9reW8uYWMuanA+CitEYXRlOiBTdW4sIDI3IEp1bCAyMDI1IDE1OjIyOjM2ICsw OTAwCitTdWJqZWN0OiBbUEFUQ0hdIHZpcnRpby1uZXQ6IEZpeCBWTEFOIGZpbHRlciB0YWJsZSBy ZXNldCB0aW1pbmcKKworUHJvYmxlbQorLS0tLS0tLQorCitUaGUgZXhwZWN0ZWQgaW5pdGlhbCBz dGF0ZSBvZiB0aGUgdGFibGUgZGVwZW5kcyBvbiBmZWF0dXJlIG5lZ290aWF0aW9uOgorCitXaXRo IFZJUlRJT19ORVRfRl9DVFJMX1ZMQU46CisgIFRoZSB0YWJsZSBtdXN0IGJlIGVtcHR5IGluIGFj Y29yZGFuY2Ugd2l0aCB0aGUgc3BlY2lmaWNhdGlvbi4KK1dpdGhvdXQgVklSVElPX05FVF9GX0NU UkxfVkxBTjoKKyAgVGhlIHRhYmxlIG11c3QgYmUgZmlsbGVkIHRvIHBlcm1pdCBhbGwgVkxBTiB0 cmFmZmljLgorCitQcmlvciB0byBjb21taXQgMDZiNjM2YTFlMmFkICgidmlydGlvLW5ldDogZG8g bm90IHJlc2V0IHZsYW4gZmlsdGVyaW5nCithdCBzZXRfZmVhdHVyZXMiKSwgdmlydGlvX25ldF9z ZXRfZmVhdHVyZXMoKSBhbHdheXMgcmVzZXQgdGhlIFZMQU4KK3RhYmxlLiBUaGF0IGNvbW1pdCBj aGFuZ2VkIHRoZSBiZWhhdmlvciB0byBza2lwIHRhYmxlIHJlc2V0IHdoZW4KK1ZJUlRJT19ORVRf Rl9DVFJMX1ZMQU4gd2FzIG5lZ290aWF0ZWQsIGFzc3VtaW5nIHRoZSB0YWJsZSB3b3VsZCBiZQor cHJvcGVybHkgY2xlYXJlZCBkdXJpbmcgZGV2aWNlIHJlc2V0IGFuZCByZW1haW4gc3RhYmxlLgor CitIb3dldmVyLCB0aGlzIGFzc3VtcHRpb24gYnJlYWtzIHdoZW4gYSBkcml2ZXIgcmVuZWdvdGlh dGVzIGZlYXR1cmVzOgorMS4gSW5pdGlhbCBuZWdvdGlhdGlvbiB3aXRob3V0IFZJUlRJT19ORVRf Rl9DVFJMX1ZMQU4gKHRhYmxlIGZpbGxlZCkKKzIuIFJlbmVnb3RpYXRpb24gd2l0aCBWSVJUSU9f TkVUX0ZfQ1RSTF9WTEFOICh0YWJsZSB3aWxsIG5vdCBiZSBjbGVhcmVkKQorCitUaGUgcHJvYmxl bSB3YXMgZXhhY2VyYmF0ZWQgYnkgY29tbWl0IDBjYWVkMjVjZDE3MSAoInZpcnRpbzogQ2FsbAor c2V0X2ZlYXR1cmVzIGR1cmluZyByZXNldCIpLCB3aGljaCB0cmlnZ2VyZWQgdmlydGlvX25ldF9z ZXRfZmVhdHVyZXMoKQorZHVyaW5nIGRldmljZSByZXNldCwgZXhwb3NpbmcgdGhlIGJ1ZyB3aGVu ZXZlciBWSVJUSU9fTkVUX0ZfQ1RSTF9WTEFOCit3YXMgbmVnb3RpYXRlZCBhZnRlciBhIGRldmlj ZSByZXNldC4KKworU29sdXRpb24KKy0tLS0tLS0tCisKK0ZpeCB0aGUgaXNzdWUgYnkgaW5pdGlh bGl6aW5nIHRoZSB0YWJsZSB3aGVuIHZpcnRpb19uZXRfc2V0X2ZlYXR1cmVzKCkKK2lzIGNhbGxl ZCB0byBjaGFuZ2UgdGhlIFZJUlRJT19ORVRfRl9DVFJMX1ZMQU4gYml0IG9mCit2ZGV2LT5ndWVz dF9mZWF0dXJlcy4KKworVGhpcyBhcHByb2FjaCBlbnN1cmVzIHRoZSBjb3JyZWN0IHRhYmxlIHN0 YXRlIHJlZ2FyZGxlc3Mgb2YgZmVhdHVyZQorbmVnb3RpYXRpb24gc2VxdWVuY2UgYnkgcGVyZm9y bWluZyBpbml0aWFsaXphdGlvbiBpbgordmlydGlvX25ldF9zZXRfZmVhdHVyZXMoKSBhcyBRRU1V IGRpZCBwcmlvciB0byBjb21taXQgMDZiNjM2YTFlMmFkCisoInZpcnRpby1uZXQ6IGRvIG5vdCBy ZXNldCB2bGFuIGZpbHRlcmluZyBhdCBzZXRfZmVhdHVyZXMiKS4KKworVGhpcyBjaGFuZ2Ugc3Rp bGwgcHJlc2VydmVzIHRoZSBnb2FsIG9mIHRoZSBjb21taXQsIHdoaWNoIHdhcyB0byBhdm9pZAor cmVzZXR0aW5nIHRoZSB0YWJsZSBkdXJpbmcgbWlncmF0aW9uLCBieSBjaGVja2luZyB3aGV0aGVy IHRoZQorVklSVElPX05FVF9GX0NUUkxfVkxBTiBiaXQgb2YgdmRldi0+Z3Vlc3RfZmVhdHVyZXMg aXMgYmVpbmcgY2hhbmdlZDsKK3ZkZXYtPmd1ZXN0X2ZlYXR1cmVzIGlzIHNldCBiZWZvcmUgdmly dGlvX25ldF9zZXRfZmVhdHVyZXMoKSBnZXRzIGNhbGxlZAorZHVyaW5nIG1pZ3JhdGlvbi4KKwor SXQgYWxzbyBhdm9pZHMgcmVzZXR0aW5nIHRoZSB0YWJsZSB3aGVuIHRoZSBkcml2ZXIgc2V0cyBh IGZlYXR1cmUKK2JpdG1hc2sgd2l0aCBubyBjaGFuZ2UgZm9yIHRoZSBWSVJUSU9fTkVUX0ZfQ1RS TF9WTEFOIGJpdCwgd2hpY2ggbWFrZXMKK3RoZSBvcGVyYXRpb24gaWRlbXBvdGVudCBhbmQgaXRz IHNlbWFudGljcyBjbGVhbmVyLgorCitBZGRpdGlvbmFsbHksIHRoaXMgY2hhbmdlIGVuc3VyZXMg dGhlIHRhYmxlIGlzIGluaXRpYWxpemVkIGFmdGVyCitmZWF0dXJlIG5lZ290aWF0aW9uIGFuZCBi ZWZvcmUgdGhlIERSSVZFUl9PSyBzdGF0dXMgYml0IGJlaW5nIHNldCBmb3IKK2NvbXBhdGliaWxp dHkgd2l0aCB0aGUgTGludXggZHJpdmVyIGJlZm9yZSBjb21taXQgNTBjMGFkYTYyN2Y1CisoInZp cnRpby1uZXQ6IGZpeCByYWNlIGJldHdlZW4gbmRvX29wZW4oKSBhbmQgdmlydGlvX2RldmljZV9y ZWFkeSgpIiksCit3aGljaCBkaWQgbm90IGVuc3VyZSB0byBzZXQgdGhlIERSSVZFUl9PSyBzdGF0 dXMgYml0IGJlZm9yZSBtb2RpZnlpbmcKK3RoZSB0YWJsZS4KKworRml4ZXM6IDA2YjYzNmExZTJh ZCAoInZpcnRpby1uZXQ6IGRvIG5vdCByZXNldCB2bGFuIGZpbHRlcmluZyBhdCBzZXRfZmVhdHVy ZXMiKQorQ2M6IHFlbXUtc3RhYmxlQG5vbmdudS5vcmcKK1JlcG9ydGVkLWJ5OiBLb25zdGFudGlu IFNoa29sbnl5IDxrc2hrQGxpbnV4LmlibS5jb20+CitTaWduZWQtb2ZmLWJ5OiBBa2loaWtvIE9k YWtpIDxvZGFraUByc2cuY2kuaS51LXRva3lvLmFjLmpwPgorVGVzdGVkLWJ5OiBLb25zdGFudGlu IFNoa29sbnl5IDxrc2hrQGxpbnV4LmlibS5jb20+CitUZXN0ZWQtYnk6IExlaSBZYW5nIDxsZWl5 YW5nQHJlZGhhdC5jb20+CitNZXNzYWdlLUlkOiA8MjAyNTA3Mjctdmxhbi12My0xLWJiZWU3Mzg2 MTliMUByc2cuY2kuaS51LXRva3lvLmFjLmpwPgorVGVzdGVkLWJ5OiBLb25zdGFudGluIFNoa29s bnl5IDxrc2hrQGxpbnV4LmlibS5jb20+CitSZXZpZXdlZC1ieTogTWljaGFlbCBTLiBUc2lya2lu IDxtc3RAcmVkaGF0LmNvbT4KK1NpZ25lZC1vZmYtYnk6IE1pY2hhZWwgUy4gVHNpcmtpbiA8bXN0 QHJlZGhhdC5jb20+CisoY2hlcnJ5IHBpY2tlZCBmcm9tIGNvbW1pdCA2MDcxZDEzYzZhMzc0OTNh NmIyNmUxNjA5YjA5YTk4YWEwNTgwMzhhKQorU2lnbmVkLW9mZi1ieTogRmlvbmEgRWJuZXIgPGYu ZWJuZXJAcHJveG1veC5jb20+CistLS0KKyBody9uZXQvdmlydGlvLW5ldC5jIHwgNyArKysrLS0t CisgMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworZGlm ZiAtLWdpdCBhL2h3L25ldC92aXJ0aW8tbmV0LmMgYi9ody9uZXQvdmlydGlvLW5ldC5jCitpbmRl eCA1ZjkwOGU1YmNhLi44YTBlYTRjZmY1IDEwMDY0NAorLS0tIGEvaHcvbmV0L3ZpcnRpby1uZXQu YworKysrIGIvaHcvbmV0L3ZpcnRpby1uZXQuYworQEAgLTk5Nyw4ICs5OTcsOSBAQCBzdGF0aWMg dm9pZCB2aXJ0aW9fbmV0X3NldF9mZWF0dXJlcyhWaXJ0SU9EZXZpY2UgKnZkZXYsIHVpbnQ2NF90 IGZlYXR1cmVzKQorICAgICAgICAgdmhvc3RfbmV0X3NhdmVfYWNrZWRfZmVhdHVyZXMobmMtPnBl ZXIpOworICAgICB9CisgCistICAgIGlmICghdmlydGlvX2hhc19mZWF0dXJlKGZlYXR1cmVzLCBW SVJUSU9fTkVUX0ZfQ1RSTF9WTEFOKSkgeworLSAgICAgICAgbWVtc2V0KG4tPnZsYW5zLCAweGZm LCBNQVhfVkxBTiA+PiAzKTsKKysgICAgaWYgKHZpcnRpb19oYXNfZmVhdHVyZSh2ZGV2LT5ndWVz dF9mZWF0dXJlcyBeIGZlYXR1cmVzLCBWSVJUSU9fTkVUX0ZfQ1RSTF9WTEFOKSkgeworKyAgICAg ICAgYm9vbCB2bGFuID0gdmlydGlvX2hhc19mZWF0dXJlKGZlYXR1cmVzLCBWSVJUSU9fTkVUX0Zf Q1RSTF9WTEFOKTsKKysgICAgICAgIG1lbXNldChuLT52bGFucywgdmxhbiA/IDAgOiAweGZmLCBN QVhfVkxBTiA+PiAzKTsKKyAgICAgfQorIAorICAgICBpZiAodmlydGlvX2hhc19mZWF0dXJlKGZl YXR1cmVzLCBWSVJUSU9fTkVUX0ZfU1RBTkRCWSkpIHsKK0BAIC0zODk2LDYgKzM4OTcsNyBAQCBz dGF0aWMgdm9pZCB2aXJ0aW9fbmV0X2RldmljZV9yZWFsaXplKERldmljZVN0YXRlICpkZXYsIEVy cm9yICoqZXJycCkKKyAgICAgbi0+bWFjX3RhYmxlLm1hY3MgPSBnX21hbGxvYzAoTUFDX1RBQkxF X0VOVFJJRVMgKiBFVEhfQUxFTik7CisgCisgICAgIG4tPnZsYW5zID0gZ19tYWxsb2MwKE1BWF9W TEFOID4+IDMpOworKyAgICBtZW1zZXQobi0+dmxhbnMsIDB4ZmYsIE1BWF9WTEFOID4+IDMpOwor IAorICAgICBuYyA9IHFlbXVfZ2V0X3F1ZXVlKG4tPm5pYyk7CisgICAgIG5jLT5yeGZpbHRlcl9u b3RpZnlfZW5hYmxlZCA9IDE7CitAQCAtMzk4Niw3ICszOTg4LDYgQEAgc3RhdGljIHZvaWQgdmly dGlvX25ldF9yZXNldChWaXJ0SU9EZXZpY2UgKnZkZXYpCisgICAgIG1lbXNldChuLT5tYWNfdGFi bGUubWFjcywgMCwgTUFDX1RBQkxFX0VOVFJJRVMgKiBFVEhfQUxFTik7CisgICAgIG1lbWNweSgm bi0+bWFjWzBdLCAmbi0+bmljLT5jb25mLT5tYWNhZGRyLCBzaXplb2Yobi0+bWFjKSk7CisgICAg IHFlbXVfZm9ybWF0X25pY19pbmZvX3N0cihxZW11X2dldF9xdWV1ZShuLT5uaWMpLCBuLT5tYWMp OworLSAgICBtZW1zZXQobi0+dmxhbnMsIDAsIE1BWF9WTEFOID4+IDMpOworIAorICAgICAvKiBG bHVzaCBhbnkgYXN5bmMgVFggKi8KKyAgICAgZm9yIChpID0gMDsgIGkgPCBuLT5tYXhfcXVldWVf cGFpcnM7IGkrKykgewpkaWZmIC0tZ2l0IGEvZGViaWFuL3BhdGNoZXMvZXh0cmEvMDAwNC10YXJn ZXQtaTM4Ni1maXgtd2lkdGgtb2YtdGhpcmQtb3BlcmFuZC1vZi1WSU5TRVJUeDEyLnBhdGNoIGIv ZGViaWFuL3BhdGNoZXMvZXh0cmEvMDAwNC10YXJnZXQtaTM4Ni1maXgtd2lkdGgtb2YtdGhpcmQt b3BlcmFuZC1vZi1WSU5TRVJUeDEyLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAuLmUxNTMzM2UKLS0tIC9kZXYvbnVsbAorKysgYi9kZWJpYW4vcGF0Y2hlcy9leHRyYS8w MDA0LXRhcmdldC1pMzg2LWZpeC13aWR0aC1vZi10aGlyZC1vcGVyYW5kLW9mLVZJTlNFUlR4MTIu cGF0Y2gKQEAgLTAsMCArMSw0NiBAQAorRnJvbSAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogUGFvbG8gQm9uemlu aSA8cGJvbnppbmlAcmVkaGF0LmNvbT4KK0RhdGU6IEZyaSwgMjUgSnVsIDIwMjUgMDE6MTA6MTIg KzAyMDAKK1N1YmplY3Q6IFtQQVRDSF0gdGFyZ2V0L2kzODY6IGZpeCB3aWR0aCBvZiB0aGlyZCBv cGVyYW5kIG9mIFZJTlNFUlR4MTI4CisKK1RhYmxlIEEtNSBvZiB0aGUgSW50ZWwgbWFudWFsIGlu Y29ycmVjdGx5IGxpc3RzIHRoZSB0aGlyZCBvcGVyYW5kIG9mCitWSU5TRVJUeDEyOCBhcyBXcXEs IGJ1dCBpdCBpcyBhY3R1YWxseSBhIDEyOC1iaXQgdmFsdWUuICBUaGlzIGlzCit2aXNpYmxlIHdo ZW4gVyBpcyBhIG1lbW9yeSBvcGVyYW5kIGNsb3NlIHRvIHRoZSBlbmQgb2YgdGhlIHBhZ2UuCisK K0ZpeGVzIHRoZSByZWNlbnRseS1hZGRlZCBwb2x5MTMwNV9rdW5pdCB0ZXN0IGluIGxpbnV4LW5l eHQuCisKKyhObyB0ZXN0Y2FzZSB5ZXQsIGJ1dCBJIHBsYW4gdG8gbW9kaWZ5IHRlc3QtYXZ4MiB0 byB1c2UgbWVtb3J5CitjbG9zZSB0byB0aGUgZW5kIG9mIHRoZSBwYWdlLiAgVGhpcyB3b3VsZCB3 b3JrIGJlY2F1c2UgdGhlIHRlc3QKK3ZlY3RvcnMgY29ycmVjdGx5IGhhdmUgdGhlIG1lbW9yeSBv cGVyYW5kIGFzIHhtbTIvbTEyOCkuCisKK1JlcG9ydGVkLWJ5OiBFcmljIEJpZ2dlcnMgPGViaWdn ZXJzQGtlcm5lbC5vcmc+CitUZXN0ZWQtYnk6IEVyaWMgQmlnZ2VycyA8ZWJpZ2dlcnNAa2VybmVs Lm9yZz4KK0NjOiBBcmQgQmllc2hldXZlbCA8YXJkYkBrZXJuZWwub3JnPgorQ2M6ICJKYXNvbiBB LiBEb25lbmZlbGQiIDxKYXNvbkB6eDJjNC5jb20+CitDYzogR3VlbnRlciBSb2VjayA8bGludXhA cm9lY2stdXMubmV0PgorQ2M6IHFlbXUtc3RhYmxlQG5vbmdudS5vcmcKK0ZpeGVzOiA3OTA2ODQ3 NzY4NiAoInRhcmdldC9pMzg2OiByZWltcGxlbWVudCAweDBmIDB4M2EsIGFkZCBBVlgiLCAyMDIy LTEwLTE4KQorU2lnbmVkLW9mZi1ieTogUGFvbG8gQm9uemluaSA8cGJvbnppbmlAcmVkaGF0LmNv bT4KKyhjaGVycnkgcGlja2VkIGZyb20gY29tbWl0IGZlZWE4N2NkNmI2NDVkNTE2NmJkZDMwNGFh Yzg4ZjQ3ZjYzZGMyZWYpCitTaWduZWQtb2ZmLWJ5OiBGaW9uYSBFYm5lciA8Zi5lYm5lckBwcm94 bW94LmNvbT4KKy0tLQorIHRhcmdldC9pMzg2L3RjZy9kZWNvZGUtbmV3LmMuaW5jIHwgNCArKy0t CisgMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworZGlm ZiAtLWdpdCBhL3RhcmdldC9pMzg2L3RjZy9kZWNvZGUtbmV3LmMuaW5jIGIvdGFyZ2V0L2kzODYv dGNnL2RlY29kZS1uZXcuYy5pbmMKK2luZGV4IGNkYTMyZWU2NzguLmY0Y2ZjMTk2YjggMTAwNjQ0 CistLS0gYS90YXJnZXQvaTM4Ni90Y2cvZGVjb2RlLW5ldy5jLmluYworKysrIGIvdGFyZ2V0L2kz ODYvdGNnL2RlY29kZS1uZXcuYy5pbmMKK0BAIC04NzgsMTAgKzg3OCwxMCBAQCBzdGF0aWMgY29u c3QgWDg2T3BFbnRyeSBvcGNvZGVzXzBGM0FbMjU2XSA9IHsKKyAgICAgWzB4MGVdID0gWDg2X09Q X0VOVFJZNChWUEJMRU5EVywgICBWLHgsICBILHgsICBXLHgsICB2ZXg0IGNwdWlkKFNTRTQxKSBh dngyXzI1NiBwXzY2KSwKKyAgICAgWzB4MGZdID0gWDg2X09QX0VOVFJZNChQQUxJR05SLCAgICBW LHgsICBILHgsICBXLHgsICB2ZXg0IGNwdWlkKFNTU0UzKSBtbXggYXZ4Ml8yNTYgcF8wMF82Niks CisgCistICAgIFsweDE4XSA9IFg4Nl9PUF9FTlRSWTQoVklOU0VSVHgxMjgsICBWLHFxLCBILHFx LCBXLHFxLCB2ZXg2IGNoayhXMCkgY3B1aWQoQVZYKSBwXzY2KSwKKysgICAgWzB4MThdID0gWDg2 X09QX0VOVFJZNChWSU5TRVJUeDEyOCwgIFYscXEsIEgscXEsIFcsZHEsIHZleDYgY2hrKFcwKSBj cHVpZChBVlgpIHBfNjYpLAorICAgICBbMHgxOV0gPSBYODZfT1BfRU5UUlkzKFZFWFRSQUNUeDEy OCwgVyxkcSwgVixxcSwgSSxiLCAgdmV4NiBjaGsoVzApIGNwdWlkKEFWWCkgcF82NiksCisgCist ICAgIFsweDM4XSA9IFg4Nl9PUF9FTlRSWTQoVklOU0VSVHgxMjgsICBWLHFxLCBILHFxLCBXLHFx LCB2ZXg2IGNoayhXMCkgY3B1aWQoQVZYMikgcF82NiksCisrICAgIFsweDM4XSA9IFg4Nl9PUF9F TlRSWTQoVklOU0VSVHgxMjgsICBWLHFxLCBILHFxLCBXLGRxLCB2ZXg2IGNoayhXMCkgY3B1aWQo QVZYMikgcF82NiksCisgICAgIFsweDM5XSA9IFg4Nl9PUF9FTlRSWTMoVkVYVFJBQ1R4MTI4LCBX LGRxLCBWLHFxLCBJLGIsICB2ZXg2IGNoayhXMCkgY3B1aWQoQVZYMikgcF82NiksCisgCisgICAg IC8qIExpc3RlZCBpbmNvcnJlY3RseSBhcyB0eXBlIDQgKi8KZGlmZiAtLWdpdCBhL2RlYmlhbi9w YXRjaGVzL2V4dHJhLzAwMDUtc3lzdGVtLXBoeXNtZW0tZml4LXVzZS1hZnRlci1mcmVlLXdpdGgt ZGlzcGF0Y2gucGF0Y2ggYi9kZWJpYW4vcGF0Y2hlcy9leHRyYS8wMDA1LXN5c3RlbS1waHlzbWVt LWZpeC11c2UtYWZ0ZXItZnJlZS13aXRoLWRpc3BhdGNoLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAuLmExYWNmZTYKLS0tIC9kZXYvbnVsbAorKysgYi9kZWJpYW4vcGF0 Y2hlcy9leHRyYS8wMDA1LXN5c3RlbS1waHlzbWVtLWZpeC11c2UtYWZ0ZXItZnJlZS13aXRoLWRp c3BhdGNoLnBhdGNoCkBAIC0wLDAgKzEsMTI2IEBACitGcm9tIDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBQaWVy cmljayBCb3V2aWVyIDxwaWVycmljay5ib3V2aWVyQGxpbmFyby5vcmc+CitEYXRlOiBUaHUsIDI0 IEp1bCAyMDI1IDA5OjExOjQyIC0wNzAwCitTdWJqZWN0OiBbUEFUQ0hdIHN5c3RlbS9waHlzbWVt OiBmaXggdXNlLWFmdGVyLWZyZWUgd2l0aCBkaXNwYXRjaAorTUlNRS1WZXJzaW9uOiAxLjAKK0Nv bnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAorQ29udGVudC1UcmFuc2Zlci1F bmNvZGluZzogOGJpdAorCitBIHVzZS1hZnRlci1mcmVlIGJ1ZyB3YXMgcmVwb3J0ZWQgd2hlbiBi b290aW5nIGEgTGludXgga2VybmVsIGR1cmluZyB0aGUKK3BjaSBzZXR1cCBwaGFzZS4gSXQncyBx dWl0ZSBoYXJkIHRvIHJlcHJvZHVjZSAobmVlZHMgc21wLCBhbmQgZmF2b3JlZCBieQoraGF2aW5n IHNldmVyYWwgcGNpIGRldmljZXMgd2l0aCBCQVIgYW5kIHNwZWNpZmljIExpbnV4IGNvbmZpZywg d2hpY2gKK2lzIERlYmlhbiBkZWZhdWx0IG9uZSBpbiB0aGlzIGNhc2UpLgorCitBZnRlciBpbnZl c3RpZ2F0aW9uIChzZWUgdGhlIGFzc29jaWF0ZWQgYnVnIHRpY2tldCksIGl0IGFwcGVhcnMgdGhh dCwKK3VuZGVyIHNwZWNpZmljIGNvbmRpdGlvbnMsIHdlIG1pZ2h0IGFjY2VzcyBhIGNhY2hlZCBB ZGRyZXNzU3BhY2VEaXNwYXRjaAordGhhdCB3YXMgcmVjbGFpbWVkIGJ5IFJDVSB0aHJlYWQgbWVh bndoaWxlLgorSW4gdGhlIExpbnV4IGJvb3Qgc2NlbmFyaW8sIGR1cmluZyB0aGUgcGNpIHBoYXNl LCBtZW1vcnkgcmVnaW9uIGFyZQorZGVzdHJveWVkL3JlY3JlYXRlZCwgcmVzdWx0aW5nIGluIGV4 cG9zaXRpb24gb2YgdGhlIGJ1Zy4KKworVGhlIGNvcmUgb2YgdGhlIGlzc3VlIGlzIHRoYXQgd2Ug Y2FjaGUgdGhlIGRpc3BhdGNoIGFzc29jaWF0ZWQgdG8KK2N1cnJlbnQgY3B1IGluIGNwdS0+Y3B1 X2FzZXNbYXNpZHhdLm1lbW9yeV9kaXNwYXRjaC4gSXQgaXMgdXBkYXRlZCB3aXRoCit0Y2dfY29t bWl0LCB3aGljaCBydW5zIGFzeW5jaHJvbm91c2x5IG9uIGEgZ2l2ZW4gY3B1LgorQXQgc29tZSBw b2ludCwgd2UgbGVhdmUgdGhlIHJjdSBjcml0aWFsIHNlY3Rpb24sIGFuZCB0aGUgUkNVIHRocmVh ZAorc3RhcnRzIHJlY2xhaW1pbmcgaXQsIGJ1dCB0Y2dfY29tbWl0IGlzIG5vdCB5ZXQgaW52b2tl ZCwgcmVzdWx0aW5nIGluCit0aGUgdXNlLWFmdGVyLWZyZWUuCisKK0l0J3Mgbm90IHRoZSBmaXJz dCBwcm9ibGVtIGFyb3VuZCB0aGlzIGFyZWEsIGFuZCBjb21taXQgMGQ1OGM2NjA2ODkgWzFdCiso InNvZnRtbXU6IFVzZSBhc3luY19ydW5fb25fY3B1IGluIHRjZ19jb21taXQiKSBhbHJlYWR5IHRy aWVkIHRvCithZGRyZXNzIGl0LiBJdCBkaWQgYSBnb29kIGpvYiwgYnV0IGl0IHNlZW1zIHRoYXQg d2UgZm91bmQgYSBzcGVjaWZpYworc2l0dWF0aW9uIHdoZXJlIGl0J3Mgbm90IGVub3VnaC4KKwor VGhpcyBwYXRjaCB0YWtlcyBhIHNpbXBsZSBhcHByb2FjaDogcmVtb3ZlIHRoZSBjYWNoZWQgdmFs dWUgY3JlYXRpbmcgdGhlCitpc3N1ZSwgYW5kIG1ha2Ugc3VyZSB3ZSBhbHdheXMgZ2V0IHRoZSBj dXJyZW50IG1hcHBpbmcgZm9yIGFkZHJlc3MKK3NwYWNlLCB1c2luZyBhZGRyZXNzX3NwYWNlX3Rv X2Rpc3BhdGNoKGNwdS0+Y3B1X2FzZXNbYXNpZHhdLmFzKS4KK0l0J3MgZXF1aXZhbGVudCB0byBx YXRvbWljX3JjdV9yZWFkKCZhcy0+Y3VycmVudF9tYXApLT5kaXNwYXRjaDsKK1RoaXMgaXMgbm90 IHJlYWxseSBjb3N0bHksIHdlIGp1c3QgbmVlZCB0d28gZGVyZWZlcmVuY2VzLAoraW5jbHVkaW5n IG9uZSBhdG9taWMgKHJjdSkgcmVhZCwgd2hpY2ggaXMgbmVnbGlnaWJsZSBjb25zaWRlcmluZyB3 ZSBhcmUKK2FscmVhZHkgb24gbW11IHNsb3cgcGF0aCBhbnl3YXkuCisKK05vdGUgdGhhdCB0Y2df Y29tbWl0IGlzIHN0aWxsIG5lZWRlZCwgYXMgaXQncyB0YWtpbmcgY2FyZSBvZiBmbHVzaGluZwor VExCLCByZW1vdmluZyBwcmV2aW91c2x5IG1hcHBlZCBlbnRyaWVzLgorCitBbm90aGVyIHNvbHV0 aW9uIHdvdWxkIGJlIHRvIGNhY2hlIGRpcmVjdGx5IHZhbHVlcyB1bmRlciB0aGUgZGlzcGF0Y2gK KyhkaXNwYXRjaCB0aGVtc2VsdmVzIGFyZSBub3QgcmVmIGNvdW50ZWQpLCBrZWVwIGFuIGFjdGl2 ZSByZWZlcmVuY2Ugb24KK2Fzc29jaWF0ZWQgbWVtb3J5IHNlY3Rpb24sIGFuZCByZWxlYXNlIGl0 IHdoZW4gYXBwcm9wcmlhdGUgKHRyaWNreSkuCitHaXZlbiB0aGUgdGltZSBhbHJlYWR5IHNwZW50 IGRlYnVnZ2luZyB0aGlzIGFyZWEgbm93IGFuZCBwcmV2aW91c2x5LCBJCitzdHJvbmdseSBwcmVm ZXIgZWxpbWluYXRpbmcgdGhlIHJvb3Qgb2YgdGhlIGlzc3VlLCBpbnN0ZWFkIG9mIGFkZGluZwor bW9yZSBjb21wbGV4aXR5IGZvciBhIGh5cG90aGV0aWNhbCBwZXJmb3JtYW5jZSBnYWluLiBSQ1Ug aXMgcHJlY2lzZWx5Cit1c2VkIHRvIGVuc3VyZSBnb29kIHBlcmZvcm1hbmNlIHdoZW4gcmVhZGlu ZyBkYXRhLCBzbyBjYWNoaW5nIGlzIG5vdCBhcworYmVuZWZpY2lhbCBhcyBpdCBtaWdodCBzZWVt IElNSE8uCisKK1sxXSBodHRwczovL2dpdGxhYi5jb20vcWVtdS1wcm9qZWN0L3FlbXUvLS9jb21t aXQvMGQ1OGM2NjA2ODlmNmRhMWUzZmVmZjhhOTk3MDE0MDAzZDkyOGIzYgorCitDYzogcWVtdS1z dGFibGVAbm9uZ251Lm9yZworUmVzb2x2ZXM6IGh0dHBzOi8vZ2l0bGFiLmNvbS9xZW11LXByb2pl Y3QvcWVtdS8tL2lzc3Vlcy8zMDQwCitTaWduZWQtb2ZmLWJ5OiBQaWVycmljayBCb3V2aWVyIDxw aWVycmljay5ib3V2aWVyQGxpbmFyby5vcmc+CitSZXZpZXdlZC1ieTogUmljaGFyZCBIZW5kZXJz b24gPHJpY2hhcmQuaGVuZGVyc29uQGxpbmFyby5vcmc+CitSZXZpZXdlZC1ieTogTWljaGFlbCBU b2thcmV2IDxtanRAdGxzLm1zay5ydT4KK1Rlc3RlZC1ieTogTWljaGFlbCBUb2thcmV2IDxtanRA dGxzLm1zay5ydT4KK01lc3NhZ2UtSUQ6IDwyMDI1MDcyNDE2MTE0Mi4yODAzMDkxLTEtcGllcnJp Y2suYm91dmllckBsaW5hcm8ub3JnPgorU2lnbmVkLW9mZi1ieTogUGhpbGlwcGUgTWF0aGlldS1E YXVkw6kgPHBoaWxtZEBsaW5hcm8ub3JnPgorKGNoZXJyeSBwaWNrZWQgZnJvbSBjb21taXQgMjg2 NWJmMWM1Nzk1MzcxZWY0NDFlOTAyOWJjMjI1NjZjY2ZmODI5OSkKK1NpZ25lZC1vZmYtYnk6IEZp b25hIEVibmVyIDxmLmVibmVyQHByb3htb3guY29tPgorLS0tCisgc3lzdGVtL3BoeXNtZW0uYyB8 IDE1ICsrKy0tLS0tLS0tLS0tLQorIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEy IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvc3lzdGVtL3BoeXNtZW0uYyBiL3N5c3RlbS9w aHlzbWVtLmMKK2luZGV4IDMzM2E1ZWI5NGQuLjMyZjU4OTViODAgMTAwNjQ0CistLS0gYS9zeXN0 ZW0vcGh5c21lbS5jCisrKysgYi9zeXN0ZW0vcGh5c21lbS5jCitAQCAtMTY0LDEzICsxNjQsMTEg QEAgc3RhdGljIGJvb2wgcmFtX2lzX2Nwcl9jb21wYXRpYmxlKFJBTUJsb2NrICpyYik7CisgICog Q1BVQWRkcmVzc1NwYWNlOiBhbGwgdGhlIGluZm9ybWF0aW9uIGEgQ1BVIG5lZWRzIGFib3V0IGFu IEFkZHJlc3NTcGFjZQorICAqIEBjcHU6IHRoZSBDUFUgd2hvc2UgQWRkcmVzc1NwYWNlIHRoaXMg aXMKKyAgKiBAYXM6IHRoZSBBZGRyZXNzU3BhY2UgaXRzZWxmCistICogQG1lbW9yeV9kaXNwYXRj aDogaXRzIGRpc3BhdGNoIHBvaW50ZXIgKGNhY2hlZCwgUkNVIHByb3RlY3RlZCkKKyAgKiBAdGNn X2FzX2xpc3RlbmVyOiBsaXN0ZW5lciBmb3IgdHJhY2tpbmcgY2hhbmdlcyB0byB0aGUgQWRkcmVz c1NwYWNlCisgICovCisgdHlwZWRlZiBzdHJ1Y3QgQ1BVQWRkcmVzc1NwYWNlIHsKKyAgICAgQ1BV U3RhdGUgKmNwdTsKKyAgICAgQWRkcmVzc1NwYWNlICphczsKKy0gICAgc3RydWN0IEFkZHJlc3NT cGFjZURpc3BhdGNoICptZW1vcnlfZGlzcGF0Y2g7CisgICAgIE1lbW9yeUxpc3RlbmVyIHRjZ19h c19saXN0ZW5lcjsKKyB9IENQVUFkZHJlc3NTcGFjZTsKKyAKK0BAIC02ODksNyArNjg3LDcgQEAg YWRkcmVzc19zcGFjZV90cmFuc2xhdGVfZm9yX2lvdGxiKENQVVN0YXRlICpjcHUsIGludCBhc2lk eCwgaHdhZGRyIG9yaWdfYWRkciwKKyAgICAgSU9NTVVUTEJFbnRyeSBpb3RsYjsKKyAgICAgaW50 IGlvbW11X2lkeDsKKyAgICAgaHdhZGRyIGFkZHIgPSBvcmlnX2FkZHI7CistICAgIEFkZHJlc3NT cGFjZURpc3BhdGNoICpkID0gY3B1LT5jcHVfYXNlc1thc2lkeF0ubWVtb3J5X2Rpc3BhdGNoOwor KyAgICBBZGRyZXNzU3BhY2VEaXNwYXRjaCAqZCA9IGFkZHJlc3Nfc3BhY2VfdG9fZGlzcGF0Y2go Y3B1LT5jcHVfYXNlc1thc2lkeF0uYXMpOworIAorICAgICBmb3IgKDs7KSB7CisgICAgICAgICBz ZWN0aW9uID0gYWRkcmVzc19zcGFjZV90cmFuc2xhdGVfaW50ZXJuYWwoZCwgYWRkciwgJmFkZHIs IHBsZW4sIGZhbHNlKTsKK0BAIC0yNjczLDcgKzI2NzEsNyBAQCBNZW1vcnlSZWdpb25TZWN0aW9u ICppb3RsYl90b19zZWN0aW9uKENQVVN0YXRlICpjcHUsCisgeworICAgICBpbnQgYXNpZHggPSBj cHVfYXNpZHhfZnJvbV9hdHRycyhjcHUsIGF0dHJzKTsKKyAgICAgQ1BVQWRkcmVzc1NwYWNlICpj cHVhcyA9ICZjcHUtPmNwdV9hc2VzW2FzaWR4XTsKKy0gICAgQWRkcmVzc1NwYWNlRGlzcGF0Y2gg KmQgPSBjcHVhcy0+bWVtb3J5X2Rpc3BhdGNoOworKyAgICBBZGRyZXNzU3BhY2VEaXNwYXRjaCAq ZCA9IGFkZHJlc3Nfc3BhY2VfdG9fZGlzcGF0Y2goY3B1YXMtPmFzKTsKKyAgICAgaW50IHNlY3Rp b25faW5kZXggPSBpbmRleCAmIH5UQVJHRVRfUEFHRV9NQVNLOworICAgICBNZW1vcnlSZWdpb25T ZWN0aW9uICpyZXQ7CisgCitAQCAtMjc1MCw5ICsyNzQ4LDYgQEAgc3RhdGljIHZvaWQgdGNnX2xv Z19nbG9iYWxfYWZ0ZXJfc3luYyhNZW1vcnlMaXN0ZW5lciAqbGlzdGVuZXIpCisgCisgc3RhdGlj IHZvaWQgdGNnX2NvbW1pdF9jcHUoQ1BVU3RhdGUgKmNwdSwgcnVuX29uX2NwdV9kYXRhIGRhdGEp CisgeworLSAgICBDUFVBZGRyZXNzU3BhY2UgKmNwdWFzID0gZGF0YS5ob3N0X3B0cjsKKy0KKy0g ICAgY3B1YXMtPm1lbW9yeV9kaXNwYXRjaCA9IGFkZHJlc3Nfc3BhY2VfdG9fZGlzcGF0Y2goY3B1 YXMtPmFzKTsKKyAgICAgdGxiX2ZsdXNoKGNwdSk7CisgfQorIAorQEAgLTI3NjgsMTEgKzI3NjMs NyBAQCBzdGF0aWMgdm9pZCB0Y2dfY29tbWl0KE1lbW9yeUxpc3RlbmVyICpsaXN0ZW5lcikKKyAg ICAgY3B1ID0gY3B1YXMtPmNwdTsKKyAKKyAgICAgLyoKKy0gICAgICogRGVmZXIgY2hhbmdlcyB0 byBhcy0+bWVtb3J5X2Rpc3BhdGNoIHVudGlsIHRoZSBjcHUgaXMgcXVpZXNjZW50LgorLSAgICAg KiBPdGhlcndpc2Ugd2UgcmFjZSBiZXR3ZWVuICgxKSBvdGhlciBjcHUgdGhyZWFkcyBhbmQgKDIp IG9uZ29pbmcKKy0gICAgICogaS9vIGZvciB0aGUgY3VycmVudCBjcHUgdGhyZWFkLCB3aXRoIGRh dGEgY2FjaGVkIGJ5IG1tdV9sb29rdXAoKS4KKy0gICAgICoKKy0gICAgICogSW4gYWRkaXRpb24s IHF1ZXVlaW5nIHRoZSB3b3JrIGZ1bmN0aW9uIHdpbGwga2ljayB0aGUgY3B1IGJhY2sgdG8KKysg ICAgICogUXVldWVpbmcgdGhlIHdvcmsgZnVuY3Rpb24gd2lsbCBraWNrIHRoZSBjcHUgYmFjayB0 bworICAgICAgKiB0aGUgbWFpbiBsb29wLCB3aGljaCB3aWxsIGVuZCB0aGUgUkNVIGNyaXRpY2Fs IHNlY3Rpb24gYW5kIHJlY2xhaW0KKyAgICAgICogdGhlIG1lbW9yeSBkYXRhIHN0cnVjdHVyZXMu CisgICAgICAqCmRpZmYgLS1naXQgYS9kZWJpYW4vcGF0Y2hlcy9leHRyYS8wMDA2LXZpcnRpby1m aXgtb2ZmLWJ5LW9uZS1hbmQtaW52YWxpZC1hY2Nlc3MtaW4tdmlydHF1ZXUucGF0Y2ggYi9kZWJp YW4vcGF0Y2hlcy9leHRyYS8wMDA2LXZpcnRpby1maXgtb2ZmLWJ5LW9uZS1hbmQtaW52YWxpZC1h Y2Nlc3MtaW4tdmlydHF1ZXUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MC4uNjhjNjdkYQotLS0gL2Rldi9udWxsCisrKyBiL2RlYmlhbi9wYXRjaGVzL2V4dHJhLzAwMDYt dmlydGlvLWZpeC1vZmYtYnktb25lLWFuZC1pbnZhbGlkLWFjY2Vzcy1pbi12aXJ0cXVldS5wYXRj aApAQCAtMCwwICsxLDg2IEBACitGcm9tIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBKb25haCBQYWxtZXIgPGpv bmFoLnBhbG1lckBvcmFjbGUuY29tPgorRGF0ZTogTW9uLCAyMSBKdWwgMjAyNSAxNTowMjowOCAr MDAwMAorU3ViamVjdDogW1BBVENIXSB2aXJ0aW86IGZpeCBvZmYtYnktb25lIGFuZCBpbnZhbGlk IGFjY2VzcyBpbgorIHZpcnRxdWV1ZV9vcmRlcmVkX2ZpbGwKKworQ29tbWl0IGI0NDEzNWRhYTM3 MiBpbnRyb2R1Y2VkIHZpcnRxdWV1ZV9vcmRlcmVkX2ZpbGwgZm9yCitWSVJUSU9fRl9JTl9PUkRF UiBzdXBwb3J0IGJ1dCBoYWQgYSBmZXcgaXNzdWVzOgorCisqIENvbmRpdGlvbmFsIHdoaWxlIGxv b3AgdXNlZCAnc3RlcHMgPD0gbWF4X3N0ZXBzJyBidXQgc2hvdWxkJ3ZlIGJlZW4KKyAgJ3N0ZXBz IDwgbWF4X3N0ZXBzJyBzaW5jZSByZWFjaGluZyBzdGVwcyA9PSBtYXhfc3RlcHMgd291bGQgaW5k aWNhdGUKKyAgdGhhdCB3ZSBkaWRuJ3QgZmluZCBhbiBlbGVtZW50LCB3aGljaCBpcyBhbiBlcnJv ci4gV2l0aG91dCB0aGlzCisgIGNoYW5nZSwgdGhlIGNvZGUgd291bGQgYXR0ZW1wdCB0byByZWFk IGludmFsaWQgZGF0YSBhdCBhbiBpbmRleAorICBvdXRzaWRlIG9mIG91ciBzZWFyY2ggcmFuZ2Uu CisKKyogSW5jcmVtZW50ZWQgJ3N0ZXBzJyB1c2luZyB0aGUgbmV4dCBjaGFpbidzIG5kZXNjcyBp bnN0ZWFkIG9mIHRoZQorICBjdXJyZW50IG9uZS4KKworVGhpcyBwYXRjaCBjb3JyZWN0cyB0aGUg bG9vcCBib3VuZHMgYW5kIHN5bmNocm9uaXplcyAnc3RlcHMnIGFuZCBpbmRleAoraW5jcmVtZW50 cy4KKworV2UgYWxzbyBhZGQgYSBkZWZlbnNpdmUgc2FuaXR5IGNoZWNrIGFnYWluc3QgbWFsaWNp b3VzIG9yIGludmFsaWQKK2Rlc2NyaXB0b3IgY291bnRzIHRvIGF2b2lkIGEgcG90ZW50aWFsIGlu ZmluaXRlIGxvb3AgYW5kIERvUy4KKworRml4ZXM6IGI0NDEzNWRhYTM3MiAoInZpcnRpbzogdmly dHF1ZXVlX29yZGVyZWRfZmlsbCAtIFZJUlRJT19GX0lOX09SREVSIHN1cHBvcnQiKQorUmVwb3J0 ZWQtYnk6IHRlcnJ5bmluaSA8dGVycnluaW5pMzg1MTRAZ21haWwuY29tPgorU2lnbmVkLW9mZi1i eTogSm9uYWggUGFsbWVyIDxqb25haC5wYWxtZXJAb3JhY2xlLmNvbT4KK01lc3NhZ2UtSWQ6IDwy MDI1MDcyMTE1MDIwOC4yNDA5Nzc5LTEtam9uYWgucGFsbWVyQG9yYWNsZS5jb20+CitSZXZpZXdl ZC1ieTogU2ktV2VpIExpdSA8c2ktd2VpLmxpdUBvcmFjbGUuY29tPgorQWNrZWQtYnk6IEphc29u IFdhbmcgPGphc293YW5nQHJlZGhhdC5jb20+CitSZXZpZXdlZC1ieTogTWljaGFlbCBTLiBUc2ly a2luIDxtc3RAcmVkaGF0LmNvbT4KK1NpZ25lZC1vZmYtYnk6IE1pY2hhZWwgUy4gVHNpcmtpbiA8 bXN0QHJlZGhhdC5jb20+CisoY2hlcnJ5IHBpY2tlZCBmcm9tIGNvbW1pdCA2ZmNmNWViYWZhZDY1 YWRjMTlhNjE2MjYwY2E3ZGM5MDAwNTc4NWQxKQorU2lnbmVkLW9mZi1ieTogRmlvbmEgRWJuZXIg PGYuZWJuZXJAcHJveG1veC5jb20+CistLS0KKyBody92aXJ0aW8vdmlydGlvLmMgfCAyMiArKysr KysrKysrKysrKysrLS0tLS0tCisgMSBmaWxlIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDYg ZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9ody92aXJ0aW8vdmlydGlvLmMgYi9ody92aXJ0 aW8vdmlydGlvLmMKK2luZGV4IGVjNTQ1NzNmZWIuLmI3NTZmNDk4NjcgMTAwNjQ0CistLS0gYS9o dy92aXJ0aW8vdmlydGlvLmMKKysrKyBiL2h3L3ZpcnRpby92aXJ0aW8uYworQEAgLTkyOSwxOCAr OTI5LDE4IEBAIHN0YXRpYyB2b2lkIHZpcnRxdWV1ZV9wYWNrZWRfZmlsbChWaXJ0UXVldWUgKnZx LCBjb25zdCBWaXJ0UXVldWVFbGVtZW50ICplbGVtLAorIHN0YXRpYyB2b2lkIHZpcnRxdWV1ZV9v cmRlcmVkX2ZpbGwoVmlydFF1ZXVlICp2cSwgY29uc3QgVmlydFF1ZXVlRWxlbWVudCAqZWxlbSwK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBsZW4pCisg eworLSAgICB1bnNpZ25lZCBpbnQgaSwgc3RlcHMsIG1heF9zdGVwczsKKysgICAgdW5zaWduZWQg aW50IGksIHN0ZXBzLCBtYXhfc3RlcHMsIG5kZXNjczsKKyAKKyAgICAgaSA9IHZxLT51c2VkX2lk eCAlIHZxLT52cmluZy5udW07CisgICAgIHN0ZXBzID0gMDsKKyAgICAgLyoKKy0gICAgICogV2Ug c2hvdWxkbid0IG5lZWQgdG8gaW5jcmVhc2UgJ2knIGJ5IG1vcmUgdGhhbiB0aGUgZGlzdGFuY2UK Ky0gICAgICogYmV0d2VlbiB1c2VkX2lkeCBhbmQgbGFzdF9hdmFpbF9pZHguCisrICAgICAqIFdl IHNob3VsZG4ndCBuZWVkIHRvIGluY3JlYXNlICdpJyBieSBtb3JlIHRoYW4gb3IgZXF1YWwgdG8K KysgICAgICogdGhlIGRpc3RhbmNlIGJldHdlZW4gdXNlZF9pZHggYW5kIGxhc3RfYXZhaWxfaWR4 IChtYXhfc3RlcHMpLgorICAgICAgKi8KKyAgICAgbWF4X3N0ZXBzID0gKHZxLT5sYXN0X2F2YWls X2lkeCAtIHZxLT51c2VkX2lkeCkgJSB2cS0+dnJpbmcubnVtOworIAorICAgICAvKiBTZWFyY2gg Zm9yIGVsZW1lbnQgaW4gdnEtPnVzZWRfZWxlbXMgKi8KKy0gICAgd2hpbGUgKHN0ZXBzIDw9IG1h eF9zdGVwcykgeworKyAgICB3aGlsZSAoc3RlcHMgPCBtYXhfc3RlcHMpIHsKKyAgICAgICAgIC8q IEZvdW5kIGVsZW1lbnQsIHNldCBsZW5ndGggYW5kIG1hcmsgYXMgZmlsbGVkICovCisgICAgICAg ICBpZiAodnEtPnVzZWRfZWxlbXNbaV0uaW5kZXggPT0gZWxlbS0+aW5kZXgpIHsKKyAgICAgICAg ICAgICB2cS0+dXNlZF9lbGVtc1tpXS5sZW4gPSBsZW47CitAQCAtOTQ4LDggKzk0OCwxOCBAQCBz dGF0aWMgdm9pZCB2aXJ0cXVldWVfb3JkZXJlZF9maWxsKFZpcnRRdWV1ZSAqdnEsIGNvbnN0IFZp cnRRdWV1ZUVsZW1lbnQgKmVsZW0sCisgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICB9Cisg CistICAgICAgICBpICs9IHZxLT51c2VkX2VsZW1zW2ldLm5kZXNjczsKKy0gICAgICAgIHN0ZXBz ICs9IHZxLT51c2VkX2VsZW1zW2ldLm5kZXNjczsKKysgICAgICAgIG5kZXNjcyA9IHZxLT51c2Vk X2VsZW1zW2ldLm5kZXNjczsKKysKKysgICAgICAgIC8qIERlZmVuc2l2ZSBzYW5pdHkgY2hlY2sg Ki8KKysgICAgICAgIGlmICh1bmxpa2VseShuZGVzY3MgPT0gMCB8fCBuZGVzY3MgPiB2cS0+dnJp bmcubnVtKSkgeworKyAgICAgICAgICAgIHFlbXVfbG9nX21hc2soTE9HX0dVRVNUX0VSUk9SLAor KyAgICAgICAgICAgICAgICAgICAgICAgICAgIiVzOiAlcyBpbnZhbGlkIG5kZXNjcyAldSBhdCBw b3NpdGlvbiAldVxuIiwKKysgICAgICAgICAgICAgICAgICAgICAgICAgIF9fZnVuY19fLCB2cS0+ dmRldi0+bmFtZSwgbmRlc2NzLCBpKTsKKysgICAgICAgICAgICByZXR1cm47CisrICAgICAgICB9 CisrCisrICAgICAgICBpICs9IG5kZXNjczsKKysgICAgICAgIHN0ZXBzICs9IG5kZXNjczsKKyAK KyAgICAgICAgIGlmIChpID49IHZxLT52cmluZy5udW0pIHsKKyAgICAgICAgICAgICBpIC09IHZx LT52cmluZy5udW07CmRpZmYgLS1naXQgYS9kZWJpYW4vcGF0Y2hlcy9zZXJpZXMgYi9kZWJpYW4v cGF0Y2hlcy9zZXJpZXMKaW5kZXggNmU1ZmQ2OS4uYzBlNWEwZCAxMDA2NDQKLS0tIGEvZGViaWFu L3BhdGNoZXMvc2VyaWVzCisrKyBiL2RlYmlhbi9wYXRjaGVzL3NlcmllcwpAQCAtMSw1ICsxLDkg QEAKIGV4dHJhLzAwMDEtbW9uaXRvci1xbXAtZml4LXJhY2Utd2l0aC1jbGllbnRzLWRpc2Nvbm5l Y3RpbmctZWFybC5wYXRjaAogZXh0cmEvMDAwMi1pZGUtYXZvaWQtcG90ZW50aWFsLWRlYWRsb2Nr LXdoZW4tZHJhaW5pbmctZHVyaW5nLXRyLnBhdGNoCitleHRyYS8wMDAzLXZpcnRpby1uZXQtRml4 LVZMQU4tZmlsdGVyLXRhYmxlLXJlc2V0LXRpbWluZy5wYXRjaAorZXh0cmEvMDAwNC10YXJnZXQt aTM4Ni1maXgtd2lkdGgtb2YtdGhpcmQtb3BlcmFuZC1vZi1WSU5TRVJUeDEyLnBhdGNoCitleHRy YS8wMDA1LXN5c3RlbS1waHlzbWVtLWZpeC11c2UtYWZ0ZXItZnJlZS13aXRoLWRpc3BhdGNoLnBh dGNoCitleHRyYS8wMDA2LXZpcnRpby1maXgtb2ZmLWJ5LW9uZS1hbmQtaW52YWxpZC1hY2Nlc3Mt aW4tdmlydHF1ZXUucGF0Y2gKIGJpdG1hcC1taXJyb3IvMDAwMS1kcml2ZS1taXJyb3ItYWRkLXN1 cHBvcnQtZm9yLXN5bmMtYml0bWFwLW1vZGUtbmV2ZXIucGF0Y2gKIGJpdG1hcC1taXJyb3IvMDAw Mi1kcml2ZS1taXJyb3ItYWRkLXN1cHBvcnQtZm9yLWNvbmRpdGlvbmFsLWFuZC1hbHdheXMtLnBh dGNoCiBiaXRtYXAtbWlycm9yLzAwMDMtbWlycm9yLWFkZC1jaGVjay1mb3ItYml0bWFwLW1vZGUt d2l0aG91dC1iaXRtYXAucGF0Y2gKLS0gCjIuNDcuMgoKCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpwdmUtZGV2ZWwgbWFpbGluZyBsaXN0CnB2ZS1kZXZl bEBsaXN0cy5wcm94bW94LmNvbQpodHRwczovL2xpc3RzLnByb3htb3guY29tL2NnaS1iaW4vbWFp bG1hbi9saXN0aW5mby9wdmUtZGV2ZWwK