[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gcc-bugs
Subject:    [Bug middle-end/113694] New: Allow renaming stack smashing protector symbols
From:       "matheus.a.m.moreira at gmail dot com via Gcc-bugs" <gcc-bugs () gcc ! gnu ! org>
Date:       2024-01-31 22:58:14
Message-ID: bug-113694-4 () http ! gcc ! gnu ! org/bugzilla/
[Download RAW message or body]

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113694

            Bug ID: 113694
           Summary: Allow renaming stack smashing protector symbols
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: matheus.a.m.moreira at gmail dot com
  Target Milestone: ---

I'm writing freestanding Linux applications which are compiled with
-ffreestanding -nostdlib. In order to integrate with the stack smashing
protector, I need to provide the following symbols:

    __stack_chk_guard
    __stack_chk_fail

It would be nice if there was a compiler option to rename these symbols to
something else. I want to make them consistent with the rest of my code,
thereby improving its quality.

A couple of options would be enough:

    -fstack-protector-canary=my_variable
    -fstack-protector-handler=my_function

Attributes could work too:

    uintptr_t my_canary __attribute__((stack_protector_canary));

    __attribute__((noreturn, stack_protector_handler))
    void __stack_chk_fail(void);=
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic