From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 28217 invoked from network); 11 Jan 2023 09:41:32 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 11 Jan 2023 09:41:32 -0000 Content-Type: multipart/mixed; boundary="===============9092312755732432877==" MIME-Version: 1.0 Subject: =?utf8?q?=5BPR_PATCH=5D_remmina=3A_update_to_1=2E4=2E29=2E?= To: ml@inbox.vuxu.org From: steinex Reply-to: ml@inbox.vuxu.org Message-ID: Date: Wed, 11 Jan 2023 10:41:32 +0100 List-Id: GitHub notification mails are now in MIME to allow UTF8. --===============9092312755732432877== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYSBuZXcgcHVsbCByZXF1ZXN0IGJ5IHN0ZWluZXggYWdhaW5zdCBtYXN0ZXIgb24g dGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL3N0ZWluZXgv dm9pZC1wYWNrYWdlcyByZW1taW5hCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQt cGFja2FnZXMvcHVsbC80MTU4MQoKcmVtbWluYTogdXBkYXRlIHRvIDEuNC4yOS4KPCEtLSBVbmNv bW1lbnQgcmVsZXZhbnQgc2VjdGlvbnMgYW5kIGRlbGV0ZSBvcHRpb25zIHdoaWNoIGFyZSBub3Qg YXBwbGljYWJsZSAtLT4NCg0KIyMjIyBUZXN0aW5nIHRoZSBjaGFuZ2VzDQotIEkgdGVzdGVkIHRo ZSBjaGFuZ2VzIGluIHRoaXMgUFI6ICoqWUVTKioNCg0KPCEtLQ0KIyMjIyBOZXcgcGFja2FnZQ0K LSBUaGlzIG5ldyBwYWNrYWdlIGNvbmZvcm1zIHRvIHRoZSBbcGFja2FnZSByZXF1aXJlbWVudHNd KGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvYmxvYi9tYXN0ZXIv Q09OVFJJQlVUSU5HLm1kI3BhY2thZ2UtcmVxdWlyZW1lbnRzKTogKipZRVMqKnwqKk5PKioNCi0t Pg0KDQo8IS0tIE5vdGU6IElmIHRoZSBidWlsZCBpcyBsaWtlbHkgdG8gdGFrZSBtb3JlIHRoYW4g MiBob3VycywgcGxlYXNlIGFkZCBjaSBza2lwIHRhZyBhcyBkZXNjcmliZWQgaW4NCmh0dHBzOi8v Z2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvYmxvYi9tYXN0ZXIvQ09OVFJJQlVU SU5HLm1kI2NvbnRpbnVvdXMtaW50ZWdyYXRpb24NCmFuZCB0ZXN0IGF0IGxlYXN0IG9uZSBuYXRp dmUgYnVpbGQgYW5kLCBpZiBzdXBwb3J0ZWQsIGF0IGxlYXN0IG9uZSBjcm9zcyBidWlsZC4NCkln bm9yZSB0aGlzIHNlY3Rpb24gaWYgdGhpcyBQUiBpcyBub3Qgc2tpcHBpbmcgQ0kuDQotLT4NCjwh LS0NCiMjIyMgTG9jYWwgYnVpbGQgdGVzdGluZw0KLSBJIGJ1aWx0IHRoaXMgUFIgbG9jYWxseSBm b3IgbXkgbmF0aXZlIGFyY2hpdGVjdHVyZSwgKEFSQ0gtTElCQykNCi0gSSBidWlsdCB0aGlzIFBS IGxvY2FsbHkgZm9yIHRoZXNlIGFyY2hpdGVjdHVyZXMgKGlmIHN1cHBvcnRlZC4gbWFyayBjcm9z c2J1aWxkcyk6DQogIC0gYWFyY2g2NC1tdXNsDQogIC0gYXJtdjdsDQogIC0gYXJtdjZsLW11c2wN Ci0tPg0KCgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92 b2lkLXBhY2thZ2VzL3B1bGwvNDE1ODEucGF0Y2ggaXMgYXR0YWNoZWQ= --===============9092312755732432877== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-remmina-41581.patch" RnJvbSA0MzMzMzI5ZDk0MDJiYmI4MmNhNDc5MGIwZTNhMmI4NzRkNGE3YTNkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGcmFuayBTdGVpbmJvcm4gPHN0ZWluZXhAbm9nbnUuZGU+CkRh dGU6IFdlZCwgMTEgSmFuIDIwMjMgMTA6Mjg6MzcgKzAxMDAKU3ViamVjdDogW1BBVENIXSByZW1t aW5hOiB1cGRhdGUgdG8gMS40LjI5LgoKLS0tCiBzcmNwa2dzL3JlbW1pbmEvcGF0Y2hlcy9saWJz b3VwMy5wYXRjaCB8IDQ1MiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL3JlbW1p bmEvdGVtcGxhdGUgICAgICAgICAgICAgICB8ICAgNiArLQogMiBmaWxlcyBjaGFuZ2VkLCAzIGlu c2VydGlvbnMoKyksIDQ1NSBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L3JlbW1pbmEvcGF0Y2hlcy9saWJzb3VwMy5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcmVt bWluYS9wYXRjaGVzL2xpYnNvdXAzLnBhdGNoIGIvc3JjcGtncy9yZW1taW5hL3BhdGNoZXMvbGli c291cDMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDlmOTM3Mjc1YzQ5Mi4u MDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcmVtbWluYS9wYXRjaGVzL2xpYnNvdXAzLnBhdGNo CisrKyAvZGV2L251bGwKQEAgLTEsNDUyICswLDAgQEAKLUZyb20gZWRiYWViMWI1ODhlZGMwZTk2 OWIwZWVkZDczMTc1OGFhZDM2OTM5MSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206ICJB bnRlbm9yZSBHYXR0YSAodG1vdykiIDxhbnRlbm9yZUBzaW1iaW9zaS5vcmc+Ci1EYXRlOiBNb24s IDMgT2N0IDIwMjIgMTc6Mzg6MzUgKzAwMDAKLVN1YmplY3Q6IFtQQVRDSF0gTXVsdGlwbGUgY2hh bmdlcyB0byBidWlsZCBhbmQgcnVuIHdpdGggbGlic291cCAzLjAKLQotLS0tCi0gLi4ue0ZpbmRM SUJTT1VQMjQuY21ha2UgPT4gRmluZExJQlNPVVAuY21ha2V9IHwgIDI3ICstLQotIGNtYWtlL0Zp bmRXRUJLSVQyR1RLLmNtYWtlICAgICAgICAgICAgICAgICAgICB8ICAgNiArLQotIHBsdWdpbnMv d3d3L0NNYWtlTGlzdHMudHh0ICAgICAgICAgICAgICAgICAgICB8ICAxMCArLQotIHNyYy9DTWFr ZUxpc3RzLnR4dCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgOCArLQotIHNyYy9ybW5l d3MuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDIxNiArKysrKysrKysrKysr LS0tLS0KLSA4IGZpbGVzIGNoYW5nZWQsIDMyMyBpbnNlcnRpb25zKCspLCAxNjQgZGVsZXRpb25z KC0pCi0gcmVuYW1lIGNtYWtlL3tGaW5kTElCU09VUDI0LmNtYWtlID0+IEZpbmRMSUJTT1VQLmNt YWtlfSAoNTUlKQotCi1kaWZmIC0tZ2l0IGEvY21ha2UvRmluZExJQlNPVVAyNC5jbWFrZSBiL2Nt YWtlL0ZpbmRMSUJTT1VQLmNtYWtlCi1zaW1pbGFyaXR5IGluZGV4IDU1JQotcmVuYW1lIGZyb20g Y21ha2UvRmluZExJQlNPVVAyNC5jbWFrZQotcmVuYW1lIHRvIGNtYWtlL0ZpbmRMSUJTT1VQLmNt YWtlCi1pbmRleCA5NmVjMjIyMzkuLjIzY2MwNmZmNiAxMDA2NDQKLS0tLSBhL2NtYWtlL0ZpbmRM SUJTT1VQMjQuY21ha2UKLSsrKyBiL2NtYWtlL0ZpbmRMSUJTT1VQLmNtYWtlCi1AQCAtMSw3ICsx LDUgQEAKLSAjIFJlbW1pbmEgLSBUaGUgR1RLKyBSZW1vdGUgRGVza3RvcCBDbGllbnQKLSAjCi0t IyBDb3B5cmlnaHQgKEMpIDIwMTEgTWFyYy1BbmRyZSBNb3JlYXUKLS0jIENvcHlyaWdodCAoQykg MjAxNC0yMDE1IEFudGVub3JlIEdhdHRhLCBGYWJpbyBDYXN0ZWxsaSwgR2lvdmFubmkgUGFub3p6 bwotICMgQ29weXJpZ2h0IChDKSAyMDE2LTIwMjIgQW50ZW5vcmUgR2F0dGEsIEdpb3Zhbm5pIFBh bm96em8KLSAjCi0gIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRp c3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQotQEAgLTIxLDI2ICsxOSwyNSBAQAotIAotIGluY2x1 ZGUoRmluZFBhY2thZ2VIYW5kbGVTdGFuZGFyZEFyZ3MpCi0gCi0tcGtnX2NoZWNrX21vZHVsZXMo UENfTElCU09VUDI0IGxpYnNvdXAtMi40KQotK3BrZ19zZWFyY2hfbW9kdWxlKFBDX0xJQlNPVVAg UkVRVUlSRUQgbGlic291cC0zLjAgbGlic291cC0yLjQpCi0gCi0tCi0tZmluZF9wYXRoKExJQlNP VVAyNF9JTkNMVURFX0RJUiBOQU1FUyBsaWJzb3VwL3NvdXAuaAotLQlISU5UUyAke1BDX0xJQlNP VVAyNF9JTkNMVURFRElSfSAke1BDX0xJQlNPVVAyNF9JTkNMVURFX0RJUlN9Ci0rZmluZF9wYXRo KExJQlNPVVBfSU5DTFVERV9ESVIgTkFNRVMgbGlic291cC9zb3VwLmgKLSsJSElOVFMgJHtQQ19M SUJTT1VQX0lOQ0xVREVESVJ9ICR7UENfTElCU09VUF9JTkNMVURFX0RJUlN9Ci0gKQotIAotLWZp bmRfbGlicmFyeShMSUJTT1VQMjRfTElCUkFSWQotLQlOQU1FUyBzb3VwLTIuNAotLQlISU5UUyAk e1BDX0xJQlNPVVAyNF9MSUJESVJ9ICR7UENfTElCU09VUDI0X0xJQlJBUllfRElSU30KLStmaW5k X2xpYnJhcnkoTElCU09VUF9MSUJSQVJZCi0rCU5BTUVTIHNvdXAgc291cC0zLjAgc291cC0yLjQK LSsJSElOVFMgJHtQQ19MSUJTT1VQX0xJQkRJUn0gJHtQQ19MSUJTT1VQX0xJQlJBUllfRElSU30K LSAJKQotIAotLWlmIChMSUJTT1VQMjRfSU5DTFVERV9ESVIgQU5EIExJQlNPVVAyNF9MSUJSQVJZ KQotLQlmaW5kX3BhY2thZ2VfaGFuZGxlX3N0YW5kYXJkX2FyZ3MoTElCU09VUDI0IERFRkFVTFRf TVNHIExJQlNPVVAyNF9MSUJSQVJZIExJQlNPVVAyNF9JTkNMVURFX0RJUikKLStpZiAoTElCU09V UF9JTkNMVURFX0RJUiBBTkQgTElCU09VUF9MSUJSQVJZKQotKwlmaW5kX3BhY2thZ2VfaGFuZGxl X3N0YW5kYXJkX2FyZ3MoTElCU09VUCBERUZBVUxUX01TRyBMSUJTT1VQX0xJQlJBUlkgTElCU09V UF9JTkNMVURFX0RJUikKLSBlbmRpZigpCi0gCi0taWYgKExJQlNPVVAyNF9GT1VORCkKLS0Jc2V0 KExJQlNPVVAyNF9MSUJSQVJJRVMgJHtMSUJTT1VQMjRfTElCUkFSWX0pCi0tCXNldChMSUJTT1VQ MjRfSU5DTFVERV9ESVJTICR7TElCU09VUDI0X0lOQ0xVREVfRElSfSkKLStpZiAoTElCU09VUF9G T1VORCkKLSsJc2V0KExJQlNPVVBfTElCUkFSSUVTICR7TElCU09VUF9MSUJSQVJZfSkKLSsJc2V0 KExJQlNPVVBfSU5DTFVERV9ESVJTICR7TElCU09VUF9JTkNMVURFX0RJUn0pCi0gZW5kaWYoKQot IAotLW1hcmtfYXNfYWR2YW5jZWQoTElCU09VUDI0X0lOQ0xVREVfRElSIExJQlNPVVAyNF9MSUJS QVJZKQotK21hcmtfYXNfYWR2YW5jZWQoTElCU09VUF9JTkNMVURFX0RJUiBMSUJTT1VQX0xJQlJB UlkpCi0gCi1kaWZmIC0tZ2l0IGEvY21ha2UvRmluZFdFQktJVDJHVEsuY21ha2UgYi9jbWFrZS9G aW5kV0VCS0lUMkdUSy5jbWFrZQotaW5kZXggMzkxZmRmZTlkLi4wYWY1NTRjZmYgMTAwNjQ0Ci0t LS0gYS9jbWFrZS9GaW5kV0VCS0lUMkdUSy5jbWFrZQotKysrIGIvY21ha2UvRmluZFdFQktJVDJH VEsuY21ha2UKLUBAIC0zMyw3ICszMyw4IEBACi0gZmluZF9wYWNrYWdlKFBrZ0NvbmZpZykKLSAK LSBpZihQS0dfQ09ORklHX0ZPVU5EKQotLSAgICBwa2dfY2hlY2tfbW9kdWxlcyhfV0VCS0lUMkdU SyB3ZWJraXQyZ3RrLTQuMCkKLSsgICAgI3BrZ19jaGVja19tb2R1bGVzKF9XRUJLSVQyR1RLIHdl YmtpdDJndGstNC4wKQotKyAgICBwa2dfc2VhcmNoX21vZHVsZShfV0VCS0lUMkdUSyB3ZWJraXQy Z3RrLTQuMSB3ZWJraXQyZ3RrLTQuMCkKLSBlbmRpZihQS0dfQ09ORklHX0ZPVU5EKQotIAotIHNl dChXRUJLSVQyR1RLX0RFRklOSVRJT05TICR7X1dFQktJVDJHVEtfQ0ZMQUdTX09USEVSfSkKLUBA IC00Miw3ICs0Myw4IEBAIGZpbmRfcGF0aChXRUJLSVQyR1RLX0lOQ0xVREVfRElSIE5BTUVTIHdl YmtpdDIvd2Via2l0Mi5oCi0gICAgIEhJTlRTICR7X1dFQktJVDJHVEtfSU5DTFVERURJUn0gJHtf V0VCS0lUMkdUS19JTkNMVURFX0RJUlN9Ci0gKQotIAotLWZpbmRfbGlicmFyeShXRUJLSVQyR1RL X0xJQiB3ZWJraXQyZ3RrLTQuMAotK2ZpbmRfbGlicmFyeShXRUJLSVQyR1RLX0xJQgotKyAgICBO QU1FUyB3ZWJraXQyZ3RrLTQuMSB3ZWJraXQyZ3RrLTQuMAotICAgICBISU5UUwotICAgICAke19X RUJLSVQyR1RLX0xJQkRJUn0KLSAgICAgJHtfV0VCS0lUMkdUS19MSUJSQVJZX0RJUlN9Ci1kaWZm IC0tZ2l0IGEvcGx1Z2lucy93d3cvQ01ha2VMaXN0cy50eHQgYi9wbHVnaW5zL3d3dy9DTWFrZUxp c3RzLnR4dAotaW5kZXggY2QxYWIzYTMyLi4zOWY0NGEwYzcgMTAwNjQ0Ci0tLS0gYS9wbHVnaW5z L3d3dy9DTWFrZUxpc3RzLnR4dAotKysrIGIvcGx1Z2lucy93d3cvQ01ha2VMaXN0cy50eHQKLUBA IC00NSwxMiArNDUsMTIgQEAgc2V0X3RhcmdldF9wcm9wZXJ0aWVzKHJlbW1pbmEtcGx1Z2luLXd3 dyBQUk9QRVJUSUVTIE5PX1NPTkFNRSAxKQotIAotIGFkZF9kZWZpbml0aW9ucygke1dFQktJVDJH VEtfQ0ZMQUdTX09USEVSfSkKLSAKLS1maW5kX3JlcXVpcmVkX3BhY2thZ2UoTElCU09VUDI0KQot LWlmKExJQlNPVVAyNF9GT1VORCkKLS0gICAgaW5jbHVkZV9kaXJlY3Rvcmllcygke1JFTU1JTkFf Q09NTU9OX0lOQ0xVREVfRElSU30gJHtXRUJLSVQyR1RLX0lOQ0xVREVfRElSU30gJHtMSUJTT1VQ MjRfSU5DTFVERV9ESVJTfSkKLS0gICAgdGFyZ2V0X2xpbmtfbGlicmFyaWVzKHJlbW1pbmEtcGx1 Z2luLXd3dyAke1JFTU1JTkFfQ09NTU9OX0xJQlJBUklFU30gJHtMSUJTT1VQMjRfTElCUkFSSUVT fSAke1dFQktJVDJHVEtfTElCUkFSSUVTfSkKLStmaW5kX3JlcXVpcmVkX3BhY2thZ2UoTElCU09V UCkKLStpZihMSUJTT1VQX0ZPVU5EKQotKyAgICBpbmNsdWRlX2RpcmVjdG9yaWVzKCR7UkVNTUlO QV9DT01NT05fSU5DTFVERV9ESVJTfSAke1dFQktJVDJHVEtfSU5DTFVERV9ESVJTfSAke0xJQlNP VVBfSU5DTFVERV9ESVJTfSkKLSsgICAgdGFyZ2V0X2xpbmtfbGlicmFyaWVzKHJlbW1pbmEtcGx1 Z2luLXd3dyAke1JFTU1JTkFfQ09NTU9OX0xJQlJBUklFU30gJHtMSUJTT1VQX0xJQlJBUklFU30g JHtXRUJLSVQyR1RLX0xJQlJBUklFU30pCi0gZWxzZSgpCi0tICAgIG1lc3NhZ2UoRkFUQUxfRVJS T1IgImxpYnNvdXAgMi40IGxpYnJhcnkgbm90IGZvdW5kIikKLSsgICAgbWVzc2FnZShGQVRBTF9F UlJPUiAibGlic291cCBsaWJyYXJ5IG5vdCBmb3VuZCIpCi0gZW5kaWYoKQotIAotIGluc3RhbGwo VEFSR0VUUyByZW1taW5hLXBsdWdpbi13d3cgREVTVElOQVRJT04gJHtSRU1NSU5BX1BMVUdJTkRJ Un0pCi1kaWZmIC0tZ2l0IGEvc3JjL0NNYWtlTGlzdHMudHh0IGIvc3JjL0NNYWtlTGlzdHMudHh0 Ci1pbmRleCA4ZDdkZGFkYmIuLmViMWZlYzJlMCAxMDA2NDQKLS0tLSBhL3NyYy9DTWFrZUxpc3Rz LnR4dAotKysrIGIvc3JjL0NNYWtlTGlzdHMudHh0Ci1AQCAtMjU1LDEwICsyNTUsMTAgQEAgaWYo R1RLM19GT1VORCkKLSAgIGVsc2UoKQotICAgICBtZXNzYWdlKEZBVEFMX0VSUk9SICJqc29uLWds aWIgbGlicmFyeSBub3QgZm91bmQiKQotICAgZW5kaWYoKQotLSAgZmluZF9yZXF1aXJlZF9wYWNr YWdlKExJQlNPVVAyNCkKLS0gIGlmKExJQlNPVVAyNF9GT1VORCkKLS0gICAgaW5jbHVkZV9kaXJl Y3Rvcmllcygke0xJQlNPVVAyNF9JTkNMVURFX0RJUlN9KQotLSAgICB0YXJnZXRfbGlua19saWJy YXJpZXMocmVtbWluYSAke0xJQlNPVVAyNF9MSUJSQVJJRVN9KQotKyAgZmluZF9yZXF1aXJlZF9w YWNrYWdlKExJQlNPVVApCi0rICBpZihMSUJTT1VQX0ZPVU5EKQotKyAgICBpbmNsdWRlX2RpcmVj dG9yaWVzKCR7TElCU09VUF9JTkNMVURFX0RJUlN9KQotKyAgICB0YXJnZXRfbGlua19saWJyYXJp ZXMocmVtbWluYSAke0xJQlNPVVBfTElCUkFSSUVTfSkKLSAgIGVsc2UoKQotICAgICBtZXNzYWdl KEZBVEFMX0VSUk9SICJsaWJzb3VwIDIuNCBsaWJyYXJ5IG5vdCBmb3VuZCIpCi0gICBlbmRpZigp Ci1kaWZmIC0tZ2l0IGEvc3JjL3JtbmV3cy5jIGIvc3JjL3JtbmV3cy5jCi1pbmRleCBkNGFlODFk MjIuLmY0NGFmODcwNCAxMDA2NDQKLS0tLSBhL3NyYy9ybW5ld3MuYwotKysrIGIvc3JjL3JtbmV3 cy5jCi1AQCAtNzQsNiArNzQsMTIgQEAgc3RhdGljIFJlbW1pbmFOZXdzRGlhbG9nICpybW5ld3Nf bmV3c19kaWFsb2c7Ci0gI2RlZmluZSBHRVRfT0JKKG9iamVjdF9uYW1lKSBndGtfYnVpbGRlcl9n ZXRfb2JqZWN0KHJtbmV3c19uZXdzX2RpYWxvZy0+YnVpbGRlciwgb2JqZWN0X25hbWUpCi0gCi0g c3RhdGljIFNvdXBTZXNzaW9uICpzZXNzaW9uOwotKwotKyNpZiBTT1VQX01BSk9SX1ZFUlNJT04g PCAzCi0rI2RlZmluZSBzb3VwX21lc3NhZ2VfZ2V0X3N0YXR1cyhtZXNzYWdlKSBtZXNzYWdlLT5z dGF0dXNfY29kZQotKyNkZWZpbmUgc291cF9tZXNzYWdlX2dldF9yZXNwb25zZV9oZWFkZXJzKG1l c3NhZ2UpIG1lc3NhZ2UtPnJlc3BvbnNlX2hlYWRlcnMKLSsjZW5kaWYKLSsKLSBzdGF0aWMgY29u c3QgZ2NoYXIgKm91dHB1dF9maWxlX3BhdGggPSBOVUxMOwotIAotIHN0YXRpYwotQEAgLTk2LDYg KzEwMiwyMyBAQCBnaW50IGV3ZWVrZGF5c1s3XSA9IHsKLSAJNjA0ODAwCi0gfTsKLSAKLSsKLSsj aWYgU09VUF9DSEVDS19WRVJTSU9OICgyLCA5OSwgMikKLStzdGF0aWMgdm9pZCBybW5ld3Nfb25f c3RyZWFtX3NwbGljZSAoR09iamVjdCAqc291cmNlLCBHQXN5bmNSZXN1bHQgKnJlc3VsdCwgZ3Bv aW50ZXIgdXNlcl9kYXRhKQotK3sKLSsgICAgICAgIEdFcnJvciAqZXJyb3IgPSBOVUxMOwotKyAg ICAgICAgZ19vdXRwdXRfc3RyZWFtX3NwbGljZV9maW5pc2ggKEdfT1VUUFVUX1NUUkVBTSAoc291 cmNlKSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQsCi0r ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmVycm9yKTsKLSsgICAgICAg IGlmIChlcnJvcikgewotKyAgICAgICAgICAgICAgICBnX3ByaW50ZXJyICgiRmFpbGVkIHRvIGRv d25sb2FkOiAlc1xuIiwgZXJyb3ItPm1lc3NhZ2UpOwotKyAgICAgICAgICAgICAgICBnX2Vycm9y X2ZyZWUgKGVycm9yKTsKLSsgICAgICAgICAgICAgICAgcmV0dXJuOwotKyAgICAgICAgfQotKwot K30KLSsjZW5kaWYKLSsKLSB2b2lkIHJtbmV3c19uZXdzX3N3aXRjaF9zdGF0ZV9zZXRfY2IoKQot IHsKLSAJVFJBQ0VfQ0FMTChfX2Z1bmNfXyk7Ci1AQCAtMjI1LDcxICsyNDgsMTM2IEBAIHZvaWQg cm1uZXdzX3Nob3dfbmV3cyhHdGtXaW5kb3cgKnBhcmVudCkKLSAJZ3RrX3dpbmRvd19zZXRfbW9k YWwoR1RLX1dJTkRPVyhybW5ld3NfbmV3c19kaWFsb2ctPmRpYWxvZyksIFRSVUUpOwotIH0KLSAK LS1zdGF0aWMgdm9pZCBybW5ld3NfZ2V0X3VybF9jYihTb3VwU2Vzc2lvbiAqc2Vzc2lvbiwgU291 cE1lc3NhZ2UgKm1zZywgZ3BvaW50ZXIgZGF0YSkKLSsjaWYgU09VUF9DSEVDS19WRVJTSU9OICgy LCA5OSwgMikKLStzdGF0aWMgdm9pZCBybW5ld3NfZ2V0X3VybF9jYiAoR09iamVjdCAqc291cmNl LCBHQXN5bmNSZXN1bHQgKnJlc3VsdCwgZ3BvaW50ZXIgdXNlcl9kYXRhKQotIHsKLSAJVFJBQ0Vf Q0FMTChfX2Z1bmNfXyk7Ci0gCWNvbnN0IGNoYXIgKm5hbWU7Ci0gCWNvbnN0IGNoYXIgKmhlYWRl cjsKLS0JU291cEJ1ZmZlciAqc2I7Ci0tCUZJTEUgKm91dHB1dF9maWxlID0gTlVMTDsKLSsJR0Zp bGUgKm91dHB1dF9maWxlOwotIAlnY2hhciAqZmlsZXNoYSA9IE5VTEw7Ci0gCWdjaGFyICpmaWxl c2hhX2FmdGVyID0gTlVMTDsKLS0JR0RhdGVUaW1lICpnZHQ7Ci0tCWdpbnQ2NCB1bml4dHM7Ci0g Ci0tCVJFTU1JTkFfREVCVUcoIlN0YXR1cyBjb2RlICVkIiwgbXNnLT5zdGF0dXNfY29kZSk7Ci0r CUdFcnJvciAqZXJyb3IgPSBOVUxMOwotKyAgICAgICAgR0lucHV0U3RyZWFtICppbiA9IHNvdXBf c2Vzc2lvbl9zZW5kX2ZpbmlzaCAoU09VUF9TRVNTSU9OIChzb3VyY2UpLCByZXN1bHQsICZlcnJv cik7Ci0gCi0tCW5hbWUgPSBzb3VwX21lc3NhZ2VfZ2V0X3VyaShtc2cpLT5wYXRoOwotKwlpZiAo ZXJyb3IpIHsKLSsJCVJFTU1JTkFfREVCVUcgKCJGYWlsZWQgdG8gc2VuZCByZXF1ZXN0OiAlcyIs IGVycm9yLT5tZXNzYWdlKTsKLSsJCWdfZXJyb3JfZnJlZSAoZXJyb3IpOwotKwkJcmV0dXJuOwot Kwl9Ci0gCi0tCWdkdCA9IGdfZGF0ZV90aW1lX25ld19ub3dfdXRjKCk7Ci0tCXVuaXh0cyA9IGdf ZGF0ZV90aW1lX3RvX3VuaXgoZ2R0KTsKLSsJR0RhdGVUaW1lICpnZHQgPSBnX2RhdGVfdGltZV9u ZXdfbm93X3V0YygpOwotKwlnaW50NjQgdW5peHRzID0gZ19kYXRlX3RpbWVfdG9fdW5peChnZHQp OwotIAlnX2RhdGVfdGltZV91bnJlZihnZHQpOwotIAotLQlpZiAoU09VUF9TVEFUVVNfSVNfQ0xJ RU5UX0VSUk9SKG1zZy0+c3RhdHVzX2NvZGUpKSB7Ci0tCQlSRU1NSU5BX0RFQlVHKCJTdGF0dXMg NDA0IC0gUmVsZWFzZSBmaWxlIG5vdCBhdmFpbGFibGUiKTsKLS0JCXJlbW1pbmFfcHJlZi5wZXJp b2RpY19ybW5ld3NfbGFzdF9nZXQgPSB1bml4dHM7Ci0tCQlSRU1NSU5BX0RFQlVHICgicGVyaW9k aWNfcm1uZXdzX2xhc3RfZ2V0IHNldCB0byAlbGQiLCByZW1taW5hX3ByZWYucGVyaW9kaWNfcm1u ZXdzX2xhc3RfZ2V0KTsKLS0JCVJFTU1JTkFfREVCVUcgKCJTYXZpbmcgcHJlZmVyZW5jZXMiKTsK LS0JCXJlbW1pbmFfcHJlZl9zYXZlKCk7Ci0tCQlyZXR1cm47Ci0tCX0KLSsgICAgICAgIGlmIChv dXRwdXRfZmlsZV9wYXRoKSB7Ci0rCQlSRU1NSU5BX0RFQlVHKCJDYWxjdWxhdGluZyB0aGUgU0hB MSBvZiB0aGUgbG9jYWwgZmlsZSIpOwotKwkJZmlsZXNoYSA9IHJlbW1pbmFfc2hhMV9maWxlKG91 dHB1dF9maWxlX3BhdGgpOwotKwkJUkVNTUlOQV9ERUJVRygiU0hBMSBpcyAlcyIsIGZpbGVzaGEp OwotKwkJaWYgKGZpbGVzaGEgPT0gTlVMTCB8fCBmaWxlc2hhWzBdID09IDApIGZpbGVzaGEgPSAi MFwwIjsKLSsJCVJFTU1JTkFfREVCVUcoIk9wZW5pbmcgJXMgb3V0cHV0IGZpbGUgZm9yIHdyaXRp bmciLCBvdXRwdXRfZmlsZV9wYXRoKTsKLSsgICAgICAgICAgICAgICAgR0ZpbGUgKm91dHB1dF9m aWxlID0gZ19maWxlX25ld19mb3JfY29tbWFuZGxpbmVfYXJnIChvdXRwdXRfZmlsZV9wYXRoKTsK LSsJCUdPdXRwdXRTdHJlYW0gKm91dCA9IEdfT1VUUFVUX1NUUkVBTSAoZ19maWxlX3JlcGxhY2Ug KG91dHB1dF9maWxlLCBOVUxMLCBOVUxMLAotKwkJCQkJCQlHX0ZJTEVfQ1JFQVRFX1JFUExBQ0Vf REVTVElOQVRJT04sIE5VTEwsICZlcnJvcikpOwotKyAgICAgICAgICAgICAgICBpZiAoZXJyb3Ip IHsKLSsJCQlSRU1NSU5BX0RFQlVHKCJGYWlsZWQgdG8gY3JlYXRlIFwiJXNcIjogJXMiLCBvdXRw dXRfZmlsZV9wYXRoLCBlcnJvci0+bWVzc2FnZSk7Ci0rCQkJcmVtbWluYV9wcmVmLnBlcmlvZGlj X3JtbmV3c19sYXN0X2dldCA9IHVuaXh0czsKLSsJCQlSRU1NSU5BX0RFQlVHICgicGVyaW9kaWNf cm1uZXdzX2xhc3RfZ2V0IHNldCB0byAlbGQiLCByZW1taW5hX3ByZWYucGVyaW9kaWNfcm1uZXdz X2xhc3RfZ2V0KTsKLSsJCQlSRU1NSU5BX0RFQlVHICgiU2F2aW5nIHByZWZlcmVuY2VzIik7Ci0r CQkJcmVtbWluYV9wcmVmX3NhdmUoKTsKLSsJCQlnX2ZyZWUoZmlsZXNoYSk7IGZpbGVzaGEgPSBO VUxMOwotKyAgICAgICAgICAgICAgICAgICAgICAgIGdfZXJyb3JfZnJlZSAoZXJyb3IpOwotKyAg ICAgICAgICAgICAgICAgICAgICAgIGdfb2JqZWN0X3VucmVmIChpbik7Ci0rICAgICAgICAgICAg ICAgICAgICAgICAgZ19vYmplY3RfdW5yZWYgKG91dHB1dF9maWxlKTsKLSsJCQlnX29iamVjdF91 bnJlZiAob3V0KTsKLSsgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47Ci0rICAgICAgICAg ICAgICAgIH0KLSsKLSsJCS8qIFN0YXJ0IGRvd25sb2FkaW5nIHRvIHRoZSBmaWxlICovCi0rCQkv LyBnX291dHB1dF9zdHJlYW1fc3BsaWNlX2FzeW5jIChHX09VVFBVVF9TVFJFQU0gKG91dCksIGlu LAotKwkJLy8gCQlHX09VVFBVVF9TVFJFQU1fU1BMSUNFX0NMT1NFX1NPVVJDRSB8IEdfT1VUUFVU X1NUUkVBTV9TUExJQ0VfQ0xPU0VfVEFSR0VULAotKwkJLy8gCQlHX1BSSU9SSVRZX0RFRkFVTFQs Ci0rCQkvLyAJCU5VTEwsCi0rCQkvLyAJCXJtbmV3c19vbl9zdHJlYW1fc3BsaWNlLAotKwkJLy8g TlVMTCk7Ci0rCQlnX291dHB1dF9zdHJlYW1fc3BsaWNlIChHX09VVFBVVF9TVFJFQU0gKG91dCks IGluLAotKwkJCSAgR19PVVRQVVRfU1RSRUFNX1NQTElDRV9DTE9TRV9TT1VSQ0UgfCBHX09VVFBV VF9TVFJFQU1fU1BMSUNFX0NMT1NFX1RBUkdFVCwKLSsJCQkgIE5VTEwsCi0rCQkJICAmZXJyb3Ip OwotKwotKwkJaWYgKGVycm9yKSB7Ci0rCQkJUkVNTUlOQV9ERUJVRyAoIkZhaWxlZCB0byBkb3du bG9hZDogJXMiLCBlcnJvci0+bWVzc2FnZSk7Ci0rCQkJcmVtbWluYV9wcmVmLnBlcmlvZGljX3Jt bmV3c19sYXN0X2dldCA9IHVuaXh0czsKLSsJCQlSRU1NSU5BX0RFQlVHICgicGVyaW9kaWNfcm1u ZXdzX2xhc3RfZ2V0IHNldCB0byAlbGQiLCByZW1taW5hX3ByZWYucGVyaW9kaWNfcm1uZXdzX2xh c3RfZ2V0KTsKLSsJCQlSRU1NSU5BX0RFQlVHICgiU2F2aW5nIHByZWZlcmVuY2VzIik7Ci0rCQkJ cmVtbWluYV9wcmVmX3NhdmUoKTsKLSsJCQlnX2ZyZWUoZmlsZXNoYSk7IGZpbGVzaGEgPSBOVUxM OwotKwkJCWdfZXJyb3JfZnJlZSAoZXJyb3IpOwotKyAgICAgICAgICAgICAgICAgICAgICAgIGdf b2JqZWN0X3VucmVmIChpbik7Ci0rICAgICAgICAgICAgICAgICAgICAgICAgZ19vYmplY3RfdW5y ZWYgKG91dHB1dF9maWxlKTsKLSsJCQlnX29iamVjdF91bnJlZiAob3V0KTsKLSsJCQlyZXR1cm47 Ci0rCQl9Ci0gCi0tCWlmIChTT1VQX1NUQVRVU19JU19TRVJWRVJfRVJST1IobXNnLT5zdGF0dXNf Y29kZSkpIHsKLS0JCVJFTU1JTkFfREVCVUcoIlNlcnZlciBub3QgYXZhaWxhYmxlIik7Ci0tCQly ZW1taW5hX3ByZWYucGVyaW9kaWNfcm1uZXdzX2xhc3RfZ2V0ID0gdW5peHRzOwotLQkJUkVNTUlO QV9ERUJVRyAoInBlcmlvZGljX3JtbmV3c19sYXN0X2dldCBzZXQgdG8gJWxkIiwgcmVtbWluYV9w cmVmLnBlcmlvZGljX3JtbmV3c19sYXN0X2dldCk7Ci0tCQlSRU1NSU5BX0RFQlVHICgiU2F2aW5n IHByZWZlcmVuY2VzIik7Ci0tCQlyZW1taW5hX3ByZWZfc2F2ZSgpOwotLQkJcmV0dXJuOwotLQl9 Ci0gCi0tCWlmIChTT1VQX1NUQVRVU19JU19UUkFOU1BPUlRfRVJST1IobXNnLT5zdGF0dXNfY29k ZSkpIHsKLS0JCVJFTU1JTkFfREVCVUcoIlRyYW5zcG9ydCBFcnJvciIpOwotKwkJZmlsZXNoYV9h ZnRlciA9IHJlbW1pbmFfc2hhMV9maWxlKG91dHB1dF9maWxlX3BhdGgpOwotKwotKwkJUkVNTUlO QV9ERUJVRygiU0hBMSBhZnRlciBkb3dubG9hZCBpcyAlcyIsIGZpbGVzaGFfYWZ0ZXIpOwotKwkJ aWYgKGdfc3RyY21wMChmaWxlc2hhLCBmaWxlc2hhX2FmdGVyKSAhPSAwKSB7Ci0rCQkJUkVNTUlO QV9ERUJVRygiU0hBMSBkaWZmZXJzLCB3ZSBzaG93IHRoZSBuZXdzIGFuZCByZXNldCB0aGUgY291 bnRlciIpOwotKwkJCXJlbW1pbmFfcHJlZi5wZXJpb2RpY19ybW5ld3NfbGFzdF9nZXQgPSAwOwot KwkJCVJFTU1JTkFfREVCVUcgKCJwZXJpb2RpY19ybW5ld3NfbGFzdF9nZXQgc2V0IHRvICVsZCIs IHJlbW1pbmFfcHJlZi5wZXJpb2RpY19ybW5ld3NfbGFzdF9nZXQpOwotKwkJCVJFTU1JTkFfREVC VUcgKCJTYXZpbmcgcHJlZmVyZW5jZXMiKTsKLSsJCQlHdGtXaW5kb3cgKnBhcmVudCA9IHJlbW1p bmFfbWFpbl9nZXRfd2luZG93KCk7Ci0rCQkJaWYgKCFraW9za21vZGUgJiYga2lvc2ttb2RlID09 IEZBTFNFKQotKwkJCXJtbmV3c19zaG93X25ld3MocGFyZW50KTsKLSsJCX0gZWxzZSB7Ci0rCQkJ cmVtbWluYV9wcmVmLnBlcmlvZGljX3JtbmV3c19sYXN0X2dldCA9IHVuaXh0czsKLSsJCX0KLSsJ CS8qIEluY3JlYXNlIGNvdW50ZXIgd2l0aCBudW1iZXIgb2Ygc3VjY2Vzc2Z1bCBHRVRzICovCi0r CQlyZW1taW5hX3ByZWYucGVyaW9kaWNfcm1uZXdzX2dldF9jb3VudCA9IHJlbW1pbmFfcHJlZi5w ZXJpb2RpY19ybW5ld3NfZ2V0X2NvdW50ICsgMTsKLSsJCXJlbW1pbmFfcHJlZl9zYXZlKCk7Ci0r CQlnX2ZyZWUoZmlsZXNoYSk7IGZpbGVzaGEgPSBOVUxMOwotKwkJZ19vYmplY3RfdW5yZWYgKG91 dCk7Ci0rCX0gZWxzZSB7Ci0rCQlSRU1NSU5BX0RFQlVHKCJDYW5ub3Qgb3BlbiBvdXRwdXQgZmls ZSBmb3Igd3JpdGluZywgYmVjYXVzZSBvdXRwdXRfZmlsZV9wYXRoIGlzIE5VTEwiKTsKLSAJCXJl bW1pbmFfcHJlZi5wZXJpb2RpY19ybW5ld3NfbGFzdF9nZXQgPSB1bml4dHM7Ci0gCQlSRU1NSU5B X0RFQlVHICgicGVyaW9kaWNfcm1uZXdzX2xhc3RfZ2V0IHNldCB0byAlbGQiLCByZW1taW5hX3By ZWYucGVyaW9kaWNfcm1uZXdzX2xhc3RfZ2V0KTsKLSAJCVJFTU1JTkFfREVCVUcgKCJTYXZpbmcg cHJlZmVyZW5jZXMiKTsKLSAJCXJlbW1pbmFfcHJlZl9zYXZlKCk7Ci0gCQlyZXR1cm47Ci0tCX0K LSsgICAgICAgIH0KLSAKLS0JaWYgKG1zZy0+c3RhdHVzX2NvZGUgPT0gU09VUF9TVEFUVVNfU1NM X0ZBSUxFRCkgewotLQkJR1Rsc0NlcnRpZmljYXRlRmxhZ3MgZmxhZ3M7Ci0rICAgICAgICBnX29i amVjdF91bnJlZiAoaW4pOwotIAotLQkJaWYgKHNvdXBfbWVzc2FnZV9nZXRfaHR0cHNfc3RhdHVz KG1zZywgTlVMTCwgJmZsYWdzKSkKLS0JCQlSRU1NSU5BX0RFQlVHKCIlczogJWQgJXMgKDB4JXgp XG4iLCBuYW1lLCBtc2ctPnN0YXR1c19jb2RlLCBtc2ctPnJlYXNvbl9waHJhc2UsIGZsYWdzKTsK LS0JCWVsc2UKLS0JCQlSRU1NSU5BX0RFQlVHKCIlczogJWQgJXMgKG5vIGhhbmRzaGFrZSBzdGF0 dXMpXG4iLCBuYW1lLCBtc2ctPnN0YXR1c19jb2RlLCBtc2ctPnJlYXNvbl9waHJhc2UpOwotLQkJ cmVtbWluYV9wcmVmLnBlcmlvZGljX3JtbmV3c19sYXN0X2dldCA9IHVuaXh0czsKLS0JCVJFTU1J TkFfREVCVUcgKCJwZXJpb2RpY19ybW5ld3NfbGFzdF9nZXQgc2V0IHRvICVsZCIsIHJlbW1pbmFf cHJlZi5wZXJpb2RpY19ybW5ld3NfbGFzdF9nZXQpOwotLQkJUkVNTUlOQV9ERUJVRyAoIlNhdmlu ZyBwcmVmZXJlbmNlcyIpOwotLQkJcmVtbWluYV9wcmVmX3NhdmUoKTsKLS0JCXJldHVybjsKLS0J fSBlbHNlIGlmIChTT1VQX1NUQVRVU19JU19UUkFOU1BPUlRfRVJST1IobXNnLT5zdGF0dXNfY29k ZSkpIHsKLS0JCVJFTU1JTkFfREVCVUcoIiVzOiAlZCAlc1xuIiwgbmFtZSwgbXNnLT5zdGF0dXNf Y29kZSwgbXNnLT5yZWFzb25fcGhyYXNlKTsKLS0JfQotIAotLQlpZiAoU09VUF9TVEFUVVNfSVNf UkVESVJFQ1RJT04obXNnLT5zdGF0dXNfY29kZSkpIHsKLS0JCWhlYWRlciA9IHNvdXBfbWVzc2Fn ZV9oZWFkZXJzX2dldF9vbmUobXNnLT5yZXNwb25zZV9oZWFkZXJzLAotK30KLSsjZWxzZQotK3N0 YXRpYyB2b2lkIHJtbmV3c19nZXRfdXJsX2NiKFNvdXBTZXNzaW9uICpzZXNzaW9uLCBTb3VwTWVz c2FnZSAqbXNnLCBncG9pbnRlciBkYXRhKQotK3sKLSsJVFJBQ0VfQ0FMTChfX2Z1bmNfXyk7Ci0r CWNvbnN0IGNoYXIgKm5hbWU7Ci0rCWNvbnN0IGNoYXIgKmhlYWRlcjsKLSsJZ19hdXRvcHRyKFNv dXBCdWZmZXIpIHNiOwotKwlGSUxFICpvdXRwdXRfZmlsZSA9IE5VTEw7Ci0rCWdjaGFyICpmaWxl c2hhID0gTlVMTDsKLSsJZ2NoYXIgKmZpbGVzaGFfYWZ0ZXIgPSBOVUxMOwotKwlHRGF0ZVRpbWUg KmdkdDsKLSsJZ2ludDY0IHVuaXh0czsKLSsJZ2ludCBzdGF0dXM7Ci0rCi0rCXN0YXR1cyA9IHNv dXBfbWVzc2FnZV9nZXRfc3RhdHVzKG1zZyk7Ci0rCVJFTU1JTkFfREVCVUcoIlN0YXR1cyBjb2Rl ICVkIiwgc3RhdHVzKTsKLSsKLSsJbmFtZSA9IHNvdXBfbWVzc2FnZV9nZXRfdXJpKG1zZyktPnBh dGg7Ci0rCi0rCWdkdCA9IGdfZGF0ZV90aW1lX25ld19ub3dfdXRjKCk7Ci0rCXVuaXh0cyA9IGdf ZGF0ZV90aW1lX3RvX3VuaXgoZ2R0KTsKLSsJZ19kYXRlX3RpbWVfdW5yZWYoZ2R0KTsKLSsKLSsJ aWYgKFNPVVBfU1RBVFVTX0lTX1JFRElSRUNUSU9OKHN0YXR1cykpIHsKLSsJCWhlYWRlciA9IHNv dXBfbWVzc2FnZV9oZWFkZXJzX2dldF9vbmUoc291cF9tZXNzYWdlX2dldF9yZXNwb25zZV9oZWFk ZXJzKG1zZyksCi0gCQkJCQkJICAgICAgIkxvY2F0aW9uIik7Ci0gCQlSRU1NSU5BX0RFQlVHKCJS ZWRpcmVjdGlvbiBkZXRlY3RlZCIpOwotIAkJaWYgKGhlYWRlcikgewotQEAgLTMwOSwxOCArMzk3 LDI1IEBAIHN0YXRpYyB2b2lkIHJtbmV3c19nZXRfdXJsX2NiKFNvdXBTZXNzaW9uICpzZXNzaW9u LCBTb3VwTWVzc2FnZSAqbXNnLCBncG9pbnRlciBkCi0gCQlSRU1NSU5BX0RFQlVHICgiU2F2aW5n IHByZWZlcmVuY2VzIik7Ci0gCQlyZW1taW5hX3ByZWZfc2F2ZSgpOwotIAkJcmV0dXJuOwotLQl9 IGVsc2UgaWYgKFNPVVBfU1RBVFVTX0lTX1NVQ0NFU1NGVUwobXNnLT5zdGF0dXNfY29kZSkpIHsK LSsJfQotKwotKwlpZiAoIVNPVVBfU1RBVFVTX0lTX1NVQ0NFU1NGVUwoc3RhdHVzKSkgewotKwkJ UkVNTUlOQV9ERUJVRyAoIkNvdWxkIG5vdCBhY2Nlc3MgJXM6ICVzIiwgbmFtZSAsIHNvdXBfc3Rh dHVzX2dldF9waHJhc2Uoc3RhdHVzKSk7Ci0rCQlSRU1NSU5BX0RFQlVHICgicGVyaW9kaWNfcm1u ZXdzX2xhc3RfZ2V0IHNldCB0byAlbGQiLCByZW1taW5hX3ByZWYucGVyaW9kaWNfcm1uZXdzX2xh c3RfZ2V0KTsKLSsJCVJFTU1JTkFfREVCVUcgKCJTYXZpbmcgcHJlZmVyZW5jZXMiKTsKLSsJCXJl bW1pbmFfcHJlZl9zYXZlKCk7Ci0rCQlyZXR1cm47Ci0rCX0gZWxzZSB7Ci0gCQlSRU1NSU5BX0RF QlVHKCJTdGF0dXMgMjAwIik7Ci0gCQlpZiAob3V0cHV0X2ZpbGVfcGF0aCkgewotIAkJCVJFTU1J TkFfREVCVUcoIkNhbGN1bGF0aW5nIHRoZSBTSEExIG9mIHRoZSBsb2NhbCBmaWxlIik7Ci0gCQkJ ZmlsZXNoYSA9IHJlbW1pbmFfc2hhMV9maWxlKG91dHB1dF9maWxlX3BhdGgpOwotIAkJCVJFTU1J TkFfREVCVUcoIlNIQTEgaXMgJXMiLCBmaWxlc2hhKTsKLS0JCQlpZiAoZmlsZXNoYSA9PSBOVUxM IHx8IGZpbGVzaGFbMF0gPT0gMCkKLS0JCQkJZmlsZXNoYSA9ICIwXDAiOwotKwkJCWlmIChmaWxl c2hhID09IE5VTEwgfHwgZmlsZXNoYVswXSA9PSAwKSBmaWxlc2hhID0gIjBcMCI7Ci0gCQkJUkVN TUlOQV9ERUJVRygiT3BlbmluZyAlcyBvdXRwdXQgZmlsZSBmb3Igd3JpdGluZyIsIG91dHB1dF9m aWxlX3BhdGgpOwotIAkJCW91dHB1dF9maWxlID0gZm9wZW4ob3V0cHV0X2ZpbGVfcGF0aCwgInci KTsKLSAJCQlpZiAoIW91dHB1dF9maWxlKSB7Ci0tCQkJCWdfcHJpbnRlcnIoIkVycm9yIHRyeWlu ZyB0byBjcmVhdGUgZmlsZSAlcy5cbiIsIG91dHB1dF9maWxlX3BhdGgpOwotKwkJCQlSRU1NSU5B X0RFQlVHKCJFcnJvciB0cnlpbmcgdG8gY3JlYXRlIGZpbGUgJXMuIiwgb3V0cHV0X2ZpbGVfcGF0 aCk7Ci0gCQkJCXJlbW1pbmFfcHJlZi5wZXJpb2RpY19ybW5ld3NfbGFzdF9nZXQgPSB1bml4dHM7 Ci0gCQkJCVJFTU1JTkFfREVCVUcgKCJwZXJpb2RpY19ybW5ld3NfbGFzdF9nZXQgc2V0IHRvICVs ZCIsIHJlbW1pbmFfcHJlZi5wZXJpb2RpY19ybW5ld3NfbGFzdF9nZXQpOwotIAkJCQlSRU1NSU5B X0RFQlVHICgiU2F2aW5nIHByZWZlcmVuY2VzIik7Ci1AQCAtMzM2LDggKzQzMSw2IEBAIHN0YXRp YyB2b2lkIHJtbmV3c19nZXRfdXJsX2NiKFNvdXBTZXNzaW9uICpzZXNzaW9uLCBTb3VwTWVzc2Fn ZSAqbXNnLCBncG9pbnRlciBkCi0gCQkJcmVtbWluYV9wcmVmX3NhdmUoKTsKLSAJCQlyZXR1cm47 Ci0gCQl9Ci0tCi0tCi0gCQlzYiA9IHNvdXBfbWVzc2FnZV9ib2R5X2ZsYXR0ZW4obXNnLT5yZXNw b25zZV9ib2R5KTsKLSAJCWlmIChvdXRwdXRfZmlsZSkgewotIAkJCWZ3cml0ZShzYi0+ZGF0YSwg MSwgc2ItPmxlbmd0aCwgb3V0cHV0X2ZpbGUpOwotQEAgLTM2NCw4ICs0NTcsMTAgQEAgc3RhdGlj IHZvaWQgcm1uZXdzX2dldF91cmxfY2IoU291cFNlc3Npb24gKnNlc3Npb24sIFNvdXBNZXNzYWdl ICptc2csIGdwb2ludGVyIGQKLSAJCQlnX2ZyZWUoZmlsZXNoYSk7IGZpbGVzaGEgPSBOVUxMOwot IAkJfQotIAl9Ci0rCi0gCWdfb2JqZWN0X3VucmVmKG1zZyk7Ci0gfQotKyNlbmRpZgotIAotIC8q KgotICAqIFRyeSB0byBnZXQgYSB1bmlxdWUgc3lzdGVtK3VzZXIgSUQgdG8gaWRlbnRpZnkgdGhp cyByZW1taW5hIHVzZXIKLUBAIC00MTcsOCArNTEyLDE2IEBAIHZvaWQgcm1uZXdzX2dldF91cmwo Y29uc3QgY2hhciAqdXJsKQotIAotIAlSRU1NSU5BX0RFQlVHKCJGZXRjaGluZyAlcyIsIHVybCk7 Ci0gCi0rI2lmIFNPVVBfQ0hFQ0tfVkVSU0lPTiAoMiwgOTksIDIpCi0rCS8vIFVzZSBzb3VwX3Nl c3Npb25fc2VuZF9hc3luYyBvciBzb3VwX3Nlc3Npb25fc2VuZF9hbmRfcmVhZF9hc3luYwotKwlz b3VwX3Nlc3Npb25fc2VuZF9hc3luYyAoIHNlc3Npb24sIG1zZywgR19QUklPUklUWV9ERUZBVUxU LAotKwkJCU5VTEwsCQkJLy8gY2FuY2VsbGFibGUKLSsJCQlybW5ld3NfZ2V0X3VybF9jYiwJLy8g Y2FsbGJhY2sKLSsJCQlOVUxMKTsJCQkvLyB1c2VyX2RhdGEKLSsjZWxzZQotIAlnX29iamVjdF9y ZWYobXNnKTsKLSAJc291cF9zZXNzaW9uX3F1ZXVlX21lc3NhZ2Uoc2Vzc2lvbiwgbXNnLCBybW5l d3NfZ2V0X3VybF9jYiwgTlVMTCk7Ci0rI2VuZGlmCi0gfQotIAotIHZvaWQgcm1uZXdzX2dldF9u ZXdzKCkKLUBAIC00NjYsMTQgKzU2OSwyNSBAQCB2b2lkIHJtbmV3c19nZXRfbmV3cygpCi0gCX0K LSAKLSAJUkVNTUlOQV9ERUJVRygiR2F0aGVyaW5nIG5ld3MiKTsKLSsJLyogQnVpbGQgdGhlIHNl c3Npb24gd2l0aCBhbGwgb2YgdGhlIGZlYXR1cmVzIHdlIG5lZWQgKi8KLSsJc2Vzc2lvbiA9IHNv dXBfc2Vzc2lvbl9uZXdfd2l0aF9vcHRpb25zICgidXNlci1hZ2VudCIsICJnZXQgIiwKLSsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFjY2VwdC1sYW5n dWFnZS1hdXRvIiwgVFJVRSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgInRpbWVvdXQiLCAxNSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCk7Ci0rCi0rI2lmIFNPVVBfQ0hFQ0tfVkVSU0lPTiAo MiwgOTksIDIpCi0rCXNvdXBfc2Vzc2lvbl9hZGRfZmVhdHVyZV9ieV90eXBlIChzZXNzaW9uLCBT T1VQX1RZUEVfQ09PS0lFX0pBUik7Ci0rCWxvZ2dlciA9IHNvdXBfbG9nZ2VyX25ldyhTT1VQX0xP R0dFUl9MT0dfTk9ORSk7Ci0rI2Vsc2UKLSAJc2Vzc2lvbiA9IGdfb2JqZWN0X25ldyhTT1VQX1RZ UEVfU0VTU0lPTiwKLSAJCQkgICAgICAgU09VUF9TRVNTSU9OX0FERF9GRUFUVVJFX0JZX1RZUEUs IFNPVVBfVFlQRV9DT05URU5UX0RFQ09ERVIsCi0gCQkJICAgICAgIFNPVVBfU0VTU0lPTl9BRERf RkVBVFVSRV9CWV9UWVBFLCBTT1VQX1RZUEVfQ09PS0lFX0pBUiwKLSAJCQkgICAgICAgU09VUF9T RVNTSU9OX1VTRVJfQUdFTlQsICJnZXQgIiwKLSAJCQkgICAgICAgU09VUF9TRVNTSU9OX0FDQ0VQ VF9MQU5HVUFHRV9BVVRPLCBUUlVFLAotIAkJCSAgICAgICBOVUxMKTsKLS0JLyogVE9ETzogQ2F0 Y2ggbG9nIGxldmVsIGFuZCBzZXQgU09VUF9MT0dHRVJfTE9HX01JTklNQUwgb3IgbW9yZSAqLwot IAlsb2dnZXIgPSBzb3VwX2xvZ2dlcl9uZXcoU09VUF9MT0dHRVJfTE9HX05PTkUsIC0xKTsKLSsj ZW5kaWYKLSsJLyogVE9ETzogQ2F0Y2ggbG9nIGxldmVsIGFuZCBzZXQgU09VUF9MT0dHRVJfTE9H X01JTklNQUwgb3IgbW9yZSAqLwotIAlzb3VwX3Nlc3Npb25fYWRkX2ZlYXR1cmUoc2Vzc2lvbiwg U09VUF9TRVNTSU9OX0ZFQVRVUkUobG9nZ2VyKSk7Ci0gCWdfb2JqZWN0X3VucmVmKGxvZ2dlcik7 Ci0gCi0tLSAKLUdpdExhYgotCmRpZmYgLS1naXQgYS9zcmNwa2dzL3JlbW1pbmEvdGVtcGxhdGUg Yi9zcmNwa2dzL3JlbW1pbmEvdGVtcGxhdGUKaW5kZXggMGRhOGNhZDY2MDRiLi5mNGMxMjZlMTJm NjggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcmVtbWluYS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3Jl bW1pbmEvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdyZW1t aW5hJwogcGtnbmFtZT1yZW1taW5hCi12ZXJzaW9uPTEuNC4yNwotcmV2aXNpb249MwordmVyc2lv bj0xLjQuMjkKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0i LURXSVRIX0FQUElORElDQVRPUj1PRkYgLURDTUFLRV9VU0VfUFRIUkVBRFNfSU5JVD1PTiIKIGhv c3RtYWtlZGVwZW5kcz0iZ2xpYi1kZXZlbCBpbnRsdG9vbCBwa2ctY29uZmlnIHNoYXJlZC1taW1l LWluZm8iCkBAIC0xOSw3ICsxOSw3IEBAIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21l cGFnZT0iaHR0cHM6Ly9yZW1taW5hLm9yZyIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9naXRsYWIuY29t L1JlbW1pbmEvUmVtbWluYS8tL3Jhdy9tYXN0ZXIvQ0hBTkdFTE9HLm1kIgogZGlzdGZpbGVzPSJo dHRwczovL2dpdGxhYi5jb20vUmVtbWluYS9SZW1taW5hLy0vYXJjaGl2ZS92JHt2ZXJzaW9ufS9S ZW1taW5hLXYke3ZlcnNpb259LnRhci5iejIiCi1jaGVja3N1bT02ZTkzZjE4YTQ5MzBjYTE5NGQz NjUxYTdhMGNlZGYxY2Y5MmU3NjE4ODQ5NTJkNTY1MWZjMWU5ODVkYWE5YzVhCitjaGVja3N1bT05 NGQxMWQwMDYwMmQxMmVkMDMzYjEwMThlNDIxNzFkZmQxYjFhNDIwODE1MzBjMjI5ZTRhMzk4OGM0 ZjNhM2Q5CiAKIGlmIFsgIiRYQlBTX1RBUkdFVF9MSUJDIiA9ICJtdXNsIiBdOyB0aGVuCiAJbWFr ZWRlcGVuZHMrPSIgbGliZXhlY2luZm8tZGV2ZWwiCg== --===============9092312755732432877==--