From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id CE15CC3064D for ; Sun, 30 Jun 2024 16:26:53 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sNxN6-0006K3-KB; Sun, 30 Jun 2024 12:25:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sNxN5-0006JH-P1 for grub-devel@gnu.org; Sun, 30 Jun 2024 12:25:47 -0400 Received: from cyberdimension.org ([79.143.250.36] helo=rockpro64.cyberdimension.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_CHACHA20_POLY1305:256) (Exim 4.90_1) (envelope-from ) id 1sNxN3-0008I5-Q2; Sun, 30 Jun 2024 12:25:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=dkim; bh=Z+0GNZkn4o3KBvY BPVmXS8Y9oZ1dm4TLKRm32GdRJBM=; h=references:in-reply-to:date:subject: cc:to:from; d=cyberdimension.org; b=K9NnNSmopwE4LeMVdrpHHjpJe5MH3B2dWc dJYPuvMky2i9GcIzyQ3aJOe837kvPokNpoM7AFlMSHybE932h5oBWNmLB5Eu0OJyTihyIO 007rmaMNlgtYT1LawyUWdzErkvzck/zB6rd23NVvD3iZYJzysFgDXI5w6Hu4ckBL7i8HAH LUPsz3n0STe0d+tLZGeLL+zzz1sGQP6Ir9aSw1a6kKTIBWEZChH1/jsZBBRRUMWWVdnVxN tzfvjNUpTvnSzgRKHB0m/e3hOMf6RREhimZowymus/krbnN1nRfBiP7Qi5VXOSK4TJBLhn LD9KxakAuzsEo+mjDupnxCSx3SDw== Received: from localhost.localdomain (localhost [127.0.0.1]) by rockpro64.cyberdimension.org (OpenSMTPD) with ESMTP id e813371f; Sun, 30 Jun 2024 16:25:35 +0000 (UTC) From: Denis 'GNUtoo' Carikli To: grub-devel@gnu.org Cc: Adrien 'neox' Bourmault , Denis 'GNUtoo' Carikli Subject: [RFC][PATCH v1 4/4] commands/ls: support --set for files/directories. Date: Sun, 30 Jun 2024 18:25:19 +0200 Message-ID: <20240630162519.25173-5-GNUtoo@cyberdimension.org> X-Mailer: git-send-email 2.45.1 In-Reply-To: <20240630162519.25173-1-GNUtoo@cyberdimension.org> References: <20240630162519.25173-1-GNUtoo@cyberdimension.org> MIME-Version: 1.0 Received-SPF: pass client-ip=79.143.250.36; envelope-from=GNUtoo@cyberdimension.org; helo=rockpro64.cyberdimension.org X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: The development of GNU GRUB Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: grub-devel-bounces+grub-devel=archiver.kernel.org@gnu.org Sender: grub-devel-bounces+grub-devel=archiver.kernel.org@gnu.org VGhlIGxzIGNvbW1hbmQgaGFzIG5vIHdheSB0byBnZXQgdGhlIG5hbWUgb2YgdGhlIGZpbGVzIG9y IGRpcmVjdG9yaWVzCmJlaW5nIGxpc3RlZCBpbnNpZGUgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUu CgpUaGlzIGVuYWJsZXMgdG8gcHJvZ3JhbW1hdGljYWxseSwgaW5zaWRlIHRoZSBncnViLmNmZyBi ZSBhYmxlIHRvIGxvb2sKZm9yIGZpbGVzIGFuZCByZWFjdCBpZiB0aGV5IGFyZSBmb3VuZCBvciBu b3QgZm91bmQuCgpTaWduZWQtb2ZmLWJ5OiBEZW5pcyAnR05VdG9vJyBDYXJpa2xpIDxHTlV0b29A Y3liZXJkaW1lbnNpb24ub3JnPgotLS0KIGdydWItY29yZS9jb21tYW5kcy9scy5jIHwgMTkyICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAx NjYgaW5zZXJ0aW9ucygrKSwgMjYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZ3J1Yi1jb3Jl L2NvbW1hbmRzL2xzLmMgYi9ncnViLWNvcmUvY29tbWFuZHMvbHMuYwppbmRleCAxMTMyMzU3ODEu LjhhNjUyOGNhYSAxMDA2NDQKLS0tIGEvZ3J1Yi1jb3JlL2NvbW1hbmRzL2xzLmMKKysrIGIvZ3J1 Yi1jb3JlL2NvbW1hbmRzL2xzLmMKQEAgLTEyNyw2ICsxMjcsNyBAQCBzdHJ1Y3QgZ3J1Yl9sc19s aXN0X2ZpbGVzX2N0eAogICBjaGFyICpkaXJuYW1lOwogICBpbnQgYWxsOwogICBpbnQgaHVtYW47 CisgIGNoYXIgKnZhcm5hbWU7CiB9OwogCiAvKiBIZWxwZXIgZm9yIGdydWJfbHNfbGlzdF9maWxl cy4gICovCkBAIC0xMzcsNyArMTM4LDE3IEBAIHByaW50X2ZpbGVzIChjb25zdCBjaGFyICpmaWxl bmFtZSwgY29uc3Qgc3RydWN0IGdydWJfZGlyaG9va19pbmZvICppbmZvLAogICBzdHJ1Y3QgZ3J1 Yl9sc19saXN0X2ZpbGVzX2N0eCAqY3R4ID0gZGF0YTsKIAogICBpZiAoY3R4LT5hbGwgfHwgZmls ZW5hbWVbMF0gIT0gJy4nKQotICAgIGdydWJfcHJpbnRmICgiJXMlcyAiLCBmaWxlbmFtZSwgaW5m by0+ZGlyID8gIi8iIDogIiIpOworICB7CisgICAgaWYgKGN0eC0+dmFybmFtZSkKKyAgICAgIHsK KwlncnViX2Vudl9hcHBlbmQgKGN0eC0+dmFybmFtZSwgZmlsZW5hbWUpOworCWdydWJfZW52X2Fw cGVuZCAoY3R4LT52YXJuYW1lLCBpbmZvLT5kaXIgPyAiLyIgOiAiIik7CisgICAgICB9CisgICAg ZWxzZQorICAgICAgeworCWdydWJfcHJpbnRmICgiJXMlcyAiLCBmaWxlbmFtZSwgaW5mby0+ZGly ID8gIi8iIDogIiIpOworICAgICAgfQorICB9CiAKICAgcmV0dXJuIDA7CiB9CkBAIC0xNTgsOSAr MTY5LDI2IEBAIHByaW50X2ZpbGVzX2xvbmcgKGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBjb25zdCBz dHJ1Y3QgZ3J1Yl9kaXJob29rX2luZm8gKmluZm8sCiAgICAgICBjaGFyICpwYXRobmFtZTsKIAog ICAgICAgaWYgKGN0eC0+ZGlybmFtZVtncnViX3N0cmxlbiAoY3R4LT5kaXJuYW1lKSAtIDFdID09 ICcvJykKLQlwYXRobmFtZSA9IGdydWJfeGFzcHJpbnRmICgiJXMlcyIsIGN0eC0+ZGlybmFtZSwg ZmlsZW5hbWUpOworCWlmIChjdHgtPnZhcm5hbWUpCisJICB7CisJICAgIGdydWJfZW52X2FwcGVu ZCAoY3R4LT52YXJuYW1lLCBjdHgtPmRpcm5hbWUpOworCSAgICBncnViX2Vudl9hcHBlbmQgKGN0 eC0+dmFybmFtZSwgZmlsZW5hbWUpOworCSAgfQorCWVsc2UKKwkgIHsKKwkgICAgcGF0aG5hbWUg PSBncnViX3hhc3ByaW50ZiAoIiVzJXMiLCBjdHgtPmRpcm5hbWUsIGZpbGVuYW1lKTsKKwkgIH0K ICAgICAgIGVsc2UKLQlwYXRobmFtZSA9IGdydWJfeGFzcHJpbnRmICgiJXMvJXMiLCBjdHgtPmRp cm5hbWUsIGZpbGVuYW1lKTsKKwlpZiAoY3R4LT52YXJuYW1lKQorCSAgeworCSAgICBncnViX2Vu dl9hcHBlbmQgKGN0eC0+dmFybmFtZSwgY3R4LT5kaXJuYW1lKTsKKwkgICAgZ3J1Yl9lbnZfYXBw ZW5kIChjdHgtPnZhcm5hbWUsICIvIik7CisJICAgIGdydWJfZW52X2FwcGVuZCAoY3R4LT52YXJu YW1lLCBmaWxlbmFtZSk7CisJICB9CisJZWxzZQorCSAgeworCSAgICBwYXRobmFtZSA9IGdydWJf eGFzcHJpbnRmICgiJXMvJXMiLCBjdHgtPmRpcm5hbWUsIGZpbGVuYW1lKTsKKwkgIH0KIAogICAg ICAgaWYgKCFwYXRobmFtZSkKIAlyZXR1cm4gMTsKQEAgLTE3MiwzOCArMjAwLDE0NCBAQCBwcmlu dF9maWxlc19sb25nIChjb25zdCBjaGFyICpmaWxlbmFtZSwgY29uc3Qgc3RydWN0IGdydWJfZGly aG9va19pbmZvICppbmZvLAogICAgICAgaWYgKGZpbGUpCiAJewogCSAgaWYgKCEgY3R4LT5odW1h bikKLQkgICAgZ3J1Yl9wcmludGYgKCIlLTEybGx1IiwgKHVuc2lnbmVkIGxvbmcgbG9uZykgZmls ZS0+c2l6ZSk7CisJICAgIGlmIChjdHgtPnZhcm5hbWUpCisJICAgICAgeworCQljaGFyICpzdHIg PSBncnViX3hhc3ByaW50ZigiJS0xMmxsdSIsCisJCQkJCSAgICh1bnNpZ25lZCBsb25nIGxvbmcp IGZpbGUtPnNpemUpOworCQlpZiAoc3RyKQorCQkgIHsKKwkJICAgIGdydWJfZW52X2FwcGVuZCAo Y3R4LT52YXJuYW1lLCBzdHIpOworCQkgICAgZ3J1Yl9mcmVlIChzdHIpOworCQkgIH0KKwkJZWxz ZQorCQkgIHsKKwkJICAgIGdydWJfZXJyb3IgKEdSVUJfRVJSX09VVF9PRl9NRU1PUlksCisJCQkJ InByaW50X2ZpbGVzX2xvbmcgOmdydWJfeGFzcHJpbnRmIGZhaWxlZC4iKTsKKwkJICAgIHJldHVy biAwOworCQkgIH0KKwkgICAgICB9CisJICAgIGVsc2UKKwkgICAgICB7CisJCWdydWJfcHJpbnRm ICgiJS0xMmxsdSIsICh1bnNpZ25lZCBsb25nIGxvbmcpIGZpbGUtPnNpemUpOworCSAgICAgIH0K IAkgIGVsc2UKLQkgICAgZ3J1Yl9wcmludGYgKCIlLTEycyIsIGdydWJfZ2V0X2h1bWFuX3NpemUg KGZpbGUtPnNpemUsCi0JCQkJCQkgICBHUlVCX0hVTUFOX1NJWkVfU0hPUlQpKTsKKwkgICAgaWYg KGN0eC0+dmFybmFtZSkKKwkgICAgICB7CisJCWNoYXIgKnN0ciA9IGdydWJfeGFzcHJpbnRmKCIl LTEycyIsCisJCQkJCSAgIGdydWJfZ2V0X2h1bWFuX3NpemUgKGZpbGUtPnNpemUsCisJCQkJCQkJ CUdSVUJfSFVNQU5fU0laRV9TSE9SVCkpOworCQlpZiAoc3RyKQorCQkgIHsKKwkJICAgIGdydWJf ZW52X2FwcGVuZCAoY3R4LT52YXJuYW1lLCBzdHIpOworCQkgICAgZ3J1Yl9mcmVlIChzdHIpOwor CQkgIH0KKwkJZWxzZQorCQkgIHsKKwkJICAgIGdydWJfZXJyb3IgKEdSVUJfRVJSX09VVF9PRl9N RU1PUlksCisJCQkJInByaW50X2ZpbGVzX2xvbmc6IGdydWJfeGFzcHJpbnRmIGZhaWxlZC4iKTsK KwkJICAgIHJldHVybiAwOworCQkgIH0KKwkgICAgICB9CisJICAgIGVsc2UKKwkgICAgICB7CisJ CWdydWJfcHJpbnRmICgiJS0xMnMiLCBncnViX2dldF9odW1hbl9zaXplIChmaWxlLT5zaXplLAor CQkJCQkJCSAgIEdSVUJfSFVNQU5fU0laRV9TSE9SVCkpOworCSAgICAgIH0KIAkgIGdydWJfZmls ZV9jbG9zZSAoZmlsZSk7CiAJfQogICAgICAgZWxzZQotCWdydWJfeHB1dHMgKCI/Pz8/Pz8/Pz8/ Pz8iKTsKKwlpZiAoY3R4LT52YXJuYW1lKQorCSAgZ3J1Yl9lbnZfYXBwZW5kIChjdHgtPnZhcm5h bWUsICI/Pz8/Pz8/Pz8/Pz8iKTsKKwllbHNlCisJICBncnViX3hwdXRzICgiPz8/Pz8/Pz8/Pz8/ Iik7CiAKICAgICAgIGdydWJfZnJlZSAocGF0aG5hbWUpOwogICAgICAgZ3J1Yl9lcnJubyA9IEdS VUJfRVJSX05PTkU7CiAgICAgfQogICBlbHNlCi0gICAgZ3J1Yl9wcmludGYgKCIlLTEycyIsIF8o IkRJUiIpKTsKKyAgICBpZiAoY3R4LT52YXJuYW1lKQorICAgICAgeworCWNoYXIgKnN0ciA9IGdy dWJfeGFzcHJpbnRmKCIlLTEycyIsIF8oIkRJUiIpKTsKKwlpZiAoc3RyKQorCSAgeworCSAgICBn cnViX2Vudl9hcHBlbmQgKGN0eC0+dmFybmFtZSwgc3RyKTsKKwkgICAgZ3J1Yl9mcmVlIChzdHIp OworCSAgfQorCWVsc2UKKwkgIHsKKwkgICAgZ3J1Yl9lcnJvciAoR1JVQl9FUlJfT1VUX09GX01F TU9SWSwKKwkJCSJwcmludF9maWxlc19sb25nOiBncnViX3hhc3ByaW50ZiBmYWlsZWQuIik7CisJ ICAgIHJldHVybiAwOworCSAgfQorICAgICAgfQorICAgIGVsc2UKKyAgICAgIHsKKwlncnViX3By aW50ZiAoIiUtMTJzIiwgXygiRElSIikpOworICAgICAgfQogCiAgIGlmIChpbmZvLT5tdGltZXNl dCkKICAgICB7CiAgICAgICBzdHJ1Y3QgZ3J1Yl9kYXRldGltZSBkYXRldGltZTsKICAgICAgIGdy dWJfdW5peHRpbWUyZGF0ZXRpbWUgKGluZm8tPm10aW1lLCAmZGF0ZXRpbWUpOwogICAgICAgaWYg KGN0eC0+aHVtYW4pCi0JZ3J1Yl9wcmludGYgKCIgJWQtJTAyZC0lMDJkICUwMmQ6JTAyZDolMDJk ICUtMTFzICIsCi0JCSAgICAgZGF0ZXRpbWUueWVhciwgZGF0ZXRpbWUubW9udGgsIGRhdGV0aW1l LmRheSwKLQkJICAgICBkYXRldGltZS5ob3VyLCBkYXRldGltZS5taW51dGUsCi0JCSAgICAgZGF0 ZXRpbWUuc2Vjb25kLAotCQkgICAgIGdydWJfZ2V0X3dlZWtkYXlfbmFtZSAoJmRhdGV0aW1lKSk7 CisJaWYgKGN0eC0+dmFybmFtZSkgeworCSAgY2hhciAqc3RyID0gZ3J1Yl94YXNwcmludGYoIiAl ZC0lMDJkLSUwMmQgJTAyZDolMDJkOiUwMmQgJS0xMXMgIiwKKwkJCQkgICAgIGRhdGV0aW1lLnll YXIsIGRhdGV0aW1lLm1vbnRoLAorCQkJCSAgICAgZGF0ZXRpbWUuZGF5LAorCQkJCSAgICAgZGF0 ZXRpbWUuaG91ciwgZGF0ZXRpbWUubWludXRlLAorCQkJCSAgICAgZGF0ZXRpbWUuc2Vjb25kLAor CQkJCSAgICAgZ3J1Yl9nZXRfd2Vla2RheV9uYW1lICgmZGF0ZXRpbWUpKTsKKwkgIGlmIChzdHIp IHsKKwkgICAgZ3J1Yl9lbnZfYXBwZW5kIChjdHgtPnZhcm5hbWUsIHN0cik7CisJICAgIGdydWJf ZnJlZSAoc3RyKTsKKwkgIH0gZWxzZSB7CisJICAgIGdydWJfZXJyb3IgKEdSVUJfRVJSX09VVF9P Rl9NRU1PUlksCisJCQkicHJpbnRfZmlsZXNfbG9uZzogZ3J1Yl94YXNwcmludGYgZmFpbGVkLiIp OworCSAgICByZXR1cm4gMDsKKwkgIH0KKwl9IGVsc2UgeworCSAgZ3J1Yl9wcmludGYgKCIgJWQt JTAyZC0lMDJkICUwMmQ6JTAyZDolMDJkICUtMTFzICIsCisJCSAgICAgICBkYXRldGltZS55ZWFy LCBkYXRldGltZS5tb250aCwgZGF0ZXRpbWUuZGF5LAorCQkgICAgICAgZGF0ZXRpbWUuaG91ciwg ZGF0ZXRpbWUubWludXRlLAorCQkgICAgICAgZGF0ZXRpbWUuc2Vjb25kLAorCQkgICAgICAgZ3J1 Yl9nZXRfd2Vla2RheV9uYW1lICgmZGF0ZXRpbWUpKTsKKwl9CiAgICAgICBlbHNlCi0JZ3J1Yl9w cmludGYgKCIgJTA0ZCUwMmQlMDJkJTAyZCUwMmQlMDJkICIsCi0JCSAgICAgZGF0ZXRpbWUueWVh ciwgZGF0ZXRpbWUubW9udGgsCi0JCSAgICAgZGF0ZXRpbWUuZGF5LCBkYXRldGltZS5ob3VyLAot CQkgICAgIGRhdGV0aW1lLm1pbnV0ZSwgZGF0ZXRpbWUuc2Vjb25kKTsKKwlpZiAoY3R4LT52YXJu YW1lKQorCSAgeworCSAgICBjaGFyICpzdHIgPSBncnViX3hhc3ByaW50ZigiICUwNGQlMDJkJTAy ZCUwMmQlMDJkJTAyZCAiLAorCQkJCSAgICAgICBkYXRldGltZS55ZWFyLCBkYXRldGltZS5tb250 aCwKKwkJCQkgICAgICAgZGF0ZXRpbWUuZGF5LCBkYXRldGltZS5ob3VyLAorCQkJCSAgICAgICBk YXRldGltZS5taW51dGUsIGRhdGV0aW1lLnNlY29uZCk7CisJICAgIGlmIChzdHIpCisJICAgICAg eworCQlncnViX2Vudl9hcHBlbmQgKGN0eC0+dmFybmFtZSwgc3RyKTsKKwkJZ3J1Yl9mcmVlIChz dHIpOworCSAgICAgIH0KKwkgICAgZWxzZQorCSAgICAgIHsKKwkJZ3J1Yl9lcnJvciAoR1JVQl9F UlJfT1VUX09GX01FTU9SWSwKKwkJCSAgICAicHJpbnRfZmlsZXNfbG9uZzogZ3J1Yl94YXNwcmlu dGYgZmFpbGVkLiIpOworCQlyZXR1cm4gMDsKKwkgICAgICB9CisJICB9CisJZWxzZQorCSAgewor CSAgICBncnViX3ByaW50ZiAoIiAlMDRkJTAyZCUwMmQlMDJkJTAyZCUwMmQgIiwKKwkJCSBkYXRl dGltZS55ZWFyLCBkYXRldGltZS5tb250aCwKKwkJCSBkYXRldGltZS5kYXksIGRhdGV0aW1lLmhv dXIsCisJCQkgZGF0ZXRpbWUubWludXRlLCBkYXRldGltZS5zZWNvbmQpOworCSAgfQorICAgIH0K KyAgaWYgKGN0eC0+dmFybmFtZSkKKyAgICB7CisgICAgICBncnViX2Vudl9hcHBlbmQgKGN0eC0+ dmFybmFtZSwgZmlsZW5hbWUpOworICAgICAgZ3J1Yl9lbnZfYXBwZW5kIChjdHgtPnZhcm5hbWUs IGluZm8tPmRpciA/ICIvIiA6ICIiKTsKKyAgICB9CisgIGVsc2UKKyAgICB7CisgICAgICBncnVi X3ByaW50ZiAoIiVzJXNcbiIsIGZpbGVuYW1lLCBpbmZvLT5kaXIgPyAiLyIgOiAiIik7CiAgICAg fQotICBncnViX3ByaW50ZiAoIiVzJXNcbiIsIGZpbGVuYW1lLCBpbmZvLT5kaXIgPyAiLyIgOiAi Iik7CiAKICAgcmV0dXJuIDA7CiB9CkBAIC0yMTcsMTIgKzM1MSw2IEBAIGdydWJfbHNfbGlzdF9m aWxlcyAoY2hhciAqZGlybmFtZSwgaW50IGxvbmdsaXN0LCBpbnQgYWxsLCBpbnQgaHVtYW4sCiAg IGNvbnN0IGNoYXIgKnBhdGg7CiAgIGdydWJfZGV2aWNlX3QgZGV2OwogCi0gIGlmICh2YXJuYW1l KQotICAgIHsKLSAgICAgIGdydWJfZXJyb3IgKEdSVUJfRVJSX05PVF9JTVBMRU1FTlRFRF9ZRVQs ICJzZXQgYW5kIGxpc3QgZmlsZXMiKTsKLSAgICAgIHJldHVybiBHUlVCX0VSUl9OT1RfSU1QTEVN RU5URURfWUVUOwotICAgIH0KLQogICBkZXZpY2VfbmFtZSA9IGdydWJfZmlsZV9nZXRfZGV2aWNl X25hbWUgKGRpcm5hbWUpOwogICBkZXYgPSBncnViX2RldmljZV9vcGVuIChkZXZpY2VfbmFtZSk7 CiAgIGlmICghIGRldikKQEAgLTI0Myw2ICszNzEsMTEgQEAgZ3J1Yl9sc19saXN0X2ZpbGVzIChj aGFyICpkaXJuYW1lLCBpbnQgbG9uZ2xpc3QsIGludCBhbGwsIGludCBodW1hbiwKIAogICBpZiAo ISAqcGF0aCAmJiBkZXZpY2VfbmFtZSkKICAgICB7CisgICAgICBpZiAodmFybmFtZSkgeworCWdy dWJfZXJyb3IgKEdSVUJfRVJSX05PVF9JTVBMRU1FTlRFRF9ZRVQsICJzZXQgYW5kIGRldmljZSBp bmZvcyIpOworICAgICAgICBnb3RvIGZhaWw7CisgICAgICB9CisKICAgICAgIGlmIChncnViX2Vy cm5vID09IEdSVUJfRVJSX1VOS05PV05fRlMpCiAJZ3J1Yl9lcnJubyA9IEdSVUJfRVJSX05PTkU7 CiAKQEAgLTI2Miw5ICszOTUsMTMgQEAgZ3J1Yl9sc19saXN0X2ZpbGVzIChjaGFyICpkaXJuYW1l LCBpbnQgbG9uZ2xpc3QsIGludCBhbGwsIGludCBodW1hbiwKICAgICAgIHN0cnVjdCBncnViX2xz X2xpc3RfZmlsZXNfY3R4IGN0eCA9IHsKIAkuZGlybmFtZSA9IGRpcm5hbWUsCiAJLmFsbCA9IGFs bCwKLQkuaHVtYW4gPSBodW1hbgorCS5odW1hbiA9IGh1bWFuLAorCS52YXJuYW1lID0gdmFybmFt ZQogICAgICAgfTsKIAorICAgICAgaWYgKHZhcm5hbWUpCisJICAgICAgZ3J1Yl9lbnZfdW5zZXQo dmFybmFtZSk7CisKICAgICAgIGlmIChsb25nbGlzdCkKIAkoZnMtPmZzX2RpcikgKGRldiwgcGF0 aCwgcHJpbnRfZmlsZXNfbG9uZywgJmN0eCk7CiAgICAgICBlbHNlCkBAIC0zMDIsNyArNDM5LDEw IEBAIGdydWJfbHNfbGlzdF9maWxlcyAoY2hhciAqZGlybmFtZSwgaW50IGxvbmdsaXN0LCBpbnQg YWxsLCBpbnQgaHVtYW4sCiAJfQogCiAgICAgICBpZiAoZ3J1Yl9lcnJubyA9PSBHUlVCX0VSUl9O T05FKQotCWdydWJfeHB1dHMgKCJcbiIpOworCWlmICh2YXJuYW1lKQorCSAgZ3J1Yl9lbnZfYXBw ZW5kICh2YXJuYW1lLCAiXG4iKTsKKwllbHNlCisJICBncnViX3hwdXRzICgiXG4iKTsKIAogICAg ICAgZ3J1Yl9yZWZyZXNoICgpOwogICAgIH0KLS0gCjIuNDUuMQoKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkdydWItZGV2ZWwgbWFpbGluZyBsaXN0Ckdy dWItZGV2ZWxAZ251Lm9yZwpodHRwczovL2xpc3RzLmdudS5vcmcvbWFpbG1hbi9saXN0aW5mby9n cnViLWRldmVsCg==