Re: [PATCH v3] readelf: Save and dump the original section header values

"H.J. Lu" <[email protected]>
Newsgroups gmane.comp.gnu.binutils
Message-ID <CAMe9rOrXnCzkqH7+Zet-NQvcrchgOn0=UOFjo2hv50ZCGxUMEg@mail.gmail.com>
On Thu, Jul 9, 2026 at 2:06 PM Jan Beulich <[email protected]> wrote:
>
> On 04.07.2026 13:06, H.J. Lu wrote:
> > On Sat, Jul 4, 2026 at 11:01 AM H.J. Lu <[email protected]> wrote:
> >> On Sat, Jul 4, 2026 at 8:39 AM H.J. Lu <[email protected]> wrote:
> >>> On Sat, Jul 4, 2026 at 7:49 AM Alan Modra <[email protected]> wrote:
> >>>>
> >>>> On Fri, Jul 03, 2026 at 10:30:14PM +0800, H.J. Lu wrote:
> >>>>> validate_section_info clears the garbage values in the section header
> >>>>> to avoid crash later.  Save and dump the original section header values
> >>>>> to make the garbage values in the section header visible when dumping
> >>>>> section headers.
> >>>>
> >>>> I think this would be better done the other way around.  ie. have a
> >>>> Elf_Internal_Shdr **sane_section_headers that is initialised to point
> >>>> at entries in section_headers, with sane_section_headers[i] allocated
> >>>> as necessary when needing to correct a bogus header.
> >>>>
> >>>
> >>> I have thought about something similar and decided against it
> >>> since filedata->section_headers is used in many places.   However,
> >>> I can change filedata->orig_section_headers to on demand.
>
> I find this a plausible argument, so ...
>
> >> Changes in v2:
> >>
> >> 1.  filedata->orig_section_headers is changed to on demand.
> >
> > Changes in v3:
> >
> > 1.  Clear filedata->orig_section_headers first.
>
> ... the patch is okay unless you get an objection from Alan within another

Will do.

> day or two. Just one thing though: calloc() + memset(, 0,) is redundant.
> Please drop those memset()s.

It is cmalloc, not calloc:

  filedata->orig_section_headers = (Elf_Internal_Shdr **)
    cmalloc (num, sizeof (Elf_Internal_Shdr *));

cmalloc doesn't clear memory.  memset is needed.

> Jan

-- 
H.J.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.