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: "Carlos O'Donell" <carlos at redhat dot com>
- To: OndÅej BÃlka <neleai at seznam dot cz>, 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 20:43:29 -0400
- 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> <20150513105601 dot GA15664 at domone>
On 05/13/2015 06:56 AM, OndÅej BÃlka wrote:
> 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.
>
Ondrej,
Thanks for the patchwork cleanup!
c.