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 C339FC369A2 for ; Tue, 8 Apr 2025 13:19:04 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u28qo-0005u2-A0; Tue, 08 Apr 2025 09:18:50 -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 1u28q0-0005IM-FX for grub-devel@gnu.org; Tue, 08 Apr 2025 09:18:01 -0400 Received: from mail-lj1-x233.google.com ([2a00:1450:4864:20::233]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1u28pv-0007ro-RO for grub-devel@gnu.org; Tue, 08 Apr 2025 09:18:00 -0400 Received: by mail-lj1-x233.google.com with SMTP id 38308e7fff4ca-30bf3f3539dso59212881fa.1 for ; Tue, 08 Apr 2025 06:17:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1744118274; x=1744723074; 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=7dZca++mn0Cq71lctthbVHNUdOuWKt1uULard6QUnos=; b=kKncWVlvwqrpnIrIb7ouJPXamBcHQnx/yDjqQxjPx5PVc1sSLtMm02gNUkDOsbL2J2 Dcsm4lnTWG2IsFxNE185FknFOULokHPSdXceWZdQMDJZeHXQ2ey2J9TQ/NsDMM+P9Vv4 Zwb5y2+0Il9PB9Ecr0mi+dCDCzsHs+GrtqQ7ANoNtCGoIXFZO9BSHNHPPZ3zi2kw6OEi LB4i4LJKFik+C82cGrkoyzAWkb+b11h43mV3XQpC6GDt97g9HqkrW2M26cG6DzXehrbW SZU0YFkdfQTrrZT7AnH23a6flyEqcAVYEI2r5vrq4t6rAPYT38B1Z7TDz1J8V8HOeOFf gYiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744118274; x=1744723074; 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=7dZca++mn0Cq71lctthbVHNUdOuWKt1uULard6QUnos=; b=cgCX73fMMLIWZxNFR4FlHz1q4c5Ebj0Y7pAeoy/1+T7hwskXaeGSz52CJXG7d1SI6k ONBG9oMFg+9gjk2F/TMegC1G5MJ45l+EqNdzYxQHZVch4IX6mmHqu3kYA5tC3awOKR93 AyLznfM+zQAa/rhCkDUlrYwHBpxdILgFYFwVFEAN15ZmHPUV1ELemYsCVglemPj0ovOg 3GOKSNPZUIyqPPESTALFHMKgBAtN8ZBGX5OHS6kKhPLsr9MCqGuwNnJ5ESdpYyPNookc P8USKZoo2f8jK69QOxdDSR0HSrkrHEd9GNb7hYMaGgT0rP38Kg6zJCP7xLveJKZsbEYb isHg== X-Gm-Message-State: AOJu0YyN4qtGydlIdGEdEP14awss+sbo6lOp8+cTuuZIFBJBAJ0Z/PM1 Ksg8ywXb+Wtz9i6D70V/psZGKqjxA5VQdwCumbwdIg2MaAQyxhq7YV6UWUcC X-Gm-Gg: ASbGnct2btgiUsANxyUsdj5v+sEnHGmBkhm9uAHP6MSrx5Pp8p3R0vFl7S2rVdWpLlu m9tq8dhAK2EaNWKLPOqJNcvRt58Ra6kUjPPHZsODorGjih3xcKL8dyclvEEgazrei3rlznIxGOj G3x/zOLuYBH2FX8XPscq/5w1BbJIfmmTY/ToO+kuQiFBZwHEB1AiM5g6HaV0wqe2GPZR3ykPGoR +k8VxuyEUv6m37EcNXRXiWsKfnjmmYZrFHt0T6aTR51tp1yOYKRbDFbLEjgkoIuCbPz0wLNONh8 27gVEFmaoIIx3I0qNQIdZRrEfC6m3Gobh2zDiTpzLdXwOXWu5MkVFbB4Zu2PQOcEhXDddQ== X-Google-Smtp-Source: AGHT+IGGCwHB5qH4Wb4SVLWIzuPKAcDMe4SBtadv3ryO9Dg/zRlz2+BYIoPhOFVzNAull/PSFIC/Jg== X-Received: by 2002:a2e:998f:0:b0:30b:ee7d:1a88 with SMTP id 38308e7fff4ca-30f35e7dc51mr7843311fa.10.1744118273643; Tue, 08 Apr 2025 06:17:53 -0700 (PDT) Received: from localhost (vds2213055.my-ihor.ru. [94.142.141.192]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-30f031ce889sm18681561fa.98.2025.04.08.06.17.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 06:17:53 -0700 (PDT) From: Vladimir Serbinenko To: grub-devel@gnu.org Cc: Vladimir Serbinenko Subject: [PATCH v9 11/11] libgcrypt: Import blake family of hashes Date: Tue, 8 Apr 2025 16:13:16 +0300 Message-ID: <20250408131720.3294860-12-phcoder@gmail.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250408131720.3294860-1-phcoder@gmail.com> References: <20250408131720.3294860-1-phcoder@gmail.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::233; envelope-from=phcoder@gmail.com; helo=mail-lj1-x233.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 U2lnbmVkLW9mZi1ieTogVmxhZGltaXIgU2VyYmluZW5rbyA8cGhjb2RlckBnbWFpbC5jb20+Ci0t LQogLi4uL2xpYi9saWJnY3J5cHQtcGF0Y2hlcy8wNl9ibGFrZS5wYXRjaCAgICAgIHwgODAgKysr KysrKysrKysrKysrKysrKwogaW5jbHVkZS9ncnViL2NyeXB0by5oICAgICAgICAgICAgICAgICAg ICAgICAgIHwgIDYgKysKIHV0aWwvaW1wb3J0X2djcnkucHkgICAgICAgICAgICAgICAgICAgICAg ICAgICB8IDM2ICsrKysrKystLQogMyBmaWxlcyBjaGFuZ2VkLCAxMTUgaW5zZXJ0aW9ucygrKSwg NyBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBncnViLWNvcmUvbGliL2xpYmdjcnlw dC1wYXRjaGVzLzA2X2JsYWtlLnBhdGNoCgpkaWZmIC0tZ2l0IGEvZ3J1Yi1jb3JlL2xpYi9saWJn Y3J5cHQtcGF0Y2hlcy8wNl9ibGFrZS5wYXRjaCBiL2dydWItY29yZS9saWIvbGliZ2NyeXB0LXBh dGNoZXMvMDZfYmxha2UucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw Li4zODYyOTAxMDEKLS0tIC9kZXYvbnVsbAorKysgYi9ncnViLWNvcmUvbGliL2xpYmdjcnlwdC1w YXRjaGVzLzA2X2JsYWtlLnBhdGNoCkBAIC0wLDAgKzEsODAgQEAKKy0tLSBhL2dydWItY29yZS9s aWIvbGliZ2NyeXB0LWdydWIvY2lwaGVyL2JsYWtlMi5jCTIwMjUtMDQtMDggMTY6MDQ6NDcuNDg1 NjgyMzc1ICswMzAwCisrKysgYi9ncnViLWNvcmUvbGliL2xpYmdjcnlwdC1ncnViL2NpcGhlci9i bGFrZTIuYwkyMDI1LTA0LTA4IDE2OjAzOjU2LjQ2MTI4NDI0NSArMDMwMAorQEAgLTc4NCw2OCAr Nzg0LDYgQEAKKyAgIHJldHVybiBibGFrZTJzX2luaXQoYywga2V5LCBrZXlsZW4pOworIH0KKyAK Ky0vKiBTZWxmdGVzdHMgZnJvbSAiUkZDIDc2OTMsIEFwcGVuZGl4IEUuIEJMQUtFMmIgYW5kIEJM QUtFMnMgU2VsZi1UZXN0CistICogTW9kdWxlIEMgU291cmNlIi4gKi8KKy1zdGF0aWMgdm9pZCBz ZWxmdGVzdF9zZXEoYnl0ZSAqb3V0LCBzaXplX3QgbGVuLCB1MzIgc2VlZCkKKy17CistICBzaXpl X3QgaTsKKy0gIHUzMiB0LCBhLCBiOworLQorLSAgYSA9IDB4REVBRDRCQUQgKiBzZWVkOworLSAg YiA9IDE7CistCistICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspCistICAgIHsKKy0gICAgICB0 ID0gYSArIGI7CistICAgICAgYSA9IGI7CistICAgICAgYiA9IHQ7CistICAgICAgb3V0W2ldID0g KHQgPj4gMjQpICYgMHhGRjsKKy0gICAgfQorLX0KKy0KKy0KKy0KKy0KKy1nY3J5X2Vycl9jb2Rl X3QgX2djcnlfYmxha2UyX2luaXRfd2l0aF9rZXkodm9pZCAqY3R4LCB1bnNpZ25lZCBpbnQgZmxh Z3MsCistCQkJCQkgICBjb25zdCB1bnNpZ25lZCBjaGFyICprZXksCistCQkJCQkgICBzaXplX3Qg a2V5bGVuLCBpbnQgYWxnbykKKy17CistICBnY3J5X2Vycl9jb2RlX3QgcmM7CistICBzd2l0Y2gg KGFsZ28pCistICAgIHsKKy0gICAgY2FzZSBHQ1JZX01EX0JMQUtFMkJfNTEyOgorLSAgICAgIHJj ID0gYmxha2UyYl9pbml0X2N0eCAoY3R4LCBmbGFncywga2V5LCBrZXlsZW4sIDUxMik7CistICAg ICAgYnJlYWs7CistICAgIGNhc2UgR0NSWV9NRF9CTEFLRTJCXzM4NDoKKy0gICAgICByYyA9IGJs YWtlMmJfaW5pdF9jdHggKGN0eCwgZmxhZ3MsIGtleSwga2V5bGVuLCAzODQpOworLSAgICAgIGJy ZWFrOworLSAgICBjYXNlIEdDUllfTURfQkxBS0UyQl8yNTY6CistICAgICAgcmMgPSBibGFrZTJi X2luaXRfY3R4IChjdHgsIGZsYWdzLCBrZXksIGtleWxlbiwgMjU2KTsKKy0gICAgICBicmVhazsK Ky0gICAgY2FzZSBHQ1JZX01EX0JMQUtFMkJfMTYwOgorLSAgICAgIHJjID0gYmxha2UyYl9pbml0 X2N0eCAoY3R4LCBmbGFncywga2V5LCBrZXlsZW4sIDE2MCk7CistICAgICAgYnJlYWs7CistICAg IGNhc2UgR0NSWV9NRF9CTEFLRTJTXzI1NjoKKy0gICAgICByYyA9IGJsYWtlMnNfaW5pdF9jdHgg KGN0eCwgZmxhZ3MsIGtleSwga2V5bGVuLCAyNTYpOworLSAgICAgIGJyZWFrOworLSAgICBjYXNl IEdDUllfTURfQkxBS0UyU18yMjQ6CistICAgICAgcmMgPSBibGFrZTJzX2luaXRfY3R4IChjdHgs IGZsYWdzLCBrZXksIGtleWxlbiwgMjI0KTsKKy0gICAgICBicmVhazsKKy0gICAgY2FzZSBHQ1JZ X01EX0JMQUtFMlNfMTYwOgorLSAgICAgIHJjID0gYmxha2Uyc19pbml0X2N0eCAoY3R4LCBmbGFn cywga2V5LCBrZXlsZW4sIDE2MCk7CistICAgICAgYnJlYWs7CistICAgIGNhc2UgR0NSWV9NRF9C TEFLRTJTXzEyODoKKy0gICAgICByYyA9IGJsYWtlMnNfaW5pdF9jdHggKGN0eCwgZmxhZ3MsIGtl eSwga2V5bGVuLCAxMjgpOworLSAgICAgIGJyZWFrOworLSAgICBkZWZhdWx0OgorLSAgICAgIHJj ID0gR1BHX0VSUl9ESUdFU1RfQUxHTzsKKy0gICAgICBicmVhazsKKy0gICAgfQorLQorLSAgcmV0 dXJuIHJjOworLX0KKy0KKy0KKyAjZGVmaW5lIERFRklORV9CTEFLRTJfVkFSSUFOVChicywgQlMs IGRiaXRzLCBvaWRfYnJhbmNoKSBcCisgICBzdGF0aWMgdm9pZCBibGFrZTIjI2JzIyNfIyNkYml0 cyMjX2luaXQodm9pZCAqY3R4LCB1bnNpZ25lZCBpbnQgZmxhZ3MpIFwKKyAgIHsgXAorQEAgLTg3 OSw3ICs4MTcsNyBAQAorICAgICAgIGRiaXRzIC8gOCwgYmxha2UyIyNicyMjXyMjZGJpdHMjI19p bml0LCBibGFrZTIjI2JzIyNfd3JpdGUsIFwKKyAgICAgICBibGFrZTIjI2JzIyNfZmluYWwsIGJs YWtlMiMjYnMjI19yZWFkLCBOVUxMLCBcCisgICAgICAgX2djcnlfYmxha2UyIyNicyMjXyMjZGJp dHMjI19oYXNoX2J1ZmZlcnMsIFwKKy0gICAgICBzaXplb2YgKEJMQUtFMiMjQlMjI19DT05URVhU KSwgc2VsZnRlc3RzX2JsYWtlMiMjYnMgXAorKyAgICAgIHNpemVvZiAoQkxBS0UyIyNCUyMjX0NP TlRFWFQpIFwKKyAgICAgLCBcCisgICAgIEdSVUJfVVRJTF9NT0ROQU1FKCJnY3J5X2JsYWtlMiIp IFwKKyAgICAgLmJsb2Nrc2l6ZSA9IEdSVUJfQkxBS0UyICMjIEJTICMjIF9CTE9DS19TSVpFIFwK ZGlmZiAtLWdpdCBhL2luY2x1ZGUvZ3J1Yi9jcnlwdG8uaCBiL2luY2x1ZGUvZ3J1Yi9jcnlwdG8u aAppbmRleCAyNWIxMTg4OTguLjRmMTVhNzgxOCAxMDA2NDQKLS0tIGEvaW5jbHVkZS9ncnViL2Ny eXB0by5oCisrKyBiL2luY2x1ZGUvZ3J1Yi9jcnlwdG8uaApAQCAtNTg2LDggKzU4NiwxNCBAQCB2 b2lkIGdydWJfZ2NyeV9maW5pX2FsbCAodm9pZCk7CiBpbnQKIGdydWJfZ2V0X3JhbmRvbSAodm9p ZCAqb3V0LCBncnViX3NpemVfdCBsZW4pOwogCisjZGVmaW5lIEdSVUJfVVRJTF9NT0ROQU1FKHgp IC5tb2RuYW1lID0geCwKKyNlbHNlCisjZGVmaW5lIEdSVUJfVVRJTF9NT0ROQU1FKHgpCiAjZW5k aWYKIAorI2RlZmluZSBHUlVCX0JMQUtFMkJfQkxPQ0tfU0laRSAxMjgKKyNkZWZpbmUgR1JVQl9C TEFLRTJTX0JMT0NLX1NJWkUgNjQKKwogdHlwZWRlZiBzdHJ1Y3QgX2dwZ3J0X2I2NHN0YXRlICpn cGdydF9iNjRzdGF0ZV90OwogZ3BncnRfYjY0c3RhdGVfdCBncGdydF9iNjRkZWNfc3RhcnQgKGNv bnN0IGNoYXIgKnRpdGxlKTsKIGdwZ19lcnJvcl90ICAgICAgZ3BncnRfYjY0ZGVjX3Byb2MgKGdw Z3J0X2I2NHN0YXRlX3Qgc3RhdGUsCmRpZmYgLS1naXQgYS91dGlsL2ltcG9ydF9nY3J5LnB5IGIv dXRpbC9pbXBvcnRfZ2NyeS5weQppbmRleCBhNDQxMWVjYjkuLmI2ZGRkZTljZCAxMDA2NDQKLS0t IGEvdXRpbC9pbXBvcnRfZ2NyeS5weQorKysgYi91dGlsL2ltcG9ydF9nY3J5LnB5CkBAIC0xMjAs NyArMTIwLDggQEAgbWRibG9ja3NpemVzID0geyJfZ2NyeV9kaWdlc3Rfc3BlY19jcmMzMiIgOiA2 NCwKICAgICAgICAgICAgICAgICAiX2djcnlfZGlnZXN0X3NwZWNfZ29zdDM0MTFfOTQiOiAzMiwK ICAgICAgICAgICAgICAgICAiX2djcnlfZGlnZXN0X3NwZWNfZ29zdDM0MTFfY3AiOiAzMiwKICAg ICAgICAgICAgICAgICAiX2djcnlfZGlnZXN0X3NwZWNfY3NoYWtlMTI4IjogNjQsCi0gICAgICAg ICAgICAgICAgIl9nY3J5X2RpZ2VzdF9zcGVjX2NzaGFrZTI1NiI6IDY0fQorICAgICAgICAgICAg ICAgICJfZ2NyeV9kaWdlc3Rfc3BlY19jc2hha2UyNTYiOiA2NCwKKyAgICAgICAgICAgICAgICAi X2djcnlfZGlnZXN0X3NwZWNfYmxha2UyIjogIkdSVUJfQkxBS0UyICMjIEJTICMjIF9CTE9DS19T SVpFIn0KIAogY3J5cHRvbGlzdCA9IGNvZGVjcy5vcGVuIChvcy5wYXRoLmpvaW4gKGNpcGhlcl9k aXJfb3V0LCAiY3J5cHRvLmxzdCIpLCAidyIsICJ1dGYtOCIpCiAKQEAgLTIwOSw2ICsyMTAsNyBA QCBmb3IgY2lwaGVyX2ZpbGUgaW4gY2lwaGVyX2ZpbGVzOgogICAgICAgICBza2lwID0gMAogICAg ICAgICBza2lwMiA9IEZhbHNlCiAgICAgICAgIGlzbWQgPSBGYWxzZQorICAgICAgICBpc21kZGVm aW5lID0gRmFsc2UKICAgICAgICAgbWRhcmcgPSAwCiAgICAgICAgIGlzcGsgPSBGYWxzZQogICAg ICAgICBpc2NpcGhlciA9IEZhbHNlCkBAIC0yNDUsMTkgKzI0NywxOSBAQCBmb3IgY2lwaGVyX2Zp bGUgaW4gY2lwaGVyX2ZpbGVzOgogICAgICAgICAgICAgICAgIG1kYXJnID0gbWRhcmcgKyBsZW4g KHNwbCkgLSAxCiAgICAgICAgICAgICBpZiBpc21kIG9yIGlzY2lwaGVyIG9yIGlzcGs6CiAgICAg ICAgICAgICAgICAgaWYgbm90IHJlLnNlYXJjaCAoIiAqfTsiLCBsaW5lKSBpcyBOb25lOgorICAg ICAgICAgICAgICAgICAgICBlc2NhcGVubCA9ICIgXFwiIGlmIGlzbWRkZWZpbmUgZWxzZSAiIgog ICAgICAgICAgICAgICAgICAgICBpZiBub3QgaXNjb21tYToKLSAgICAgICAgICAgICAgICAgICAg ICAgIGZ3LndyaXRlICgiICAgICxcbiIpCi0gICAgICAgICAgICAgICAgICAgIGZ3LndyaXRlICgi I2lmZGVmIEdSVUJfVVRJTFxuIik7Ci0gICAgICAgICAgICAgICAgICAgIGZ3LndyaXRlICgiICAg IC5tb2RuYW1lID0gXCIlc1wiLFxuIiAlIG1vZG5hbWUpOwotICAgICAgICAgICAgICAgICAgICBm dy53cml0ZSAoIiNlbmRpZlxuIik7CisgICAgICAgICAgICAgICAgICAgICAgICBmdy53cml0ZSAo ZiIgICAgLHtlc2NhcGVubH1cbiIpCisgICAgICAgICAgICAgICAgICAgIGZ3LndyaXRlIChmIiAg ICBHUlVCX1VUSUxfTU9ETkFNRShcIiVzXCIpe2VzY2FwZW5sfVxuIiAlIG1vZG5hbWUpOwogICAg ICAgICAgICAgICAgICAgICBpZiBpc21kOgogICAgICAgICAgICAgICAgICAgICAgICAgaWYgbm90 IChtZG5hbWUgaW4gbWRibG9ja3NpemVzKToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBw cmludCAoIkVSUk9SOiBVbmtub3duIGRpZ2VzdCBibG9ja3NpemU6ICVzXG4iCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICUgbWRuYW1lKQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGV4aXQgKDEpCi0gICAgICAgICAgICAgICAgICAgICAgICBmdy53cml0ZSAoIiAgICAu YmxvY2tzaXplID0gJXNcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgIGZ3LndyaXRlIChmIiAg ICAuYmxvY2tzaXplID0gJXN7ZXNjYXBlbmx9XG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJSBtZGJsb2Nrc2l6ZXMgW21kbmFtZV0pCiAgICAgICAgICAgICAgICAgICAgIGlz bWQgPSBGYWxzZQorICAgICAgICAgICAgICAgICAgICBpc21kZGVmaW5lID0gRmFsc2UKICAgICAg ICAgICAgICAgICAgICAgbWRhcmcgPSAwCiAgICAgICAgICAgICAgICAgICAgIGlzY2lwaGVyID0g RmFsc2UKICAgICAgICAgICAgICAgICAgICAgaXNwayA9IEZhbHNlCkBAIC0yODEsNyArMjgzLDcg QEAgZm9yIGNpcGhlcl9maWxlIGluIGNpcGhlcl9maWxlczoKICAgICAgICAgICAgICAgICBob2xk ID0gRmFsc2UKICAgICAgICAgICAgICAgICAjIFdlJ3JlIG9wdGltaXNpbmcgZm9yIHNpemUgYW5k IGV4Y2x1ZGUgYW55dGhpbmcgbmVlZGluZyBnb29kCiAgICAgICAgICAgICAgICAgIyByYW5kb21u ZXNzLgotICAgICAgICAgICAgICAgIGlmIHJlLm1hdGNoICgiKF9nY3J5X2hhc2hfc2VsZnRlc3Rf Y2hlY2tfb25lfGJ1bGtfc2VsZnRlc3Rfc2V0a2V5fHJ1bl9zZWxmdGVzdHN8ZG9fdHJpcGxlZGVz X3NldF9leHRyYV9pbmZvfHNlbGZ0ZXN0fHNtNF9zZWxmdGVzdHxfZ2NyeV9bYS16MC05X10qX2hh c2hfYnVmZmVyc3xfZ2NyeV9zaGExX2hhc2hfYnVmZmVyfHRyaXBsZWRlc19zZXQya2V5c3xfZ2Ny eV9ybWQxNjBfbWl4YmxvY2t8c2VycGVudF90ZXN0fGRzYV9nZW5lcmF0ZV9leHR8dGVzdF9rZXlz fGdlbl9rfHNpZ258Z2VuX3g5MzFfcGFybV94cHxnZW5lcmF0ZV94OTMxfGdlbmVyYXRlX2tleXxk c2FfZ2VuZXJhdGV8ZHNhX3NpZ258ZWNjX3NpZ258Z2VuZXJhdGV8Z2VuZXJhdGVfZmlwczE4Nnxf Z2NyeV9yZWdpc3Rlcl9wa19kc2FfcHJvZ3Jlc3N8X2djcnlfcmVnaXN0ZXJfcGtfZWNjX3Byb2dy ZXNzfHByb2dyZXNzfHNjYW52YWx8ZWMyb3N8ZWNjX2dlbmVyYXRlX2V4dHxlY2NfZ2VuZXJhdGV8 ZWNjX2dldF9wYXJhbXxfZ2NyeV9yZWdpc3Rlcl9wa19kc2FfcHJvZ3Jlc3N8Z2VuX3g5MzFfcGFy bV94cHxnZW5feDkzMV9wYXJtX3hpfHJzYV9kZWNyeXB0fHJzYV9zaWdufHJzYV9nZW5lcmF0ZV9l eHR8cnNhX2dlbmVyYXRlfHNlY3JldHxjaGVja19leHBvbmVudHxyc2FfYmxpbmR8cnNhX3VuYmxp bmR8ZXh0cmFjdF9hX2Zyb21fc2V4cHxjdXJ2ZV9mcmVlfGN1cnZlX2NvcHl8cG9pbnRfc2V0fF9n Y3J5X2RzYV9nZW5fcmZjNjk3OV9rfGJpdHMyb2N0ZXRzfGludDJvY3RldHN8X2djcnlfbWRfZGVi dWd8X2djcnlfbWRfc2VsZnRlc3R8X2djcnlfbWRfaXNfZW5hYmxlZHxfZ2NyeV9tZF9pc19zZWN1 cmV8X2djcnlfbWRfaW5pdHxfZ2NyeV9tZF9pbmZvfG1kX2dldF9hbGdvfG1kX2V4dHJhY3R8X2dj cnlfbWRfZ2V0IHxfZ2NyeV9tZF9nZXRfYWxnbyB8X2djcnlfbWRfZXh0cmFjdHxfZ2NyeV9tZF9z ZXRrZXl8bWRfc2V0a2V5fHByZXBhcmVfbWFjcGFkc3xfZ2NyeV9tZF9hbGdvX25hbWV8c2VhcmNo X29pZHxzcGVjX2Zyb21fb2lkfHNwZWNfZnJvbV9uYW1lfHNwZWNfZnJvbV9hbGdvfG1hcF9hbGdv fGNzaGFrZV9oYXNoX2J1ZmZlcnMpIiwgbGluZSkgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAg ICAgaWYgcmUubWF0Y2ggKCIoX2djcnlfaGFzaF9zZWxmdGVzdF9jaGVja19vbmV8YnVsa19zZWxm dGVzdF9zZXRrZXl8cnVuX3NlbGZ0ZXN0c3xkb190cmlwbGVkZXNfc2V0X2V4dHJhX2luZm98c2Vs ZnRlc3R8c200X3NlbGZ0ZXN0fF9nY3J5X1thLXowLTlfXSpfaGFzaF9idWZmZXJzfF9nY3J5X3No YTFfaGFzaF9idWZmZXJ8dHJpcGxlZGVzX3NldDJrZXlzfF9nY3J5X3JtZDE2MF9taXhibG9ja3xz ZXJwZW50X3Rlc3R8ZHNhX2dlbmVyYXRlX2V4dHx0ZXN0X2tleXN8Z2VuX2t8c2lnbnxnZW5feDkz MV9wYXJtX3hwfGdlbmVyYXRlX3g5MzF8Z2VuZXJhdGVfa2V5fGRzYV9nZW5lcmF0ZXxkc2Ffc2ln bnxlY2Nfc2lnbnxnZW5lcmF0ZXxnZW5lcmF0ZV9maXBzMTg2fF9nY3J5X3JlZ2lzdGVyX3BrX2Rz YV9wcm9ncmVzc3xfZ2NyeV9yZWdpc3Rlcl9wa19lY2NfcHJvZ3Jlc3N8cHJvZ3Jlc3N8c2NhbnZh bHxlYzJvc3xlY2NfZ2VuZXJhdGVfZXh0fGVjY19nZW5lcmF0ZXxlY2NfZ2V0X3BhcmFtfF9nY3J5 X3JlZ2lzdGVyX3BrX2RzYV9wcm9ncmVzc3xnZW5feDkzMV9wYXJtX3hwfGdlbl94OTMxX3Bhcm1f eGl8cnNhX2RlY3J5cHR8cnNhX3NpZ258cnNhX2dlbmVyYXRlX2V4dHxyc2FfZ2VuZXJhdGV8c2Vj cmV0fGNoZWNrX2V4cG9uZW50fHJzYV9ibGluZHxyc2FfdW5ibGluZHxleHRyYWN0X2FfZnJvbV9z ZXhwfGN1cnZlX2ZyZWV8Y3VydmVfY29weXxwb2ludF9zZXR8X2djcnlfZHNhX2dlbl9yZmM2OTc5 X2t8Yml0czJvY3RldHN8aW50Mm9jdGV0c3xfZ2NyeV9tZF9kZWJ1Z3xfZ2NyeV9tZF9zZWxmdGVz dHxfZ2NyeV9tZF9pc19lbmFibGVkfF9nY3J5X21kX2lzX3NlY3VyZXxfZ2NyeV9tZF9pbml0fF9n Y3J5X21kX2luZm98bWRfZ2V0X2FsZ298bWRfZXh0cmFjdHxfZ2NyeV9tZF9nZXQgfF9nY3J5X21k X2dldF9hbGdvIHxfZ2NyeV9tZF9leHRyYWN0fF9nY3J5X21kX3NldGtleXxtZF9zZXRrZXl8cHJl cGFyZV9tYWNwYWRzfF9nY3J5X21kX2FsZ29fbmFtZXxzZWFyY2hfb2lkfHNwZWNfZnJvbV9vaWR8 c3BlY19mcm9tX25hbWV8c3BlY19mcm9tX2FsZ298bWFwX2FsZ298Y3NoYWtlX2hhc2hfYnVmZmVy c3xibGFrZTJiX3ZsX2hhc2h8c2VsZnRlc3Rfc2VxKSIsIGxpbmUpIGlzIG5vdCBOb25lOgogCiAg ICAgICAgICAgICAgICAgICAgIHNraXAgPSAxCiAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBy ZS5tYXRjaCAoInNlbGZ0ZXN0IiwgbGluZSkgaXMgTm9uZSBhbmQgY2lwaGVyX2ZpbGUgPT0gImlk ZWEuYyI6CkBAIC0zNTUsNiArMzU3LDEzIEBAIGZvciBjaXBoZXJfZmlsZSBpbiBjaXBoZXJfZmls ZXM6CiAgICAgICAgICAgICAgICAgaXNwayA9IFRydWUKICAgICAgICAgICAgICAgICBpc2NyeXB0 b3N0YXJ0ID0gVHJ1ZQogCisgICAgICAgICAgICBtID0gcmUubWF0Y2ggKHIiREVGSU5FX0JMQUtF Ml9WQVJJQU5UXCgoLiksICguKSwgKFswLTldKikiLCBsaW5lKQorICAgICAgICAgICAgaWYgaXNj IGFuZCBub3QgbSBpcyBOb25lOgorICAgICAgICAgICAgICAgIGJzID0gbS5ncm91cHMoKVswXQor ICAgICAgICAgICAgICAgIGJpdHMgPSBtLmdyb3VwcygpWzJdCisgICAgICAgICAgICAgICAgbWRu YW1lID0gZiJfZ2NyeV9kaWdlc3Rfc3BlY19ibGFrZTJ7YnN9X3tiaXRzfSIKKyAgICAgICAgICAg ICAgICBtZG5hbWVzLmFwcGVuZCAobWRuYW1lKQorCiAgICAgICAgICAgICBtID0gcmUubWF0Y2gg KCIoY29uc3QgKT9nY3J5X21kX3NwZWNfdCIsIGxpbmUpCiAgICAgICAgICAgICBpZiBpc2MgYW5k IG5vdCBtIGlzIE5vbmU6CiAgICAgICAgICAgICAgICAgYXNzZXJ0IChub3QgaXNtZCkKQEAgLTM2 Niw2ICszNzUsMTkgQEAgZm9yIGNpcGhlcl9maWxlIGluIGNpcGhlcl9maWxlczoKICAgICAgICAg ICAgICAgICBtZG5hbWUgPSByZS5tYXRjaCgiW2EtekEtWjAtOV9dKiIsbWRuYW1lKS5ncm91cCAo KQogICAgICAgICAgICAgICAgIG1kbmFtZXMuYXBwZW5kIChtZG5hbWUpCiAgICAgICAgICAgICAg ICAgaXNtZCA9IFRydWUKKyAgICAgICAgICAgICAgICBpc21kZGVmaW5lID0gRmFsc2UKKyAgICAg ICAgICAgICAgICBtZGFyZyA9IDAKKyAgICAgICAgICAgICAgICBpc2NyeXB0b3N0YXJ0ID0gVHJ1 ZQorICAgICAgICAgICAgbSA9IHJlLm1hdGNoICgiICAoY29uc3QgKT9nY3J5X21kX3NwZWNfdCBf Z2NyeV9kaWdlc3Rfc3BlY19ibGFrZTIuKlxcXFwiLCBsaW5lKQorICAgICAgICAgICAgaWYgaXNj IGFuZCBub3QgbSBpcyBOb25lOgorICAgICAgICAgICAgICAgIGFzc2VydCAobm90IGlzbWQpCisg ICAgICAgICAgICAgICAgYXNzZXJ0IChub3QgaXNwaykKKyAgICAgICAgICAgICAgICBhc3NlcnQg KG5vdCBpc2NpcGhlcikKKyAgICAgICAgICAgICAgICBhc3NlcnQgKG5vdCBpc2NyeXB0b3N0YXJ0 KQorICAgICAgICAgICAgICAgIGxpbmUgPSByZW1vdmVwcmVmaXgobGluZSwgIiAgY29uc3QgIikK KyAgICAgICAgICAgICAgICBpc21kID0gVHJ1ZQorICAgICAgICAgICAgICAgIGlzbWRkZWZpbmUg PSBUcnVlCisgICAgICAgICAgICAgICAgbWRuYW1lID0gIl9nY3J5X2RpZ2VzdF9zcGVjX2JsYWtl MiIKICAgICAgICAgICAgICAgICBtZGFyZyA9IDAKICAgICAgICAgICAgICAgICBpc2NyeXB0b3N0 YXJ0ID0gVHJ1ZQogICAgICAgICAgICAgbSA9IHJlLm1hdGNoIChyInN0YXRpYyBjb25zdCBjaGFy IFwqc2VsZnRlc3QuKjskIiwgbGluZSkKLS0gCjIuNDkuMAoKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCkdydWItZGV2ZWwgbWFpbGluZyBsaXN0CkdydWIt ZGV2ZWxAZ251Lm9yZwpodHRwczovL2xpc3RzLmdudS5vcmcvbWFpbG1hbi9saXN0aW5mby9ncnVi LWRldmVsCg==