History log of /haiku-fatelf/src/system/runtime_loader/elf_load_image.cpp
Revision Date Author Comments
# 6ab36426 24-Nov-2012 Landon Fuller <landonf@plausible.coop>

Switch to the new B_MISMATCHING_PLATFORM error constant


# f8043ed4 24-Nov-2012 Landon Fuller <landonf@plausible.coop>

Add a check for OSABI in runtime_loader.


# 2036a210 24-Nov-2012 Landon Fuller <landonf@plausible.coop>

Only try Fat handling on ELF parse failure

Rather than always attempting to parse as FatELF, we can only bother
trying when ELF has declared the binary as not a valid ELF binary. In
that case, it's either not a binary at all, or it's actually a FatELF
file.


# 959514bf 23-Nov-2012 Landon Fuller <landonf@plausible.coop>

Plumb FatELF loading through runtime_loader.

This should cover all userspace executable and shared library loading.
Additional work is required for test_executable/elf_verify_header,
which has been marked with FATELF_TODO.


# 61add862 23-Nov-2012 Landon Fuller <landonf@plausible.coop>

Detect mismatching executable files.

This fixes Haiku issue #8520


# d2c8db26 04-Nov-2012 Axel Dörfler <axeld@pinc-software.de>

Just ignore unknown ELF program headers instead of failing.

* This fixes loading executables with a TLS section (which we do not support
so far, though). Still, no reason to let the runtime loader choke on it.


# e3ac2588 25-Jul-2012 Alex Smith <alex@alex-smith.me.uk>

Changed runtime_loader to use elf_* typedefs over Elf32_*.

This means that it will be using ELF64 types on x86_64 rather than
ELF32. The next step for supporting x86_64 is to implement relocations.


# 25dc253d 22-Nov-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

* Merged weak-symbols branch.
* Fixed trivial merge conflict in src/system/libroot/posix/locale/nl_langinfo.cpp
* Fixed gcc 2 compilation of src/system/glue/init_term_dyn.c.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39571 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9704a425 27-Dec-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

When pre-loading stuff, we must not access gProgramImage unchecked.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34785 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c533f813 27-May-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Normalized the FATAL messages. The image path is always printed, now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30878 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 94830eb2 20-May-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved most code of the heavy elf.cpp into several smaller source files.
* Some style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30808 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6ab364265c00465dcf4423b0a57b1d09ed78116c 24-Nov-2012 Landon Fuller <landonf@plausible.coop>

Switch to the new B_MISMATCHING_PLATFORM error constant


# f8043ed42187e682f15f3e52470769070caef29c 24-Nov-2012 Landon Fuller <landonf@plausible.coop>

Add a check for OSABI in runtime_loader.


# 2036a2106eb26fed3d7f2cbb0832f85318d0848a 24-Nov-2012 Landon Fuller <landonf@plausible.coop>

Only try Fat handling on ELF parse failure

Rather than always attempting to parse as FatELF, we can only bother
trying when ELF has declared the binary as not a valid ELF binary. In
that case, it's either not a binary at all, or it's actually a FatELF
file.


# 959514bffa48888ab6230d00b98c35624e89a6c5 23-Nov-2012 Landon Fuller <landonf@plausible.coop>

Plumb FatELF loading through runtime_loader.

This should cover all userspace executable and shared library loading.
Additional work is required for test_executable/elf_verify_header,
which has been marked with FATELF_TODO.


# 61add862d7f7bdc105444bf5666d8e18d726f862 23-Nov-2012 Landon Fuller <landonf@plausible.coop>

Detect mismatching executable files.

This fixes Haiku issue #8520


# d2c8db267dd912f719bb582acc14c8c521eac15c 04-Nov-2012 Axel Dörfler <axeld@pinc-software.de>

Just ignore unknown ELF program headers instead of failing.

* This fixes loading executables with a TLS section (which we do not support
so far, though). Still, no reason to let the runtime loader choke on it.


# e3ac2588e64059e0c140504e9acc8e73b3c36fdc 25-Jul-2012 Alex Smith <alex@alex-smith.me.uk>

Changed runtime_loader to use elf_* typedefs over Elf32_*.

This means that it will be using ELF64 types on x86_64 rather than
ELF32. The next step for supporting x86_64 is to implement relocations.


# 25dc253d6ab28ce204fa4de2d3e7a27d167fc817 22-Nov-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

* Merged weak-symbols branch.
* Fixed trivial merge conflict in src/system/libroot/posix/locale/nl_langinfo.cpp
* Fixed gcc 2 compilation of src/system/glue/init_term_dyn.c.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39571 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9704a425ea92a2662b1c26eca9819c18b5044c0a 27-Dec-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

When pre-loading stuff, we must not access gProgramImage unchecked.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34785 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c533f813a2c1392f51f8a0f803ab41775817d530 27-May-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Normalized the FATAL messages. The image path is always printed, now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30878 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 94830eb226ce51bd1fd0143bad2538f788883e85 20-May-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved most code of the heavy elf.cpp into several smaller source files.
* Some style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30808 a95241bf-73f2-0310-859d-f6bbb57e9c96