From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id 294231FF165 for ; Thu, 5 Jun 2025 16:17:38 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 8E8E51A50D; Thu, 5 Jun 2025 16:17:56 +0200 (CEST) From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= To: pve-devel@lists.proxmox.com Date: Thu, 5 Jun 2025 16:17:19 +0200 Message-Id: <20250605141720.734781-1-f.gruenbichler@proxmox.com> X-Mailer: git-send-email 2.39.5 MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.045 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 SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pve-devel] [PATCH cluster 1/2] pmxcfs: pretty print corosync error codes 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" dGhpcyBoYXMgYWx3YXlzIGJlZW4gYSBiaXQgYW5ub3lpbmcgdG8gbWFudWFsbHkgbWFwIHZpYSB0 aGUgaGVhZGVyIGZpbGUsIGFuZAp3aGlsZSB0aGUgaGVscGVyIGRvZXMgbm90IGRvIG11Y2ggbW9y ZSBhdCB0aGUgbW9tZW50IHRoYW4gdHJhbnNsYXRlIHRoZW0gYmFjawp0byB0aGUgZW51bSBrZXlz LCBpdCBpcyBiZXR0ZXIgdGhhbiBub3RoaW5nLgoKU2lnbmVkLW9mZi1ieTogRmFiaWFuIEdyw7xu YmljaGxlciA8Zi5ncnVlbmJpY2hsZXJAcHJveG1veC5jb20+Ci0tLQogc3JjL3BteGNmcy9NYWtl ZmlsZSB8ICAyICstCiBzcmMvcG14Y2ZzL2NvbmZkYi5jIHwgMzMgKysrKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLS0tCiBzcmMvcG14Y2ZzL2Rmc20uYyAgIHwgMjIgKysrKysrKysrKystLS0t LS0tLS0tLQogc3JjL3BteGNmcy9xdW9ydW0uYyB8IDE3ICsrKysrKysrKy0tLS0tLS0tCiBzcmMv dGVzdC9jcGd0ZXN0LmMgIHwgMTUgKysrKysrKystLS0tLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDQ2 IGluc2VydGlvbnMoKyksIDQzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyYy9wbXhjZnMv TWFrZWZpbGUgYi9zcmMvcG14Y2ZzL01ha2VmaWxlCmluZGV4IDRlYjUzNzguLjU0N2YyNTggMTAw NjQ0Ci0tLSBhL3NyYy9wbXhjZnMvTWFrZWZpbGUKKysrIGIvc3JjL3BteGNmcy9NYWtlZmlsZQpA QCAtMSw1ICsxLDUgQEAKIAotREVQRU5ERU5DSUVTPWxpYmNwZyBsaWJjbWFwIGxpYnF1b3J1bSBs aWJxYiBnbGliLTIuMCBmdXNlIHNxbGl0ZTMgbGlicnJkCitERVBFTkRFTkNJRVM9bGliY3BnIGxp YmNtYXAgbGliY29yb3N5bmNfY29tbW9uIGxpYnF1b3J1bSBsaWJxYiBnbGliLTIuMCBmdXNlIHNx bGl0ZTMgbGlicnJkCiAKIENDID0gZ2NjCiBDRkxBR1MgKz0gLXN0ZD1nbnU5OQpkaWZmIC0tZ2l0 IGEvc3JjL3BteGNmcy9jb25mZGIuYyBiL3NyYy9wbXhjZnMvY29uZmRiLmMKaW5kZXggOTY3ODA5 YS4uZTIyNmZlZCAxMDA2NDQKLS0tIGEvc3JjL3BteGNmcy9jb25mZGIuYworKysgYi9zcmMvcG14 Y2ZzL2NvbmZkYi5jCkBAIC0zNSw2ICszNSw3IEBACiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKICNp bmNsdWRlIDxjb3Jvc3luYy9jbWFwLmg+CisjaW5jbHVkZSA8Y29yb3N5bmMvY29yb3R5cGVzLmg+ CiAKICNpbmNsdWRlICJjZnMtdXRpbHMuaCIKICNpbmNsdWRlICJsb29wLmgiCkBAIC01Myw3ICs1 NCw3IEBAIHN0YXRpYyBjc19lcnJvcl90IGNtYXBfcmVhZF9jbHVzdGVybm9kZXMoY21hcF9oYW5k bGVfdCBoYW5kbGUsIGNmc19jbGluZm9fdCAqY2xpCiAKICAgICByZXN1bHQgPSBjbWFwX2l0ZXJf aW5pdChoYW5kbGUsICJub2RlbGlzdC5ub2RlLiIsICZpdGVyKTsKICAgICBpZiAocmVzdWx0ICE9 IENTX09LKSB7Ci0gICAgICAgIGNmc19jcml0aWNhbCgiY21hcF9pdGVyX2luaXQgZmFpbGVkICVk IiwgcmVzdWx0KTsKKyAgICAgICAgY2ZzX2NyaXRpY2FsKCJjbWFwX2l0ZXJfaW5pdCBmYWlsZWQg JXMiLCBjc19zdHJlcnJvcihyZXN1bHQpKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9 CiAKQEAgLTg3LDIzICs4OCwyMyBAQCBzdGF0aWMgY3NfZXJyb3JfdCBjbWFwX3JlYWRfY2x1c3Rl cm5vZGVzKGNtYXBfaGFuZGxlX3QgaGFuZGxlLCBjZnNfY2xpbmZvX3QgKmNsaQogCiAgICAgICAg IGlmIChzdHJjbXAoc3Via2V5LCAibm9kZWlkIikgPT0gMCkgewogICAgICAgICAgICAgaWYgKChy ZXN1bHQgPSBjbWFwX2dldF91aW50MzIoaGFuZGxlLCBrZXlfbmFtZSwgJm5vZGVpZCkpICE9IENT X09LKSB7Ci0gICAgICAgICAgICAgICAgY2ZzX2NyaXRpY2FsKCJjbWFwX2dldCAlcyBmYWlsZWQg JWQiLCBrZXlfbmFtZSwgcmVzdWx0KTsKKyAgICAgICAgICAgICAgICBjZnNfY3JpdGljYWwoImNt YXBfZ2V0ICVzIGZhaWxlZCAlcyIsIGtleV9uYW1lLCBjc19zdHJlcnJvcihyZXN1bHQpKTsKICAg ICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlIGlmIChzdHJjbXAoc3Via2V5LCAicXVvcnVtX3Zv dGVzIikgPT0gMCkgewogICAgICAgICAgICAgaWYgKChyZXN1bHQgPSBjbWFwX2dldF91aW50MzIo aGFuZGxlLCBrZXlfbmFtZSwgJnZvdGVzKSkgIT0gQ1NfT0spIHsKLSAgICAgICAgICAgICAgICBj ZnNfY3JpdGljYWwoImNtYXBfZ2V0ICVzIGZhaWxlZCAlZCIsIGtleV9uYW1lLCByZXN1bHQpOwor ICAgICAgICAgICAgICAgIGNmc19jcml0aWNhbCgiY21hcF9nZXQgJXMgZmFpbGVkICVzIiwga2V5 X25hbWUsIGNzX3N0cmVycm9yKHJlc3VsdCkpOwogICAgICAgICAgICAgfQogICAgICAgICB9IGVs c2UgaWYgKHN0cmNtcChzdWJrZXksICJyaW5nMF9hZGRyIikgPT0gMCkgewogICAgICAgICAgICAg Ly8gcHJlZmVyaW5nIHRoZSAnbmFtZScgc3Via2V5IG92ZXIgJ3JpbmcwX2FkZHInLCBuZWVkZWQg Zm9yIFJSUAogICAgICAgICAgICAgLy8gYW5kIHdoZW4gdXNpbmcgYSBJUCBhZGRyZXNzIGZvciBy aW5nMF9hZGRyCiAgICAgICAgICAgICBpZiAobmFtZSA9PSBOVUxMICYmIChyZXN1bHQgPSBjbWFw X2dldF9zdHJpbmcoaGFuZGxlLCBrZXlfbmFtZSwgJm5hbWUpKSAhPSBDU19PSykgewotICAgICAg ICAgICAgICAgIGNmc19jcml0aWNhbCgiY21hcF9nZXQgJXMgZmFpbGVkICVkIiwga2V5X25hbWUs IHJlc3VsdCk7CisgICAgICAgICAgICAgICAgY2ZzX2NyaXRpY2FsKCJjbWFwX2dldCAlcyBmYWls ZWQgJXMiLCBrZXlfbmFtZSwgY3Nfc3RyZXJyb3IocmVzdWx0KSk7CiAgICAgICAgICAgICB9CiAg ICAgICAgIH0gZWxzZSBpZiAoc3RyY21wKHN1YmtleSwgIm5hbWUiKSA9PSAwKSB7CiAgICAgICAg ICAgICBmcmVlKG5hbWUpOwogICAgICAgICAgICAgbmFtZSA9IE5VTEw7CiAgICAgICAgICAgICBp ZiAoKHJlc3VsdCA9IGNtYXBfZ2V0X3N0cmluZyhoYW5kbGUsIGtleV9uYW1lLCAmbmFtZSkpICE9 IENTX09LKSB7Ci0gICAgICAgICAgICAgICAgY2ZzX2NyaXRpY2FsKCJjbWFwX2dldCAlcyBmYWls ZWQgJWQiLCBrZXlfbmFtZSwgcmVzdWx0KTsKKyAgICAgICAgICAgICAgICBjZnNfY3JpdGljYWwo ImNtYXBfZ2V0ICVzIGZhaWxlZCAlcyIsIGtleV9uYW1lLCBjc19zdHJlcnJvcihyZXN1bHQpKTsK ICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KQEAgLTExNiw3ICsxMTcsNyBAQCBzdGF0 aWMgY3NfZXJyb3JfdCBjbWFwX3JlYWRfY2x1c3Rlcm5vZGVzKGNtYXBfaGFuZGxlX3QgaGFuZGxl LCBjZnNfY2xpbmZvX3QgKmNsaQogCiAgICAgcmVzdWx0ID0gY21hcF9pdGVyX2ZpbmFsaXplKGhh bmRsZSwgaXRlcik7CiAgICAgaWYgKHJlc3VsdCAhPSBDU19PSykgewotICAgICAgICBjZnNfY3Jp dGljYWwoImNtYXBfaXRlcl9maW5hbGl6ZSBmYWlsZWQgJWQiLCByZXN1bHQpOworICAgICAgICBj ZnNfY3JpdGljYWwoImNtYXBfaXRlcl9maW5hbGl6ZSBmYWlsZWQgJXMiLCBjc19zdHJlcnJvcihy ZXN1bHQpKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9CiAKQEAgLTEzMCwxNCArMTMx LDE0IEBAIHN0YXRpYyBjc19lcnJvcl90IGNtYXBfcmVhZF9jb25maWcoY21hcF9oYW5kbGVfdCBo YW5kbGUpIHsKIAogICAgIHJlc3VsdCA9IGNtYXBfZ2V0X3VpbnQ2NChoYW5kbGUsICJ0b3RlbS5j b25maWdfdmVyc2lvbiIsICZjb25maWdfdmVyc2lvbik7CiAgICAgaWYgKHJlc3VsdCAhPSBDU19P SykgewotICAgICAgICBjZnNfY3JpdGljYWwoImNtYXBfZ2V0IHRvdGVtLmNvbmZpZ192ZXJzaW9u IGZhaWxlZCAlZCIsIHJlc3VsdCk7CisgICAgICAgIGNmc19jcml0aWNhbCgiY21hcF9nZXQgdG90 ZW0uY29uZmlnX3ZlcnNpb24gZmFpbGVkICVzIiwgY3Nfc3RyZXJyb3IocmVzdWx0KSk7CiAgICAg ICAgIC8vIG9wdGlvbmFsLCBkbyBub3QgdGhyb3cgZXJyb3IKICAgICB9CiAKICAgICBjaGFyICpj bHVzdGVybmFtZSA9IE5VTEw7CiAgICAgcmVzdWx0ID0gY21hcF9nZXRfc3RyaW5nKGhhbmRsZSwg InRvdGVtLmNsdXN0ZXJfbmFtZSIsICZjbHVzdGVybmFtZSk7CiAgICAgaWYgKHJlc3VsdCAhPSBD U19PSykgewotICAgICAgICBjZnNfY3JpdGljYWwoImNtYXBfZ2V0IHRvdGVtLmNsdXN0ZXJfbmFt ZSBmYWlsZWQgJWQiLCByZXN1bHQpOworICAgICAgICBjZnNfY3JpdGljYWwoImNtYXBfZ2V0IHRv dGVtLmNsdXN0ZXJfbmFtZSBmYWlsZWQgJXMiLCBjc19zdHJlcnJvcihyZXN1bHQpKTsKICAgICAg ICAgcmV0dXJuIHJlc3VsdDsKICAgICB9CiAKQEAgLTE2NSw3ICsxNjYsNyBAQCBzdGF0aWMgZ2Jv b2xlYW4gc2VydmljZV9jbWFwX2ZpbmFsaXplKGNmc19zZXJ2aWNlX3QgKnNlcnZpY2UsIGdwb2lu dGVyIGNvbnRleHQpCiAgICAgaWYgKHByaXZhdGUtPnRyYWNrX25vZGVsaXN0X2hhbmRsZSkgewog ICAgICAgICByZXN1bHQgPSBjbWFwX3RyYWNrX2RlbGV0ZShoYW5kbGUsIHByaXZhdGUtPnRyYWNr X25vZGVsaXN0X2hhbmRsZSk7CiAgICAgICAgIGlmIChyZXN1bHQgIT0gQ1NfT0spIHsKLSAgICAg ICAgICAgIGNmc19jcml0aWNhbCgiY21hcF90cmFja19kZWxldGUgbm9kZWxpc3QgZmFpbGVkOiAl ZCIsIHJlc3VsdCk7CisgICAgICAgICAgICBjZnNfY3JpdGljYWwoImNtYXBfdHJhY2tfZGVsZXRl IG5vZGVsaXN0IGZhaWxlZDogJXMiLCBjc19zdHJlcnJvcihyZXN1bHQpKTsKICAgICAgICAgfQog ICAgICAgICBwcml2YXRlLT50cmFja19ub2RlbGlzdF9oYW5kbGUgPSAwOwogICAgIH0KQEAgLTE3 Myw3ICsxNzQsNyBAQCBzdGF0aWMgZ2Jvb2xlYW4gc2VydmljZV9jbWFwX2ZpbmFsaXplKGNmc19z ZXJ2aWNlX3QgKnNlcnZpY2UsIGdwb2ludGVyIGNvbnRleHQpCiAgICAgaWYgKHByaXZhdGUtPnRy YWNrX3ZlcnNpb25faGFuZGxlKSB7CiAgICAgICAgIHJlc3VsdCA9IGNtYXBfdHJhY2tfZGVsZXRl KGhhbmRsZSwgcHJpdmF0ZS0+dHJhY2tfdmVyc2lvbl9oYW5kbGUpOwogICAgICAgICBpZiAocmVz dWx0ICE9IENTX09LKSB7Ci0gICAgICAgICAgICBjZnNfY3JpdGljYWwoImNtYXBfdHJhY2tfZGVs ZXRlIHZlcnNpb24gZmFpbGVkOiAlZCIsIHJlc3VsdCk7CisgICAgICAgICAgICBjZnNfY3JpdGlj YWwoImNtYXBfdHJhY2tfZGVsZXRlIHZlcnNpb24gZmFpbGVkOiAlcyIsIGNzX3N0cmVycm9yKHJl c3VsdCkpOwogICAgICAgICB9CiAgICAgICAgIHByaXZhdGUtPnRyYWNrX3ZlcnNpb25faGFuZGxl ID0gMDsKICAgICB9CkBAIC0xODEsNyArMTgyLDcgQEAgc3RhdGljIGdib29sZWFuIHNlcnZpY2Vf Y21hcF9maW5hbGl6ZShjZnNfc2VydmljZV90ICpzZXJ2aWNlLCBncG9pbnRlciBjb250ZXh0KQog ICAgIHJlc3VsdCA9IGNtYXBfZmluYWxpemUoaGFuZGxlKTsKICAgICBwcml2YXRlLT5oYW5kbGUg PSAwOwogICAgIGlmIChyZXN1bHQgIT0gQ1NfT0spIHsKLSAgICAgICAgY2ZzX2NyaXRpY2FsKCJj bWFwX2ZpbmFsaXplIGZhaWxlZDogJWQiLCByZXN1bHQpOworICAgICAgICBjZnNfY3JpdGljYWwo ImNtYXBfZmluYWxpemUgZmFpbGVkOiAlcyIsIGNzX3N0cmVycm9yKHJlc3VsdCkpOwogICAgICAg ICByZXR1cm4gRkFMU0U7CiAgICAgfQogCkBAIC0yMjAsMTQgKzIyMSwxNCBAQCBzdGF0aWMgaW50 IHNlcnZpY2VfY21hcF9pbml0aWFsaXplKGNmc19zZXJ2aWNlX3QgKnNlcnZpY2UsIGdwb2ludGVy IGNvbnRleHQpIHsKIAogICAgICAgICByZXN1bHQgPSBjbWFwX2luaXRpYWxpemUoJmhhbmRsZSk7 CiAgICAgICAgIGlmIChyZXN1bHQgIT0gQ1NfT0spIHsKLSAgICAgICAgICAgIGNmc19jcml0aWNh bCgiY21hcF9pbml0aWFsaXplIGZhaWxlZDogJWQiLCByZXN1bHQpOworICAgICAgICAgICAgY2Zz X2NyaXRpY2FsKCJjbWFwX2luaXRpYWxpemUgZmFpbGVkOiAlcyIsIGNzX3N0cmVycm9yKHJlc3Vs dCkpOwogICAgICAgICAgICAgcHJpdmF0ZS0+aGFuZGxlID0gMDsKICAgICAgICAgICAgIHJldHVy biAtMTsKICAgICAgICAgfQogCiAgICAgICAgIHJlc3VsdCA9IGNtYXBfY29udGV4dF9zZXQoaGFu ZGxlLCBwcml2YXRlKTsKICAgICAgICAgaWYgKHJlc3VsdCAhPSBDU19PSykgewotICAgICAgICAg ICAgY2ZzX2NyaXRpY2FsKCJjbWFwX2NvbnRleHRfc2V0IGZhaWxlZDogJWQiLCByZXN1bHQpOwor ICAgICAgICAgICAgY2ZzX2NyaXRpY2FsKCJjbWFwX2NvbnRleHRfc2V0IGZhaWxlZDogJXMiLCBj c19zdHJlcnJvcihyZXN1bHQpKTsKICAgICAgICAgICAgIGNtYXBfZmluYWxpemUoaGFuZGxlKTsK ICAgICAgICAgICAgIHByaXZhdGUtPmhhbmRsZSA9IDA7CiAgICAgICAgICAgICByZXR1cm4gLTE7 CkBAIC0yNTAsMTggKzI1MSwxOCBAQCBzdGF0aWMgaW50IHNlcnZpY2VfY21hcF9pbml0aWFsaXpl KGNmc19zZXJ2aWNlX3QgKnNlcnZpY2UsIGdwb2ludGVyIGNvbnRleHQpIHsKICAgICB9CiAKICAg ICBpZiAocmVzdWx0ID09IENTX0VSUl9MSUJSQVJZIHx8IHJlc3VsdCA9PSBDU19FUlJfQkFEX0hB TkRMRSkgewotICAgICAgICBjZnNfY3JpdGljYWwoImNtYXBfdHJhY2tfY2hhbmdlcyBmYWlsZWQ6 ICVkIC0gY2xvc2luZyBoYW5kbGUiLCByZXN1bHQpOworICAgICAgICBjZnNfY3JpdGljYWwoImNt YXBfdHJhY2tfY2hhbmdlcyBmYWlsZWQ6ICVzIC0gY2xvc2luZyBoYW5kbGUiLCBjc19zdHJlcnJv cihyZXN1bHQpKTsKICAgICAgICAgY21hcF9maW5hbGl6ZShoYW5kbGUpOwogICAgICAgICBwcml2 YXRlLT5oYW5kbGUgPSAwOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfSBlbHNlIGlmIChyZXN1 bHQgIT0gQ1NfT0spIHsKLSAgICAgICAgY2ZzX2NyaXRpY2FsKCJjbWFwX3RyYWNrX2NoYW5nZXMg ZmFpbGVkOiAlZCAtIHRyeWluZyBhZ2FpbiIsIHJlc3VsdCk7CisgICAgICAgIGNmc19jcml0aWNh bCgiY21hcF90cmFja19jaGFuZ2VzIGZhaWxlZDogJXMgLSB0cnlpbmcgYWdhaW4iLCBjc19zdHJl cnJvcihyZXN1bHQpKTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KIAogICAgIGludCBjbWFw X2ZkID0gLTE7CiAgICAgaWYgKChyZXN1bHQgPSBjbWFwX2ZkX2dldChoYW5kbGUsICZjbWFwX2Zk KSkgIT0gQ1NfT0spIHsKLSAgICAgICAgY2ZzX2NyaXRpY2FsKCJjb25mZGJfZmRfZ2V0IGZhaWxl ZCAlZCAtIHRyeWluZyBhZ2FpbiIsIHJlc3VsdCk7CisgICAgICAgIGNmc19jcml0aWNhbCgiY29u ZmRiX2ZkX2dldCBmYWlsZWQgJXMgLSB0cnlpbmcgYWdhaW4iLCBjc19zdHJlcnJvcihyZXN1bHQp KTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvc3JjL3BteGNmcy9k ZnNtLmMgYi9zcmMvcG14Y2ZzL2Rmc20uYwppbmRleCA0Yzk0ZjE4Li45MjI4ZGRjIDEwMDY0NAot LS0gYS9zcmMvcG14Y2ZzL2Rmc20uYworKysgYi9zcmMvcG14Y2ZzL2Rmc20uYwpAQCAtMjA1LDcg KzIwNSw3IEBAIGxvb3A6CiAgICAgfQogCiAgICAgaWYgKHJlc3VsdCAhPSBDU19PSyAmJiAoIXJl dHJ5IHx8IHJlc3VsdCAhPSBDU19FUlJfVFJZX0FHQUlOKSkgewotICAgICAgICBjZnNfZG9tX2Ny aXRpY2FsKGRmc20tPmxvZ19kb21haW4sICJjcGdfc2VuZF9tZXNzYWdlIGZhaWxlZDogJWQiLCBy ZXN1bHQpOworICAgICAgICBjZnNfZG9tX2NyaXRpY2FsKGRmc20tPmxvZ19kb21haW4sICJjcGdf c2VuZF9tZXNzYWdlIGZhaWxlZDogJXMiLCBjc19zdHJlcnJvcihyZXN1bHQpKTsKICAgICB9CiAK ICAgICByZXR1cm4gcmVzdWx0OwpAQCAtMjg3LDcgKzI4Nyw3IEBAIGNzX2Vycm9yX3QgZGZzbV9z ZW5kX21lc3NhZ2Vfc3luYygKICAgICBnX211dGV4X3VubG9jaygmZGZzbS0+c3luY19tdXRleCk7 CiAKICAgICBpZiAocmVzdWx0ICE9IENTX09LKSB7Ci0gICAgICAgIGNmc19kb21fY3JpdGljYWwo ZGZzbS0+bG9nX2RvbWFpbiwgImNwZ19zZW5kX21lc3NhZ2UgZmFpbGVkOiAlZCIsIHJlc3VsdCk7 CisgICAgICAgIGNmc19kb21fY3JpdGljYWwoZGZzbS0+bG9nX2RvbWFpbiwgImNwZ19zZW5kX21l c3NhZ2UgZmFpbGVkOiAlcyIsIGNzX3N0cmVycm9yKHJlc3VsdCkpOwogCiAgICAgICAgIGlmIChy cCkgewogICAgICAgICAgICAgZ19tdXRleF9sb2NrKCZkZnNtLT5zeW5jX211dGV4KTsKQEAgLTU2 Nyw3ICs1NjcsNyBAQCBzdGF0aWMgdm9pZCBkZnNtX2NwZ19kZWxpdmVyX2NhbGxiYWNrKAogICAg IGRmc21fdCAqZGZzbSA9IE5VTEw7CiAgICAgcmVzdWx0ID0gY3BnX2NvbnRleHRfZ2V0KGhhbmRs ZSwgKGdwb2ludGVyICopJmRmc20pOwogICAgIGlmIChyZXN1bHQgIT0gQ1NfT0sgfHwgIWRmc20g fHwgZGZzbS0+Y3BnX2NhbGxiYWNrcyAhPSAmY3BnX2NhbGxiYWNrcykgewotICAgICAgICBjZnNf Y3JpdGljYWwoImNwZ19jb250ZXh0X2dldCBlcnJvcjogJWQgKCVwKSIsIHJlc3VsdCwgKHZvaWQg KilkZnNtKTsKKyAgICAgICAgY2ZzX2NyaXRpY2FsKCJjcGdfY29udGV4dF9nZXQgZXJyb3I6ICVz ICglcCkiLCBjc19zdHJlcnJvcihyZXN1bHQpLCAodm9pZCAqKWRmc20pOwogICAgICAgICByZXR1 cm47IC8qIHdlIGhhdmUgbm8gdmFsaWQgZGZzbSBwb2ludGVyLCBzbyB3ZSBjYW4ganVzdCBpZ25v cmUgdGhpcyAqLwogICAgIH0KICAgICBkZnNtX21vZGVfdCBtb2RlID0gZGZzbV9nZXRfbW9kZShk ZnNtKTsKQEAgLTEwNzksNyArMTA3OSw3IEBAIHN0YXRpYyB2b2lkIGRmc21fY3BnX2NvbmZjaGdf Y2FsbGJhY2soCiAgICAgZGZzbV90ICpkZnNtID0gTlVMTDsKICAgICByZXN1bHQgPSBjcGdfY29u dGV4dF9nZXQoaGFuZGxlLCAoZ3BvaW50ZXIgKikmZGZzbSk7CiAgICAgaWYgKHJlc3VsdCAhPSBD U19PSyB8fCAhZGZzbSB8fCBkZnNtLT5jcGdfY2FsbGJhY2tzICE9ICZjcGdfY2FsbGJhY2tzKSB7 Ci0gICAgICAgIGNmc19jcml0aWNhbCgiY3BnX2NvbnRleHRfZ2V0IGVycm9yOiAlZCAoJXApIiwg cmVzdWx0LCAodm9pZCAqKWRmc20pOworICAgICAgICBjZnNfY3JpdGljYWwoImNwZ19jb250ZXh0 X2dldCBlcnJvcjogJXMgKCVwKSIsIGNzX3N0cmVycm9yKHJlc3VsdCksICh2b2lkICopZGZzbSk7 CiAgICAgICAgIHJldHVybjsgLyogd2UgaGF2ZSBubyB2YWxpZCBkZnNtIHBvaW50ZXIsIHNvIHdl IGNhbiBqdXN0IGlnbm9yZSB0aGlzICovCiAgICAgfQogCkBAIC0xMzI4LDcgKzEzMjgsNyBAQCBs b29wOgogICAgIH0KIAogICAgIGlmICghKHJlc3VsdCA9PSBDU19PSyB8fCByZXN1bHQgPT0gQ1Nf RVJSX1RSWV9BR0FJTikpIHsKLSAgICAgICAgY2ZzX2RvbV9jcml0aWNhbChkZnNtLT5sb2dfZG9t YWluLCAiY3BnX2Rpc3BhdGNoIGZhaWxlZDogJWQiLCByZXN1bHQpOworICAgICAgICBjZnNfZG9t X2NyaXRpY2FsKGRmc20tPmxvZ19kb21haW4sICJjcGdfZGlzcGF0Y2ggZmFpbGVkOiAlcyIsIGNz X3N0cmVycm9yKHJlc3VsdCkpOwogICAgIH0KIAogICAgIHJldHVybiByZXN1bHQ7CkBAIC0xMzUx LDEyICsxMzUxLDEyIEBAIGNzX2Vycm9yX3QgZGZzbV9pbml0aWFsaXplKGRmc21fdCAqZGZzbSwg aW50ICpmZCkgewogCiAgICAgaWYgKGRmc20tPmNwZ19oYW5kbGUgPT0gMCkgewogICAgICAgICBp ZiAoKHJlc3VsdCA9IGNwZ19pbml0aWFsaXplKCZkZnNtLT5jcGdfaGFuZGxlLCBkZnNtLT5jcGdf Y2FsbGJhY2tzKSkgIT0gQ1NfT0spIHsKLSAgICAgICAgICAgIGNmc19kb21fY3JpdGljYWwoZGZz bS0+bG9nX2RvbWFpbiwgImNwZ19pbml0aWFsaXplIGZhaWxlZDogJWQiLCByZXN1bHQpOworICAg ICAgICAgICAgY2ZzX2RvbV9jcml0aWNhbChkZnNtLT5sb2dfZG9tYWluLCAiY3BnX2luaXRpYWxp emUgZmFpbGVkOiAlcyIsIGNzX3N0cmVycm9yKHJlc3VsdCkpOwogICAgICAgICAgICAgZ290byBl cnJfbm9fZmluYWxpemU7CiAgICAgICAgIH0KIAogICAgICAgICBpZiAoKHJlc3VsdCA9IGNwZ19s b2NhbF9nZXQoZGZzbS0+Y3BnX2hhbmRsZSwgJmRmc20tPm5vZGVpZCkpICE9IENTX09LKSB7Ci0g ICAgICAgICAgICBjZnNfZG9tX2NyaXRpY2FsKGRmc20tPmxvZ19kb21haW4sICJjcGdfbG9jYWxf Z2V0IGZhaWxlZDogJWQiLCByZXN1bHQpOworICAgICAgICAgICAgY2ZzX2RvbV9jcml0aWNhbChk ZnNtLT5sb2dfZG9tYWluLCAiY3BnX2xvY2FsX2dldCBmYWlsZWQ6ICVzIiwgY3Nfc3RyZXJyb3Io cmVzdWx0KSk7CiAgICAgICAgICAgICBnb3RvIGVycl9maW5hbGl6ZTsKICAgICAgICAgfQogCkBA IC0xMzY0LDE0ICsxMzY0LDE0IEBAIGNzX2Vycm9yX3QgZGZzbV9pbml0aWFsaXplKGRmc21fdCAq ZGZzbSwgaW50ICpmZCkgewogCiAgICAgICAgIHJlc3VsdCA9IGNwZ19jb250ZXh0X3NldChkZnNt LT5jcGdfaGFuZGxlLCBkZnNtKTsKICAgICAgICAgaWYgKHJlc3VsdCAhPSBDU19PSykgewotICAg ICAgICAgICAgY2ZzX2RvbV9jcml0aWNhbChkZnNtLT5sb2dfZG9tYWluLCAiY3BnX2NvbnRleHRf c2V0IGZhaWxlZDogJWQiLCByZXN1bHQpOworICAgICAgICAgICAgY2ZzX2RvbV9jcml0aWNhbChk ZnNtLT5sb2dfZG9tYWluLCAiY3BnX2NvbnRleHRfc2V0IGZhaWxlZDogJXMiLCBjc19zdHJlcnJv cihyZXN1bHQpKTsKICAgICAgICAgICAgIGdvdG8gZXJyX2ZpbmFsaXplOwogICAgICAgICB9CiAg ICAgfQogCiAgICAgcmVzdWx0ID0gY3BnX2ZkX2dldChkZnNtLT5jcGdfaGFuZGxlLCBmZCk7CiAg ICAgaWYgKHJlc3VsdCAhPSBDU19PSykgewotICAgICAgICBjZnNfZG9tX2NyaXRpY2FsKGRmc20t PmxvZ19kb21haW4sICJjcGdfZmRfZ2V0IGZhaWxlZDogJWQiLCByZXN1bHQpOworICAgICAgICBj ZnNfZG9tX2NyaXRpY2FsKGRmc20tPmxvZ19kb21haW4sICJjcGdfZmRfZ2V0IGZhaWxlZDogJXMi LCBjc19zdHJlcnJvcihyZXN1bHQpKTsKICAgICAgICAgZ290byBlcnJfZmluYWxpemU7CiAgICAg fQogCkBAIC0xNDA3LDcgKzE0MDcsNyBAQCBsb29wOgogICAgIH0KIAogICAgIGlmIChyZXN1bHQg IT0gQ1NfT0spIHsKLSAgICAgICAgY2ZzX2RvbV9jcml0aWNhbChkZnNtLT5sb2dfZG9tYWluLCAi Y3BnX2pvaW4gZmFpbGVkOiAlZCIsIHJlc3VsdCk7CisgICAgICAgIGNmc19kb21fY3JpdGljYWwo ZGZzbS0+bG9nX2RvbWFpbiwgImNwZ19qb2luIGZhaWxlZDogJXMiLCBjc19zdHJlcnJvcihyZXN1 bHQpKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9CiAKQEAgLTE0MzcsNyArMTQzNyw3 IEBAIGxvb3A6CiAgICAgfQogCiAgICAgaWYgKHJlc3VsdCAhPSBDU19PSykgewotICAgICAgICBj ZnNfZG9tX2NyaXRpY2FsKGRmc20tPmxvZ19kb21haW4sICJjcGdfbGVhdmUgZmFpbGVkOiAlZCIs IHJlc3VsdCk7CisgICAgICAgIGNmc19kb21fY3JpdGljYWwoZGZzbS0+bG9nX2RvbWFpbiwgImNw Z19sZWF2ZSBmYWlsZWQ6ICVzIiwgY3Nfc3RyZXJyb3IocmVzdWx0KSk7CiAgICAgICAgIHJldHVy biByZXN1bHQ7CiAgICAgfQogCmRpZmYgLS1naXQgYS9zcmMvcG14Y2ZzL3F1b3J1bS5jIGIvc3Jj L3BteGNmcy9xdW9ydW0uYwppbmRleCBjZmY1ZTA2Li4wN2IyYTM5IDEwMDY0NAotLS0gYS9zcmMv cG14Y2ZzL3F1b3J1bS5jCisrKyBiL3NyYy9wbXhjZnMvcXVvcnVtLmMKQEAgLTMwLDYgKzMwLDcg QEAKICNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4KIAorI2luY2x1ZGUg PGNvcm9zeW5jL2Nvcm90eXBlcy5oPgogI2luY2x1ZGUgPGNvcm9zeW5jL3F1b3J1bS5oPgogCiAj aW5jbHVkZSAiY2ZzLXV0aWxzLmgiCkBAIC01OSw3ICs2MCw3IEBAIHN0YXRpYyB2b2lkIHF1b3J1 bV9ub3RpZmljYXRpb25fZm4oCiAKICAgICByZXN1bHQgPSBxdW9ydW1fY29udGV4dF9nZXQoaGFu ZGxlLCAoZ2NvbnN0cG9pbnRlciAqKSZwcml2YXRlKTsKICAgICBpZiAocmVzdWx0ICE9IENTX09L IHx8ICFwcml2YXRlKSB7Ci0gICAgICAgIGNmc19jcml0aWNhbCgicXVvcnVtX2NvbnRleHRfZ2V0 IGVycm9yOiAlZCAoJXApIiwgcmVzdWx0LCAodm9pZCAqKXByaXZhdGUpOworICAgICAgICBjZnNf Y3JpdGljYWwoInF1b3J1bV9jb250ZXh0X2dldCBlcnJvcjogJXMgKCVwKSIsIGNzX3N0cmVycm9y KHJlc3VsdCksICh2b2lkICopcHJpdmF0ZSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKQEAg LTg0LDcgKzg1LDcgQEAgc3RhdGljIGdib29sZWFuIHNlcnZpY2VfcXVvcnVtX2ZpbmFsaXplKGNm c19zZXJ2aWNlX3QgKnNlcnZpY2UsIGdwb2ludGVyIGNvbnRleHQKICAgICByZXN1bHQgPSBxdW9y dW1fZmluYWxpemUoaGFuZGxlKTsKICAgICBwcml2YXRlLT5oYW5kbGUgPSAwOwogICAgIGlmIChy ZXN1bHQgIT0gQ1NfT0spIHsKLSAgICAgICAgY2ZzX2NyaXRpY2FsKCJxdW9ydW1fZmluYWxpemUg ZmFpbGVkOiAlZCIsIHJlc3VsdCk7CisgICAgICAgIGNmc19jcml0aWNhbCgicXVvcnVtX2ZpbmFs aXplIGZhaWxlZDogJXMiLCBjc19zdHJlcnJvcihyZXN1bHQpKTsKICAgICAgICAgcmV0dXJuIEZB TFNFOwogICAgIH0KIApAQCAtMTA2LDcgKzEwNyw3IEBAIHN0YXRpYyBpbnQgc2VydmljZV9xdW9y dW1faW5pdGlhbGl6ZShjZnNfc2VydmljZV90ICpzZXJ2aWNlLCBncG9pbnRlciBjb250ZXh0KSB7 CiAKICAgICAgICAgcmVzdWx0ID0gcXVvcnVtX2luaXRpYWxpemUoJmhhbmRsZSwgJnF1b3J1bV9j YWxsYmFja3MsICZxdW9ydW1fdHlwZSk7CiAgICAgICAgIGlmIChyZXN1bHQgIT0gQ1NfT0spIHsK LSAgICAgICAgICAgIGNmc19jcml0aWNhbCgicXVvcnVtX2luaXRpYWxpemUgZmFpbGVkOiAlZCIs IHJlc3VsdCk7CisgICAgICAgICAgICBjZnNfY3JpdGljYWwoInF1b3J1bV9pbml0aWFsaXplIGZh aWxlZDogJXMiLCBjc19zdHJlcnJvcihyZXN1bHQpKTsKICAgICAgICAgICAgIGdvdG8gZXJyX3Jl c2V0X2hhbmRsZTsKICAgICAgICAgfQogCkBAIC0xMTcsNyArMTE4LDcgQEAgc3RhdGljIGludCBz ZXJ2aWNlX3F1b3J1bV9pbml0aWFsaXplKGNmc19zZXJ2aWNlX3QgKnNlcnZpY2UsIGdwb2ludGVy IGNvbnRleHQpIHsKIAogICAgICAgICByZXN1bHQgPSBxdW9ydW1fY29udGV4dF9zZXQoaGFuZGxl LCBwcml2YXRlKTsKICAgICAgICAgaWYgKHJlc3VsdCAhPSBDU19PSykgewotICAgICAgICAgICAg Y2ZzX2NyaXRpY2FsKCJxdW9ydW1fY29udGV4dF9zZXQgZmFpbGVkOiAlZCIsIHJlc3VsdCk7Cisg ICAgICAgICAgICBjZnNfY3JpdGljYWwoInF1b3J1bV9jb250ZXh0X3NldCBmYWlsZWQ6ICVzIiwg Y3Nfc3RyZXJyb3IocmVzdWx0KSk7CiAgICAgICAgICAgICBnb3RvIGVycl9maW5hbGl6ZTsKICAg ICAgICAgfQogCkBAIC0xMjYsMTYgKzEyNywxNiBAQCBzdGF0aWMgaW50IHNlcnZpY2VfcXVvcnVt X2luaXRpYWxpemUoY2ZzX3NlcnZpY2VfdCAqc2VydmljZSwgZ3BvaW50ZXIgY29udGV4dCkgewog CiAgICAgcmVzdWx0ID0gcXVvcnVtX3RyYWNrc3RhcnQoaGFuZGxlLCBDU19UUkFDS19DSEFOR0VT KTsKICAgICBpZiAocmVzdWx0ID09IENTX0VSUl9MSUJSQVJZIHx8IHJlc3VsdCA9PSBDU19FUlJf QkFEX0hBTkRMRSkgewotICAgICAgICBjZnNfY3JpdGljYWwoInF1b3J1bV90cmFja3N0YXJ0IGZh aWxlZDogJWQgLSBjbG9zaW5nIGhhbmRsZSIsIHJlc3VsdCk7CisgICAgICAgIGNmc19jcml0aWNh bCgicXVvcnVtX3RyYWNrc3RhcnQgZmFpbGVkOiAlcyAtIGNsb3NpbmcgaGFuZGxlIiwgY3Nfc3Ry ZXJyb3IocmVzdWx0KSk7CiAgICAgICAgIGdvdG8gZXJyX2ZpbmFsaXplOwogICAgIH0gZWxzZSBp ZiAocmVzdWx0ICE9IENTX09LKSB7Ci0gICAgICAgIGNmc19jcml0aWNhbCgicXVvcnVtX3RyYWNr c3RhcnQgZmFpbGVkOiAlZCAtIHRyeWluZyBhZ2FpbiIsIHJlc3VsdCk7CisgICAgICAgIGNmc19j cml0aWNhbCgicXVvcnVtX3RyYWNrc3RhcnQgZmFpbGVkOiAlcyAtIHRyeWluZyBhZ2FpbiIsIGNz X3N0cmVycm9yKHJlc3VsdCkpOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogCiAgICAgaW50 IHF1b3J1bV9mZCA9IC0xOwogICAgIGlmICgocmVzdWx0ID0gcXVvcnVtX2ZkX2dldChoYW5kbGUs ICZxdW9ydW1fZmQpKSAhPSBDU19PSykgewotICAgICAgICBjZnNfY3JpdGljYWwoInF1b3J1bV9m ZF9nZXQgZmFpbGVkICVkIC0gdHJ5aW5nIGFnYWluIiwgcmVzdWx0KTsKKyAgICAgICAgY2ZzX2Ny aXRpY2FsKCJxdW9ydW1fZmRfZ2V0IGZhaWxlZCAlcyAtIHRyeWluZyBhZ2FpbiIsIGNzX3N0cmVy cm9yKHJlc3VsdCkpOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogCkBAIC0xNzUsNyArMTc2 LDcgQEAgbG9vcDoKICAgICAgICAgcmV0dXJuIFRSVUU7CiAgICAgfQogCi0gICAgY2ZzX2NyaXRp Y2FsKCJxdW9ydW1fZGlzcGF0Y2ggZmFpbGVkOiAlZCIsIHJlc3VsdCk7CisgICAgY2ZzX2NyaXRp Y2FsKCJxdW9ydW1fZGlzcGF0Y2ggZmFpbGVkOiAlcyIsIGNzX3N0cmVycm9yKHJlc3VsdCkpOwog CiAgICAgY2ZzX3NldF9xdW9yYXRlKDAsIEZBTFNFKTsKICAgICBxdW9ydW1fZmluYWxpemUoaGFu ZGxlKTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L2NwZ3Rlc3QuYyBiL3NyYy90ZXN0L2NwZ3Rlc3Qu YwppbmRleCAxMGU0MmE5Li44MmY1NzdlIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9jcGd0ZXN0LmMK KysrIGIvc3JjL3Rlc3QvY3BndGVzdC5jCkBAIC04Miw4ICs4Miw5IEBAIGxvb3A6CiAgICAgICAg IGdvdG8gbG9vcDsKICAgICB9CiAKLSAgICBpZiAocmVzdWx0ICE9IENTX09LKQotICAgICAgICBw cmludGYoImNwZ19zZW5kX21lc3NhZ2UgZmFpbGVkOiAlZFxuIiwgcmVzdWx0KTsKKyAgICBpZiAo cmVzdWx0ICE9IENTX09LKSB7CisgICAgICAgIHByaW50ZigiY3BnX3NlbmRfbWVzc2FnZSBmYWls ZWQ6ICVzXG4iLCBjc19zdHJlcnJvcihyZXN1bHQpKTsKKyAgICB9CiB9CiAKIHN0YXRpYyBjcGdf Y2FsbGJhY2tzX3QgY2FsbGJhY2tzID0gewpAQCAtMTEwLDE4ICsxMTEsMTggQEAgc3RhcnQ6CiAg ICAgcHJpbnRmKCJjYWxsaW5nIGNwZ19pbml0aWFsaXplXG4iKTsKICAgICByZXN1bHQgPSBjcGdf aW5pdGlhbGl6ZSgmaGFuZGxlLCAmY2FsbGJhY2tzKTsKICAgICBpZiAocmVzdWx0ICE9IENTX09L KSB7Ci0gICAgICAgIHByaW50ZigiY3BnX2luaXRpYWxpemUgZmFpbGVkOiAlZFxuIiwgcmVzdWx0 KTsKKyAgICAgICAgcHJpbnRmKCJjcGdfaW5pdGlhbGl6ZSBmYWlsZWQ6ICVzXG4iLCBjc19zdHJl cnJvcihyZXN1bHQpKTsKICAgICAgICAgZ290byByZXRyeTsKICAgICB9CiAKICAgICBwcmludGYo ImNhbGxpbmcgY3BnX2pvaW5cbiIpOwogICAgIHdoaWxlICgocmVzdWx0ID0gY3BnX2pvaW4oaGFu ZGxlLCAmZ3JvdXBfbmFtZSkpID09IENTX0VSUl9UUllfQUdBSU4pIHsKLSAgICAgICAgcHJpbnRm KCJjcGdfam9pbiByZXR1cm5lZCAlZFxuIiwgcmVzdWx0KTsKKyAgICAgICAgcHJpbnRmKCJjcGdf am9pbiByZXR1cm5lZCAlc1xuIiwgY3Nfc3RyZXJyb3IocmVzdWx0KSk7CiAgICAgICAgIHNsZWVw KDEpOwogICAgIH0KIAogICAgIGlmIChyZXN1bHQgIT0gQ1NfT0spIHsKLSAgICAgICAgcHJpbnRm KCJjcGdfam9pbiBmYWlsZWQ6ICVkXG4iLCByZXN1bHQpOworICAgICAgICBwcmludGYoImNwZ19q b2luIGZhaWxlZDogJXNcbiIsIGNzX3N0cmVycm9yKHJlc3VsdCkpOwogICAgICAgICBleGl0KC0x KTsKICAgICB9CiAKQEAgLTE0Nyw3ICsxNDgsNyBAQCBzdGFydDoKICAgICAgICAgICAgIGlmIChG RF9JU1NFVChjcGdfZmQsICZyZWFkX2ZkcykpIHsKICAgICAgICAgICAgICAgICBjc19lcnJvcl90 IHJlcyA9IGNwZ19kaXNwYXRjaChoYW5kbGUsIENTX0RJU1BBVENIX0FMTCk7CiAgICAgICAgICAg ICAgICAgaWYgKHJlcyAhPSBDU19PSykgewotICAgICAgICAgICAgICAgICAgICBwcmludGYoImNw Z19kaXNwYXRjaCBmYWlsZWQ6ICVkXG4iLCByZXMpOworICAgICAgICAgICAgICAgICAgICBwcmlu dGYoImNwZ19kaXNwYXRjaCBmYWlsZWQ6ICVzXG4iLCBjc19zdHJlcnJvcihyZXMpKTsKICAgICAg ICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQpA QCAtMTY4LDcgKzE2OSw3IEBAIHJldHJ5OgogCiAgICAgICAgIHJlc3VsdCA9IGNwZ19maW5hbGl6 ZShoYW5kbGUpOwogICAgICAgICBpZiAocmVzdWx0ICE9IENTX09LKSB7Ci0gICAgICAgICAgICBw cmludGYoImNwZ19maW5hbGl6ZSBmYWlsZWQ6ICVkXG4iLCByZXN1bHQpOworICAgICAgICAgICAg cHJpbnRmKCJjcGdfZmluYWxpemUgZmFpbGVkOiAlc1xuIiwgY3Nfc3RyZXJyb3IocmVzdWx0KSk7 CiAgICAgICAgICAgICBleGl0KC0xKTsKICAgICAgICAgfQogICAgIH0KLS0gCjIuMzkuNQoKCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpwdmUtZGV2ZWwg bWFpbGluZyBsaXN0CnB2ZS1kZXZlbEBsaXN0cy5wcm94bW94LmNvbQpodHRwczovL2xpc3RzLnBy b3htb3guY29tL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9wdmUtZGV2ZWwK