Re: [PATCH] elf: Hide DT_INIT and DT_FINI functions
Project / Subsystem
binutils / elf
Date
2026-09-14
Proposer
Fangrui Song <i@maskray.me>
Source type
public_inbox
Consensus
Proposed
Sentiment
—/10
Technical tradeoffs
- • Hiding initialization/finalization functions might improve security by obscuring critical code paths, but could break existing tools or assumptions that rely on these functions being visible.
- • Modifying ELF structures requires careful consideration of ABI compatibility and potential impacts on different operating systems and architectures.
- • The decision to hide these functions involves balancing potential security benefits against compatibility concerns and the complexity of dynamic linker behavior.
All attributes
- project
- binutils
- subsystem
- elf
- patch_id
- —
- discussion_id
- CAN30aBFtFc6dNL3k_-u25hgygYXj4S9fudLsJT6nF=7umz9HrA@mail.gmail.com
- source_type
- public_inbox
- title
- Re: [PATCH] elf: Hide DT_INIT and DT_FINI functions
- headline
- elf: Hide DT_INIT and DT_FINI functions
- tldr
- Discussion regarding a patch to hide DT_INIT and DT_FINI functions in ELF binaries.
- proposer
- Fangrui Song <i@maskray.me>
- consensus
- Proposed
- outcome
- proposed
- sentiment_score
- —
- technical_tradeoffs
-
- • Hiding initialization/finalization functions might improve security by obscuring critical code paths, but could break existing tools or assumptions that rely on these functions being visible.
- • Modifying ELF structures requires careful consideration of ABI compatibility and potential impacts on different operating systems and architectures.
- • The decision to hide these functions involves balancing potential security benefits against compatibility concerns and the complexity of dynamic linker behavior.
- series_id
- —
- series_role
- standalone
- series_parts
- []
- tags
-
- • ELF
- • binutils
- • linker
- • dynamic linking
- • patch
- bugzilla_url
- —
- date
- 2026-09-14T00:00:00.000Z
Re: [PATCH] elf: Hide DT_INIT and DT_FINI functions
This discussion revolves around a patch intended to hide the DT_INIT and DT_FINI functions within ELF binaries. The conversation appears to be a long-running thread with multiple participants weighing in on the implications and correctness of the proposed change. The core technical aspect involves manipulating ELF dynamic section tags to control the visibility or behavior of initialization and finalization functions.