Error in output of readelf (and HP brokenosity)
Tue Aug 20 08:54:00 GMT 2002

Nick et al,

It looks like readelf won't find HPUX OS specific dynamic types
because they are all based on OLD_DT_LOOS, can readelf
checks against DT_LOOS, which is greater than all the HP types.
Now, we can state that HPUX is broken but should we hack readelf
to cope with this, hassle HP to fix their code or simply accept accept
that current state of affairs is broken beyond repair.




Ross Alexander                           "He knows no more about his
MIS - NEC Europe Limited            destiny than a tea leaf knows
Work ph: +44 20 8752 3394         the history of East India Company"

                      Nick Clifton                                                                                                 
                      <>            To:                                         
                      Sent by:                      cc:                                          
                      binutils-owner@sources        Subject:  Re: Error in output of readelf                                       
                      16/08/2002 15:41                                                                                             

Hi Ross,

> readelf does put \n on the end of unknown dynamic entries.

I assume that you mean "does not put \n"...

> Is this a feature or a bug?

A bug.  Fixed by applying the patch below.

> Also, should OS specific DT entries be put into readelf?

Yes.  There is already code in there to support displaying MIPS and
PARISC specific entries.


2002-08-16  Nick Clifton  <>

             * readelf.c (process_dynamic_segment): Put a newline after
             an unknown dynamic type.

Index: binutils/readelf.c
RCS file: /cvs/src/src/binutils/readelf.c,v
retrieving revision 1.169
diff -c -3 -p -w -r1.169 readelf.c
*** binutils/readelf.c         15 Aug 2002 12:22:39 -0000          1.169
--- binutils/readelf.c         16 Aug 2002 14:36:53 -0000
*************** process_dynamic_segment (file)
*** 4951,4956 ****
--- 4951,4958 ----
                           putchar ('\n');
+              else
+                putchar ('\n');

More information about the Binutils mailing list