- 22 Jan, 2013 15 commits
-
-
Elliott Hughes authored
We don't know that they're not going to be cleaned up by a C++ global destructor that runs after us. This is the case with bootanimation, for example. Bug: 7291287 Change-Id: Iba402514d1735fdc2ae4bc95b65396d816be46c0
-
Elliott Hughes authored
-
Elliott Hughes authored
-
Elliott Hughes authored
Change-Id: I45251047202a229f9175735ecc23c0ebcda71e8d
-
Elliott Hughes authored
-
Elliott Hughes authored
Just take the upstream NetBSD code. Bug: http://code.google.com/p/android/issues/detail?id=43078 Change-Id: Ibbbde9d00e8bc6a09c9503aab2b04b4e3d1f98b0
-
Elliott Hughes authored
-
Elliott Hughes authored
-
Elliott Hughes authored
Change-Id: I88afe0201ee5766a295fc5a9e710fba9d6e0d363
-
Elliott Hughes authored
Bug: 7291287 Change-Id: Ia7aa386e8b75b8058d7d9e707e11b1da7dc62f00
-
Nick Kralevich authored
-
Nick Kralevich authored
Both libc/include/sys/auxv.h and libc/private/bionic_auxv.h use _SYS_AUXV_H_ to see if a header file has already been included. This prevents both of these files from being included at the same time. Fix this name conflict. Change-Id: Ifaec88aa9779d784b95f8e75145117acf3d5cfc5
-
Elliott Hughes authored
-
Elliott Hughes authored
Change-Id: Idbf24ce8482ff03f24caa89bafb08677b1c5cec3
-
Elliott Hughes authored
-
- 19 Jan, 2013 2 commits
-
-
Kito Cheng authored
Change-Id: Icbc67375282f2a22dce02e4bacab15ddae846057
-
Elliott Hughes authored
We had two copies of the backtrace code, and two copies of the libcorkscrew /proc/pid/maps code. This patch gets us down to one. We also had hacks so we could log in the malloc debugging code. This patch pulls the non-allocating "printf" code out of the dynamic linker so everyone can share. This patch also makes the leak diagnostics easier to read, and makes it possible to paste them directly into the 'stack' tool (by using relative PCs). This patch also fixes the stdio standard stream leak that was causing a leak warning every time tf_daemon ran. Bug: 7291287 Change-Id: I66e4083ac2c5606c8d2737cb45c8ac8a32c7cfe8
-
- 18 Jan, 2013 2 commits
-
-
Nick Kralevich authored
-
- 17 Jan, 2013 5 commits
-
-
Nick Kralevich authored
-
Elliott Hughes authored
-
Nick Kralevich authored
Don't do the fortify_source checks if we can determine, at compile time, that the provided operation is safe. This avoids silliness like calling fortify source on things like: size_t len = strlen("asdf"); printf("%d\n", len); and allows the compiler to optimize this code to: printf("%d\n", 4); Defer to gcc's builtin functions instead of pointing our code to the libc implementation. Change-Id: I5e1dcb61946461c4afaaaa983e39f07c7a0df0ae
-
Raghu Gandham authored
based on architecture.
-
Nick Kralevich authored
-
- 16 Jan, 2013 8 commits
-
-
Nick Kralevich authored
The linker is essentially a shared library, and incorporates it's own copy of libc. Even though it's unnecessary, currently /system/bin/linker is exporting various libc symbols (only to apps which explicitly dlopen /system/bin/linker) Add --exclude-libs,ALL, which tells the static linker to mark all of the imported libc symbols as hidden. This reduces the size of /system/bin/linker from 92K to 67K with no obvious loss in functionality. $ adb shell ls -l /system/bin/linker -rwxrwxrwx root root 92260 2013-01-16 16:52 linker $ adb shell ls -l /system/bin/linker -rwxrwxrwx root root 67660 2013-01-16 16:49 linker Documentation on exclude-libs can be found at http://sourceware.org/binutils/docs-2.21/ld/Options.html Change-Id: I4508287770e4b7a845def2e6b4af969f9c866c6a
-
Nick Kralevich authored
-
Nick Kralevich authored
The AT_RANDOM changes broke setuid / setgid executables such as "ping". When the linker executes a setuid program, it cleans the environment, removing any invalid environment entries, and adding "NULL"s to the end of the environment array for each removed variable. Later on, we try to determine the location of the aux environment variable, and get tripped up by these extra NULLs. Reverting this patch will get setuid executables working again, but getauxval() is still broken for setuid programs because of this bug. This reverts commit e3a49a86. Change-Id: I05c58a896b1fe32cfb5d95d43b096045cda0aa4a
-
Nick Kralevich authored
-
Nick Kralevich authored
-
Nick Kralevich authored
Populate the stack canaries from the kernel supplied AT_RANDOM value, which doesn't involve any system calls. This is slightly faster (6 fewer syscalls) and avoids unnecessarily reading /dev/urandom, which depletes entropy. Bug: 7959813 Change-Id: If2b43100a2a9929666df3de56b6139fed969e0f1
-
Elliott Hughes authored
-
Elliott Hughes authored
Also mark signalfd's sigset_t* argument as non-nullable. Change-Id: I466e09cdf3fb92480744c496da92274a97f99dd1
-
- 15 Jan, 2013 5 commits
-
-
Nick Kralevich authored
When executing a setuid executable, filter out ANDROID_PROPERTY_WORKSPACE from the environment. Some applications implicitly trust the property space and don't realize that it's passed by an environment variable which can be modified by the caller. Change-Id: I3e3a98941f0a1f249a2ff983ecbcfe1278aa9159
-
Elliott Hughes authored
Merge "Revert "DO NOT MERGE Revert "Add the libcutils localtime_tz and mktime_t extensions to bionic."""
-
Elliott Hughes authored
This reverts commit f4b34b6c. The revert was only meant to apply to the jb-mr1 branch, but accidentally leaked out into AOSP. This revert-revert gets AOSP master and internal master back in sync.
-
Nick Kralevich authored
-
Nick Kralevich authored
e6e60065 modified strerror_r to treat errno as signed. However, the change to the test code modified the "strerror" test, not the "strerror_r" test. Make the same change for the strerror_r code. Change-Id: Ia236a53df5745935e229a4446a74da8bed0cfd7b
-
- 14 Jan, 2013 3 commits
-
-
Ben Cheng authored
-
Ben Cheng authored
If the platform code is compiled with -mcpu=cortex-a15, then without this change prebuilt libraries built against -march=armv7 cannot resolve the dependency on __aeabi_idiv (provided by libgcc.a). Bug: 7961327 cherry-picked from internal master. Change-Id: I8fe59a98eb53d641518b882523c1d6a724fb7e55
-
Nick Kralevich authored
-