From nobody Sat Nov 1 21:25:39 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=reject dis=none) header.from=cloud.com ARC-Seal: i=1; a=rsa-sha256; t=1746539842; cv=none; d=zohomail.com; s=zohoarc; b=QQo9S6V6F9rf1nM2RKji4gTmYmcNMpn+XxxobeELuLxSu6TSlQ8p0DulsAakbaoSpSf71xDmsjlHwvVKi1fMfSxUXyuvNRxWebpLNEKV0mh9T2pYrjz/MLrxrHfK5t169Ek+pqE+tqVKl1au/e0ef0fBjXhAJVCdISEfod1e/rg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1746539842; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=wWG+dt0wyO1enTyXwSRlDk2xHqo7Oq+/vleaC2X1ZwA=; b=PPA2SDlUZLy+Jr7j4Gv274gIKFQYYeeWQH4gBpSWrKbYlGvhzi6IlKzDOCnUhXGx8WJEa1zfErtZ/XuX4K5C4Obxy5jfSjdvXYvWH9NPdapbZCCkxzhx+gQWLRAAEdKipdJNv1Vk7XtHk99w0RT6wZM3Ib8MPYFcR7fxpaDKrnI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1746539842369217.9329935625875; Tue, 6 May 2025 06:57:22 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.977321.1364347 (Exim 4.92) (envelope-from ) id 1uCInF-0007Oh-Jn; Tue, 06 May 2025 13:57:09 +0000 Received: by outflank-mailman (output) from mailman id 977321.1364347; Tue, 06 May 2025 13:57:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1uCInF-0007O5-Gn; Tue, 06 May 2025 13:57:09 +0000 Received: by outflank-mailman (input) for mailman id 977321; Tue, 06 May 2025 13:57:08 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1uCInE-0007Kz-9u for xen-devel@lists.xenproject.org; Tue, 06 May 2025 13:57:08 +0000 Received: from mail-wr1-x433.google.com (mail-wr1-x433.google.com [2a00:1450:4864:20::433]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id ffac07aa-2a81-11f0-9eb4-5ba50f476ded; Tue, 06 May 2025 15:57:08 +0200 (CEST) Received: by mail-wr1-x433.google.com with SMTP id ffacd0b85a97d-3a07a7b517dso3697614f8f.3 for ; Tue, 06 May 2025 06:57:07 -0700 (PDT) Received: from localhost.localdomain (172.74.6.51.dyn.plus.net. [51.6.74.172]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a099b170e7sm13503239f8f.86.2025.05.06.06.57.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 May 2025 06:57:06 -0700 (PDT) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ffac07aa-2a81-11f0-9eb4-5ba50f476ded DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloud.com; s=cloud; t=1746539827; x=1747144627; darn=lists.xenproject.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=wWG+dt0wyO1enTyXwSRlDk2xHqo7Oq+/vleaC2X1ZwA=; b=R2YyHV1qURPWx5gSMgKJ3Ri0BgWEpMAS1yaZCYPI5Pgs7v1GjFENxX1aiS4KTpD6J2 n/RYqgpzB0+SY22GAQBHTu8rcWmDEUTpPRGGvhFkkADs8V42U/R7AkF4YD1vijbwbCxE hQ6tQIKnWHBkq52J23hpSIry+hdWY70kakM/8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746539827; x=1747144627; 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=wWG+dt0wyO1enTyXwSRlDk2xHqo7Oq+/vleaC2X1ZwA=; b=xGC0MNu0Ls+sziQD1IqN8e9pTGTfPG7bR43Nd8nvLth9VAEgykiXPlCcOAAMu37qAa MgiumZGZlnNbKjW9CeXCoB+PtSSa4+fnV0NG+wD/A8oVhFjOfsFXdsYTiMJdXGbj1jz2 opYWR8xfQCSjtsbWttRRw61WoSI+Sq/jer3yoi5BGbuIEilNoteqDBf55612hY9SCODT IHNTh1YWkiF+5RLaMJc7fUYDDt3SpG5C6XnUifTbJy02eiSWylEq9HyLQEng7+r/HT8X vXEIjf4bw+0aQgFxsuG3kZoc+DGSMESzpLVxyAPp5BxR2qEH/MLkeYSLXbCTQZh4KWyj PJ1g== X-Gm-Message-State: AOJu0Ywl1YsymUYJ0NA28ff154UlHuog3CeGU4o/JKpm5h46BcfNHF9U MhVksXpQVMF93rVEXUKUAuMi+vV+jhBxwEKLVwKtgQPfz4IvgBPZgdOlk+xiSGODqUbWMb3EsHJ /+Rk= X-Gm-Gg: ASbGncsbwm0UnJd3Na5OrElPwoEZXR5l6eAOPRcgoohyxcB6dP/LmkG9Ner0jgxjdJm 3VzUwlpmnGs+zbh9w5sVtrKbjshGdddTq4qYTnSXY2zwXrY2PIuIO0ByeBtazNW3No8iwjADL1h iN0eHxgEjfSBfwtEygA0UXWiOujZPlhRPEsGr8srYpFFkxLPsO5KnD8tmR0JoEqwJuddO0G69ra 3VJvvjjFH6DS9Q5bvCDJQAKkPAv3VpYYps7og/CduJwOxRVfR8sJY1lOEuvRQ4f+LsyJq1nMTAT PLR6vmnB13TaFIv6jqkK6pu1Pv4VGNsYgMca4blulGqfCETSPFvEpzHYdb+2c3p7WWQZw+BOcb5 3Xzmx5Q== X-Google-Smtp-Source: AGHT+IHL81vJGNVKRVxyHaIk0RB+9S39F7pqwL25wYoQY3mFV86ajXU0B5bpXDTrHMxFnSIwtM+oxw== X-Received: by 2002:a05:6000:4282:b0:39d:724f:a8ec with SMTP id ffacd0b85a97d-3a0ac1ff687mr2972154f8f.44.1746539826664; Tue, 06 May 2025 06:57:06 -0700 (PDT) From: Frediano Ziglio To: xen-devel@lists.xenproject.org Cc: Ross Lagerwall , Andrew Cooper , Anthony PERARD , Michal Orzel , Jan Beulich , Julien Grall , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Stefano Stabellini Subject: [PATCH 1/4] xen/lib: Export additional sha256 functions Date: Tue, 6 May 2025 14:56:50 +0100 Message-ID: <20250506135655.187014-2-frediano.ziglio@cloud.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250506135655.187014-1-frediano.ziglio@cloud.com> References: <20250506135655.187014-1-frediano.ziglio@cloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @cloud.com) X-ZM-MESSAGEID: 1746539843219116600 Content-Type: text/plain; charset="utf-8" From: Ross Lagerwall In future, some code needs to generate a digest over several separate buffe= rs so export the necessary functions to do so. Signed-off-by: Ross Lagerwall --- xen/include/xen/sha2.h | 10 ++++++++++ xen/lib/sha2-256.c | 14 ++++---------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/xen/include/xen/sha2.h b/xen/include/xen/sha2.h index 47d97fbf01..ea8bad67e4 100644 --- a/xen/include/xen/sha2.h +++ b/xen/include/xen/sha2.h @@ -9,6 +9,16 @@ =20 #define SHA2_256_DIGEST_SIZE 32 =20 +struct sha2_256_state { + uint32_t state[SHA2_256_DIGEST_SIZE / sizeof(uint32_t)]; + uint8_t buf[64]; + size_t count; /* Byte count. */ +}; + +void sha2_256_init(struct sha2_256_state *s); +void sha2_256_update(struct sha2_256_state *s, const void *msg, + size_t len); +void sha2_256_final(struct sha2_256_state *s, void *_dst); void sha2_256_digest(uint8_t digest[SHA2_256_DIGEST_SIZE], const void *msg, size_t len); =20 diff --git a/xen/lib/sha2-256.c b/xen/lib/sha2-256.c index 19e8252188..896a257ed9 100644 --- a/xen/lib/sha2-256.c +++ b/xen/lib/sha2-256.c @@ -10,12 +10,6 @@ #include #include =20 -struct sha2_256_state { - uint32_t state[SHA2_256_DIGEST_SIZE / sizeof(uint32_t)]; - uint8_t buf[64]; - size_t count; /* Byte count. */ -}; - static uint32_t choose(uint32_t x, uint32_t y, uint32_t z) { return z ^ (x & (y ^ z)); @@ -131,7 +125,7 @@ static void sha2_256_transform(uint32_t *state, const v= oid *_input) state[4] +=3D e; state[5] +=3D f; state[6] +=3D g; state[7] +=3D h; } =20 -static void sha2_256_init(struct sha2_256_state *s) +void sha2_256_init(struct sha2_256_state *s) { *s =3D (struct sha2_256_state){ .state =3D { @@ -147,8 +141,8 @@ static void sha2_256_init(struct sha2_256_state *s) }; } =20 -static void sha2_256_update(struct sha2_256_state *s, const void *msg, - size_t len) +void sha2_256_update(struct sha2_256_state *s, const void *msg, + size_t len) { unsigned int partial =3D s->count & 63; =20 @@ -177,7 +171,7 @@ static void sha2_256_update(struct sha2_256_state *s, c= onst void *msg, memcpy(s->buf + partial, msg, len); } =20 -static void sha2_256_final(struct sha2_256_state *s, void *_dst) +void sha2_256_final(struct sha2_256_state *s, void *_dst) { uint32_t *dst =3D _dst; unsigned int i, partial =3D s->count & 63; --=20 2.43.0