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 63E62C8303F for ; Tue, 26 Aug 2025 02:03:59 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uqj1a-0006dU-FR; Mon, 25 Aug 2025 22:03:02 -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 1uqj1F-0006V8-NU for grub-devel@gnu.org; Mon, 25 Aug 2025 22:02:42 -0400 Received: from mail-wr1-x433.google.com ([2a00:1450:4864:20::433]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uqj13-0004Jm-Qp for grub-devel@gnu.org; Mon, 25 Aug 2025 22:02:40 -0400 Received: by mail-wr1-x433.google.com with SMTP id ffacd0b85a97d-3c6743a10e3so1983037f8f.0 for ; Mon, 25 Aug 2025 19:02:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1756173745; x=1756778545; 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=H5MXDiP1zSRD+xcbdYTg1Gu9xx5grHWn5+ItTO8p2nU=; b=LwgAi75+buUUS8DJFReCxcwui/G7lbR9lAEPnC3I7OVIvgz160T+FVzRuWBfxxAjch jDVFpkVJY+1IV4wxcwRtag+W52Xztjw/tAJ5e//qkTBEsNPjHFRAl9jodGN7fmXWGryE yxiOdSGHiyMudmpLOYr17lHX4Xpp0xVwPvLAsDFMUSarw3M+jOu9inBM9EoeQQOrWlPh u7IO1GtwHxOT1bZaQZ8rIMbAP4jpJkikE6rz2O6l45RGFzlc8quqzxUUYEHfzAQ1c68E tDym47s3yxVivO9TSJ56E2Z8+wXKIGWBVeWTON/QH+YXf8JbKYlIQEfFWbTqEKVOfvjK 6wlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756173745; x=1756778545; 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=H5MXDiP1zSRD+xcbdYTg1Gu9xx5grHWn5+ItTO8p2nU=; b=Q9EyUS6yMNJayM8rm6lV7WeXPmxb/AkDp9GRomdzkH6yCNVl/kcgvv6sXc+dv1Aiww tW4zbJEbW/cAfDs8Tc4FqlJeeMiZ2ZX/Tl0pUDAlYrWQ66zw1zI9jjT5qYPHHEXyk2lE J+Dh2xUV/nJwrHyXxB5G3VgrgNP0/aSm8P8m9dyBDL2s4KFUB+uuLwG9d+3apI5AUILe jAH9XIlM2Cnu/m3mKE6fj5Oay3J7jG5vsGwv+QUT9wyDokVKyGdrUger6FwG8CC8j+gL N7TGZxY1S4zXT9TgwPiiQh+G4Sz8kNsvIRbujgSbLxR9nzHOxEMVPPCSmfjzTVfH0iy+ 6Skg== X-Gm-Message-State: AOJu0YzNATTjiXBb+V/vR/pwOY9opHx/eciyvxhhUzxiN7SY0yVXvT+7 5ua8Z9DKliUCyTxqxf5GKfvIyXrBTEskzX+89s7C8TBgyeqVKlcAjNG8JB2/Sr04b0dv/oYMfPN 7Hwny X-Gm-Gg: ASbGncsNGAOpsFB+Emm654NWhAPpFfMF450JN9gwWqm5JBB8kY4pF5J0WIshFVM4EJ+ 5p/U4I0ZaBCBy1yo0rj0uMFDdm2MpdpkQqlV3wi3geg2PpfpqFF/MRJ4gb/y6yLPo5TQ8HdCBw6 BRimEVnjYaOaHXFRTBdQoxvneXZp6acGXgHpWZlFP20TMm1FQy8QoN8PM/vLTMLaq27XPoKsdjs /cRcz5/NiLTtYy9gbehtYK+lwvq4aXHUXorn5V1Tqgf/OC9gkWMzlr0rTCcsmRgLUMw4zsjfFBG zqQUsox/kz4I63bpC5jz6ma7D/2tRwolFHx/L+07p65dSCzhVbHFGeY/s5cVdIoUiK74flhA1pZ dsQiwnUElObBpV/IXQWpvA1zRbRJSLFBOQeelQNT4M1KhVUlkD+T6hdVwoyibtHw= X-Google-Smtp-Source: AGHT+IFpdDiTgO4FyH2gYRds9+KGM0Rz/SdLZpYV8ngnCyesZUe9II0UioLKL4xdPuKN/LcZBoNmFQ== X-Received: by 2002:a05:6000:2503:b0:3b7:7489:3ddb with SMTP id ffacd0b85a97d-3c5dc731731mr8778673f8f.34.1756173745266; Mon, 25 Aug 2025 19:02:25 -0700 (PDT) Received: from localhost (111-240-141-138.dynamic-ip.hinet.net. [111.240.141.138]) by smtp.gmail.com with UTF8SMTPSA id d2e1a72fcca58-770b5bed408sm4983319b3a.18.2025.08.25.19.02.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 25 Aug 2025 19:02:24 -0700 (PDT) To: The development of GNU GRUB Subject: [PATCH v3 07/12] argon2: Introduce grub_crypto_argon2() Date: Tue, 26 Aug 2025 10:01:53 +0800 Message-ID: <20250826020158.738-8-glin@suse.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250826020158.738-1-glin@suse.com> References: <20250826020158.738-1-glin@suse.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::433; envelope-from=glin@suse.com; helo=mail-wr1-x433.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=0.01 autolearn=no 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: , From: Gary Lin via Grub-devel Reply-To: The development of GNU GRUB Cc: Gary Lin , Daniel Kiper , Vladimir 'phcoder' Serbinenko , Glenn Washburn , Michael Chang , Waldemar Brodkorb 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 VGhpcyBjb21taXQgaW50cm9kdWNlcyBncnViX2NyeXB0b19hcmdvbjIoKSB3aGljaCBsZXZlcmFn ZXMgdGhlCidfZ2NyeV9rZGZfKicgZnVuY3Rpb25zIGZyb20gbGliZ2NyeXB0IHRvIHByb3ZpZGUg QXJnb24yIHN1cHBvcnQuCgpEdWUgdG8gdGhlIGRlcGVuZGVuY3kgb2YgdGhlICdfZ2NyeV9rZGZf KicgZnVuY3Rpb25zLCB0aGUgb3JkZXIgb2YKJ2xkYWRkJyBlbnRyaWVzIGhhdmUgdG8gYmUgdHdl YWtlZCBpbiBNYWtlZmlsZS51dGlsLmRlZiBzbyB0aGF0IHRoZQpsaW5rZXIgY2FuIGRpc2NvdmVy IHRob3NlIGZ1bmN0aW9ucy4KClNpZ25lZC1vZmYtYnk6IEdhcnkgTGluIDxnbGluQHN1c2UuY29t PgpSZXZpZXdlZC1ieTogVmxhZGltaXIgU2VyYmluZW5rbzxwaGNvZGVyQGdtYWlsLmNvbT4KLS0t CiBNYWtlZmlsZS51dGlsLmRlZiAgICAgICAgICAgfCA1NSArKysrKysrKysrKysrKysrKysrLS0t LS0tLS0tLS0tLS0tLS0tCiBncnViLWNvcmUvTWFrZWZpbGUuY29yZS5kZWYgfCAgNSArKysrCiBn cnViLWNvcmUvbGliL2FyZ29uMi5jICAgICAgfCA1MiArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKwogaW5jbHVkZS9ncnViL2NyeXB0by5oICAgICAgIHwgIDkgKysrKysrCiA0IGZp bGVzIGNoYW5nZWQsIDk0IGluc2VydGlvbnMoKyksIDI3IGRlbGV0aW9ucygtKQogY3JlYXRlIG1v ZGUgMTAwNjQ0IGdydWItY29yZS9saWIvYXJnb24yLmMKCmRpZmYgLS1naXQgYS9NYWtlZmlsZS51 dGlsLmRlZiBiL01ha2VmaWxlLnV0aWwuZGVmCmluZGV4IDAzODI1M2IzNy4uZjhkNGFlN2QzIDEw MDY0NAotLS0gYS9NYWtlZmlsZS51dGlsLmRlZgorKysgYi9NYWtlZmlsZS51dGlsLmRlZgpAQCAt NDMsNiArNDMsNyBAQCBsaWJyYXJ5ID0gewogICBjb21tb24gPSBncnViLWNvcmUvZGlzay9rZXlf cHJvdGVjdG9yLmM7CiAgIGNvbW1vbiA9IGdydWItY29yZS9kaXNrL2NyeXB0b2Rpc2suYzsKICAg Y29tbW9uID0gZ3J1Yi1jb3JlL2Rpc2svQUZTcGxpdHRlci5jOworICBjb21tb24gPSBncnViLWNv cmUvbGliL2FyZ29uMi5jOwogICBjb21tb24gPSBncnViLWNvcmUvbGliL3Bia2RmMi5jOwogICBj b21tb24gPSBncnViLWNvcmUvY29tbWFuZHMvZXh0Y21kLmM7CiAgIGNvbW1vbiA9IGdydWItY29y ZS9saWIvYXJnLmM7CkBAIC0yMDEsOCArMjAyLDggQEAgcHJvZ3JhbSA9IHsKICAgZXh0cmFfZGlz dCA9IHV0aWwvZ3J1Yi1ta2ltYWdleHguYzsKIAogICBsZGFkZCA9IGxpYmdydWJtb2RzLmE7Ci0g IGxkYWRkID0gbGliZ3J1YmdjcnkuYTsKICAgbGRhZGQgPSBsaWJncnVia2Vybi5hOworICBsZGFk ZCA9IGxpYmdydWJnY3J5LmE7CiAgIGxkYWRkID0gZ3J1Yi1jb3JlL2xpYi9nbnVsaWIvbGliZ251 LmE7CiAgIGxkYWRkID0gJyQoTElCTFpNQSknOwogICBsZGFkZCA9ICckKExJQklOVEwpICQoTElC REVWTUFQUEVSKSAkKExJQlpGUykgJChMSUJOVlBBSVIpICQoTElCR0VPTSknOwpAQCAtMjI1LDgg KzIyNiw4IEBAIHByb2dyYW0gPSB7CiAgIGNmbGFncyA9ICctSSQoc3JjZGlyKS9ncnViLWNvcmUv bGliL3RzczIgLUkkKHNyY2RpcikvZ3J1Yi1jb3JlL2NvbW1hbmRzL3RwbTJfa2V5X3Byb3RlY3Rv cic7CiAKICAgbGRhZGQgPSBsaWJncnVibW9kcy5hOwotICBsZGFkZCA9IGxpYmdydWJnY3J5LmE7 CiAgIGxkYWRkID0gbGliZ3J1Ymtlcm4uYTsKKyAgbGRhZGQgPSBsaWJncnViZ2NyeS5hOwogICBs ZGFkZCA9IGdydWItY29yZS9saWIvZ251bGliL2xpYmdudS5hOwogICBsZGFkZCA9ICckKExJQlRB U04xKSc7CiAgIGxkYWRkID0gJyQoTElCSU5UTCkgJChMSUJERVZNQVBQRVIpICQoTElCVVRJTCkg JChMSUJaRlMpICQoTElCTlZQQUlSKSAkKExJQkdFT00pJzsKQEAgLTI0Myw4ICsyNDQsOCBAQCBw cm9ncmFtID0gewogICBjb21tb24gPSBncnViLWNvcmUvb3NkZXAvaW5pdC5jOwogCiAgIGxkYWRk ID0gbGliZ3J1Ym1vZHMuYTsKLSAgbGRhZGQgPSBsaWJncnViZ2NyeS5hOwogICBsZGFkZCA9IGxp YmdydWJrZXJuLmE7CisgIGxkYWRkID0gbGliZ3J1YmdjcnkuYTsKICAgbGRhZGQgPSBncnViLWNv cmUvbGliL2dudWxpYi9saWJnbnUuYTsKICAgbGRhZGQgPSAnJChMSUJJTlRMKSAkKExJQkRFVk1B UFBFUikgJChMSUJVVElMKSAkKExJQlpGUykgJChMSUJOVlBBSVIpICQoTElCR0VPTSknOwogfTsK QEAgLTI1OCw4ICsyNTksOCBAQCBwcm9ncmFtID0gewogICBjb21tb24gPSBncnViLWNvcmUvb3Nk ZXAvaW5pdC5jOwogCiAgIGxkYWRkID0gbGliZ3J1Ym1vZHMuYTsKLSAgbGRhZGQgPSBsaWJncnVi Z2NyeS5hOwogICBsZGFkZCA9IGxpYmdydWJrZXJuLmE7CisgIGxkYWRkID0gbGliZ3J1Ymdjcnku YTsKICAgbGRhZGQgPSBncnViLWNvcmUvbGliL2dudWxpYi9saWJnbnUuYTsKICAgbGRhZGQgPSAn JChMSUJJTlRMKSAkKExJQkRFVk1BUFBFUikgJChMSUJaRlMpICQoTElCTlZQQUlSKSAkKExJQkdF T00pJzsKIH07CkBAIC0yODQsOCArMjg1LDggQEAgcHJvZ3JhbSA9IHsKIAogICBsZGFkZCA9ICck KExJQkxaTUEpJzsKICAgbGRhZGQgPSBsaWJncnVibW9kcy5hOwotICBsZGFkZCA9IGxpYmdydWJn Y3J5LmE7CiAgIGxkYWRkID0gbGliZ3J1Ymtlcm4uYTsKKyAgbGRhZGQgPSBsaWJncnViZ2NyeS5h OwogICBsZGFkZCA9IGdydWItY29yZS9saWIvZ251bGliL2xpYmdudS5hOwogICBsZGFkZCA9ICck KExJQklOVEwpICQoTElCREVWTUFQUEVSKSAkKExJQlpGUykgJChMSUJOVlBBSVIpICQoTElCR0VP TSknOwogfTsKQEAgLTMwMCw4ICszMDEsOCBAQCBwcm9ncmFtID0gewogICBjb21tb24gPSBncnVi LWNvcmUvb3NkZXAvaW5pdC5jOwogCiAgIGxkYWRkID0gbGliZ3J1Ym1vZHMuYTsKLSAgbGRhZGQg PSBsaWJncnViZ2NyeS5hOwogICBsZGFkZCA9IGxpYmdydWJrZXJuLmE7CisgIGxkYWRkID0gbGli Z3J1YmdjcnkuYTsKICAgbGRhZGQgPSBncnViLWNvcmUvbGliL2dudWxpYi9saWJnbnUuYTsKICAg bGRhZGQgPSAnJChMSUJJTlRMKSAkKExJQkRFVk1BUFBFUikgJChMSUJaRlMpICQoTElCTlZQQUlS KSAkKExJQkdFT00pJzsKIH07CkBAIC0zMjMsOCArMzI0LDggQEAgcHJvZ3JhbSA9IHsKICAgY29t bW9uID0gZ3J1Yi1jb3JlL29zZGVwL2luaXQuYzsKIAogICBsZGFkZCA9IGxpYmdydWJtb2RzLmE7 Ci0gIGxkYWRkID0gbGliZ3J1YmdjcnkuYTsKICAgbGRhZGQgPSBsaWJncnVia2Vybi5hOworICBs ZGFkZCA9IGxpYmdydWJnY3J5LmE7CiAgIGxkYWRkID0gZ3J1Yi1jb3JlL2xpYi9nbnVsaWIvbGli Z251LmE7CiAgIGxkYWRkID0gJyQoTElCSU5UTCkgJChMSUJERVZNQVBQRVIpICQoTElCVVRJTCkg JChMSUJaRlMpICQoTElCTlZQQUlSKSAkKExJQkdFT00pJzsKIH07CkBAIC0zNDEsOCArMzQyLDgg QEAgcHJvZ3JhbSA9IHsKICAgY2ZsYWdzID0gJyQoRlVTRV9DRkxBR1MpJzsKIAogICBsZGFkZCA9 IGxpYmdydWJtb2RzLmE7Ci0gIGxkYWRkID0gbGliZ3J1YmdjcnkuYTsKICAgbGRhZGQgPSBsaWJn cnVia2Vybi5hOworICBsZGFkZCA9IGxpYmdydWJnY3J5LmE7CiAgIGxkYWRkID0gZ3J1Yi1jb3Jl L2xpYi9nbnVsaWIvbGliZ251LmE7CiAgIGxkYWRkID0gJyQoTElCSU5UTCkgJChMSUJERVZNQVBQ RVIpICQoTElCWkZTKSAkKExJQk5WUEFJUikgJChMSUJHRU9NKSAkKEZVU0VfTElCUyknOwogICBj b25kaXRpb24gPSBDT05EX0dSVUJfTU9VTlQ7CkBAIC0zNTksOCArMzYwLDggQEAgcHJvZ3JhbSA9 IHsKICAgY3BwZmxhZ3MgPSAnLURHUlVCX01LRk9OVD0xJzsKIAogICBsZGFkZCA9IGxpYmdydWJt b2RzLmE7Ci0gIGxkYWRkID0gbGliZ3J1YmdjcnkuYTsKICAgbGRhZGQgPSBsaWJncnVia2Vybi5h OworICBsZGFkZCA9IGxpYmdydWJnY3J5LmE7CiAgIGxkYWRkID0gZ3J1Yi1jb3JlL2xpYi9nbnVs aWIvbGliZ251LmE7CiAgIGxkYWRkID0gJyQoRlJFRVRZUEVfTElCUyknOwogICBsZGFkZCA9ICck KExJQklOVEwpICQoTElCREVWTUFQUEVSKSAkKExJQlpGUykgJChMSUJOVlBBSVIpICQoTElCR0VP TSknOwpAQCAtMzc4LDggKzM3OSw4IEBAIHByb2dyYW0gPSB7CiAgIGNvbW1vbiA9IGdydWItY29y ZS9vc2RlcC9pbml0LmM7CiAKICAgbGRhZGQgPSBsaWJncnVibW9kcy5hOwotICBsZGFkZCA9IGxp YmdydWJnY3J5LmE7CiAgIGxkYWRkID0gbGliZ3J1Ymtlcm4uYTsKKyAgbGRhZGQgPSBsaWJncnVi Z2NyeS5hOwogICBsZGFkZCA9IGdydWItY29yZS9saWIvZ251bGliL2xpYmdudS5hOwogICBsZGFk ZCA9ICckKExJQklOVEwpICQoTElCREVWTUFQUEVSKSAkKExJQlVUSUwpICQoTElCWkZTKSAkKExJ Qk5WUEFJUikgJChMSUJHRU9NKSc7CiB9OwpAQCAtNDM2LDggKzQzNyw4IEBAIHByb2dyYW0gPSB7 CiAgIGNvbW1vbiA9IGdydWItY29yZS9vc2RlcC9pbml0LmM7CiAKICAgbGRhZGQgPSBsaWJncnVi bW9kcy5hOwotICBsZGFkZCA9IGxpYmdydWJnY3J5LmE7CiAgIGxkYWRkID0gbGliZ3J1Ymtlcm4u YTsKKyAgbGRhZGQgPSBsaWJncnViZ2NyeS5hOwogICBsZGFkZCA9IGdydWItY29yZS9saWIvZ251 bGliL2xpYmdudS5hOwogICBsZGFkZCA9ICckKExJQklOVEwpICQoTElCREVWTUFQUEVSKSAkKExJ QlVUSUwpICQoTElCWkZTKSAkKExJQk5WUEFJUikgJChMSUJHRU9NKSc7CiB9OwpAQCAtNDUxLDgg KzQ1Miw4IEBAIHByb2dyYW0gPSB7CiAgIGNvbW1vbiA9IGdydWItY29yZS9vc2RlcC9pbml0LmM7 CiAKICAgbGRhZGQgPSBsaWJncnVibW9kcy5hOwotICBsZGFkZCA9IGxpYmdydWJnY3J5LmE7CiAg IGxkYWRkID0gbGliZ3J1Ymtlcm4uYTsKKyAgbGRhZGQgPSBsaWJncnViZ2NyeS5hOwogICBsZGFk ZCA9IGdydWItY29yZS9saWIvZ251bGliL2xpYmdudS5hOwogICBsZGFkZCA9ICckKExJQklOVEwp ICQoTElCREVWTUFQUEVSKSAkKExJQlpGUykgJChMSUJOVlBBSVIpICQoTElCR0VPTSknOwogfTsK QEAgLTQ2Niw4ICs0NjcsOCBAQCBwcm9ncmFtID0gewogICBjb21tb24gPSBncnViLWNvcmUva2Vy bi9lbXUvYXJncF9jb21tb24uYzsKIAogICBsZGFkZCA9IGxpYmdydWJtb2RzLmE7Ci0gIGxkYWRk ID0gbGliZ3J1YmdjcnkuYTsKICAgbGRhZGQgPSBsaWJncnVia2Vybi5hOworICBsZGFkZCA9IGxp YmdydWJnY3J5LmE7CiAgIGxkYWRkID0gZ3J1Yi1jb3JlL2xpYi9nbnVsaWIvbGliZ251LmE7CiAg IGxkYWRkID0gJyQoTElCSU5UTCkgJChMSUJERVZNQVBQRVIpICQoTElCVVRJTCkgJChMSUJaRlMp ICQoTElCTlZQQUlSKSAkKExJQkdFT00pJzsKIH07CkBAIC02MDUsOCArNjA2LDggQEAgcHJvZ3Jh bSA9IHsKIAogICBsZGFkZCA9ICckKExJQkxaTUEpJzsKICAgbGRhZGQgPSBsaWJncnVibW9kcy5h OwotICBsZGFkZCA9IGxpYmdydWJnY3J5LmE7CiAgIGxkYWRkID0gbGliZ3J1Ymtlcm4uYTsKKyAg bGRhZGQgPSBsaWJncnViZ2NyeS5hOwogICBsZGFkZCA9IGdydWItY29yZS9saWIvZ251bGliL2xp YmdudS5hOwogICBsZGFkZCA9ICckKExJQklOVEwpICQoTElCREVWTUFQUEVSKSAkKExJQlVUSUwp ICQoTElCWkZTKSAkKExJQk5WUEFJUikgJChMSUJHRU9NKSc7CiAKQEAgLTY1Miw4ICs2NTMsOCBA QCBwcm9ncmFtID0gewogCiAgIGxkYWRkID0gJyQoTElCTFpNQSknOwogICBsZGFkZCA9IGxpYmdy dWJtb2RzLmE7Ci0gIGxkYWRkID0gbGliZ3J1YmdjcnkuYTsKICAgbGRhZGQgPSBsaWJncnVia2Vy bi5hOworICBsZGFkZCA9IGxpYmdydWJnY3J5LmE7CiAgIGxkYWRkID0gZ3J1Yi1jb3JlL2xpYi9n bnVsaWIvbGliZ251LmE7CiAgIGxkYWRkID0gJyQoTElCSU5UTCkgJChMSUJERVZNQVBQRVIpICQo TElCVVRJTCkgJChMSUJaRlMpICQoTElCTlZQQUlSKSAkKExJQkdFT00pJzsKIH07CkBAIC02OTEs OCArNjkyLDggQEAgcHJvZ3JhbSA9IHsKIAogICBsZGFkZCA9ICckKExJQkxaTUEpJzsKICAgbGRh ZGQgPSBsaWJncnVibW9kcy5hOwotICBsZGFkZCA9IGxpYmdydWJnY3J5LmE7CiAgIGxkYWRkID0g bGliZ3J1Ymtlcm4uYTsKKyAgbGRhZGQgPSBsaWJncnViZ2NyeS5hOwogICBsZGFkZCA9IGdydWIt Y29yZS9saWIvZ251bGliL2xpYmdudS5hOwogICBsZGFkZCA9ICckKExJQklOVEwpICQoTElCREVW TUFQUEVSKSAkKExJQlVUSUwpICQoTElCWkZTKSAkKExJQk5WUEFJUikgJChMSUJHRU9NKSc7CiB9 OwpAQCAtNzI3LDggKzcyOCw4IEBAIHByb2dyYW0gPSB7CiAKICAgbGRhZGQgPSAnJChMSUJMWk1B KSc7CiAgIGxkYWRkID0gbGliZ3J1Ym1vZHMuYTsKLSAgbGRhZGQgPSBsaWJncnViZ2NyeS5hOwog ICBsZGFkZCA9IGxpYmdydWJrZXJuLmE7CisgIGxkYWRkID0gbGliZ3J1YmdjcnkuYTsKICAgbGRh ZGQgPSBncnViLWNvcmUvbGliL2dudWxpYi9saWJnbnUuYTsKICAgbGRhZGQgPSAnJChMSUJJTlRM KSAkKExJQkRFVk1BUFBFUikgJChMSUJVVElMKSAkKExJQlpGUykgJChMSUJOVlBBSVIpICQoTElC R0VPTSknOwogfTsKQEAgLTEzMDUsOCArMTMwNiw4IEBAIHByb2dyYW0gPSB7CiAgIGNvbW1vbiA9 IGdydWItY29yZS9rZXJuL21pc2MuYzsKICAgY29tbW9uID0gZ3J1Yi1jb3JlL3Rlc3RzL2xpYi90 ZXN0LmM7CiAgIGxkYWRkID0gbGliZ3J1Ym1vZHMuYTsKLSAgbGRhZGQgPSBsaWJncnViZ2NyeS5h OwogICBsZGFkZCA9IGxpYmdydWJrZXJuLmE7CisgIGxkYWRkID0gbGliZ3J1YmdjcnkuYTsKICAg bGRhZGQgPSBncnViLWNvcmUvbGliL2dudWxpYi9saWJnbnUuYTsKICAgbGRhZGQgPSAnJChMSUJE RVZNQVBQRVIpICQoTElCWkZTKSAkKExJQk5WUEFJUikgJChMSUJHRU9NKSc7CiB9OwpAQCAtMTMy MCw4ICsxMzIxLDggQEAgcHJvZ3JhbSA9IHsKICAgY29tbW9uID0gZ3J1Yi1jb3JlL2tlcm4vbWlz Yy5jOwogICBjb21tb24gPSBncnViLWNvcmUvdGVzdHMvbGliL3Rlc3QuYzsKICAgbGRhZGQgPSBs aWJncnVibW9kcy5hOwotICBsZGFkZCA9IGxpYmdydWJnY3J5LmE7CiAgIGxkYWRkID0gbGliZ3J1 Ymtlcm4uYTsKKyAgbGRhZGQgPSBsaWJncnViZ2NyeS5hOwogICBsZGFkZCA9IGdydWItY29yZS9s aWIvZ251bGliL2xpYmdudS5hOwogICBsZGFkZCA9ICckKExJQkRFVk1BUFBFUikgJChMSUJaRlMp ICQoTElCTlZQQUlSKSAkKExJQkdFT00pJzsKIH07CkBAIC0xMzM1LDggKzEzMzYsOCBAQCBwcm9n cmFtID0gewogICBjb21tb24gPSBncnViLWNvcmUva2Vybi9taXNjLmM7CiAgIGNvbW1vbiA9IGdy dWItY29yZS90ZXN0cy9saWIvdGVzdC5jOwogICBsZGFkZCA9IGxpYmdydWJtb2RzLmE7Ci0gIGxk YWRkID0gbGliZ3J1YmdjcnkuYTsKICAgbGRhZGQgPSBsaWJncnVia2Vybi5hOworICBsZGFkZCA9 IGxpYmdydWJnY3J5LmE7CiAgIGxkYWRkID0gZ3J1Yi1jb3JlL2xpYi9nbnVsaWIvbGliZ251LmE7 CiAgIGxkYWRkID0gJyQoTElCREVWTUFQUEVSKSAkKExJQlpGUykgJChMSUJOVlBBSVIpICQoTElC R0VPTSknOwogfTsKQEAgLTEzNTEsOCArMTM1Miw4IEBAIHByb2dyYW0gPSB7CiAgIGNvbW1vbiA9 IGdydWItY29yZS90ZXN0cy9saWIvdGVzdC5jOwogICBjb21tb24gPSBncnViLWNvcmUvbGliL3By aW9yaXR5X3F1ZXVlLmM7CiAgIGxkYWRkID0gbGliZ3J1Ym1vZHMuYTsKLSAgbGRhZGQgPSBsaWJn cnViZ2NyeS5hOwogICBsZGFkZCA9IGxpYmdydWJrZXJuLmE7CisgIGxkYWRkID0gbGliZ3J1Ymdj cnkuYTsKICAgbGRhZGQgPSBncnViLWNvcmUvbGliL2dudWxpYi9saWJnbnUuYTsKICAgbGRhZGQg PSAnJChMSUJERVZNQVBQRVIpICQoTElCWkZTKSAkKExJQk5WUEFJUikgJChMSUJHRU9NKSc7CiAg IGNvbmRpdGlvbiA9IENPTkRfSEFWRV9DWFg7CkBAIC0xMzY3LDggKzEzNjgsOCBAQCBwcm9ncmFt ID0gewogICBjb21tb24gPSBncnViLWNvcmUva2Vybi9taXNjLmM7CiAgIGNvbW1vbiA9IGdydWIt Y29yZS90ZXN0cy9saWIvdGVzdC5jOwogICBsZGFkZCA9IGxpYmdydWJtb2RzLmE7Ci0gIGxkYWRk ID0gbGliZ3J1YmdjcnkuYTsKICAgbGRhZGQgPSBsaWJncnVia2Vybi5hOworICBsZGFkZCA9IGxp YmdydWJnY3J5LmE7CiAgIGxkYWRkID0gZ3J1Yi1jb3JlL2xpYi9nbnVsaWIvbGliZ251LmE7CiAg IGxkYWRkID0gJyQoTElCREVWTUFQUEVSKSAkKExJQlpGUykgJChMSUJOVlBBSVIpICQoTElCR0VP TSknOwogfTsKQEAgLTEzODIsOCArMTM4Myw4IEBAIHByb2dyYW0gPSB7CiAgIGNvbW1vbiA9IGdy dWItY29yZS9vc2RlcC9pbml0LmM7CiAKICAgbGRhZGQgPSBsaWJncnVibW9kcy5hOwotICBsZGFk ZCA9IGxpYmdydWJnY3J5LmE7CiAgIGxkYWRkID0gbGliZ3J1Ymtlcm4uYTsKKyAgbGRhZGQgPSBs aWJncnViZ2NyeS5hOwogICBsZGFkZCA9IGdydWItY29yZS9saWIvZ251bGliL2xpYmdudS5hOwog ICBsZGFkZCA9ICckKExJQklOVEwpICQoTElCREVWTUFQUEVSKSAkKExJQlpGUykgJChMSUJOVlBB SVIpICQoTElCR0VPTSknOwogfTsKQEAgLTE0MDAsOCArMTQwMSw4IEBAIHByb2dyYW0gPSB7CiAg IGNvbW1vbiA9IGdydWItY29yZS9rZXJuL2VtdS9hcmdwX2NvbW1vbi5jOwogCiAgIGxkYWRkID0g bGliZ3J1Ym1vZHMuYTsKLSAgbGRhZGQgPSBsaWJncnViZ2NyeS5hOwogICBsZGFkZCA9IGxpYmdy dWJrZXJuLmE7CisgIGxkYWRkID0gbGliZ3J1YmdjcnkuYTsKICAgbGRhZGQgPSBncnViLWNvcmUv bGliL2dudWxpYi9saWJnbnUuYTsKICAgbGRhZGQgPSAnJChMSUJJTlRMKSAkKExJQkRFVk1BUFBF UikgJChMSUJaRlMpICQoTElCTlZQQUlSKSAkKExJQkdFT00pJzsKIH07CkBAIC0xNDE2LDggKzE0 MTcsOCBAQCBwcm9ncmFtID0gewogICBjb21tb24gPSBncnViLWNvcmUvb3NkZXAvaW5pdC5jOwog CiAgIGxkYWRkID0gbGliZ3J1Ym1vZHMuYTsKLSAgbGRhZGQgPSBsaWJncnViZ2NyeS5hOwogICBs ZGFkZCA9IGxpYmdydWJrZXJuLmE7CisgIGxkYWRkID0gbGliZ3J1YmdjcnkuYTsKICAgbGRhZGQg PSBncnViLWNvcmUvbGliL2dudWxpYi9saWJnbnUuYTsKICAgbGRhZGQgPSAnJChMSUJJTlRMKSAk KExJQkRFVk1BUFBFUikgJChMSUJaRlMpICQoTElCTlZQQUlSKSAkKExJQkdFT00pJzsKIH07CkBA IC0xNDM0LDggKzE0MzUsOCBAQCBwcm9ncmFtID0gewogICBjb21tb24gPSBncnViLWNvcmUvb3Nk ZXAvaW5pdC5jOwogCiAgIGxkYWRkID0gbGliZ3J1Ym1vZHMuYTsKLSAgbGRhZGQgPSBsaWJncnVi Z2NyeS5hOwogICBsZGFkZCA9IGxpYmdydWJrZXJuLmE7CisgIGxkYWRkID0gbGliZ3J1Ymdjcnku YTsKICAgbGRhZGQgPSBncnViLWNvcmUvbGliL2dudWxpYi9saWJnbnUuYTsKICAgbGRhZGQgPSAn JChMSUJJTlRMKSAkKExJQkRFVk1BUFBFUikgJChMSUJaRlMpICQoTElCTlZQQUlSKSAkKExJQkdF T00pJzsKIH07CkBAIC0xNDYzLDggKzE0NjQsOCBAQCBwcm9ncmFtID0gewogICBjb21tb24gPSBn cnViLWNvcmUvb3NkZXAvaW5pdC5jOwogCiAgIGxkYWRkID0gbGliZ3J1Ym1vZHMuYTsKLSAgbGRh ZGQgPSBsaWJncnViZ2NyeS5hOwogICBsZGFkZCA9IGxpYmdydWJrZXJuLmE7CisgIGxkYWRkID0g bGliZ3J1YmdjcnkuYTsKICAgbGRhZGQgPSBncnViLWNvcmUvbGliL2dudWxpYi9saWJnbnUuYTsK ICAgbGRhZGQgPSAnJChMSUJJTlRMKSAkKExJQkRFVk1BUFBFUikgJChMSUJaRlMpICQoTElCTlZQ QUlSKSAkKExJQkdFT00pJzsKIH07CmRpZmYgLS1naXQgYS9ncnViLWNvcmUvTWFrZWZpbGUuY29y ZS5kZWYgYi9ncnViLWNvcmUvTWFrZWZpbGUuY29yZS5kZWYKaW5kZXggYjNmNzExOTZhLi4xNjE2 NmIxZWQgMTAwNjQ0Ci0tLSBhL2dydWItY29yZS9NYWtlZmlsZS5jb3JlLmRlZgorKysgYi9ncnVi LWNvcmUvTWFrZWZpbGUuY29yZS5kZWYKQEAgLTE2OTQsNiArMTY5NCwxMSBAQCBtb2R1bGUgPSB7 CiAgIGNvbW1vbiA9IGxpYi9wYmtkZjIuYzsKIH07CiAKK21vZHVsZSA9IHsKKyAgbmFtZSA9IGFy Z29uMjsKKyAgY29tbW9uID0gbGliL2FyZ29uMi5jOworfTsKKwogbW9kdWxlID0gewogICBuYW1l ID0gcmVsb2NhdG9yOwogICBjb21tb24gPSBsaWIvcmVsb2NhdG9yLmM7CmRpZmYgLS1naXQgYS9n cnViLWNvcmUvbGliL2FyZ29uMi5jIGIvZ3J1Yi1jb3JlL2xpYi9hcmdvbjIuYwpuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAuLjEyYWQ3YWQxYwotLS0gL2Rldi9udWxsCisrKyBi L2dydWItY29yZS9saWIvYXJnb24yLmMKQEAgLTAsMCArMSw1MiBAQAorLyoKKyAqICBHUlVCICAt LSAgR1JhbmQgVW5pZmllZCBCb290bG9hZGVyCisgKiAgQ29weXJpZ2h0IChDKSAyMDI1ICBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyAqCisgKiAgR1JVQiBpcyBmcmVlIHNvZnR3YXJl OiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiAgaXQgdW5kZXIgdGhl IHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkK KyAqICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRo ZSBMaWNlbnNlLCBvcgorICogIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisg KgorICogIEdSVUIgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVz ZWZ1bCwKKyAqICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1w bGllZCB3YXJyYW50eSBvZgorICogIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBB UlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5z ZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBj b3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogIGFsb25nIHdpdGggR1JV Qi4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisj aW5jbHVkZSA8Z3J1Yi9jcnlwdG8uaD4KKyNpbmNsdWRlIDxncnViL2RsLmg+CisKK0dSVUJfTU9E X0xJQ0VOU0UgKCJHUEx2MysiKTsKKworZ2NyeV9lcnJfY29kZV90CitncnViX2NyeXB0b19hcmdv bjIgKGludCBzdWJhbGdvLAorCQkgICAgY29uc3QgdW5zaWduZWQgbG9uZyAqcGFyYW0sIHVuc2ln bmVkIGludCBwYXJhbWxlbiwKKwkJICAgIGNvbnN0IHZvaWQgKnBhc3N3b3JkLCBncnViX3NpemVf dCBwYXNzd29yZGxlbiwKKwkJICAgIGNvbnN0IHZvaWQgKnNhbHQsIGdydWJfc2l6ZV90IHNhbHRs ZW4sCisJCSAgICBjb25zdCB2b2lkICprZXksIGdydWJfc2l6ZV90IGtleWxlbiwKKwkJICAgIGNv bnN0IHZvaWQgKmFkLCBncnViX3NpemVfdCBhZGxlbiwKKwkJICAgIGdydWJfc2l6ZV90IHJlc3Vs dGxlbiwgdm9pZCAqcmVzdWx0KQoreworICBnY3J5X2tkZl9oZF90IGhkID0gezB9OworICBncGdf ZXJyX2NvZGVfdCBlcnI7CisKKyAgaWYgKHNhbHRsZW4gPT0gMCkKKyAgICByZXR1cm4gR1BHX0VS Ul9JTlZfVkFMVUU7CisKKyAgZXJyID0gX2djcnlfa2RmX29wZW4gKCZoZCwgR1JVQl9HQ1JZX0tE Rl9BUkdPTjIsIHN1YmFsZ28sIHBhcmFtLCBwYXJhbWxlbiwKKwkJCXBhc3N3b3JkLCBwYXNzd29y ZGxlbiwgc2FsdCwgc2FsdGxlbiwga2V5LCBrZXlsZW4sCisJCQlhZCwgYWRsZW4pOworICBpZiAo ZXJyICE9IEdQR19FUlJfTk9fRVJST1IpCisgICAgcmV0dXJuIGVycjsKKworICBlcnIgPSBfZ2Ny eV9rZGZfY29tcHV0ZSAoaGQsIE5VTEwpOworICBpZiAoZXJyID09IEdQR19FUlJfTk9fRVJST1Ip CisgICAgZXJyID0gX2djcnlfa2RmX2ZpbmFsIChoZCwgcmVzdWx0bGVuLCByZXN1bHQpOworCisg IF9nY3J5X2tkZl9jbG9zZSAoaGQpOworCisgIHJldHVybiBlcnI7Cit9CmRpZmYgLS1naXQgYS9p bmNsdWRlL2dydWIvY3J5cHRvLmggYi9pbmNsdWRlL2dydWIvY3J5cHRvLmgKaW5kZXggZDMyM2Yw MGNlLi5jNmViOGIyZDIgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZ3J1Yi9jcnlwdG8uaAorKysgYi9p bmNsdWRlL2dydWIvY3J5cHRvLmgKQEAgLTU3Myw2ICs1NzMsMTUgQEAgZ3J1Yl9jcnlwdG9fcGJr ZGYyIChjb25zdCBzdHJ1Y3QgZ2NyeV9tZF9zcGVjICptZCwKIAkJICAgIHVuc2lnbmVkIGludCBj LAogCQkgICAgZ3J1Yl91aW50OF90ICpESywgZ3J1Yl9zaXplX3QgZGtMZW4pOwogCitnY3J5X2Vy cl9jb2RlX3QKK2dydWJfY3J5cHRvX2FyZ29uMiAoaW50IHN1YmFsZ28sCisJCSAgICBjb25zdCB1 bnNpZ25lZCBsb25nICpwYXJhbSwgdW5zaWduZWQgaW50IHBhcmFtbGVuLAorCQkgICAgY29uc3Qg dm9pZCAqcGFzc3dvcmQsIGdydWJfc2l6ZV90IHBhc3N3b3JkbGVuLAorCQkgICAgY29uc3Qgdm9p ZCAqc2FsdCwgZ3J1Yl9zaXplX3Qgc2FsdGxlbiwKKwkJICAgIGNvbnN0IHZvaWQgKmtleSwgZ3J1 Yl9zaXplX3Qga2V5bGVuLAorCQkgICAgY29uc3Qgdm9pZCAqYWQsIGdydWJfc2l6ZV90IGFkbGVu LAorCQkgICAgZ3J1Yl9zaXplX3QgcmVzdWx0bGVuLCB2b2lkICpyZXN1bHQpOworCiBpbnQKIGdy dWJfY3J5cHRvX21lbWNtcCAoY29uc3Qgdm9pZCAqYSwgY29uc3Qgdm9pZCAqYiwgZ3J1Yl9zaXpl X3Qgbik7CiAKLS0gCjIuNDMuMAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkdydWItZGV2ZWwgbWFpbGluZyBsaXN0CkdydWItZGV2ZWxAZ251Lm9yZwpo dHRwczovL2xpc3RzLmdudS5vcmcvbWFpbG1hbi9saXN0aW5mby9ncnViLWRldmVsCg==