grub/util
Daniel Axtens 06fd69a3fd powerpc/mkimage: Fix CHRP note descsz
Currently, an image generated with 'grub-mkimage -n' causes an error when
read with 'readelf -a':

Displaying notes found at file offset 0x000106f0 with length 0x0000002c:
  Owner                Data size        Description
readelf: Warning: note with invalid namesz and/or descsz found at offset 0x0
readelf: Warning:  type: 0x1275, namesize: 0x00000008, descsize: 0x0000002c, alignment: 4

This is because the descsz of the CHRP note is set to
 sizeof (struct grub_ieee1275_note)
which is the size of the entire note, including name and elf header. The
desczs should contain only the contents, not the name and header sizes.

Set the descsz instead to 'sizeof (struct grub_ieee1275_note_desc)'

Resultant readelf output:

Displaying notes found at file offset 0x00010710 with length 0x0000002c:
  Owner                Data size        Description
  PowerPC              0x00000018       Unknown note type: (0x00001275)
   description data: ff ff ff ff 00 c0 00 00 ff ff ff ff ff ff ff ff ff ff ff ff 00 00 40 00

So far as I can tell this issue has existed for as long as the note
generation code has existed, but I guess nothing really checks descsz.

Signed-off-by: Daniel Axtens <dja@axtens.net>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
2020-04-21 22:00:59 +02:00
..
bash-completion.d Clean up dangling references to grub-setup. 2013-01-12 13:30:37 +00:00
grub.d grub-mkconfig: Use portable "command -v" to detect installed programs 2019-10-28 15:38:48 +01:00
i386/efi Merge mainline into install 2010-09-15 14:46:53 +02:00
ieee1275 ieee1275: Fix segfault in grub-ofpathname 2017-12-06 12:55:55 +01:00
bin2h.c Fix handling of build-time grub-bin2h and grub-mkfont when doing 2013-08-14 10:56:55 +02:00
config.c * util/config.c: Remove trailing newline from distributor in simple 2013-12-14 21:50:36 +01:00
editenv.c grub-editenv: Make grub-editenv chase symlinks including those across devices 2020-02-18 15:16:02 +01:00
garbage-gen.c * util/garbage-gen.c: Add missing include of sys/time.h. 2013-11-23 12:42:30 +01:00
getroot.c i386, x86_64, ppc: fix switch fallthrough cases with GCC7 2017-04-04 19:23:55 +03:00
glue-efi.c Build fixes for argp.h with older gcc. 2013-12-21 18:08:25 +01:00
grub-editenv.c util: Detect more I/O errors 2019-03-05 10:23:47 +01:00
grub-file.c Fix canonicalize_file_name clash. 2015-03-04 01:00:19 +01:00
grub-fstest.c misc: Make grub_strtol() "end" pointers have safer const qualifiers 2020-02-28 12:41:29 +01:00
grub-gen-asciih.c * util/grub-gen-asciih.c (add_glyph): Fix uninitialised variable. 2014-06-21 20:26:47 +02:00
grub-gen-widthspec.c Fix build with FreeType 2.5.1 2013-11-29 12:19:36 +00:00
grub-glue-efi.c Build fixes for argp.h with older gcc. 2013-12-21 18:08:25 +01:00
grub-install-common.c util: Detect more I/O errors 2019-03-05 10:23:47 +01:00
grub-install.c grub-install: Define default platform for RISC-V 2019-09-23 13:19:19 +02:00
grub-kbdcomp.in Change -v to -V for version of shell utils. 2016-02-12 15:46:05 +01:00
grub-macbless.c Fix canonicalize_file_name clash. 2015-03-04 01:00:19 +01:00
grub-macho2img.c * util/grub-macho2img.c: Use plain fopen rather than grub_util_fopen. 2013-11-11 22:48:43 +01:00
grub-menulst2cfg.c Add a wrapper for fopen. On unix-like systems just pass-through. On 2013-10-13 20:36:28 +02:00
grub-mkconfig.in templates: Add GRUB_DISABLE_UUID 2019-10-28 15:35:40 +01:00
grub-mkconfig_lib.in grub-mkconfig: Use portable "command -v" to detect installed programs 2019-10-28 15:38:48 +01:00
grub-mkfont.c grub-mkfont: Remove leftover debug statement. 2017-01-31 22:32:21 +01:00
grub-mkimage.c util: Detect more I/O errors 2019-03-05 10:23:47 +01:00
grub-mkimage32.c xen_pvh: Support building a standalone image 2018-12-12 12:03:27 +01:00
grub-mkimage64.c xen_pvh: Support building a standalone image 2018-12-12 12:03:27 +01:00
grub-mkimagexx.c powerpc/mkimage: Fix CHRP note descsz 2020-04-21 22:00:59 +02:00
grub-mklayout.c grub-mklayout: check subscript bounds 2016-01-09 14:13:36 +03:00
grub-mknetdir.c RISC-V: Add to build system 2019-02-25 14:02:05 +01:00
grub-mkpasswd-pbkdf2.c Build fixes for argp.h with older gcc. 2013-12-21 18:08:25 +01:00
grub-mkrelpath.c Build fixes for argp.h with older gcc. 2013-12-21 18:08:25 +01:00
grub-mkrescue.c grub-mkrescue: Fix error message about the wrong command having failed: mformat instead of mcopy 2019-05-20 13:01:11 +02:00
grub-mkstandalone.c util/grub-mkstandalone: fix memory leak. 2015-01-26 23:04:09 +03:00
grub-module-verifier.c Support R_PPC_PLTREL24 2019-03-25 15:08:49 +01:00
grub-module-verifier32.c Verify modules on build-time rather than failing in runtime. 2015-12-31 13:09:15 +01:00
grub-module-verifier64.c Verify modules on build-time rather than failing in runtime. 2015-12-31 13:09:15 +01:00
grub-module-verifierXX.c grub-module-verifier: Report the filename or modname in errors 2018-09-12 13:24:36 +02:00
grub-mount.c Change fs functions to add fs_ prefix 2019-04-09 10:03:29 +10:00
grub-pe2elf.c remove extra newlines in grub_util_* strings 2015-05-13 09:47:17 +03:00
grub-probe.c Change fs functions to add fs_ prefix 2019-04-09 10:03:29 +10:00
grub-reboot.in grub-reboot: Warn when "for the next boot only" promise cannot be kept 2018-09-13 11:01:10 +02:00
grub-render-label.c Build fixes for argp.h with older gcc. 2013-12-21 18:08:25 +01:00
grub-script-check.c Build fixes for argp.h with older gcc. 2013-12-21 18:08:25 +01:00
grub-set-default.in Change -v to -V for version of shell utils. 2016-02-12 15:46:05 +01:00
grub-setup.c gnulib: Upgrade Gnulib and switch to bootstrap tool 2019-03-05 10:48:12 +01:00
grub-syslinux2cfg.c Fix canonicalize_file_name clash. 2015-03-04 01:00:19 +01:00
import_gcry.py fix Mingw W64-32 cross compile failure due to printf redefinition in libintl.h 2014-01-25 21:49:41 +04:00
import_gcrypth.sed Import libgcrypt 1.5.3. 2013-11-07 06:35:50 +01:00
import_unicode.py * util/import_unicode.py: Add missing brackets around string for 2012-03-10 20:47:12 +01:00
misc.c Move file loading functions to grub-emu. 2016-01-05 21:10:27 +01:00
mkimage.c RISC-V: Add to build system 2019-02-25 14:02:05 +01:00
probe.c Fix canonicalize_file_name clash. 2015-03-04 01:00:19 +01:00
render-label.c Fix canonicalize_file_name clash. 2015-03-04 01:00:19 +01:00
resolve.c util/setup: fix grub_util_path_list leak 2016-01-09 13:55:18 +03:00
setup.c [PATCH] sparc64: Fix BIOS Boot Partition support 2019-07-18 14:33:16 +02:00
setup_bios.c Split grub-setup.c into frontend (grub-setup.c) and backend (setup.c) 2013-10-15 16:16:04 +02:00
setup_sparc.c Split grub-setup.c into frontend (grub-setup.c) and backend (setup.c) 2013-10-15 16:16:04 +02:00
spkmodem-recv.c Improve spkmomdem reliability by adding a separator between bytes. 2013-01-21 14:55:30 +01:00