android_crazy_linker
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
Name: Android Crazy Linker URL: https://chromium.googlesource.com/chromium/src.git/+/master/third_party/android_crazy_linker/ Version: 0 Revision: Forked from https://android.googlesource.com/platform/ndk/+/681f1b744aec1b0888f4c7a68165720db9670300/sources/android/crazy_linker/ Security Critical: no License: Apache Version 2.0 Description: Fork of the Android NDK crazy linker. Local Modifications: - Forked from: android/platform/ndk/f96c7168b688f2d8cc99c220e7a40e3739476848 - Add a required license header to a cpp module, missing in the original - Rolled to: android/platform/ndk/681f1b744aec1b0888f4c7a68165720db9670300 (Re-add license header to crazy_linker_elf_view.cpp) - Fix for crbug/373695 (NDK crazy linker: Bug in library file name handling) - Fix for crbug/386594 (Crazy linker fails to load a browser on MIPS) - Add support for unpacking packed R_ARM_RELATIVE relocation data. https://code.google.com/p/chromium/issues/detail?id=385553 - Add support for opening library within a zipfile. - Fix -Werror=sign-compare error encountered in NDK build. - Improve permission denied message to mention upgrading from L-preview. - Fix for crbug/394306 (Chrome crashes during startup ... on Arm64 AAW15) - Move packed relocation dynamic tags from DT_LOPROC range to DT_LOOS range. - Add support for x86_64. - Speculative fix for crbug/397634. - Implement LEB128 decoding more efficiently. - Add support for unpacking relative relocations with addends, for arm64. - Fix phdr_table_get_dynamic_section() call in ElfView::InitUnmapped(). - Fix typo in LOG() call, added in arm64 packed relative relocations change. - Add an error message for failures where no shared RELRO pages are swapped. - Remove excess newline from the message added above. - Avoid mixing size_t and uint32_t in Leb128Decoder::Dequeue(). - Re-order application of relocation sections to match the system linker. - Add a check whether file is uncompressed in zip file. - Fix -Wreorder warning (error with -Werror) in class ElfLoader. - Control static_assert invocations with a new COMPILE_ASSERT macro. - Fix unit test crash caused by use of deleted data inside an unload callback. - Fix for crbug/444714 (Chrome_Android: Crash Report - -1DB24FB5) - Speculative fix for crbug/450659. - Add basic LD_PRELOAD handling, for crbug/448968. - Speculative fix for crbug/479220. - Fix RELRO sharing issue caused by packing relocations. - Correct fix for crbug/479220 (replace IsSystemLibrary() with caller flags). - Fix link_map_.l_addr (was load address, should be load bias). - Convert packed relocation code to handle Android packed relocations. - Implement a stub __cxa_demangle to avoid linking to LLVM's implementation. - Change relocation packing constant names for C++ style (cosmetic only). - Add a Breakpad "guard region" to the start of reserved address space. - Remove CVE-2011-1149 detection machinery. - Start zip EOCD signature search at size of EOCD record bytes from file end. - Add custom operator new(size_t) and operator delete(void*) in order to reduce the size of the final binaries (24 kiB on ARM, 64 kiB on AARCH4). - Define CRAZY_DISABLE_R_BRK to disable debugger support. - Enable integration and unit tests when building with Chromium. - Support passing system library handles in dlsym() / dlclose() wrappers. - Improve FileDescriptor class. - Safer zip parsing code (avoid integer overflows and add range checks).