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 C0F6AC41513 for ; Fri, 17 May 2024 07:53:24 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1s7sOy-0003fS-Sh; Fri, 17 May 2024 03:53:17 -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 1s7sOv-0003cB-C8 for grub-devel@gnu.org; Fri, 17 May 2024 03:53:13 -0400 Received: from mail-lf1-x12b.google.com ([2a00:1450:4864:20::12b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1s7sOr-0004w6-RA for grub-devel@gnu.org; Fri, 17 May 2024 03:53:13 -0400 Received: by mail-lf1-x12b.google.com with SMTP id 2adb3069b0e04-5238b7d0494so388269e87.3 for ; Fri, 17 May 2024 00:53:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1715932387; x=1716537187; darn=gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=oD+qyTuS2ZRfXHDgoNkyQ9vIbYN5thrz/X5lSDdOrIA=; b=UG6xQYXCFaEESYtcKTY42oM8d6XuuT3SrL3Qdf4Zj5uB7ILmcHkSfWVi3e2+LqM7oa NZWwvalhm5LFHvXLdFbBRp2qEFagolyvSg1rBy4/XcHdyA6h87aalucsoMSozkarwjHo hLBQXWRILMx3Ju3zeNWOz/+9V1sw3tEsqdsFCZORtGMQ6vunptvb5U+19mEqogWt464b eMz59NM80jTMyDGIGBseMkLehL645+1uBjgBhAeBcNTVOohvD5mkkvM2VvgEl9SBW5b6 GD216TbDx9CUg4xR+shlt7rIp/sMNqtcYE/Z3mgX1r4L3Hf6ARo/iYwR4v5g51iZEnIV nOlQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715932387; x=1716537187; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=oD+qyTuS2ZRfXHDgoNkyQ9vIbYN5thrz/X5lSDdOrIA=; b=d7WPX4aSah+r2PBmzE0CfrF7X8OmpOZdmgxAsT3JcxT2SKpVbIRuPzKISXPLG6V278 Yeu+4T0743J/atUJ+e8YTad+VhnUCkjQmsrTRNILgQv9CVip5mFyrFmx1oM35JJU1NZo Y+4WZYj/DpXajmesEdvKzlrOu/o9i9XgTuLIcvotJGSDBkNFIgY/Lm+6j6yGP+RxOzqR OOsiO20M7v3+Xt7lKo7ewWTVf2bFei1Xbf4dl7Vm1L17bMgi2J1qVdK/FuruVmlzg4TB U+uU70ulErGrgNeIOIMc+xXxAEIGfj5ggGzxTtEhDn+VZySEu93RWQVaPZUCAOedrfSE JVZg== X-Gm-Message-State: AOJu0Yzj6Unca/tHLk9+1quIK56+YjvjDxSjfMQCsJJ6tMUylY6JQrCh UGeK0rQZ2/mF/omqHdCw7LELF22SFEeqsuV3my3gFl4J7lYJUMJUuSpIzzQnlOrOsQ== X-Google-Smtp-Source: AGHT+IF92PbP2GCkmvOlpE3eBz01XShbi+9vpXahBsMTqvCKB66KvB+TnE6EcnXGDvNfG/Khgs8h2Q== X-Received: by 2002:ac2:5141:0:b0:51d:34bb:3c6c with SMTP id 2adb3069b0e04-5220fd7b989mr16081812e87.31.1715932386492; Fri, 17 May 2024 00:53:06 -0700 (PDT) Received: from localhost ([5.165.219.191]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-521f38d3344sm3227562e87.168.2024.05.17.00.53.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 17 May 2024 00:53:06 -0700 (PDT) From: Vladimir Serbinenko To: grub-devel@gnu.org Cc: Vladimir Serbinenko Subject: [PATCH vRESEND 2/4] loader/multiboot: Add --noescape option Date: Fri, 17 May 2024 10:52:48 +0300 Message-Id: <20240517075250.2760-2-phcoder@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20240517075250.2760-1-phcoder@gmail.com> References: <20240517075250.2760-1-phcoder@gmail.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::12b; envelope-from=phcoder@gmail.com; helo=mail-lf1-x12b.google.com 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, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, 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 VGhpcyBpcyBuZWVkZWQgdG8gYm9vdCBTb2xhcmlzL0lsbHVtb3Mgb24gc29tZSBib290IHBhdGhz IHRoYXQgbmVlZCBxdW90ZXMuCgpTaWduZWQtb2ZmLWJ5OiBWbGFkaW1pciBTZXJiaW5lbmtvIDxw aGNvZGVyQGdtYWlsLmNvbT4KLS0tCiBncnViLWNvcmUvbG9hZGVyL2kzODYvbXVsdGlib290X21i aS5jIHwgMTMgKysrKy0tLS0KIGdydWItY29yZS9sb2FkZXIvbXVsdGlib290LmMgICAgICAgICAg fCA0NiArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0KIGdydWItY29yZS9sb2FkZXIvbXVsdGli b290X21iaTIuYyAgICAgfCAxMiArKystLS0tCiBpbmNsdWRlL2dydWIvbXVsdGlib290LmggICAg ICAgICAgICAgIHwgIDQgKy0tCiBpbmNsdWRlL2dydWIvbXVsdGlib290Mi5oICAgICAgICAgICAg IHwgIDQgKy0tCiA1IGZpbGVzIGNoYW5nZWQsIDUxIGluc2VydGlvbnMoKyksIDI4IGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL2dydWItY29yZS9sb2FkZXIvaTM4Ni9tdWx0aWJvb3RfbWJpLmMg Yi9ncnViLWNvcmUvbG9hZGVyL2kzODYvbXVsdGlib290X21iaS5jCmluZGV4IDMyNjgyNzA4OS4u ODU0MWFmYzFkIDEwMDY0NAotLS0gYS9ncnViLWNvcmUvbG9hZGVyL2kzODYvbXVsdGlib290X21i aS5jCisrKyBiL2dydWItY29yZS9sb2FkZXIvaTM4Ni9tdWx0aWJvb3RfbWJpLmMKQEAgLTY2Miwx MyArNjYyLDEzIEBAIGdydWJfbXVsdGlib290X2ZyZWVfbWJpICh2b2lkKQogfQogCiBncnViX2Vy cl90Ci1ncnViX211bHRpYm9vdF9pbml0X21iaSAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKK2dy dWJfbXVsdGlib290X2luaXRfbWJpIChpbnQgYXJnYywgY2hhciAqYXJndltdLCBpbnQgbm9fZXNj YXBlKQogewogICBncnViX3NzaXplX3QgbGVuID0gMDsKIAogICBncnViX211bHRpYm9vdF9mcmVl X21iaSAoKTsKIAotICBsZW4gPSBncnViX2xvYWRlcl9jbWRsaW5lX3NpemUgKGFyZ2MsIGFyZ3Ys IDApOworICBsZW4gPSBncnViX2xvYWRlcl9jbWRsaW5lX3NpemUgKGFyZ2MsIGFyZ3YsIG5vX2Vz Y2FwZSk7CiAKICAgY21kbGluZSA9IGdydWJfbWFsbG9jIChsZW4pOwogICBpZiAoISBjbWRsaW5l KQpAQCAtNjc2LDEyICs2NzYsMTIgQEAgZ3J1Yl9tdWx0aWJvb3RfaW5pdF9tYmkgKGludCBhcmdj LCBjaGFyICphcmd2W10pCiAgIGNtZGxpbmVfc2l6ZSA9IGxlbjsKIAogICByZXR1cm4gZ3J1Yl9j cmVhdGVfbG9hZGVyX2NtZGxpbmUgKGFyZ2MsIGFyZ3YsIGNtZGxpbmUsCi0JCQkJICAgICBjbWRs aW5lX3NpemUsIEdSVUJfVkVSSUZZX0tFUk5FTF9DTURMSU5FLCAwKTsKKwkJCQkgICAgIGNtZGxp bmVfc2l6ZSwgR1JVQl9WRVJJRllfS0VSTkVMX0NNRExJTkUsIG5vX2VzY2FwZSk7CiB9CiAKIGdy dWJfZXJyX3QKIGdydWJfbXVsdGlib290X2FkZF9tb2R1bGUgKGdydWJfYWRkcl90IHN0YXJ0LCBn cnViX3NpemVfdCBzaXplLAotCQkJICAgaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKKwkJCSAgIGlu dCBhcmdjLCBjaGFyICphcmd2W10sIGludCBub19lc2NhcGUpCiB7CiAgIHN0cnVjdCBtb2R1bGUg Km5ld21vZDsKICAgZ3J1Yl9zaXplX3QgbGVuID0gMDsKQEAgLTY5NCw3ICs2OTQsNyBAQCBncnVi X211bHRpYm9vdF9hZGRfbW9kdWxlIChncnViX2FkZHJfdCBzdGFydCwgZ3J1Yl9zaXplX3Qgc2l6 ZSwKICAgbmV3bW9kLT5zaXplID0gc2l6ZTsKICAgbmV3bW9kLT5uZXh0ID0gMDsKIAotICBsZW4g PSBncnViX2xvYWRlcl9jbWRsaW5lX3NpemUgKGFyZ2MsIGFyZ3YsIDApOworICBsZW4gPSBncnVi X2xvYWRlcl9jbWRsaW5lX3NpemUgKGFyZ2MsIGFyZ3YsIG5vX2VzY2FwZSk7CiAKICAgbmV3bW9k LT5jbWRsaW5lID0gZ3J1Yl9tYWxsb2MgKGxlbik7CiAgIGlmICghIG5ld21vZC0+Y21kbGluZSkK QEAgLTcwNiw3ICs3MDYsOCBAQCBncnViX211bHRpYm9vdF9hZGRfbW9kdWxlIChncnViX2FkZHJf dCBzdGFydCwgZ3J1Yl9zaXplX3Qgc2l6ZSwKICAgdG90YWxfbW9kY21kICs9IEFMSUdOX1VQIChs ZW4sIDQpOwogCiAgIGVyciA9IGdydWJfY3JlYXRlX2xvYWRlcl9jbWRsaW5lIChhcmdjLCBhcmd2 LCBuZXdtb2QtPmNtZGxpbmUsCi0JCQkJICAgIG5ld21vZC0+Y21kbGluZV9zaXplLCBHUlVCX1ZF UklGWV9NT0RVTEVfQ01ETElORSwgMCk7CisJCQkJICAgIG5ld21vZC0+Y21kbGluZV9zaXplLCBH UlVCX1ZFUklGWV9NT0RVTEVfQ01ETElORSwgbm9fZXNjYXBlKTsKKwogICBpZiAoZXJyKQogICAg IHsKICAgICAgIGdydWJfZnJlZSAobmV3bW9kKTsKZGlmZiAtLWdpdCBhL2dydWItY29yZS9sb2Fk ZXIvbXVsdGlib290LmMgYi9ncnViLWNvcmUvbG9hZGVyL211bHRpYm9vdC5jCmluZGV4IDk0YmU1 MTJjNC4uODUxZjc1MzM0IDEwMDY0NAotLS0gYS9ncnViLWNvcmUvbG9hZGVyL211bHRpYm9vdC5j CisrKyBiL2dydWItY29yZS9sb2FkZXIvbXVsdGlib290LmMKQEAgLTI5NSwxMSArMjk1LDE0IEBA IGdydWJfY21kX211bHRpYm9vdCAoZ3J1Yl9jb21tYW5kX3QgY21kIF9fYXR0cmlidXRlX18gKCh1 bnVzZWQpKSwKIAogI2lmbmRlZiBHUlVCX1VTRV9NVUxUSUJPT1QyCiAgIGdydWJfbXVsdGlib290 X3F1aXJrcyA9IEdSVUJfTVVMVElCT09UX1FVSVJLU19OT05FOworI2VuZGlmCiAgIGludCBvcHRp b25fZm91bmQgPSAwOworICBpbnQgbm9fZXNjYXBlID0gMDsKIAogICBkbwogICAgIHsKICAgICAg IG9wdGlvbl9mb3VuZCA9IDA7CisjaWZuZGVmIEdSVUJfVVNFX01VTFRJQk9PVDIKICAgICAgIGlm IChhcmdjICE9IDAgJiYgZ3J1Yl9zdHJjbXAgKGFyZ3ZbMF0sICItLXF1aXJrLWJhZC1rbHVkZ2Ui KSA9PSAwKQogCXsKIAkgIGFyZ2MtLTsKQEAgLTMxNSw5ICszMTgsMTcgQEAgZ3J1Yl9jbWRfbXVs dGlib290IChncnViX2NvbW1hbmRfdCBjbWQgX19hdHRyaWJ1dGVfXyAoKHVudXNlZCkpLAogCSAg b3B0aW9uX2ZvdW5kID0gMTsKIAkgIGdydWJfbXVsdGlib290X3F1aXJrcyB8PSBHUlVCX01VTFRJ Qk9PVF9RVUlSS19NT0RVTEVTX0FGVEVSX0tFUk5FTDsKIAl9Ci0gICAgfSB3aGlsZSAob3B0aW9u X2ZvdW5kKTsKICNlbmRpZgogCisgICAgICBpZiAoYXJnYyAhPSAwICYmIGdydWJfc3RyY21wIChh cmd2WzBdLCAiLS1ub2VzY2FwZSIpID09IDApCisJeworCSAgYXJnYy0tOworCSAgYXJndisrOwor CSAgb3B0aW9uX2ZvdW5kID0gMTsKKwkgIG5vX2VzY2FwZSA9IDE7CisJfQorICAgIH0gd2hpbGUg KG9wdGlvbl9mb3VuZCk7CisKICAgaWYgKGFyZ2MgPT0gMCkKICAgICByZXR1cm4gZ3J1Yl9lcnJv ciAoR1JVQl9FUlJfQkFEX0FSR1VNRU5ULCBOXygiZmlsZW5hbWUgZXhwZWN0ZWQiKSk7CiAKQEAg LTMyOCw3ICszMzksNyBAQCBncnViX2NtZF9tdWx0aWJvb3QgKGdydWJfY29tbWFuZF90IGNtZCBf X2F0dHJpYnV0ZV9fICgodW51c2VkKSksCiAgIGdydWJfZGxfcmVmIChteV9tb2QpOwogCiAgIC8q IFNraXAgZmlsZW5hbWUuICAqLwotICBHUlVCX01VTFRJQk9PVCAoaW5pdF9tYmkpIChhcmdjIC0g MSwgYXJndiArIDEpOworICBHUlVCX01VTFRJQk9PVCAoaW5pdF9tYmkpIChhcmdjIC0gMSwgYXJn diArIDEsIG5vX2VzY2FwZSk7CiAKICAgZ3J1Yl9yZWxvY2F0b3JfdW5sb2FkIChHUlVCX01VTFRJ Qk9PVCAocmVsb2NhdG9yKSk7CiAgIEdSVUJfTVVMVElCT09UIChyZWxvY2F0b3IpID0gZ3J1Yl9y ZWxvY2F0b3JfbmV3ICgpOwpAQCAtMzY3LDE4ICszNzgsMjkgQEAgZ3J1Yl9jbWRfbW9kdWxlIChn cnViX2NvbW1hbmRfdCBjbWQgX19hdHRyaWJ1dGVfXyAoKHVudXNlZCkpLAogICB2b2lkICptb2R1 bGUgPSBOVUxMOwogICBncnViX2FkZHJfdCB0YXJnZXQ7CiAgIGdydWJfZXJyX3QgZXJyOwotICBp bnQgbm91bnppcCA9IDA7CisgIGludCBub3VuemlwID0gMCwgbm9lc2NhcGUgPSAwLCBvcHRpb25f Zm91bmQgPSAwOwogICBncnViX3VpbnQ2NF90IGxvd2VzdF9hZGRyID0gMDsKIAotICBpZiAoYXJn YyA9PSAwKQotICAgIHJldHVybiBncnViX2Vycm9yIChHUlVCX0VSUl9CQURfQVJHVU1FTlQsIE5f KCJmaWxlbmFtZSBleHBlY3RlZCIpKTsKLQotICBpZiAoZ3J1Yl9zdHJjbXAgKGFyZ3ZbMF0sICIt LW5vdW56aXAiKSA9PSAwKQorICBkbwogICAgIHsKLSAgICAgIGFyZ3YrKzsKLSAgICAgIGFyZ2Mt LTsKLSAgICAgIG5vdW56aXAgPSAxOwotICAgIH0KKyAgICAgIG9wdGlvbl9mb3VuZCA9IDA7CisK KyAgICAgIGlmIChhcmdjICE9IDAgJiYgZ3J1Yl9zdHJjbXAgKGFyZ3ZbMF0sICItLW5vdW56aXAi KSA9PSAwKQorCXsKKwkgIGFyZ2MtLTsKKwkgIGFyZ3YrKzsKKwkgIG9wdGlvbl9mb3VuZCA9IDE7 CisJICBub3VuemlwID0gMTsKKwl9CisKKyAgICAgIGlmIChhcmdjICE9IDAgJiYgZ3J1Yl9zdHJj bXAgKGFyZ3ZbMF0sICItLW5vZXNjYXBlIikgPT0gMCkKKwl7CisJICBhcmdjLS07CisJICBhcmd2 Kys7CisJICBvcHRpb25fZm91bmQgPSAxOworCSAgbm9lc2NhcGUgPSAxOworCX0KKyAgICB9IHdo aWxlIChvcHRpb25fZm91bmQpOwogCiAgIGlmIChhcmdjID09IDApCiAgICAgcmV0dXJuIGdydWJf ZXJyb3IgKEdSVUJfRVJSX0JBRF9BUkdVTUVOVCwgTl8oImZpbGVuYW1lIGV4cGVjdGVkIikpOwpA QCAtNDIwLDcgKzQ0Miw3IEBAIGdydWJfY21kX21vZHVsZSAoZ3J1Yl9jb21tYW5kX3QgY21kIF9f YXR0cmlidXRlX18gKCh1bnVzZWQpKSwKICAgICAgIHRhcmdldCA9IDA7CiAgICAgfQogCi0gIGVy ciA9IEdSVUJfTVVMVElCT09UIChhZGRfbW9kdWxlKSAodGFyZ2V0LCBzaXplLCBhcmdjIC0gMSwg YXJndiArIDEpOworICBlcnIgPSBHUlVCX01VTFRJQk9PVCAoYWRkX21vZHVsZSkgKHRhcmdldCwg c2l6ZSwgYXJnYyAtIDEsIGFyZ3YgKyAxLCBub2VzY2FwZSk7CiAgIGlmIChlcnIpCiAgICAgewog ICAgICAgZ3J1Yl9maWxlX2Nsb3NlIChmaWxlKTsKZGlmZiAtLWdpdCBhL2dydWItY29yZS9sb2Fk ZXIvbXVsdGlib290X21iaTIuYyBiL2dydWItY29yZS9sb2FkZXIvbXVsdGlib290X21iaTIuYwpp bmRleCA4YTgxYTAzNTkuLmZjYWYzYmE1NiAxMDA2NDQKLS0tIGEvZ3J1Yi1jb3JlL2xvYWRlci9t dWx0aWJvb3RfbWJpMi5jCisrKyBiL2dydWItY29yZS9sb2FkZXIvbXVsdGlib290X21iaTIuYwpA QCAtMTAzMSwxMyArMTAzMSwxMyBAQCBncnViX211bHRpYm9vdDJfZnJlZV9tYmkgKHZvaWQpCiB9 CiAKIGdydWJfZXJyX3QKLWdydWJfbXVsdGlib290Ml9pbml0X21iaSAoaW50IGFyZ2MsIGNoYXIg KmFyZ3ZbXSkKK2dydWJfbXVsdGlib290Ml9pbml0X21iaSAoaW50IGFyZ2MsIGNoYXIgKmFyZ3Zb XSwgaW50IG5vX2VzY2FwZSkKIHsKICAgZ3J1Yl9zc2l6ZV90IGxlbiA9IDA7CiAKICAgZ3J1Yl9t dWx0aWJvb3QyX2ZyZWVfbWJpICgpOwogCi0gIGxlbiA9IGdydWJfbG9hZGVyX2NtZGxpbmVfc2l6 ZSAoYXJnYywgYXJndiwgMCk7CisgIGxlbiA9IGdydWJfbG9hZGVyX2NtZGxpbmVfc2l6ZSAoYXJn YywgYXJndiwgbm9fZXNjYXBlKTsKIAogICBjbWRsaW5lID0gZ3J1Yl9tYWxsb2MgKGxlbik7CiAg IGlmICghIGNtZGxpbmUpCkBAIC0xMDQ1LDEyICsxMDQ1LDEyIEBAIGdydWJfbXVsdGlib290Ml9p bml0X21iaSAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgY21kbGluZV9zaXplID0gbGVuOwog CiAgIHJldHVybiBncnViX2NyZWF0ZV9sb2FkZXJfY21kbGluZSAoYXJnYywgYXJndiwgY21kbGlu ZSwgY21kbGluZV9zaXplLAotCQkJCSAgICAgR1JVQl9WRVJJRllfS0VSTkVMX0NNRExJTkUsIDAp OworCQkJCSAgICAgR1JVQl9WRVJJRllfS0VSTkVMX0NNRExJTkUsIG5vX2VzY2FwZSk7CiB9CiAK IGdydWJfZXJyX3QKIGdydWJfbXVsdGlib290Ml9hZGRfbW9kdWxlIChncnViX2FkZHJfdCBzdGFy dCwgZ3J1Yl9zaXplX3Qgc2l6ZSwKLQkJCSAgIGludCBhcmdjLCBjaGFyICphcmd2W10pCisJCQkg ICAgaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSwgaW50IG5vX2VzY2FwZSkKIHsKICAgc3RydWN0IG1v ZHVsZSAqbmV3bW9kOwogICBncnViX3NpemVfdCBsZW4gPSAwOwpAQCAtMTA2Miw3ICsxMDYyLDcg QEAgZ3J1Yl9tdWx0aWJvb3QyX2FkZF9tb2R1bGUgKGdydWJfYWRkcl90IHN0YXJ0LCBncnViX3Np emVfdCBzaXplLAogICBuZXdtb2QtPnN0YXJ0ID0gc3RhcnQ7CiAgIG5ld21vZC0+c2l6ZSA9IHNp emU7CiAKLSAgbGVuID0gZ3J1Yl9sb2FkZXJfY21kbGluZV9zaXplIChhcmdjLCBhcmd2LCAwKTsK KyAgbGVuID0gZ3J1Yl9sb2FkZXJfY21kbGluZV9zaXplIChhcmdjLCBhcmd2LCBub19lc2NhcGUp OwogCiAgIG5ld21vZC0+Y21kbGluZSA9IGdydWJfbWFsbG9jIChsZW4pOwogICBpZiAoISBuZXdt b2QtPmNtZGxpbmUpCkBAIC0xMDc0LDcgKzEwNzQsNyBAQCBncnViX211bHRpYm9vdDJfYWRkX21v ZHVsZSAoZ3J1Yl9hZGRyX3Qgc3RhcnQsIGdydWJfc2l6ZV90IHNpemUsCiAgIHRvdGFsX21vZGNt ZCArPSBBTElHTl9VUCAobGVuLCBNVUxUSUJPT1RfVEFHX0FMSUdOKTsKIAogICBlcnIgPSBncnVi X2NyZWF0ZV9sb2FkZXJfY21kbGluZSAoYXJnYywgYXJndiwgbmV3bW9kLT5jbWRsaW5lLAotCQkJ CSAgICBuZXdtb2QtPmNtZGxpbmVfc2l6ZSwgR1JVQl9WRVJJRllfTU9EVUxFX0NNRExJTkUsIDAp OworCQkJCSAgICBuZXdtb2QtPmNtZGxpbmVfc2l6ZSwgR1JVQl9WRVJJRllfTU9EVUxFX0NNRExJ TkUsIG5vX2VzY2FwZSk7CiAgIGlmIChlcnIpCiAgICAgewogICAgICAgZ3J1Yl9mcmVlIChuZXdt b2QtPmNtZGxpbmUpOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9ncnViL211bHRpYm9vdC5oIGIvaW5j bHVkZS9ncnViL211bHRpYm9vdC5oCmluZGV4IGQ4ODQ3Zjc1My4uYzhmNGIxMzA0IDEwMDY0NAot LS0gYS9pbmNsdWRlL2dydWIvbXVsdGlib290LmgKKysrIGIvaW5jbHVkZS9ncnViL211bHRpYm9v dC5oCkBAIC00Myw5ICs0Myw5IEBAIHZvaWQgZ3J1Yl9tb2R1bGUgKGludCBhcmdjLCBjaGFyICph cmd2W10pOwogdm9pZCBncnViX211bHRpYm9vdF9zZXRfYWNjZXB0c192aWRlbyAoaW50IHZhbCk7 CiBncnViX2Vycl90IGdydWJfbXVsdGlib290X21ha2VfbWJpIChncnViX3VpbnQzMl90ICp0YXJn ZXQpOwogdm9pZCBncnViX211bHRpYm9vdF9mcmVlX21iaSAodm9pZCk7Ci1ncnViX2Vycl90IGdy dWJfbXVsdGlib290X2luaXRfbWJpIChpbnQgYXJnYywgY2hhciAqYXJndltdKTsKK2dydWJfZXJy X3QgZ3J1Yl9tdWx0aWJvb3RfaW5pdF9tYmkgKGludCBhcmdjLCBjaGFyICphcmd2W10sIGludCBu b2VzY2FwZSk7CiBncnViX2Vycl90IGdydWJfbXVsdGlib290X2FkZF9tb2R1bGUgKGdydWJfYWRk cl90IHN0YXJ0LCBncnViX3NpemVfdCBzaXplLAotCQkJCSAgICAgIGludCBhcmdjLCBjaGFyICph cmd2W10pOworCQkJCSAgICAgIGludCBhcmdjLCBjaGFyICphcmd2W10sIGludCBub2VzY2FwZSk7 CiB2b2lkIGdydWJfbXVsdGlib290X3NldF9ib290ZGV2ICh2b2lkKTsKIHZvaWQKIGdydWJfbXVs dGlib290X2FkZF9lbGZzeW1zIChncnViX3NpemVfdCBudW0sIGdydWJfc2l6ZV90IGVudHNpemUs CmRpZmYgLS1naXQgYS9pbmNsdWRlL2dydWIvbXVsdGlib290Mi5oIGIvaW5jbHVkZS9ncnViL211 bHRpYm9vdDIuaAppbmRleCBiOTBhYTY5ODkuLmZhODAwNmI0ZCAxMDA2NDQKLS0tIGEvaW5jbHVk ZS9ncnViL211bHRpYm9vdDIuaAorKysgYi9pbmNsdWRlL2dydWIvbXVsdGlib290Mi5oCkBAIC0z NSw5ICszNSw5IEBAIHZvaWQgZ3J1Yl9tb2R1bGUyIChpbnQgYXJnYywgY2hhciAqYXJndltdKTsK IHZvaWQgZ3J1Yl9tdWx0aWJvb3QyX3NldF9hY2NlcHRzX3ZpZGVvIChpbnQgdmFsKTsKIGdydWJf ZXJyX3QgZ3J1Yl9tdWx0aWJvb3QyX21ha2VfbWJpIChncnViX3VpbnQzMl90ICp0YXJnZXQpOwog dm9pZCBncnViX211bHRpYm9vdDJfZnJlZV9tYmkgKHZvaWQpOwotZ3J1Yl9lcnJfdCBncnViX211 bHRpYm9vdDJfaW5pdF9tYmkgKGludCBhcmdjLCBjaGFyICphcmd2W10pOworZ3J1Yl9lcnJfdCBn cnViX211bHRpYm9vdDJfaW5pdF9tYmkgKGludCBhcmdjLCBjaGFyICphcmd2W10sIGludCBub2Vz Y2FwZSk7CiBncnViX2Vycl90IGdydWJfbXVsdGlib290Ml9hZGRfbW9kdWxlIChncnViX2FkZHJf dCBzdGFydCwgZ3J1Yl9zaXplX3Qgc2l6ZSwKLQkJCQkgICAgICBpbnQgYXJnYywgY2hhciAqYXJn dltdKTsKKwkJCQkgICAgICBpbnQgYXJnYywgY2hhciAqYXJndltdLCBpbnQgbm9lc2NhcGUpOwog dm9pZCBncnViX211bHRpYm9vdDJfc2V0X2Jvb3RkZXYgKHZvaWQpOwogdm9pZAogZ3J1Yl9tdWx0 aWJvb3QyX2FkZF9lbGZzeW1zIChncnViX3NpemVfdCBudW0sIGdydWJfc2l6ZV90IGVudHNpemUs Ci0tIAoyLjM5LjIKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpHcnViLWRldmVsIG1haWxpbmcgbGlzdApHcnViLWRldmVsQGdudS5vcmcKaHR0cHM6Ly9s aXN0cy5nbnUub3JnL21haWxtYW4vbGlzdGluZm8vZ3J1Yi1kZXZlbAo=