OSDN Git Service

android-x86/bionic.git
11 years agoam b3351f12: Merge "libc: use more secure system properties if available"
Nick Kralevich [Wed, 23 Jan 2013 19:07:23 +0000 (11:07 -0800)]
am b3351f12: Merge "libc: use more secure system properties if available"

* commit 'b3351f12047747b603efb070069e7afdf3040335':
  libc: use more secure system properties if available

11 years agoMerge "libc: use more secure system properties if available"
Nick Kralevich [Wed, 23 Jan 2013 18:50:24 +0000 (18:50 +0000)]
Merge "libc: use more secure system properties if available"

11 years agolibc: use more secure system properties if available
Nick Kralevich [Wed, 23 Jan 2013 17:28:35 +0000 (09:28 -0800)]
libc: use more secure system properties if available

Currently, system properties are passed via the environment
variable ANDROID_PROPERTY_WORKSPACE and a file descriptor passed
from parent to child. This is insecure for setuid executables,
as the environment variable can be changed by the caller.

Modify system property handling so that we get the properties
from a root owned properties file, rather than using an
environment variable.  Fall back to the environment variable
if the file doesn't exist.

Bug: 8045561
Change-Id: I54f3efa98cf7d63d88788da5ce0d19e34fd7851a

11 years agoam 778a68e1: Merge "Don\'t free anything when reporting leaks."
Elliott Hughes [Wed, 23 Jan 2013 06:11:55 +0000 (22:11 -0800)]
am 778a68e1: Merge "Don\'t free anything when reporting leaks."

* commit '778a68e1e57408be04806b5bfc3150aade44bcbf':
  Don't free anything when reporting leaks.

11 years agoam 5c8f75ef: Merge "Disable leak checking for mksh; it\'s way too leaky."
Elliott Hughes [Wed, 23 Jan 2013 06:11:54 +0000 (22:11 -0800)]
am 5c8f75ef: Merge "Disable leak checking for mksh; it\'s way too leaky."

* commit '5c8f75ef8bd89498de1d1108efa54869a2784738':
  Disable leak checking for mksh; it's way too leaky.

11 years agoMerge "Don't free anything when reporting leaks."
Elliott Hughes [Wed, 23 Jan 2013 06:06:21 +0000 (06:06 +0000)]
Merge "Don't free anything when reporting leaks."

11 years agoMerge "Disable leak checking for mksh; it's way too leaky."
Elliott Hughes [Wed, 23 Jan 2013 06:05:18 +0000 (06:05 +0000)]
Merge "Disable leak checking for mksh; it's way too leaky."

11 years agoDon't free anything when reporting leaks.
Elliott Hughes [Wed, 23 Jan 2013 02:36:28 +0000 (18:36 -0800)]
Don't free anything when reporting leaks.

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

11 years agoDisable leak checking for mksh; it's way too leaky.
Elliott Hughes [Wed, 23 Jan 2013 02:35:14 +0000 (18:35 -0800)]
Disable leak checking for mksh; it's way too leaky.

When each shell leaks ~240 allocations, you can't see the leaks from
the program you ran with "adb shell".

Bug: 7291287
Change-Id: Ib8780db72ba0114ebdb24768537da74bbb61f354

11 years agoam 28f82b26: Merge "Add const for first argument of sigismember for fit POSIX spec"
Elliott Hughes [Wed, 23 Jan 2013 01:26:45 +0000 (17:26 -0800)]
am 28f82b26: Merge "Add const for first argument of sigismember for fit POSIX spec"

* commit '28f82b260c9076aae437dafb57193a174aef1eb3':
  Add const for first argument of sigismember for fit POSIX spec

11 years agoMerge "Add const for first argument of sigismember for fit POSIX spec"
Elliott Hughes [Wed, 23 Jan 2013 01:11:28 +0000 (01:11 +0000)]
Merge "Add const for first argument of sigismember for fit POSIX spec"

11 years agoam 8d6302cd: Merge "Our strcoll(3) is no different from NetBSD\'s, so take exactly...
Elliott Hughes [Tue, 22 Jan 2013 23:31:26 +0000 (15:31 -0800)]
am 8d6302cd: Merge "Our strcoll(3) is no different from NetBSD\'s, so take exactly theirs."

* commit '8d6302cdcff9c53fe3ecd36ab479fdf08318c504':
  Our strcoll(3) is no different from NetBSD's, so take exactly theirs.

11 years agoMerge "Our strcoll(3) is no different from NetBSD's, so take exactly theirs."
Elliott Hughes [Tue, 22 Jan 2013 23:19:35 +0000 (23:19 +0000)]
Merge "Our strcoll(3) is no different from NetBSD's, so take exactly theirs."

11 years agoOur strcoll(3) is no different from NetBSD's, so take exactly theirs.
Elliott Hughes [Tue, 22 Jan 2013 23:10:19 +0000 (15:10 -0800)]
Our strcoll(3) is no different from NetBSD's, so take exactly theirs.

Change-Id: I45251047202a229f9175735ecc23c0ebcda71e8d

11 years agoam 547eba0a: Merge "Avoid overflow in memccpy."
Elliott Hughes [Tue, 22 Jan 2013 23:05:31 +0000 (15:05 -0800)]
am 547eba0a: Merge "Avoid overflow in memccpy."

* commit '547eba0a63951d7db93c0542e1ecab891725b9a8':
  Avoid overflow in memccpy.

11 years agoMerge "Avoid overflow in memccpy."
Elliott Hughes [Tue, 22 Jan 2013 22:53:53 +0000 (22:53 +0000)]
Merge "Avoid overflow in memccpy."

11 years agoam 85597e2b: Merge "Clean up debuggerd-related logging."
Elliott Hughes [Tue, 22 Jan 2013 22:49:11 +0000 (14:49 -0800)]
am 85597e2b: Merge "Clean up debuggerd-related logging."

* commit '85597e2b59af91be0607ed073b6574b934ed369d':
  Clean up debuggerd-related logging.

11 years agoAvoid overflow in memccpy.
Elliott Hughes [Tue, 22 Jan 2013 22:41:23 +0000 (14:41 -0800)]
Avoid overflow in memccpy.

Just take the upstream NetBSD code.

Bug: http://code.google.com/p/android/issues/detail?id=43078
Change-Id: Ibbbde9d00e8bc6a09c9503aab2b04b4e3d1f98b0

11 years agoMerge "Clean up debuggerd-related logging."
Elliott Hughes [Tue, 22 Jan 2013 22:37:27 +0000 (22:37 +0000)]
Merge "Clean up debuggerd-related logging."

11 years agoam 7af7895e: Merge "Use the new non-allocating logging for dlmalloc failures."
Elliott Hughes [Tue, 22 Jan 2013 22:32:02 +0000 (14:32 -0800)]
am 7af7895e: Merge "Use the new non-allocating logging for dlmalloc failures."

* commit '7af7895eeb810ff1a1ca8b60fcda13595d551114':
  Use the new non-allocating logging for dlmalloc failures.

11 years agoMerge "Use the new non-allocating logging for dlmalloc failures."
Elliott Hughes [Tue, 22 Jan 2013 22:26:35 +0000 (22:26 +0000)]
Merge "Use the new non-allocating logging for dlmalloc failures."

11 years agoUse the new non-allocating logging for dlmalloc failures.
Elliott Hughes [Tue, 22 Jan 2013 22:00:09 +0000 (14:00 -0800)]
Use the new non-allocating logging for dlmalloc failures.

Change-Id: I88afe0201ee5766a295fc5a9e710fba9d6e0d363

11 years agoClean up debuggerd-related logging.
Elliott Hughes [Tue, 22 Jan 2013 22:17:14 +0000 (14:17 -0800)]
Clean up debuggerd-related logging.

Bug: 7291287
Change-Id: Ia7aa386e8b75b8058d7d9e707e11b1da7dc62f00

11 years agoam 244bee5b: Merge "bionic_auxv.h: fix #define conflict"
Nick Kralevich [Tue, 22 Jan 2013 21:38:53 +0000 (13:38 -0800)]
am 244bee5b: Merge "bionic_auxv.h: fix #define conflict"

* commit '244bee5bb6e0bc12b739c57028ac8af23a18aed0':
  bionic_auxv.h: fix #define conflict

11 years agoMerge "bionic_auxv.h: fix #define conflict"
Nick Kralevich [Tue, 22 Jan 2013 21:30:27 +0000 (21:30 +0000)]
Merge "bionic_auxv.h: fix #define conflict"

11 years agobionic_auxv.h: fix #define conflict
Nick Kralevich [Tue, 22 Jan 2013 21:09:04 +0000 (13:09 -0800)]
bionic_auxv.h: fix #define conflict

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

11 years agoam 02f96b9d: Merge "Add missing extern "C"."
Elliott Hughes [Tue, 22 Jan 2013 19:32:16 +0000 (11:32 -0800)]
am 02f96b9d: Merge "Add missing extern "C"."

* commit '02f96b9db0242711fe1dfe0713c0c4e698561da5':
  Add missing extern "C".

11 years agoMerge "Add missing extern "C"."
Elliott Hughes [Tue, 22 Jan 2013 19:22:46 +0000 (19:22 +0000)]
Merge "Add missing extern "C"."

11 years agoAdd missing extern "C".
Elliott Hughes [Tue, 22 Jan 2013 19:20:45 +0000 (11:20 -0800)]
Add missing extern "C".

Change-Id: Idbf24ce8482ff03f24caa89bafb08677b1c5cec3

11 years agoam ca483765: Merge "Fix the duplication in the debugging code."
Elliott Hughes [Tue, 22 Jan 2013 17:59:44 +0000 (09:59 -0800)]
am ca483765: Merge "Fix the duplication in the debugging code."

* commit 'ca483765bd0dc16294b9e67dd0de5c6d53b1bfa3':
  Fix the duplication in the debugging code.

11 years agoMerge "Fix the duplication in the debugging code."
Elliott Hughes [Tue, 22 Jan 2013 17:44:15 +0000 (17:44 +0000)]
Merge "Fix the duplication in the debugging code."

11 years agoAdd const for first argument of sigismember for fit POSIX spec
Kito Cheng [Sat, 19 Jan 2013 16:15:15 +0000 (00:15 +0800)]
Add const for first argument of sigismember for fit POSIX spec

Change-Id: Icbc67375282f2a22dce02e4bacab15ddae846057

11 years agoFix the duplication in the debugging code.
Elliott Hughes [Fri, 18 Jan 2013 02:36:06 +0000 (18:36 -0800)]
Fix the duplication in the debugging code.

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

11 years agoam 5496bbf6: Merge "Revert "Filter ANDROID_PROPERTY_WORKSPACE""
Nick Kralevich [Fri, 18 Jan 2013 21:10:04 +0000 (13:10 -0800)]
am 5496bbf6: Merge "Revert "Filter ANDROID_PROPERTY_WORKSPACE""

* commit '5496bbf6a3592fd99cee6b8c20c8624c2aeea0c1':
  Revert "Filter ANDROID_PROPERTY_WORKSPACE"

11 years agoMerge "Revert "Filter ANDROID_PROPERTY_WORKSPACE""
Nick Kralevich [Fri, 18 Jan 2013 20:50:40 +0000 (20:50 +0000)]
Merge "Revert "Filter ANDROID_PROPERTY_WORKSPACE""

11 years agoRevert "Filter ANDROID_PROPERTY_WORKSPACE"
Guang Zhu [Fri, 18 Jan 2013 07:25:24 +0000 (23:25 -0800)]
Revert "Filter ANDROID_PROPERTY_WORKSPACE"

Temporarily revert the change since DNS resolution seems
broken right now in ping util.

Bug: 8029617

This reverts commit a0f64756a4a55ab48b2b5511d4e7c45583dac44b.

11 years agoam 4bfaf1e5: Merge "FORTIFY_SOURCE: optimize"
Nick Kralevich [Fri, 18 Jan 2013 01:04:33 +0000 (17:04 -0800)]
am 4bfaf1e5: Merge "FORTIFY_SOURCE: optimize"

* commit '4bfaf1e5f62748b305406ff4ceebd5f4b750038c':
  FORTIFY_SOURCE: optimize

11 years agoMerge "FORTIFY_SOURCE: optimize"
Nick Kralevich [Fri, 18 Jan 2013 00:49:35 +0000 (00:49 +0000)]
Merge "FORTIFY_SOURCE: optimize"

11 years agoam e4ca88d9: Merge "Add functionlity to the scripts to replace tokens in kernel heade...
Elliott Hughes [Fri, 18 Jan 2013 00:48:45 +0000 (16:48 -0800)]
am e4ca88d9: Merge "Add functionlity to the scripts to replace tokens in kernel headers based on architecture."

* commit 'e4ca88d9fa8757e4fb4056fcafa5bc15b406a2fd':
  Add functionlity to the scripts to replace tokens in kernel headers based on architecture.

11 years agoMerge "Add functionlity to the scripts to replace tokens in kernel headers based...
Elliott Hughes [Fri, 18 Jan 2013 00:34:13 +0000 (00:34 +0000)]
Merge "Add functionlity to the scripts to replace tokens in kernel headers based on architecture."

11 years agoFORTIFY_SOURCE: optimize
Nick Kralevich [Thu, 17 Jan 2013 23:41:33 +0000 (15:41 -0800)]
FORTIFY_SOURCE: optimize

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

11 years agoAdd functionlity to the scripts to replace tokens in kernel headers
Raghu Gandham [Thu, 17 Jan 2013 00:42:47 +0000 (16:42 -0800)]
Add functionlity to the scripts to replace tokens in kernel headers
based on architecture.

11 years agoam f3fe1945: Merge "linker: add -Wl,--exclude-libs,ALL to LDFLAGS"
Nick Kralevich [Thu, 17 Jan 2013 16:58:27 +0000 (08:58 -0800)]
am f3fe1945: Merge "linker: add -Wl,--exclude-libs,ALL to LDFLAGS"

* commit 'f3fe19459fd9263e8cc8a413a5313b1ec3cf3975':
  linker: add -Wl,--exclude-libs,ALL to LDFLAGS

11 years agoMerge "linker: add -Wl,--exclude-libs,ALL to LDFLAGS"
Nick Kralevich [Thu, 17 Jan 2013 16:41:31 +0000 (16:41 +0000)]
Merge "linker: add -Wl,--exclude-libs,ALL to LDFLAGS"

11 years agolinker: add -Wl,--exclude-libs,ALL to LDFLAGS
Nick Kralevich [Thu, 17 Jan 2013 00:43:15 +0000 (16:43 -0800)]
linker: add -Wl,--exclude-libs,ALL to LDFLAGS

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

11 years agoam 1271cdc1: Merge "Revert "stack protector: use AT_RANDOM""
Nick Kralevich [Wed, 16 Jan 2013 21:53:25 +0000 (13:53 -0800)]
am 1271cdc1: Merge "Revert "stack protector: use AT_RANDOM""

* commit '1271cdc1c91c6ae688917bc8f4ae59d2a97b3e99':
  Revert "stack protector: use AT_RANDOM"

11 years agoMerge "Revert "stack protector: use AT_RANDOM""
Nick Kralevich [Wed, 16 Jan 2013 21:36:53 +0000 (21:36 +0000)]
Merge "Revert "stack protector: use AT_RANDOM""

11 years agoRevert "stack protector: use AT_RANDOM"
Nick Kralevich [Wed, 16 Jan 2013 21:13:22 +0000 (13:13 -0800)]
Revert "stack protector: use AT_RANDOM"

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 e3a49a8661125f24aec8a1453e54b3b78005e21e.

Change-Id: I05c58a896b1fe32cfb5d95d43b096045cda0aa4a

11 years agoam ba117e41: Merge "stack protector: use AT_RANDOM"
Nick Kralevich [Wed, 16 Jan 2013 19:31:00 +0000 (11:31 -0800)]
am ba117e41: Merge "stack protector: use AT_RANDOM"

* commit 'ba117e4172fe6f160bf5f4d58b37e12c08c34245':
  stack protector: use AT_RANDOM

11 years agoMerge "stack protector: use AT_RANDOM"
Nick Kralevich [Wed, 16 Jan 2013 19:23:25 +0000 (11:23 -0800)]
Merge "stack protector: use AT_RANDOM"

11 years agoam 1b34228b: Merge "Filter ANDROID_PROPERTY_WORKSPACE"
Nick Kralevich [Wed, 16 Jan 2013 19:14:01 +0000 (11:14 -0800)]
am 1b34228b: Merge "Filter ANDROID_PROPERTY_WORKSPACE"

* commit '1b34228bb289723c4ba0534eae57d0d085a3d0fa':
  Filter ANDROID_PROPERTY_WORKSPACE

11 years agoMerge "Filter ANDROID_PROPERTY_WORKSPACE"
Nick Kralevich [Wed, 16 Jan 2013 19:11:17 +0000 (11:11 -0800)]
Merge "Filter ANDROID_PROPERTY_WORKSPACE"

11 years agostack protector: use AT_RANDOM
Nick Kralevich [Mon, 14 Jan 2013 22:46:26 +0000 (14:46 -0800)]
stack protector: use AT_RANDOM

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

11 years agoam 14e1975e: Merge "Fix signalfd for MIPS."
Elliott Hughes [Wed, 16 Jan 2013 17:45:57 +0000 (09:45 -0800)]
am 14e1975e: Merge "Fix signalfd for MIPS."

* commit '14e1975e13c197180ed0481f305f83a362b16a24':
  Fix signalfd for MIPS.

11 years agoMerge "Fix signalfd for MIPS."
Elliott Hughes [Wed, 16 Jan 2013 17:42:51 +0000 (09:42 -0800)]
Merge "Fix signalfd for MIPS."

11 years agoFix signalfd for MIPS.
Elliott Hughes [Wed, 16 Jan 2013 17:34:16 +0000 (09:34 -0800)]
Fix signalfd for MIPS.

Also mark signalfd's sigset_t* argument as non-nullable.

Change-Id: I466e09cdf3fb92480744c496da92274a97f99dd1

11 years agoFilter ANDROID_PROPERTY_WORKSPACE
Nick Kralevich [Wed, 16 Jan 2013 00:02:03 +0000 (16:02 -0800)]
Filter ANDROID_PROPERTY_WORKSPACE

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

11 years agoam 791e26d9: (-s ours) Merge "Revert "DO NOT MERGE Revert "Add the libcutils localtim...
Elliott Hughes [Tue, 15 Jan 2013 21:35:58 +0000 (13:35 -0800)]
am 791e26d9: (-s ours) Merge "Revert "DO NOT MERGE Revert "Add the libcutils localtime_tz and mktime_t extensions to bionic."""

* commit '791e26d9598a72376b8a16a5ccfb5d1ae0010965':
  Revert "DO NOT MERGE Revert "Add the libcutils localtime_tz and mktime_t extensions to bionic.""

11 years agoMerge "Revert "DO NOT MERGE Revert "Add the libcutils localtime_tz and mktime_t exten...
Elliott Hughes [Tue, 15 Jan 2013 21:21:51 +0000 (13:21 -0800)]
Merge "Revert "DO NOT MERGE Revert "Add the libcutils localtime_tz and mktime_t extensions to bionic."""

11 years agoam b59e358b: Merge "fix strerror_r test"
Nick Kralevich [Tue, 15 Jan 2013 19:15:21 +0000 (11:15 -0800)]
am b59e358b: Merge "fix strerror_r test"

* commit 'b59e358bb902124cc7d648266a97f96beefc8142':
  fix strerror_r test

11 years agoRevert "DO NOT MERGE Revert "Add the libcutils localtime_tz and mktime_t extensions...
Elliott Hughes [Tue, 15 Jan 2013 19:12:18 +0000 (11:12 -0800)]
Revert "DO NOT MERGE Revert "Add the libcutils localtime_tz and mktime_t extensions to bionic.""

This reverts commit f4b34b6c3942be273ad7298a40be0d312b183aab.

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.

11 years agoMerge "fix strerror_r test"
Nick Kralevich [Tue, 15 Jan 2013 18:56:06 +0000 (10:56 -0800)]
Merge "fix strerror_r test"

11 years agofix strerror_r test
Nick Kralevich [Tue, 15 Jan 2013 18:35:09 +0000 (10:35 -0800)]
fix strerror_r test

e6e60065ff093ff8c859ab146cf543531cb1967c 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

11 years agoam b09d7d86: Merge "Add __aeabi_idiv to the dummy reference list."
Ben Cheng [Mon, 14 Jan 2013 23:44:01 +0000 (15:44 -0800)]
am b09d7d86: Merge "Add __aeabi_idiv to the dummy reference list."

* commit 'b09d7d86004ab75b774358454d8ee261987af96b':
  Add __aeabi_idiv to the dummy reference list.

11 years agoMerge "Add __aeabi_idiv to the dummy reference list."
Ben Cheng [Mon, 14 Jan 2013 23:35:03 +0000 (15:35 -0800)]
Merge "Add __aeabi_idiv to the dummy reference list."

11 years agoAdd __aeabi_idiv to the dummy reference list.
Ben Cheng [Mon, 14 Jan 2013 19:26:51 +0000 (11:26 -0800)]
Add __aeabi_idiv to the dummy reference list.

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

11 years agoam 29fe857e: Merge "headers: update auxvec.h from Linux kernel"
Nick Kralevich [Mon, 14 Jan 2013 22:31:28 +0000 (14:31 -0800)]
am 29fe857e: Merge "headers: update auxvec.h from Linux kernel"

* commit '29fe857ec80e59347e28458a5396eb68d1cba0e4':
  headers: update auxvec.h from Linux kernel

11 years agoMerge "headers: update auxvec.h from Linux kernel"
Nick Kralevich [Mon, 14 Jan 2013 22:14:49 +0000 (14:14 -0800)]
Merge "headers: update auxvec.h from Linux kernel"

11 years agoheaders: update auxvec.h from Linux kernel
Nick Kralevich [Mon, 14 Jan 2013 19:28:26 +0000 (11:28 -0800)]
headers: update auxvec.h from Linux kernel

Pull a new version of auxvec.h from the upstream Linux
kernel at commit b719f43059903820c31edb30f4663a2818836e7f

These files were generated using the following commands:

cd bionic/libc/kernel
./tools/clean_header.py -u ../../../external/kernel-headers/original/uapi/linux/auxvec.h
./tools/clean_header.py -u ../../../external/kernel-headers/original/linux/auxvec.h
./tools/clean_header.py -u ../../../external/kernel-headers/original/asm-x86/auxvec.h

This change is needed to get AT_RANDOM defined.

Change-Id: Ib064649684b17af6ff4b1a31d501a05f78bb81d0

11 years agoam 68fa57f0: Merge "Name anonymous mmap mallocs."
Ian Rogers [Mon, 14 Jan 2013 19:19:00 +0000 (11:19 -0800)]
am 68fa57f0: Merge "Name anonymous mmap mallocs."

* commit '68fa57f000285af20100c00db3d2bc143ad32294':
  Name anonymous mmap mallocs.

11 years agoMerge "Name anonymous mmap mallocs."
Ian Rogers [Mon, 14 Jan 2013 18:54:44 +0000 (10:54 -0800)]
Merge "Name anonymous mmap mallocs."

11 years agoam bb897fa9: Merge "libc_init_static: apply relro earlier."
Nick Kralevich [Mon, 14 Jan 2013 18:25:16 +0000 (10:25 -0800)]
am bb897fa9: Merge "libc_init_static: apply relro earlier."

* commit 'bb897fa9f79d25e4445fe3ab46b86657d6660c10':
  libc_init_static: apply relro earlier.

11 years agoMerge "libc_init_static: apply relro earlier."
Nick Kralevich [Mon, 14 Jan 2013 18:21:23 +0000 (10:21 -0800)]
Merge "libc_init_static: apply relro earlier."

11 years agoam 09d13c39: Merge "Fix my git mistake."
Elliott Hughes [Mon, 14 Jan 2013 18:08:56 +0000 (10:08 -0800)]
am 09d13c39: Merge "Fix my git mistake."

* commit '09d13c393e7b6a77cc33e5ef87e5c92ccd13fe63':
  Fix my git mistake.

11 years agoMerge "Fix my git mistake."
Elliott Hughes [Mon, 14 Jan 2013 17:57:45 +0000 (09:57 -0800)]
Merge "Fix my git mistake."

11 years agoFix my git mistake.
Elliott Hughes [Mon, 14 Jan 2013 17:56:21 +0000 (09:56 -0800)]
Fix my git mistake.

This was the formatting change that was supposed to be in
cf23905a4bcc7bfdd109be5b6d69ad06877aa217.

Change-Id: Ib79fa031b68f6f541f532507eb589afeaedb831f

11 years agoam 48c632a3: Merge "[MIPS] Set DT_DEBUG dyntab entry if it is writable"
Elliott Hughes [Mon, 14 Jan 2013 17:46:19 +0000 (09:46 -0800)]
am 48c632a3: Merge "[MIPS] Set DT_DEBUG dyntab entry if it is writable"

* commit '48c632a381b10996ec72a53cc95b009b06785d09':
  [MIPS] Set DT_DEBUG dyntab entry if it is writable

11 years agoMerge "[MIPS] Set DT_DEBUG dyntab entry if it is writable"
Elliott Hughes [Mon, 14 Jan 2013 17:31:04 +0000 (09:31 -0800)]
Merge "[MIPS] Set DT_DEBUG dyntab entry if it is writable"

11 years ago[MIPS] Set DT_DEBUG dyntab entry if it is writable
Chris Dearman [Fri, 11 Jan 2013 23:32:20 +0000 (15:32 -0800)]
[MIPS] Set DT_DEBUG dyntab entry if it is writable

This is primarily for MIPS exutables that do not have a
DT_MIPS_RLD_MAP entry.

Change-Id: I4c221d92debcfed961eeee2515123f3fb21ec8e6
Signed-off-by: Chris Dearman <chris@mips.com>
11 years agolibc_init_static: apply relro earlier.
Nick Kralevich [Sat, 12 Jan 2013 02:38:26 +0000 (18:38 -0800)]
libc_init_static: apply relro earlier.

The dynamic linker applies relro before the preinit and init
arrays are executed, so we should be consistent for statically
linked executables.

Change-Id: Ia0a49d0e981a6e8791f74eed00280edf576ba139

11 years agoName anonymous mmap mallocs.
Ian Rogers [Fri, 11 Jan 2013 23:25:44 +0000 (15:25 -0800)]
Name anonymous mmap mallocs.

Change-Id: Icc53ba1eecb8445210623826d8e99a611d686f7f

11 years agoam 2c5153b0: libc: add getauxval()
Nick Kralevich [Sat, 12 Jan 2013 00:59:57 +0000 (16:59 -0800)]
am 2c5153b0: libc: add getauxval()

* commit '2c5153b043b44e9935a334ae9b2d5a4bc5258b40':
  libc: add getauxval()

11 years agolibc: add getauxval()
Nick Kralevich [Fri, 11 Jan 2013 22:43:05 +0000 (14:43 -0800)]
libc: add getauxval()

Add support for getauxval().  This method allows a program an easy way
to retrieve information from the kernel auxiliary vector, and will
hopefully replace other clumsy ways of accessing this same information.

This particular function was also added to glibc in glibc 2.16.
See the following URLs for more details.

  * http://lwn.net/Articles/519085/
  * http://www.gnu.org/software/libc/manual/html_node/Auxiliary-Vector.html

This change is a prerequisite for bug 7959813.

Bug: http://code.google.com/p/android/issues/detail?id=38441
Change-Id: Iba19d899df334bddc6f4899077ece2fc87564ea8

11 years agoam 69c89942: Merge "Add stack canaries / strcpy tests."
Nick Kralevich [Fri, 11 Jan 2013 19:26:54 +0000 (11:26 -0800)]
am 69c89942: Merge "Add stack canaries / strcpy tests."

* commit '69c89942db2ed472c71aa84903d0259cc84aa074':
  Add stack canaries / strcpy tests.

11 years agoMerge "Add stack canaries / strcpy tests."
Nick Kralevich [Fri, 11 Jan 2013 19:03:40 +0000 (11:03 -0800)]
Merge "Add stack canaries / strcpy tests."

11 years agoAdd stack canaries / strcpy tests.
Nick Kralevich [Fri, 11 Jan 2013 01:12:29 +0000 (17:12 -0800)]
Add stack canaries / strcpy tests.

Add a test to ensure that stack canaries are working
correctly. Since stack canaries aren't normally generated
on non-string functions, we have to enable stack-protector-all.

Add a test to ensure that an out of bounds strcpy generates
a runtime failure.

Change-Id: Id0d3e59fc4b9602da019e4d35c5c653e1a57fae4

11 years agoam a12c5445: Fix unused warnings in pthread.c
Wink Saville [Fri, 11 Jan 2013 18:12:12 +0000 (10:12 -0800)]
am a12c5445: Fix unused warnings in pthread.c

* commit 'a12c54454f3a6132988b68873903f6e9eed7f384':
  Fix unused warnings in pthread.c

11 years agoFix unused warnings in pthread.c
Wink Saville [Tue, 8 Jan 2013 23:15:45 +0000 (15:15 -0800)]
Fix unused warnings in pthread.c

Change-Id: I0287aadb825fd8cda29dc976bce55d75a1279fc5

11 years agoam bfde0b6f: Merge "glibc 2.15 treats errno as signed in strerror(3)."
Elliott Hughes [Fri, 11 Jan 2013 00:27:26 +0000 (16:27 -0800)]
am bfde0b6f: Merge "glibc 2.15 treats errno as signed in strerror(3)."

* commit 'bfde0b6fd9e5de545746ab963d3a05ed2a8014f6':
  glibc 2.15 treats errno as signed in strerror(3).

11 years agoMerge "glibc 2.15 treats errno as signed in strerror(3)."
Elliott Hughes [Fri, 11 Jan 2013 00:24:36 +0000 (16:24 -0800)]
Merge "glibc 2.15 treats errno as signed in strerror(3)."

11 years agoglibc 2.15 treats errno as signed in strerror(3).
Elliott Hughes [Fri, 11 Jan 2013 00:01:59 +0000 (16:01 -0800)]
glibc 2.15 treats errno as signed in strerror(3).

And the only reason I hadn't done that in bionic is because I wanted to behave
the same as glibc.

Change-Id: I2cf1bf0aac82a748cd6305a2cabbac0790058570

11 years agoam 0d3700d9: Merge "Only have one copy of the kernel_sigset_t hack, and add more...
Elliott Hughes [Thu, 10 Jan 2013 23:28:46 +0000 (15:28 -0800)]
am 0d3700d9: Merge "Only have one copy of the kernel_sigset_t hack, and add more tests."

* commit '0d3700d957debe841c385f66a8026ca8b3755815':
  Only have one copy of the kernel_sigset_t hack, and add more tests.

11 years agoMerge "Only have one copy of the kernel_sigset_t hack, and add more tests."
Elliott Hughes [Thu, 10 Jan 2013 23:12:46 +0000 (15:12 -0800)]
Merge "Only have one copy of the kernel_sigset_t hack, and add more tests."

11 years agoOnly have one copy of the kernel_sigset_t hack, and add more tests.
Elliott Hughes [Thu, 10 Jan 2013 22:42:14 +0000 (14:42 -0800)]
Only have one copy of the kernel_sigset_t hack, and add more tests.

Change-Id: I377522fcba6fb4b5fd2754ab15b091014bd7c16f

11 years agoam 2bbb8fac: Merge "Add signalfd call to bionic"
Elliott Hughes [Thu, 10 Jan 2013 21:30:16 +0000 (13:30 -0800)]
am 2bbb8fac: Merge "Add signalfd call to bionic"

* commit '2bbb8fac61e482dd96386620cc6f7f193e9c6840':
  Add signalfd call to bionic

11 years agoMerge "Add signalfd call to bionic"
Elliott Hughes [Thu, 10 Jan 2013 21:17:26 +0000 (13:17 -0800)]
Merge "Add signalfd call to bionic"

11 years agoAdd signalfd call to bionic
Rom Lemarchand [Wed, 9 Jan 2013 23:46:06 +0000 (15:46 -0800)]
Add signalfd call to bionic

Add signalfd() call to bionic.

Adding the signalfd call was done in 3 steps:
- add signalfd4 system call (function name and syscall
  number) to libc/SYSCALLS.TXT
- generate all necessary headers by calling
  libc/tools/gensyscalls.py. This patch is adding
  the generated files since the build system
  does not call gensyscalls.py.
- create the signalfd wrapper in signalfd.cpp and add
  the function prototype to sys/signalfd.h

(cherry-pick of 0c11611c11f4dc1b6d43587b72c3ccbe8c51a51c, modified to
work with older versions of GCC still in use on some branches.)

Change-Id: I4c6c3f12199559af8be63f93a5336851b7e63355

11 years agoam 364d9ee6: Merge "Don\'t test GNU-style ELF hashes on MIPS."
Elliott Hughes [Mon, 7 Jan 2013 23:00:28 +0000 (15:00 -0800)]
am 364d9ee6: Merge "Don\'t test GNU-style ELF hashes on MIPS."

* commit '364d9ee62f583bca795a2b40f71a04e272c80389':
  Don't test GNU-style ELF hashes on MIPS.

11 years agoMerge "Don't test GNU-style ELF hashes on MIPS."
Elliott Hughes [Mon, 7 Jan 2013 22:46:13 +0000 (14:46 -0800)]
Merge "Don't test GNU-style ELF hashes on MIPS."

11 years agoDon't test GNU-style ELF hashes on MIPS.
Elliott Hughes [Mon, 7 Jan 2013 22:18:22 +0000 (14:18 -0800)]
Don't test GNU-style ELF hashes on MIPS.

The MIPS toolchain can't generate them because they're incompatible
with the MIPS ABI (which requires .dynsym match the GOT, while GNU-style
requires .dynsym to be sorted by hash code), so there's nothing to test.

Change-Id: I2220f452fe6fe595ec1312544cc741dd390a36a5