[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 0/4] Update gnulib and drop some patches
From: |
Robbie Harwood |
Subject: |
Re: [PATCH v3 0/4] Update gnulib and drop some patches |
Date: |
Wed, 02 Feb 2022 10:24:07 -0500 |
Glenn Washburn <development@efficientek.com> writes:
> On Thu, 27 Jan 2022 14:39:56 -0500
> Robbie Harwood <rharwood@redhat.com> wrote:
>
>> Changes in this version:
>> - Make the version of bootstrap match what it's supposed to
>> - Restore fix-width.patch at dkiper's request
>>
>> Be well,
>> --Robbie
>
> I presume this has been build tested, right?
>
> I'm getting the following compiler error with gcc 10.1.0:
>
> In file included from
> /home/g10/grub-tests-uml-update-gnulib/grub/grub-core/disk /luks2.c:30:
> /home/g10/grub-tests-uml-update-gnulib/grub/grub-core/disk/luks2.c: In
> function ‘luks2_verify_key’:
> /home/g10/grub-tests-uml-update-gnulib/grub/grub-core/disk/luks2.c:398:75:
> error: pointer targets in passing argument 5 of ‘base64_decode_ctx’
> differ in signedness [-Werror=pointer-sign] 398 | if (!base64_decode
> (d->digest, grub_strlen (d->digest), (char *)digest, &digestlen)) |
>
> ^~~~~~~~~~
> |
> | |
> grub_size_t * {aka long unsigned int *}
> /home/g10/grub-tests-uml-update-gnulib/grub/grub-core/lib/gnulib/base64.h:59:50:
> note: in definition of macro ‘base64_decode’ 59 |
> base64_decode_ctx (NULL, in, inlen, out, outlen) |
> ^~~~~~
> /home/g10/grub-tests-uml-update-gnulib/grub/grub-core/lib/gnulib/base64.h:52:59:
> note: expected ‘idx_t *’ {aka ‘long int *’} but argument is of type
> ‘grub_size_t *’ {aka ‘long unsigned int *’}
> 52 | char *restrict out, idx_t
> *outlen); |
> ~~~~~~~^~~~~~
> /home/g10/grub-tests-uml-update-gnulib/grub/grub-core/disk/luks2.c:400:69:
> error: pointer targets in passing argument 5 of ‘base64_decode_ctx’
> differ in signedness [-Werror=pointer-sign] 400 | if (!base64_decode
> (d->salt, grub_strlen (d->salt), (char *)salt, &saltlen)) |
> ^~~~~~~~ |
> | |
> grub_size_t
> * {aka long unsigned int *}
> /home/g10/grub-tests-uml-update-gnulib/grub/grub-core/lib/gnulib/base64.h:59:50:
> note: in definition of macro ‘base64_decode’ 59 |
> base64_decode_ctx (NULL, in, inlen, out, outlen) |
> ^~~~~~
> /home/g10/grub-tests-uml-update-gnulib/grub/grub-core/lib/gnulib/base64.h:52:59:
> note: expected ‘idx_t *’ {aka ‘long int *’} but argument is of type
> ‘grub_size_t *’ {aka ‘long unsigned int *’} 52 |
> char *restrict out, idx_t *outlen); |
> ~~~~~~~^~~~~~
> /home/g10/grub-tests-uml-update-gnulib/grub/grub-core/disk/luks2.c: In
> function ‘luks2_decrypt_key’:
> home/g10/grub-tests-uml-update-gnulib/grub/grub-core/disk/luks2.c:439:22:
> error: pointer targets in passing argument 5 of ‘base64_decode_ctx’
> differ in signedness [-Werror=pointer-sign] 439 | (char *)salt,
> &saltlen)) | ^~~~~~~~ | |
> | grub_size_t * {aka long unsigned int *}
> /home/g10/grub-tests-uml-update-gnulib/grub/grub-core/lib/gnulib/base64.h:59:50:
> note: in definition of macro ‘base64_decode’ 59 |
> base64_decode_ctx (NULL, in, inlen, out, outlen) |
> ^~~~~~
> /home/g10/grub-tests-uml-update-gnulib/grub/grub-core/lib/gnulib/base64.h:52:59:
> note: expected ‘idx_t *’ {aka ‘long int *’} but argument is of type
> ‘grub_size_t *’ {aka ‘long unsigned int *’} 52 |
> char *restrict out, idx_t *outlen); |
> ~~~~~~~^~~~~~
> cc1: all warnings being treated as errors
>
> Should be an easy fix. What compiler version are you using?
gcc11-series. I'll see if I can reproduce in a VM and get a fix out.
Be well,
--Robbie
signature.asc
Description: PGP signature