[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 01/10] luks2: Fix use of incorrect index and some grub_err
From: |
Daniel Kiper |
Subject: |
Re: [PATCH v3 01/10] luks2: Fix use of incorrect index and some grub_error() messages. |
Date: |
Fri, 23 Oct 2020 14:08:18 +0200 |
User-agent: |
NeoMutt/20170113 (1.7.2) |
On Mon, Oct 19, 2020 at 06:09:49PM -0500, Glenn Washburn wrote:
> When looping over the digests and segments, the loop variable is j, but the
> variable i is used to index in the the digests and segments json array. The
> variable i is the keyslot index. Similarly, there are several grub_error()
> statements using the wrong index in constructing the error string.
>
> Signed-off-by: Glenn Washburn <development@efficientek.com>
> ---
> grub-core/disk/luks2.c | 14 +++++++-------
> 1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/grub-core/disk/luks2.c b/grub-core/disk/luks2.c
> index 31d7166fc..2241e0312 100644
> --- a/grub-core/disk/luks2.c
> +++ b/grub-core/disk/luks2.c
> @@ -275,34 +275,34 @@ luks2_get_keyslot (grub_luks2_keyslot_t *k,
> grub_luks2_digest_t *d, grub_luks2_s
> return grub_error (GRUB_ERR_BAD_ARGUMENT, "Could not get digests");
> for (j = 0; j < size; j++)
> {
> - if (grub_json_getchild (&digest, &digests, i) ||
> + if (grub_json_getchild (&digest, &digests, j) ||
> grub_json_getchild (&digest, &digest, 0) ||
> luks2_parse_digest (d, &digest))
> - return grub_error (GRUB_ERR_BAD_ARGUMENT, "Could not parse digest
> %"PRIuGRUB_SIZE, i);
> + return grub_error (GRUB_ERR_BAD_ARGUMENT, "Could not parse digest
> %"PRIuGRUB_SIZE, j);
>
> if ((d->keyslots & (1 << idx)))
> break;
> }
> if (j == size)
> - return grub_error (GRUB_ERR_FILE_NOT_FOUND, "No digest for keyslot
> %"PRIuGRUB_SIZE);
> + return grub_error (GRUB_ERR_FILE_NOT_FOUND, "No digest for keyslot
> %"PRIuGRUB_SIZE, i);
>
> /* Get segment that matches the digest. */
> if (grub_json_getvalue (&segments, root, "segments") ||
> grub_json_getsize (&size, &segments))
> return grub_error (GRUB_ERR_BAD_ARGUMENT, "Could not get segments");
> - for (j = 0; j < size; j++)
> + for (i = j, j = 0; j < size; j++)
Should not it be "i = j = 0" instead of "i = j, j = 0"?
> {
> - if (grub_json_getchild (&segment, &segments, i) ||
> + if (grub_json_getchild (&segment, &segments, j) ||
> grub_json_getuint64 (&idx, &segment, NULL) ||
> grub_json_getchild (&segment, &segment, 0) ||
> luks2_parse_segment (s, &segment))
> - return grub_error (GRUB_ERR_BAD_ARGUMENT, "Could not parse segment
> %"PRIuGRUB_SIZE, i);
> + return grub_error (GRUB_ERR_BAD_ARGUMENT, "Could not parse segment
> %"PRIuGRUB_SIZE, j);
>
> if ((d->segments & (1 << idx)))
> break;
> }
> if (j == size)
> - return grub_error (GRUB_ERR_FILE_NOT_FOUND, "No segment for digest
> %"PRIuGRUB_SIZE);
> + return grub_error (GRUB_ERR_FILE_NOT_FOUND, "No segment for digest
> %"PRIuGRUB_SIZE, i);
s/PRIuGRUB_SIZE, i/PRIuGRUB_SIZE, j/?
Daniel
- Re: [PATCH v2 10/10] luks2: Rename source disk variabled named 'disk' to 'source' as in luks.c., (continued)
- Re: [PATCH v2 00/10] Cryptodisk fixes for v2.06 redux, Patrick Steinhardt, 2020/10/09
- [PATCH v3 00/10] Cryptodisk fixes for v2.06 redux, Glenn Washburn, 2020/10/19
- [PATCH v3 02/10] luks2: Improve readability in luks2_get_keyslot., Glenn Washburn, 2020/10/19
- Re: [PATCH v3 02/10] luks2: Improve readability in luks2_get_keyslot., Daniel Kiper, 2020/10/23
- Re: [PATCH v3 02/10] luks2: Improve readability in luks2_get_keyslot., Glenn Washburn, 2020/10/29
- Re: [PATCH v3 02/10] luks2: Improve readability in luks2_get_keyslot., Daniel Kiper, 2020/10/30
- [PATCH v3 03/10] luks2: Use more intuitive keyslot key instead of index when naming keyslot., Glenn Washburn, 2020/10/19
- Re: [PATCH v3 03/10] luks2: Use more intuitive keyslot key instead of index when naming keyslot., Patrick Steinhardt, 2020/10/23
- [PATCH v3 01/10] luks2: Fix use of incorrect index and some grub_error() messages., Glenn Washburn, 2020/10/19
- Re: [PATCH v3 01/10] luks2: Fix use of incorrect index and some grub_error() messages.,
Daniel Kiper <=
- Re: [PATCH v3 01/10] luks2: Fix use of incorrect index and some grub_error() messages., Patrick Steinhardt, 2020/10/23
- [PATCH v3 07/10] cryptodisk: Replace some literals with constants in grub_cryptodisk_endecrypt., Glenn Washburn, 2020/10/19
- Re: [PATCH v3 07/10] cryptodisk: Replace some literals with constants in grub_cryptodisk_endecrypt., Patrick Steinhardt, 2020/10/23
- Re: [PATCH v3 07/10] cryptodisk: Replace some literals with constants in grub_cryptodisk_endecrypt., Glenn Washburn, 2020/10/26
- Re: [PATCH v3 07/10] cryptodisk: Replace some literals with constants in grub_cryptodisk_endecrypt., Patrick Steinhardt, 2020/10/28
- Re: [PATCH v3 07/10] cryptodisk: Replace some literals with constants in grub_cryptodisk_endecrypt., Daniel Kiper, 2020/10/27
- Re: [PATCH v3 07/10] cryptodisk: Replace some literals with constants in grub_cryptodisk_endecrypt., Glenn Washburn, 2020/10/29
- Re: [PATCH v3 07/10] cryptodisk: Replace some literals with constants in grub_cryptodisk_endecrypt., Daniel Kiper, 2020/10/30
- [PATCH v3 10/10] luks2: Rename source disk variabled named 'disk' to 'source' as in luks.c., Glenn Washburn, 2020/10/19
- Re: [PATCH v3 10/10] luks2: Rename source disk variabled named 'disk' to 'source' as in luks.c., Patrick Steinhardt, 2020/10/23