[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug binutils/23610] New: objcopy is not removing the sectiones like .re
From: |
kamleshbhalui at gmail dot com |
Subject: |
[Bug binutils/23610] New: objcopy is not removing the sectiones like .rela.plt and rela.dyn. |
Date: |
Thu, 06 Sep 2018 08:24:43 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=23610
Bug ID: 23610
Summary: objcopy is not removing the sectiones like .rela.plt
and rela.dyn.
Product: binutils
Version: 2.32 (HEAD)
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: binutils
Assignee: unassigned at sourceware dot org
Reporter: kamleshbhalui at gmail dot com
Target Milestone: ---
Created attachment 11233
--> https://sourceware.org/bugzilla/attachment.cgi?id=11233&action=edit
patch that fix the issue.
Hi All,
we have the requirement in our inhouse product were we strip out the
relocations sections like “.rela.plt” and “rela.dyn” from the executable by
objcopy/strip utility.
i.e simple example like
$cat test.c
int g;
int main()
{
printf ("Hello World\n");
return g;
}
$gcc -fpic -shared test.c
$readelf -S a.out
[ 6] .gnu.version_r VERNEED 0000000000000468 00000468
0000000000000020 0000000000000000 A 4 1 8
[ 7] .rela.dyn RELA 0000000000000488 00000488
00000000000000d8 0000000000000018 A 3 0 8
[ 8] .rela.plt RELA 0000000000000560 00000560
0000000000000018 0000000000000018 AI 3 22 8
$objcopy -R .rela.plt -R rela.dyn a.out
$readelf -S a.out
[ 6] .gnu.version_r VERNEED 0000000000000468
00000468
0000000000000020 0000000000000000 A 4 1
8
[ 7] .rela.dyn RELA 0000000000000488
00000488
00000000000000d8 0000000000000018 A 3 0
8
[ 8] .rela.plt RELA 0000000000000560
00000560
0000000000000018 0000000000000018 AI 3 22
8
$objcopy --remove-relocations=.rela.plt --remove-relocations=.rela.dyn a.out
$readelf -S a.out
[ 6] .gnu.version_r VERNEED 0000000000000468
00000468
0000000000000020 0000000000000000 A 4 1
8
[ 7] .rela.dyn RELA 0000000000000488
00000488
00000000000000d8 0000000000000018 A 3 0
8
[ 8] .rela.plt RELA 0000000000000560
00000560
0000000000000018 0000000000000018 AI 3 22
8
we upgrade the binutils from version 2.25 to 2.29 and please note that we are
able to strip out the relocation sections w.r.t 2.25 and this regression was
from following changes that had a some major code refactoring in the
remove-relocations front in 2.29 and which made our case fail .
https://github.com/qtumproject/x86-toolchain/blob/master/binutils-2.29/binutils/ChangeLog-2016
and also note that ,"objcopy -R .rela.text test.o "for the object file works
as expected and for executable were relocation sections was not removed like
above is expected behavior by objcopy/strip utility ?
We made some changes and same is attached( objcopy.patch ) that fix the issue
.
But before we move forward on the fix ,we would like to hear any thoughts
/comments from experts on the issue/patch will be highly helpful for us.
Thank you ,awaiting for any insights/comments .
--
You are receiving this mail because:
You are on the CC list for the bug.
- [Bug binutils/23610] New: objcopy is not removing the sectiones like .rela.plt and rela.dyn.,
kamleshbhalui at gmail dot com <=