This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] elf.h SHF_EXCLUDE signed int 31 bit shift triggers undefined behaviour.
- From: OndÅej BÃlka <neleai at seznam dot cz>
- To: Mark Wielaard <mjw at redhat dot com>
- Cc: libc-alpha at sourceware dot org, fweimer at redhat dot com, Josh Stone <jistone at redhat dot com>
- Date: Wed, 13 May 2015 12:56:01 +0200
- Subject: Re: [PATCH] elf.h SHF_EXCLUDE signed int 31 bit shift triggers undefined behaviour.
- Authentication-results: sourceware.org; auth=none
- References: <1427193579-26102-1-git-send-email-mjw at redhat dot com> <20150513102715 dot GB12879 at domone> <1431513986 dot 1274 dot 2 dot camel at bordewijk dot wildebeest dot org>
On Wed, May 13, 2015 at 12:46:26PM +0200, Mark Wielaard wrote:
> On Wed, 2015-05-13 at 12:27 +0200, OndÅej BÃlka wrote:
> > On Tue, Mar 24, 2015 at 11:39:39AM +0100, Mark Wielaard wrote:
> > > Any use of SHF_EXCLUDE in code that tries to check it against sh_flags
> > > will trigger undefined behaviour because it is defined as a 31 bit shift
> > > against an signed integer. Fix by explicitly using an unsigned int.
> > > ---
> > > ChangeLog | 4 ++++
> > > elf/elf.h | 2 +-
> > > 2 files changed, 5 insertions(+), 1 deletion(-)
> > >
> > I looked that Florian acked this at patchwork thread. Florian, could you also
> > commit it or do we need more discussion?
>
> It is already in as commit fb4041, see:
> https://sourceware.org/ml/libc-alpha/2015-04/msg00359.html
thanks. marked that also at patchwork.