Commit Graph

36 Commits

Author SHA1 Message Date
Mike Hommey
ad69254db1 Bug 940250 - Fix elfhack -r after bug 822584. r=nfroyd 2013-11-21 17:27:30 +09:00
Birunthan Mohanathas
830a350581 Bug 784739 - Switch from NULL to nullptr in build/; r=ehsan 2013-11-11 14:13:38 -05:00
Mike Hommey
dd10946061 Bug 932737 - Change elfhack such that it doesn't require two injection objects. r=nfroyd 2013-11-02 08:47:24 +09:00
Mike Hommey
953a2608fd Bug 898998 - Turn BL into BLX when doing thumb call relocations and the target is ARM. r=nfroyd 2013-07-30 08:57:28 +09:00
Mike Hommey
fbd8c3d2c7 Bug 892366 - Support R_ARM_CALL relocations in elfhack. r=nfroyd 2013-07-23 07:26:06 +09:00
Mike Hommey
7e0a97a015 Bug 892366 - Support R_ARM_JUMP24 relocations in elfhack. r=nfroyd 2013-07-12 09:14:20 +09:00
Mike Hommey
a408486d94 Bug 851002 - Adjust Elf headers before adding filler segment in elfhack. r=nfroyd 2013-03-17 08:03:06 +01:00
Mike Hommey
3e50893a22 Bug 822584 - Workaround in elfhack to accomodate for breakpad not handling the memory mapping induced by the elfhack/bionic linker combination. r=nfroyd 2013-01-02 10:17:32 +01:00
Mike Hommey
fd460ff7b9 Bug 816494 part 4 - Add a -r option to elfhack that re-merges the split PT_LOADs. r=nfroyd
Sections are positioned accordingly, which means the resulting ELF binary will
have a big gap full of zero between .rel.plt and .plt.
2012-12-10 10:33:08 +01:00
Mike Hommey
839c07875b Bug 816494 part 3 - Allocate Elf instance on stack in do_file(). r=nfroyd 2012-12-10 10:33:08 +01:00
Mike Hommey
fa48cc05a3 Bug 816494 part 2 - Move the PT_LOAD splitting logic in elfhack.cpp. r=nfroyd
Also, section offsets are not adjusted until the split is done.
2012-12-10 10:33:08 +01:00
Mike Hommey
1c4cd1bc80 Bug 716295 part 5 - Add support for R_ARM_THM_CALL relocations. r=nfroyd 2012-08-09 16:34:25 +02:00
Mike Hommey
36ffb343ca Bug 716295 part 4 - Interpose elfhack injected code in DT_INIT_ARRAY's first entry when possible. r=nfroyd 2012-08-09 16:34:25 +02:00
Mike Hommey
1395ca626e Bug 716295 part 1 - Fail more gracefully when .dynamic section can't be grown. r=nfroyd 2012-08-09 16:34:24 +02:00
Mike Hommey
6f6742ee6a Bug 771569 - Move elfhack sections before .rel{,a}.dyn to work around glibc 2.16 bug. r=nfroyd 2012-07-09 17:53:35 +02:00
Ed Morley
d6c92162c0 Backout 61038a15b7b7 (bug 771569) for elfhack errors 2012-07-09 15:14:18 +01:00
Mike Hommey
c6c182204b Bug 771569 - Move elfhack sections before .rel{,a}.dyn to work around glibc 2.16 bug. r=nfroyd 2012-07-09 15:47:24 +02:00
Gervase Markham
87620f5676 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Mike Hommey
a6dd5a1d0c Bug 734237 - Make elfhack skip ELF files that aren't shared objects. r=tglek 2012-03-13 09:47:03 +01:00
Mike Hommey
9d3287a8ab Bug 725284 - Preserve PT_LOAD alignment, except when it's the default on x86-64. r=tglek 2012-02-21 08:08:41 +01:00
Rafael Ávila de Espíndola
741eacee7a Bug 678008 - Fix elfhack build in c++0x mode. r=mh+mozilla
In c++0x it is not valid to use a negative number in a unsigned
position in an initializer list. Add explicit casts and change
the size method to return an unsigned int.
2011-08-17 10:12:46 -04:00
Mike Hommey
c8d8da9ffd Bug 671188 - Don't fail on R_*_NONE relocations with an empty r_offset. r=tglek 2011-07-15 10:15:28 +02:00
Mike Hommey
7356e15a3b Bug 651892 part 3 - Remove __cxa_pure_virtual relocations. r=tglek 2011-06-23 04:08:03 +02:00
Mike Hommey
67da11fe96 Bug 651892 part 1 - Add a helper function to lookup symbols in a ElfSymtab_Section. r=tglek 2011-06-23 04:07:30 +02:00
Mike Hommey
868fcd03ab Bug 637341 - Don't try to do anything on binaries that have already been elfhacked. r=tglek 2011-03-14 14:41:41 +01:00
Mike Hommey
54eba416f4 Bug 632920 part 2 - Add support for R_ARM_THM_JUMP24 relocation in elfhack. r=tglek,a=bsmedberg 2011-02-16 17:27:35 +01:00
Mike Hommey
1d6efc259c Bug 632920 part 1 - Refactor relocations application to avoid error-prone duplication of code in elfhack. r=tglek,a=bsmedberg 2011-02-16 17:25:51 +01:00
Mike Hommey
4bd909605b Bug 629635 part 5 - Gracefully abort elfhack when injected code+data is bigger than original relocation section. r=tglek,a=blocking2.0:final 2011-02-12 10:28:34 +01:00
Mike Hommey
bec61c100c Bug 629635 part 3 - Add ElfSegment::getOffset and ElfSegment::getAddr functions. r=tglek,a=blocking2.0:final 2011-02-12 10:28:34 +01:00
Mike Hommey
9f4b04451d Bug 628988 part 2 - Adapt symbol tables content to elfhack changes. r=tglek,a=sdwilsh 2011-01-28 09:22:58 +01:00
Mike Hommey
3518aa3b87 Bug 628232 part 1 - Use the init symbol from elfhack injected code as an entry point instead of hardcoding 0. r=tglek,a=sdwilsh 2011-01-28 09:22:58 +01:00
Mike Hommey
5190cd7346 Bug 628627 part 1 - Raise hard errors in some more cases in elfhack. r=tglek,a=sdwilsh 2011-01-28 09:22:58 +01:00
Mike Hommey
3a16edea86 Bug 628618 part 6 - Delay refreshing of ElfSection addresses and offsets. r=tglek,a=sdwilsh 2011-01-28 09:22:58 +01:00
Mike Hommey
cc0eedf4c6 Bug 628618 part 5 - Don't set DT_REL*COUNT if it wasn't already set. r=tglek,a=sdwilsh 2011-01-28 09:22:58 +01:00
Mike Hommey
7571185aaf Bug 628283 - Make elfhack handle GNU_RELRO segments better. r=tglek,a=dbaron 2011-01-24 23:11:46 +01:00
Mike Hommey
f56acbddff Bug 606145 part 2 - Import elfhack code. r=tglek,a=bsmedberg 2011-01-24 09:56:40 +01:00