From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from list by lists.gnu.org with archive (Exim 4.90_1) id 1kXq0K-00061G-5c for mharc-grub-devel@gnu.org; Wed, 28 Oct 2020 14:17:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:40846) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kXq0I-000611-P3 for grub-devel@gnu.org; Wed, 28 Oct 2020 14:16:58 -0400 Received: from wout1-smtp.messagingengine.com ([64.147.123.24]:36389) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kXq0G-0006P6-32 for grub-devel@gnu.org; Wed, 28 Oct 2020 14:16:58 -0400 Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.west.internal (Postfix) with ESMTP id A9B98ECB; Wed, 28 Oct 2020 14:16:52 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Wed, 28 Oct 2020 14:16:52 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pks.im; h=date :from:to:cc:subject:message-id:references:mime-version :content-type:in-reply-to; s=fm2; bh=V35BM26u3h+tMs2j13BLiXLYf9z wfwryK0U71bL9Z5g=; b=S2Z2rS55CIsq3FF02e9VU4NTyZcl459Ck//FuSpqnmA 1bAgE4fXVQUov4ghjC9+nuBg+ltGOgO1VHDkp2QBr5sMtTckF7urJJb2VED8t1wM wII7erjkIE7nyij+CEGciJl5PhuduXsHkJHC0gl5vcIOohi+Gv1pnrVtcaQV3aH+ oWJu5a4OHVcoB+6D6WGCkQCBWdbTTB5LRw8KYVASF16YzS2qI6LcwCa8A80OVvR+ 5W1/+hFghTp/r2ifQ5AR/minB4s9tY96dsogTWTLLzFOs/j8lC79e03lJ6LxwbX8 8gx7nScbJydCBwPg5irhqusz2wTtXj91kt0dN8mxMjA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=V35BM2 6u3h+tMs2j13BLiXLYf9zwfwryK0U71bL9Z5g=; b=k71BoJTAMEt9VRP5Nqx0cA 8+WcNBLVRGigKRkEltsAckmM8mKa5bG31ZsiVyGF3E6l30Pxo4csmjDf68w7Zfdn lGrM1invyRc+mqX0xJauzIPFPoQfc8fg6shvpQmlcTzomxAP+7qhoOPUVLUVb70B wYb6Ozx2yxN8fgTzjR7d+3QabwZ09dQmR3hRpc5XFViLh2dLzSosGuGjG9af+w7E o4JSVlNV9FQJIRsc0QXOGaojBXXwnNpftzFAJOePPIY+K9i5vmMqwnAqrPfBw17p uZeEum7fw871Z9r3LQNZIl2Qy5H5xNO9Nz+ToFELPmk2OBo/J74rp1KX9xxR6Cag == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedujedrledugddutdelucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvffukfhfgggtuggjsehgtderredttddunecuhfhrohhmpefrrghtrhhi tghkucfuthgvihhnhhgrrhguthcuoehpshesphhkshdrihhmqeenucggtffrrghtthgvrh hnpedtffejieduudelhedvgfetieefleehjeetvdetudeitdetvddtfffffefhvdfggfen ucfkphepjeejrdduuddrudekuddrleelnecuvehluhhsthgvrhfuihiivgeptdenucfrrg hrrghmpehmrghilhhfrhhomhepphhssehpkhhsrdhimh X-ME-Proxy: Received: from vm-mail.pks.im (dynamic-077-011-181-099.77.11.pool.telefonica.de [77.11.181.99]) by mail.messagingengine.com (Postfix) with ESMTPA id DCC0A3064674; Wed, 28 Oct 2020 14:16:50 -0400 (EDT) Received: from localhost (tanuki [10.192.0.23]) by vm-mail.pks.im (OpenSMTPD) with ESMTPSA id 3fb3b9a9 (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO); Wed, 28 Oct 2020 18:16:46 +0000 (UTC) Date: Wed, 28 Oct 2020 19:16:56 +0100 From: Patrick Steinhardt To: Glenn Washburn Cc: grub-devel@gnu.org, Daniel Kiper Subject: Re: [PATCH v3 07/10] cryptodisk: Replace some literals with constants in grub_cryptodisk_endecrypt. Message-ID: <20201028181646.GA807@tanuki> References: <20201009100122.GH2088@tanuki> <3918a9013156f71e01de05971b5441c0d9d09102.1603148099.git.development@efficientek.com> <20201023180101.GF810@tanuki> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="oC1+HKm2/end4ao3" Content-Disposition: inline In-Reply-To: Received-SPF: pass client-ip=64.147.123.24; envelope-from=ps@pks.im; helo=wout1-smtp.messagingengine.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/28 12:24:34 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 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, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-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.23 Precedence: list List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 28 Oct 2020 18:16:59 -0000 --oC1+HKm2/end4ao3 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Oct 26, 2020 at 06:25:53PM +0000, Glenn Washburn wrote: > Oct 23, 2020 1:00:59 PM Patrick Steinhardt : >=20 > > On Mon, Oct 19, 2020 at 06:09:55PM -0500, Glenn Washburn wrote: > >> This should improve readability of code by providing clues as to what = the > >> value represents. > >> > >> Signed-off-by: Glenn Washburn > >> --- > >> grub-core/disk/cryptodisk.c | 12 +++++++----- > >> include/grub/types.h=A0=A0=A0=A0=A0=A0=A0 |=A0 3 +++ > >> 2 files changed, 10 insertions(+), 5 deletions(-) > >> > >> diff --git a/grub-core/disk/cryptodisk.c b/grub-core/disk/cryptodisk.c > >> index 623f0f396..1a91c2d55 100644 > >> --- a/grub-core/disk/cryptodisk.c > >> +++ b/grub-core/disk/cryptodisk.c > >> @@ -297,19 +297,21 @@ grub_cryptodisk_endecrypt (struct grub_cryptodis= k *dev, > >> } > >> break; > >> case GRUB_CRYPTODISK_MODE_IV_BYTECOUNT64: > >> -=A0=A0 iv[1] =3D grub_cpu_to_le32 (sector >> (32 - log_sector_size)); > >> +=A0=A0 /* The IV is the 64 bit byte offset of the sector. */ > >> +=A0=A0 iv[1] =3D grub_cpu_to_le32 (sector >> (GRUB_TYPE_BIT(iv[0]) > >> +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 - log_sector_size)); > >> iv[0] =3D grub_cpu_to_le32 ((sector << log_sector_size) > >> -=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 & 0xFFFFFFFF); > >> +=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 & GRUB_TYPE_MAX(iv[0])); > >> break; > >> case GRUB_CRYPTODISK_MODE_IV_BENBI: > >> { > >> grub_uint64_t num =3D (sector << dev->benbi_log) + 1; > >> -=A0=A0=A0=A0 iv[sz - 2] =3D grub_cpu_to_be32 (num >> 32); > >> -=A0=A0=A0=A0 iv[sz - 1] =3D grub_cpu_to_be32 (num & 0xFFFFFFFF); > >> +=A0=A0=A0=A0 iv[sz - 2] =3D grub_cpu_to_be32 (num >> GRUB_TYPE_BIT(iv= [0])); > >> +=A0=A0=A0=A0 iv[sz - 1] =3D grub_cpu_to_be32 (num & GRUB_TYPE_MAX(iv[= 0])); > >> } > >> break; > >> case GRUB_CRYPTODISK_MODE_IV_ESSIV: > >> -=A0=A0 iv[0] =3D grub_cpu_to_le32 (sector & 0xFFFFFFFF); > >> +=A0=A0 iv[0] =3D grub_cpu_to_le32 (sector & GRUB_TYPE_MAX(iv[0])); > >> err =3D grub_crypto_ecb_encrypt (dev->essiv_cipher, iv, iv, > >> dev->cipher->cipher->blocksize); > >> if (err) > >> diff --git a/include/grub/types.h b/include/grub/types.h > >> index 035a4b528..8b4267ebd 100644 > >> --- a/include/grub/types.h > >> +++ b/include/grub/types.h > >> @@ -319,4 +319,7 @@ static inline void grub_set_unaligned64 (void *ptr= , grub_uint64_t val) > >> > >> #define GRUB_CHAR_BIT 8 > >> > >> +#define GRUB_TYPE_BIT(type) (sizeof(type) * GRUB_CHAR_BIT) > > > > Hum. I'd rather name this `GRUB_TYPE_BITS`, as the current name implies > > that we only get a single bit. Other than that the change looks good to > > me and I agree that it helps readability. > > > > Patrick >=20 > Yes, I would've liked to also, but I decided to stick with the naming > convention as can be seen in the definition of GRUB_CHAR_BIT above it. > Should there be a separate patch renaming GRUB_CHAR_BIT also? Nah, your naming makes sense in that context. Let's keep it as-is in this patch. Patrick --oC1+HKm2/end4ao3 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEF9hrgiFbCdvenl/rVbJhu7ckPpQFAl+ZtZcACgkQVbJhu7ck PpSgjg/8CQ5LUbDl+IIwYpYlFatgGq6lmUtuDV5Wn2MEvDAArEbXDRlpLJEL+pS/ P/cUYap6zga6KZR4ZgEs7iGoORlRS6oEucrc1OS2qObDhdIdlgba/dhEyLt+qtNK Iy6sQW1EleZCWUeyXGlXp8jTcn4HQPllFyXpu/8KbkVKHNphWyXFnrd6nk+pwTZs +oo3ssqEQIJA49GaRhoNF/rYPJo6SfXpZj3kYR+idR9bICFd5y/PPagXqaIxyKca LQ565Lq8Pex84KodR8AKsE3ZfI7MY7Mzf1sOtAPsP4ZuUqUKvchZgN+i6sZMzkuG jlGQCyafFsWPNpQ40+HXW3RhDpFhUEABiDkmia5e/+YRid1FHXOwMXDp6JrIhhLJ VSYJrpCm/stkzHT28sVZfVuSmtAZE1mU8eUBkaIXOtcHBQ54OYA9SvrsRBbn7TD9 aXJo10fZKKZX1MD3p2Hf6OSlO+CyPZl8KwhXixbko/QNCZXudP9zdrrRmdmVhbGd 3JMG7/dRyo7kAOpGMQlRb4Z667lke5/eRxUoTNtWvNOWEw+BPUt1847Q9kEWpqvU sjeuYj2eh+mLWXCGHe+cSAkINNWkzbLeSfyijLEQ7xaTs8YxIMLfdcuHr2eV4Ucv Eq90Xau4+7B2UG7d/hptFCt+q/6KOzUgeq6v21g0jtv7zjPRbMw= =r9y5 -----END PGP SIGNATURE----- --oC1+HKm2/end4ao3--