On Tue, Nov 05, 2019 at 07:58:37AM +0100, Patrick Steinhardt wrote: > The upcoming support for LUKS2 disc encryption requires us to include a > parser for base64-encoded data, as it is used to represent salts and > digests. As gnulib already has code to decode such data, we can just > add it to the boostrapping configuration in order to make it available > in GRUB. > > The gnulib module makes use of booleans via the <stdbool.h> header. As > GRUB does not provide any POSIX wrapper header for this, but instead > implements support for `bool` in <sys/types.h>, we need to patch > base64.h to not use <stdbool.h> anymore. We unfortunately cannot include > <sys/types.h> instead, as it would then use gnulib's internal header > while compiling the gnulib object but our own <sys/types.h> when > including it in a GRUB module. Because of this, the patch replaces the > include with a direct typedef. > > A second fix is required to make available `_GL_ATTRIBUTE_CONST`, which > is provided by the configure script. As "base64.h" does not include > <config.h>, it is thus not available and results in a compile error. > This is fixed by adding an include of <config-util.h>. > > Signed-off-by: Patrick Steinhardt <p...@pks.im>
Reviewed-by: Daniel Kiper <daniel.ki...@oracle.com> Daniel _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel