History log of /bionic/libc/include/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
f0ec06ba609a15cf9343aabd5b2486f9a8af9adb 13-Apr-2012 Kenny Root <kroot@google.com> Add faccessat to syscall list

Change-Id: I427a18811089cb280769ac8da3ed8adc00a65a10
ys/linux-syscalls.h
nistd.h
891966d0209b17d27d8d1f7a94bc6404be93f7bf 21-Mar-2012 Nick Kralevich <nnk@google.com> Merge "string.h: add __attribute__ ((pure)) to string functions"
a677907ee8ecca034318fdb97902fa73e7392c4f 21-Mar-2012 Nick Kralevich <nnk@google.com> string.h: add __attribute__ ((pure)) to string functions

cdefs.h: Introduce the __purefunc attribute, which allows us to mark
certain functions as being "pure".

http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html

Many functions have no effects except the return value and their
return value depends only on the parameters and/or global variables.
Such a function can be subject to common subexpression elimination
and loop optimization just as an arithmetic operator would be.

string.h: Mark many commently used string functions as "pure", to
allow for additional compiler optimizations.

Change-Id: I42961f90f822b6dbcbc3fd72cdbe774a7adc8785
tring.h
ys/cdefs.h
21eab513e7eec280a7a8bcb9482a1a8b61e59442 14-Mar-2012 Ben Cheng <bccheng@google.com> New additions/bug fixes required/found when porting perf.

New functions:
tfind
tsearch
tdelete
twalk
tdestroy (GNU extension)

Bug fix: the current implementation for realpath would crash
if the second argument (resolved_path) is NULL.

New headers:
ar.h
search.h

Change-Id: Ib6c1e42fc186a6d597a6e5a9692b16acaa155804
r.h
earch.h
1a823691a21519014daf252691a314f0726d7c3a 13-Mar-2012 Ben Cheng <bccheng@google.com> Update kernel headers and add syscall "perf_event_open"

Change-Id: I43f12b727881df002a8524f2738586c043833bae
ys/linux-syscalls.h
9ec0f03a0d0b17bbb94ac0b9fef6add28a133c3a 28-Feb-2012 Nick Kralevich <nnk@google.com> Add relro support

Add support for PT_GNU_RELRO. This allows the static linker to
indicate that certain regions of memory should be marked as
"read-only" after dynamic linking is complete.

See:
* http://www.akkadia.org/drepper/nonselsec.pdf (section 6)
* http://tk-blog.blogspot.com/2009/02/relro-not-so-well-known-memory.html

Note that this change has no effect on Android right now, because
we don't compile our code with relro enabled.

Change-Id: I6541f8775367e8558b4388f7d105b1ae6e8f046b
ys/exec_elf.h
67e7a93844989a4ea4660e6cfb9613e486c6d352 28-Feb-2012 Nick Kralevich <nnk@google.com> Eliminate duplicate constants

include/elf.h contains basically the same values as
linux/auxvec.h. Eliminate dups.

include/sys/exec_elf.h contains basically the same
values as linux/elf.h. Eliminate dups.

Change-Id: I66b8358161bb52223bb657f8f73ba28b324f4fa3
lf.h
ys/exec_elf.h
d6b58b03b8e046e0bd46d6d7e57290dcabe48860 13-Feb-2012 Jean-Baptiste Queru <jbq@google.com> am 09049311: am cfff36df: am a60ff6c5: Merge "libc: Define new symbol visibility macros"

* commit '09049311a229c427f73e3e0ac873bf344b45aaf2':
libc: Define new symbol visibility macros
cfff36df2bebd95f2663b7b053c6308593c343dd 13-Feb-2012 Jean-Baptiste Queru <jbq@google.com> am a60ff6c5: Merge "libc: Define new symbol visibility macros"

* commit 'a60ff6c5b2ca76181b387d8c10aee22a2cbcf840':
libc: Define new symbol visibility macros
f39a3fe67d7f1faa21a39ea8e1f57a6596c8cadb 09-Feb-2012 Glenn Kasten <gkasten@google.com> Allow C++ to call fdprintf

Change-Id: I1adb7b165ab9f62eaee4e7a9108e8b461350b347
tdio.h
25b7a16a6ee73248192909862f03f95d2363ad14 01-Feb-2012 Jean-Baptiste Queru <jbq@google.com> Merge c4cb87f3

Change-Id: I4cc14eba43fde75a7702fdc7ad07d3d949e9c092
c4cb87f367fc33b36c9988b4f42fc07876abccd1 01-Feb-2012 Jean-Baptiste Queru <jbq@google.com> Merge 5b892aa7

Change-Id: Ic82bc2866bdb0c93822c94281301fa127fd4bb0c
5fbf2e09921723cfdea75e83c1fac2080f0ad564 23-Jan-2012 David 'Digit' Turner <digit@android.com> libc: Define new symbol visibility macros

This patch defines a few new macros that can be used to control the
visibility of symbols exported by the C library:

- ENTRY_PRIVATE() can be used in assembly sources to indicate
that an assembler function should have "hidden" visibility, i.e.
will never be exported by the C library's shared library.

This is the equivalent of using __LIBC_HIDDEN__ for a C function,
but ENTRY_PRIVATE() works like ENTRY(), and must be used with
END() to tag the end of the function.

- __LIBC_ABI_PUBLIC__ can be used to tag a C functions as being
part of the C library's public ABI. This is important for a
few functions that must be exposed by the NDK to maintain
binary compatibility.

Once a symbol has been tagged with this macro, it shall
*never* be removed from the library, even if it becomes
directly unused due to implementation changes
(e.g. __is_threaded).

- __LIBC_ABI_PRIVATE__ can be used for C functions that should
always be exported by the C library because they are used by
other libraries in the platform, but should not be exposed
by the NDK. It is possible to remove such symbols from the
implementation if all callers are also modified.

+ Add missing END() assembly macro for x86

Change-Id: Ia96236ea0dbec41d57bea634b39d246b30e5e234
ys/cdefs_elf.h
70b1668a76d3b719ae690903ea790fda964a5458 30-Jan-2012 David 'Digit' Turner <digit@google.com> remove obsolete SuperH support

We don't have a toolchain anymore, we don't have working original
kernel headers, and nobody is maintaining this so there is really
no point in keeping this here. Details of the patch:

- removed code paths from Android.mk files related to the SuperH
architecture ("sh")

- removed libc/arch-sh, linker/arch-sh, libc/kernel/arch-sh

- simplified libc/SYSCALLS.TXT

- simplified the scripts in libc/tools/ and libc/kernel/tools

Change-Id: I26b0e1422bdc347489e4573e2fbec0e402f75560

Signed-off-by: David 'Digit' Turner <digit@android.com>
ys/linux-syscalls.h
73fa5fdaf9ec27741a17b0b793ff6890e6dcecd5 21-Jan-2012 Jean-Baptiste Queru <jbq@google.com> Merge 2f80f07d

Change-Id: Iff51b8530dbee01499ba4af0ecd6ab837c8c94fb
2f80f07d8106782ac94b05f529c8cbb1fd1c6f64 20-Jan-2012 Jean-Baptiste Queru <jbq@google.com> am 23f56bbb: Merge "Add extended attribute (xattr) system call wrappers to bionic."

* commit '23f56bbb6ae053996dd821f29379aea0c7166055':
Add extended attribute (xattr) system call wrappers to bionic.
79fcc6948d139878b9ae0423c2fe804636433ad8 19-Jan-2012 David 'Digit' Turner <digit@google.com> Merge "libc: remove private declarations from <time.h> and <resolv.h>"
5eb686d105ebd7cea332fd1ef0bb3af9386e19f7 13-Jan-2012 Stephen Smalley <sds@tycho.nsa.gov> Add extended attribute (xattr) system call wrappers to bionic.

The xattr system calls are required for the SE Android userspace in
order to get and set file security contexts. In particular, libselinux
requires these calls.

Change-Id: I78f5eb3d8f3384aed0a5e7c6a6f001781d982017
ys/linux-syscalls.h
ys/linux-unistd.h
ys/xattr.h
ea29cd5a4a0b1fc49a63a789ace1668283a6a280 18-Jan-2012 Nick Kralevich <nnk@google.com> Eliminate duplicate copies of constants.

sys/personality.h and linux/personality.h contain mostly
identical contents. Eliminate dups.

Change-Id: Ie786edcb5dca57af7ee5b5fdad2949369f1bc4e4
ys/personality.h
d6045cba4e572cf9ed0b87efddce93f3c4a80a8f 18-Jan-2012 Nick Kralevich <nnk@google.com> Don't generate sys/linux-unistd.h

linux-unistd.h was here for reference purposes, but shouldn't
have been accessible to client code. Delete it.

Change-Id: I60c264ff6ca489a48117914bdf6daa486737af8c
ys/linux-unistd.h
023e5409df07a5d5ead6efb1825f6df92bcf50da 17-Jan-2012 Nick Kralevich <nnk@google.com> am 06f51ba1: am f44de270: add personality() system call.

* commit '06f51ba1af2fafeec7fdfcba5d635bd001a31b3e':
add personality() system call.
06f51ba1af2fafeec7fdfcba5d635bd001a31b3e 17-Jan-2012 Nick Kralevich <nnk@google.com> am f44de270: add personality() system call.

* commit 'f44de270bba32c9b1b5eff8a34be07b10ddff238':
add personality() system call.
f44de270bba32c9b1b5eff8a34be07b10ddff238 13-Jan-2012 Nick Kralevich <nnk@google.com> add personality() system call.

Change-Id: Ie899def8ea1d705930ed83adae1343c1353e7c57
ys/linux-syscalls.h
ys/linux-unistd.h
ys/personality.h
208898ee776117f42815c2fcb15903b2781bf0aa 13-Jan-2012 David 'Digit' Turner <digit@google.com> libc: remove private declarations from <time.h> and <resolv.h>

This patch is used to remove private C library declarations from the
public headers (that are exported to the NDK). It should *only* be
submitted after all other patches modifying the users of said
private functions have been submitted to the tree, to avoid
breakages.

Change-Id: I0a5e3014f8e3ac9ed8df86a5cdae506337c23252
esolv.h
ime.h
11f3d5a4319e6e37e5280cf187b3d173e1ac0adb 13-Jan-2012 David 'Digit' Turner <digit@google.com> libc: Copy private C library declarations to private/

This patch is the first in a series that aims at cleaning up the
public C library headers (which end up being distributed with the NDK).

<resolv.h> and <time.h> contain declarations that should not be public.
They are used by other parts of the platform, but NDK applications should
not use or rely on them.

So copy them to private <bionic_time.h> and <resolv_iface.h> headers
and use a guard macro to avoid conflicts when both headers are included
at the same time.

The idea is that we're going to fix the other platform modules to
include these private headers. After this is done, we will remove the
duplicate definitions from <resolv.h> and <time.h>

Change-Id: I121c11936951c98ca7165e811126ed8a4a3a394d
esolv.h
ime.h
6519c8124ee9f2b1ed341cc683b78cf26809678d 04-Jan-2012 Bruce Beare <bruce.j.beare@intel.com> am e30e9093: sreadahead: adding readahead system call into bionic libc

* commit 'e30e909363c5c706f394050d9cd00ce222caadbf':
sreadahead: adding readahead system call into bionic libc
e30e909363c5c706f394050d9cd00ce222caadbf 13-Jul-2011 Bruce Beare <bruce.j.beare@intel.com> sreadahead: adding readahead system call into bionic libc

Add bionic libc to support readahead system call.
This is needed to enable sreadahead to work.

Change-Id: I3856e1a3833db82e6cf42fd34af7631bd40cc723
Author: Winson Yung <winson.w.yung@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
ys/linux-syscalls.h
ys/linux-unistd.h
85aad909560508410101c18c6ecc6633df39c596 15-Dec-2011 Ken Sumrall <ksumrall@android.com> Add the posix_memalign(3) function to bionic

The posix_memalign(3) function is very similar to the traditional
memalign(3) function, but with better error reporting and a guarantee
that the memory it allocates can be freed. In bionic, memalign(3)
allocated memory can be freed, so posix_memalign(3) is just a wrapper
around memalign(3).

Change-Id: I62ee908aa5ba6b887d8446a00d8298d080a6a299
tdlib.h
de44d0b2bd32a2c2cc5e2ffb64f8356efd893bca 22-Nov-2011 David 'Digit' Turner <digit@google.com> Merge "libc: provide atomic operations will full barriers for NDK apps."
95a17848d3a96000f90cdbfc7ff922182f0003b3 21-Nov-2011 Jeff Brown <jeffbrown@google.com> Merge "Add tgkill syscall."
10c8ce59a40a1d8ae8f49145eca365b364aabe58 19-Nov-2011 Jeff Brown <jeffbrown@google.com> Add tgkill syscall.

Use tgkill instead of tkill to implement pthread_kill.
This is safer in the event that the thread has already terminated
and its id has been reused by a different process.

Change-Id: Ied715e11d7eadeceead79f33db5e2b5722954ac9
ys/linux-syscalls.h
ys/linux-unistd.h
0fec6b9d88ee5a9e359b2208038f9806c0804538 16-Nov-2011 David 'Digit' Turner <digit@google.com> libc: provide atomic operations will full barriers for NDK apps.

__atomic_cmpxchg and other related atomic operations did not
provide memory barriers, which can be a problem for non-platform
code that links against them when it runs on multi-core devices.

This patch does two things to fix this:

- It modifies the existing implementation of the functions
that are exported by the C library to always provide
full memory barriers. We need to keep them exported by
the C library to prevent breaking existing application
machine code.

- It also modifies <sys/atomics.h> to only export
always-inlined versions of the functions, to ensure that
any application code compiled against the new header will
not rely on the platform version of the functions.

This ensure that said machine code will run properly on
all multi-core devices.

This is based on the GCC built-in sync primitives.

The end result should be only slightly slower than the
previous implementation.

Note that the platform code does not use these functions
at all. A previous patch completely removed their usage in
the pthread and libstdc++ code.

+ rename arch-arm/bionic/atomics_arm.S to futex_arm.S
+ rename arch-x86/bionic/atomics_x86.S to futex_x86.S
+ remove arch-x86/include/sys/atomics.h which already
provided inlined functions to the x86 platform.

Change-Id: I752a594475090cf37fa926bb38209c2175dda539
ys/atomics.h
9831ad3ce6bd5b22da16a275ed67e7236eae3d1f 29-Aug-2011 David 'Digit' Turner <digit@google.com> libc: speed-up flockfile()/funlockfile()

For Honeycomb, we added proper file thread-safety for
all FILE* operations. However, we did implement that by
using an out-of-band hash table to map FILE* pointers
to phtread_mutex_t mutexes, because we couldn't change
the size of 'struct _sFILE' without breaking the ABI.

It turns out that our BSD-derived code already has
some support code to extend FILE* objects, so use it
instead. See libc/stdio/fileext.h

This patch gets rid of the hash table, and put the
mutex directly into the sFILE extension.

Change-Id: If1c3fe0a0a89da49c568e9a7560b7827737ff4d0
thread.h
bda5da074eab4bdf374e1f4a19d480c62c72f5ff 28-Sep-2011 Mathias Agopian <mathias@google.com> fix prototype of dladdr

this breaks C++ source code in particular.

Change-Id: Ie06b5d31d23b5455e6950c470adc64dd5e7784df
lfcn.h
8f88cbedc1692def20298300a7df94ad1c536259 27-Jun-2011 Robert Greenwalt <rgreenwalt@google.com> am e0a4b678: am cc32fbc3: Merge "Add support for a dns cache per interface"

* commit 'e0a4b67811981ab4c04c437b23c36ae42c444bce':
Add support for a dns cache per interface
e0a4b67811981ab4c04c437b23c36ae42c444bce 23-Jun-2011 Robert Greenwalt <rgreenwalt@google.com> am cc32fbc3: Merge "Add support for a dns cache per interface"

* commit 'cc32fbc3050079aa020ac39afb1c84b5e72737a8':
Add support for a dns cache per interface
a94dc678fb2003eaf26e97c79140223035836272 22-Jun-2011 Brian Carlstrom <bdc@google.com> Merge remote branch 'goog/dalvik-dev' into dalvik-dev-to-master

Change-Id: I795687c11ca2e8443f7c8c264e209501dab9b2c9
23d3e6b21b4b6debff87da8c6558495e564cc38e 04-Apr-2011 Mattias Falk <mattias.falk@sonyericsson.com> Add support for a dns cache per interface

Initial commit for dns cache per interface.
Added a type that holds a reference to a
cache and name of associated interface,
address of interface, name server(s)
associated with an interface etc.

New functions to set default interface,
address of name servers etc.

Change-Id: Ie991bc5592fd998409853d8bf77d7fe69035dac5
esolv.h
09dc7fb1b893221776ef5d35d9aaecd07f95eceb 07-Jun-2011 Jean-Baptiste Queru <jbq@google.com> am b127b1f2: Merge "libc: enable IPTOS_MINCOST, fixup gethostbyaddr() proto."

* commit 'b127b1f208e67d74a7ee94ad2bd0ffb2fed3af6b':
libc: enable IPTOS_MINCOST, fixup gethostbyaddr() proto.
cfaf49ddea18b0fb56887627bd0f1832cb0eb1c9 07-Jun-2011 David 'Digit' Turner <digit@android.com> am 4aa32153: am 2cae7967: Merge "libc: Fix prctl() declaration."

* commit '4aa321538afde20a632ed666f83f40f892505550':
libc: Fix prctl() declaration.
4aa321538afde20a632ed666f83f40f892505550 06-Jun-2011 David 'Digit' Turner <digit@android.com> am 2cae7967: Merge "libc: Fix prctl() declaration."

* commit '2cae7967e6049e45eaef71207481b6f8b2456025':
libc: Fix prctl() declaration.
8a5123740750298433cce102f93cf5871985aa09 19-May-2011 JP Abgrall <jpa@google.com> libc: enable IPTOS_MINCOST, fixup gethostbyaddr() proto.

Make netinet/ip.h have IPTOS_MINCOST which matches what
kernel/common/linux/ip.h has to say.
Fixup gethostbyaddr() 1st arg to match what man has to say.

Change-Id: Iff9647d4a46ea88b1fc32163eb69bb9b27cdf370
etdb.h
etinet/ip.h
c18d76f6eca570e8e69b0c70d01d49e69d903b2c 20-Jan-2011 Steinar H. Gunderson <sesse@google.com> Add icmp6.h and ip6.h files from current NetBSD libc.

Change-Id: I6b304dfbefaec74c5fb15b216f38d698a55f0642
etinet/icmp6.h
etinet/ip6.h
b083bb57f5cae6b1fa3fd756a2720a3de806da2b 26-May-2011 David 'Digit' Turner <digit@android.com> libc: Fix prctl() declaration.

This change fixes the prctl() declaration to match GLibc, and allow us
to build gcc-4.6 for Android (among other things). Note that this does
not change the source and binary interfaces.

Change-Id: I3900c957f0da8b3548cbe9da8c41d50099dc19d6
ys/prctl.h
nistd.h
f8d02d24edd23dfb5028881105828cbf15e59310 19-May-2011 JP Abgrall <jpa@google.com> libc: enable IPTOS_MINCOST, fixup gethostbyaddr() proto.

Make netinet/ip.h have IPTOS_MINCOST which matches what
kernel/common/linux/ip.h has to say.
Fixup gethostbyaddr() 1st arg to match what man has to say.

Change-Id: Iff9647d4a46ea88b1fc32163eb69bb9b27cdf370
etdb.h
etinet/ip.h
bf018299bd556867ffcd573417c11f6c83f601cd 13-May-2011 Elliott Hughes <enh@google.com> Fix strerror(3) for errno 0.

Everyone else's C library says "Success". We say "Unknown error: 0", which
isn't really true.

Change-Id: I9f9054779123eda996634e5f7a277789b6805809
ys/_errdefs.h
c5d8d36d4d816b1e443cf4766cf39968c0806802 05-Apr-2011 JP Abgrall <jpa@google.com> add net/ethernet.h stub


Some externals tend to use net/ethernet.h. Most of which is in net/if_ether.h.

Change-Id: I465d18136b565e56a4bd6678238fe0afef25d913
et/ethernet.h
f5da2df1265fe14141c45a86fc706da657be7ab6 31-Mar-2011 David 'Digit' Turner <digit@android.com> am bfe04ea0: am 8c6b848e: am 0e47a919: Merge "libc: <sys/cdefs.h>: Fix the use of __STDC_VERSION__ from C++"

* commit 'bfe04ea0e61c6905c1f6781097bddf07f843eb25':
libc: <sys/cdefs.h>: Fix the use of __STDC_VERSION__ from C++
bfe04ea0e61c6905c1f6781097bddf07f843eb25 30-Mar-2011 David 'Digit' Turner <digit@android.com> am 8c6b848e: am 0e47a919: Merge "libc: <sys/cdefs.h>: Fix the use of __STDC_VERSION__ from C++"

* commit '8c6b848e435b86db58179763da30008ac7d4c24a':
libc: <sys/cdefs.h>: Fix the use of __STDC_VERSION__ from C++
01d14ab42967528dc77aa46f293f6a0c63ebc06c 25-Mar-2011 Ken Sumrall <ksumrall@android.com> am c913b28f: am b130f004: am ae2d5ba3: Add support for the utimensat(2) syscall to bionic.

* commit 'c913b28f20ffb147fca05fe9f8d582e0a915fa9c':
Add support for the utimensat(2) syscall to bionic.
b130f00493f6ae3b2343e1caac002de528a45e41 25-Mar-2011 Ken Sumrall <ksumrall@android.com> am ae2d5ba3: Add support for the utimensat(2) syscall to bionic.

* commit 'ae2d5ba31412c4f382ef405000baa866f35dd736':
Add support for the utimensat(2) syscall to bionic.
ae2d5ba31412c4f382ef405000baa866f35dd736 18-Mar-2011 Ken Sumrall <ksumrall@android.com> Add support for the utimensat(2) syscall to bionic.

The kernel has supported this syscall for quite some time now,
but bionic did not. Now that there is a need for it, let's
add it to bionic.

Change-Id: Ifcef3e46f1438d79435b600c4e6063857ab16903
ys/linux-syscalls.h
ys/linux-unistd.h
ys/stat.h
8eda21baa54977e4d164a4174d06b6aa12115fb1 17-Mar-2011 David 'Digit' Turner <digit@android.com> libc: <sys/cdefs.h>: Fix the use of __STDC_VERSION__ from C++

See http://code.google.com/p/android/issues/detail?id=14627 for context.

Change-Id: Idb10b675667d0d6e64dcb1d382be11e45aa6f4c4
ys/cdefs.h
f8e658cf6b9601e63d4b363ccee83ee4af1a78e4 22-Mar-2011 Dmitry Shmidt <dimitrysh@google.com> Merge "Return back EAI_ADDRFAMILY definition needed for libnl-2.0"
9a48b8e4196d23529e28f6965ad7a03d543922a2 21-Mar-2011 Dmitry Shmidt <dimitrysh@google.com> Return back EAI_ADDRFAMILY definition needed for libnl-2.0

Change-Id: I86e6ca8ad92da7a81ea4b659dd9fc9be2d6fd3c9
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
etdb.h
0b3c5c50f7bed92282783995bf6a7cc777fa9392 15-Mar-2011 satok <satok@google.com> do not merge. Move property setting from libcutils to bionic.

Backport I110b653a58f3

All the other property stuff is already here. Property setting was
only in libcutils previously to leverage a utility function / constant
or two.

Unfortunately in the process of fixing a race condition we would've
had to do break abstraction boundaries and put some libc-internal
details into libcutils so instead of that we'll just move this
into bionic.

Along with Iee1ca9b7, this now passes:

$ adb shell am instrument -w -e class android.os.SystemPropertiesTest \
com.android.frameworks.coretests.systemproperties/android.test.InstrumentationTestRunner

Bug: 3511230

Change-Id: I1b588db3344169621e1279ecc0b660cf4e1015d7
ys/system_properties.h
ec7e8cc9dddafc624cd28939c1a38ea336c89455 15-Mar-2011 satok <satok@google.com> do not merge. Move property setting from libcutils to bionic.

Backport I110b653a58f3

All the other property stuff is already here. Property setting was
only in libcutils previously to leverage a utility function / constant
or two.

Unfortunately in the process of fixing a race condition we would've
had to do break abstraction boundaries and put some libc-internal
details into libcutils so instead of that we'll just move this
into bionic.

Along with Iee1ca9b7, this now passes:

$ adb shell am instrument -w -e class android.os.SystemPropertiesTest \
com.android.frameworks.coretests.systemproperties/android.test.InstrumentationTestRunner

Bug: 3511230

Change-Id: I1b588db3344169621e1279ecc0b660cf4e1015d7
ys/system_properties.h
4399df8f2ebd797e45bec81e6f22e4911b2c5686 11-Mar-2011 Brad Fitzpatrick <bradfitz@android.com> Move property setting from libcutils to bionic.

All the other property stuff is already here. Property setting was
only in libcutils previously to leverage a utility function / constant
or two.

Unfortunately in the process of fixing a race condition we would've
had to do break abstraction boundaries and put some libc-internal
details into libcutils so instead of that we'll just move this
into bionic.

Along with Iee1ca9b7, this now passes:

$ adb shell am instrument -w -e class android.os.SystemPropertiesTest \
com.android.frameworks.coretests.systemproperties/android.test.InstrumentationTestRunner

Bug: 3511230
Change-Id: I110b653a58f312fbe069dca59892a877ae9bc911
ys/system_properties.h
8d1f2e6ffc7230e4000e5352e5798095a1f6d428 14-Mar-2011 David 'Digit' Turner <digit@android.com> am 638608b1: am da8ea213: Merge "libc: <stdint.h>: Don\'t make __STD_CONSTANT_MACROS available if only __STD_LIMIT_MACROS is defined."

* commit '638608b11afbd255ddbd15e739f0f638791a4305':
libc: <stdint.h>: Don't make __STD_CONSTANT_MACROS available if only __STD_LIMIT_MACROS is defined.
448a1b9f1827cbebad69383ba3f09cc0be5b4986 14-Mar-2011 David 'Digit' Turner <digit@android.com> am b299039d: am e6e2ba1d: Merge "libc: <pthread.h>: Replace \'#if __cplusplus\' by \'#ifdef __cplusplus\'"

* commit 'b299039d060eb5f523c05e4f9b6934a6b897a54f':
libc: <pthread.h>: Replace '#if __cplusplus' by '#ifdef __cplusplus'
3134b56bb077d9dce1a8d49ac805878baef33603 12-Mar-2011 David 'Digit' Turner <digit@android.com> am 0d6bbc7a: am dfe6eda5: Merge "libc: <stdint.h>: fix typo in INTMAX_C()/UINTMAX_C() definition"

* commit '0d6bbc7af091ee05dd032492ae594c263404e4aa':
libc: <stdint.h>: fix typo in INTMAX_C()/UINTMAX_C() definition
b868a32df691c5deee1ce2f40878419e3c49d1a3 12-Mar-2011 David 'Digit' Turner <digit@android.com> am 0b73dac8: am d6722bdd: Merge "libc: <stdint.h>: Proper C++"

* commit '0b73dac8aa9546c0f532c7ea5e0bf72dd029f271':
libc: <stdint.h>: Proper C++
da8ea213abb8bec08da37622179061630bd8e2f8 11-Mar-2011 David 'Digit' Turner <digit@android.com> Merge "libc: <stdint.h>: Don't make __STD_CONSTANT_MACROS available if only __STD_LIMIT_MACROS is defined."
847b183f631ccbaa363a15c24195c00cad9529f9 11-Mar-2011 David 'Digit' Turner <digit@android.com> libc: <pthread.h>: Replace '#if __cplusplus' by '#ifdef __cplusplus'

See http://code.google.com/p/android/issues/detail?id=15221

Change-Id: Ia7b6668c28737810d6c4941604c6adf232a27c61
thread.h
8b3cea67326c1afb9b7815ae042819c0c3a1f144 11-Mar-2011 David 'Digit' Turner <digit@android.com> libc: <stdint.h>: Don't make __STD_CONSTANT_MACROS available if only __STD_LIMIT_MACROS is defined.

Change-Id: I8b0ea266eab9c6f75d8407b704953ecaef948221
tdint.h
0e5411b4ba15946bde04c7ee69b0c20129443b36 10-Mar-2011 David 'Digit' Turner <digit@android.com> libc: <stdint.h>: fix typo in INTMAX_C()/UINTMAX_C() definition

Change-Id: I3c74269901a288c448734dd7eb442a62b9348db8
tdint.h
08ff1a647484e67f23d1d8a0364b2e930dd2b9da 10-Mar-2011 David 'Digit' Turner <digit@android.com> libc: <stdint.h>: Proper C++

This patch prevents the definition of various macros when <stdint.h> is
included from C++. The ISO C99 standard mentions that when this header
is included from a C++ source file, limit and constant related macros
should only be defined when asked explicitely by defining
__STDC_LIMIT_MACROS and __STD_CONSTANT_MACROS, respectively.

The <stdint.h> lacked the proper #ifdef .. #endif blocks for the
following macros:

INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, PTRDIFF_MIN, PTRDIFF_MAX
INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX,
INPTR_C, UINTPR_C, PTRDIFF_C, INTMAX_C, UINTMAX_C

This is intended to fix http://code.google.com/p/android/issues/detail?id=14380
after we copy this file to development/ndk/platforms/android-3/include/

Change-Id: Ia77e0822edfaaf568ea599d7de673b310eeeaa4a
tdint.h
81d79f9fb38d9ae8a5711f5774aa5a1516f6cc26 10-Mar-2011 David 'Digit' Turner <digit@android.com> am 962dcb22: am fed58049: Merge "libc: Fix PTHREAD_RWLOCK_INITIALIZER"

* commit '962dcb22218a1a6d4ebd05e4fc4a69875d037234':
libc: Fix PTHREAD_RWLOCK_INITIALIZER
Proxy getnameinfo through netd
Updated gcc 4.4.3 IA toolchain doesn't require the .ctors list
Convert cname lenght before use
ca4462d76c65ebfbc20328ee283ac2f19efca732 10-Mar-2011 David 'Digit' Turner <digit@android.com> libc: Fix PTHREAD_RWLOCK_INITIALIZER

The macro definition was incorrect and resulted in a compile error
when used.

Fixes http://code.google.com/p/android/issues/detail?id=15306

Change-Id: I8fa6047b63e7f56b53653774327099822c469cd1
thread.h
f582340a6a48588aa50da17e1620e8f91b146941 12-Feb-2011 Kenny Root <kroot@google.com> Fix the handle locking in stdio

Fix the handle locking in stdio to use flockfile/funlockfile
internally when and where required. Macros in <stdio.h> are updated
to automatically call the underlying functions when the process is
threaded to obtain the necessary locking. A private mutex is added
to protect __sglue, the internal list of FILE handles, and another
to protect the one-time initialization. Some routines in libc that
use getc() change to use getc_unlocked() as they're either protected
by their own lock or aren't thread-safe routines anyway.

Based on OpenBSD change by guenther@openbsd.org
http://www.mail-archive.com/source-changes@cvs.openbsd.org/msg01015.html

Bug: 3446659
Change-Id: Ie82116e358c541718d6709ec45ca6796be5a007b
tdio.h
62e1f374d1df0b98e8c8a1dd5a846aa955ae2c35 06-Feb-2011 David 'Digit' Turner <digit@google.com> Merge "libc: Update auto-gen scripts"
fc2693110ee8a2ba22a445ad9855fbe9e118d439 11-Oct-2010 David 'Digit' Turner <digit@google.com> libc: Update auto-gen scripts

Make the scripts use external/kernel-headers/original by default.

clean_header.py: Document -k<path>, add -d<path>
find_headers.py: Make kernel config files optional
update_all.py: Allow setting the path to kernel headers on the command-line
update_all.py: Better formatting of output on ttys
update_all.py: Automatically perform "git add/rm" on affected files.
SYSCALLS.TXT: Fix typo in __socketcall definition.
checksyscalls.py: Add support for superH architecture in the checks.
gensyscalls.py: Automatically perform "git add/rm" on affected files.
cpp.py: Fixed a bug that prevented certain type definitions to
be kept in the generated clean header (e.g.
struct ethtool_drvinfo in <linux/ethtool.h>)

All scripts will use the content of external/kernel-headers/original by default now.

The generated code removes all empty lines and trailing whitespace. This is useful
to ensure a unified output even if we change the parser again in the future.

The top-level disclaimer has been edited with update instructions to regenerate
the headers when needed.

Also, a warning is now inserted every 8th line in the final output:

/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */

Changes under kernel/arch-arm and kernel/arch-x86 should correspond to whitespace
differences and additionnal struct definitions that were missed by the previous
parser implementation.

Change-Id: Icd1c056bacd766759f3e9b7bb5d63a246f3d656a

WARNING: If you run these script, do not submit the result to gerrit for now.
It seems there are discrepancies between the content of original headers
and those currently commited under bionic/libc/kernel/.

(This problem is the main motivation to insert the warning repeatedly).

Current list of issues:

- Missing SuperH headers (i.e. external/kernel-headers/original/asm-sh)
ys/linux-syscalls.h
6846a45882f4e099f422d1455eab3a94d4c69795 20-Jan-2011 Steinar H. Gunderson <sesse@google.com> Add icmp6.h and ip6.h files from current NetBSD libc.

Change-Id: I6b304dfbefaec74c5fb15b216f38d698a55f0642
etinet/icmp6.h
etinet/ip6.h
bdca379412d5e19058115b9c5b4de2dc6f0c4099 20-Jan-2011 Steinar H. Gunderson <sesse@google.com> Include the Linux ipv6.h header from netinet/in.h, to get things like in6_pktinfo.

Change-Id: I4a3c2035ff8e2846352345580756a1bdc2768ec4
etinet/in.h
3de032169071cf6588edceefa686616cdf485320 20-Jan-2011 Steinar H. Gunderson <sesse@google.com> Add IN6ADDR_LOOPBACK_INIT macro to <netinet/in6.h>, as the kernel headers do not provide it anymore.

Change-Id: I5af12b3f38097ed165e64a408253dc375aa605d7
etinet/in6.h
64b6c43379dba176659bc1313b6bb488ac94cfd6 20-Dec-2010 Steinar H. Gunderson <sesse@google.com> Add a new #define IN6_IS_ADDR_ULA, for testing for Universal Local IPv6 Unicast addresses (ULAs). These replace the old site-local IPv6 addresses.

Change-Id: I2656423764569d07b92b8eb8fe6dcad6eba5b0bb
etinet/in6.h
5c8c00a95a6cdcd74ac32dadedf0cea2b1661169 20-Dec-2010 David 'Digit' Turner <digit@google.com> libc: Fix the definition of SIGRTMAX

After this change, SIGRTMAX will be set to 64 (instead of 32 currently).
Note that this doesn't change the fact that our sigset_t is still defined
as a 32-bit unsigned integer, so most functions that deal with this type
won't support real-time signals though.

Change-Id: Ie1e2f97d646f1664f05a0ac9cac4a43278c3cfa8
ignal.h
d4a65d28d4dd7dab4ad66d2d65903296d183d47c 16-Dec-2010 David 'Digit' Turner <digit@google.com> libc: Add missing declarations in <netinet/in.h>

Add missing declarations:
INET_ADDRSTRLEN
IN6_IS_ADDR_MC_NODELOCAL
IN6_IS_ADDR_MC_GLOBAL

It has been reported that these prevent compilation of the Boost libraries
with the NDK. The corresponding patch has already been performed under
development/ndk/platforms/android-3/include.

Change-Id: I4ac514973daf3c06a8ef5538d7df79142a98e562
etinet/in.h
etinet/in6.h
95d751feacdb58d3fbc36f3f21a895a3ec2f065b 16-Dec-2010 David 'Digit' Turner <digit@google.com> libc: Add ftruncate64 and improve 64-bit parameter syscall handling.

This patch improves the handling of 64-bit parameters in syscalls on ARM.
The ARM EABI mandates that 64-bit quantities be passed in even/odd register
pairs, which requires special treatment.

This allows us to simplify our implementations of pread() and pwrite()
and remove the C stubs for pread64() and pwrite64().

Also add ftruncate64() to <unistd.h>

Change-Id: I407e2fd223ba0093dd2d0b04c6152fadfc9ce3ef

Bug 3107933
ys/linux-syscalls.h
ys/linux-unistd.h
nistd.h
72e6fd42421dca80fb2776a9185c186d4a04e5f7 03-Dec-2010 David 'Digit' Turner <digit@google.com> <sched.h>: Add sched_getcpu() and cpu_set_t

This adds the cpu_set_t type definition and related functions
and macros used to handle CPU thread affinity.

sched_getcpu()
sched_setaffinity()
sched_getaffinity()

Change-Id: If382ecafde8926341a88478062b275553645065b
ched.h
ys/linux-syscalls.h
ys/linux-unistd.h
6481b91520150e9664a3c4abc5d2aebdce422f93 06-Dec-2010 David 'Digit' Turner <digit@google.com> <time.h>: Add timegm(), timelocal() and others.

Add timegm(), timelocal(), time2posix() and posix2time() to the
C library.

Change-Id: I34d5771ed83dd994870a5ca58a511d01898b1ffb
ime.h
23d24394e72715ddf580726655c8ba3fbcf11bfe 06-Dec-2010 David 'Digit' Turner <digit@google.com> libc: Add <android/api-level.h>

Add a new header that defines __ANDROID_API__ as a constant integer
corresponding to the current native API level. This header is included
by <sys/cdefs.h>

Change-Id: Ib4774e247b395991266245815a24292afc919848
NOTE: This header is already provided by the NDK's platform headers.
for levels 3 to 9.
ndroid/api-level.h
ys/cdefs.h
9962cef7c6ba20bcb4d4f5e6a4c923aa335d9107 02-Dec-2010 Ed Heyl <edheyl@google.com> Merge "Add mkdtemp() prototype to stdlib.h."
ad1ff2fb268034074488f0b4b30b5311008b8617 30-Nov-2010 tedbo <tedbo@google.com> Add mkdtemp() prototype to stdlib.h.

The mkdtemp() function is implemented in libc/stdio/mktemp.c but not
exposed in stdlib.h. This change adds the prototype to stdlib.h.

Change-Id: I5a98650c665d2e45b2cf6ed3382742f7bdc7c88a
tdlib.h
16e02c2e3b005c2f801bf27fd4c27fbb235fb5be 29-Nov-2010 tedbo <tedbo@google.com> Add wcscasecmp() and wcsncasecmp() prototypes to wchar.h.

The above prototypes are missing from libc/include/wchar.h but
the functions are present (although with a limited implementation)
in libc.

Change-Id: I1b7c6accfc59ff0f56f3f41a9d3c075e935ac54a
char.h
72e64e08697cc2b3d66397c8b6d34965dd2a7338 24-Nov-2010 Kenny Root <kroot@google.com> Add support for pread64/pwrite64

64-bit pread() and pwrite() is needed for ZipFileRO to be able to read
ludicrously large ZIP files just in case someone is crazy enough to do
it.

Also fix a license header that was apparently mangled.

Change-Id: I6819ef8b36e46b63b40749c95717b1ecf9307033
nistd.h
8d8034eae023b38581158d3811d34d99f46bea40 15-Oct-2010 David 'Digit' Turner <digit@google.com> am 5c485373: am d3f0638a: libc: fix typo in waitid() declaration.

Merge commit '5c485373563c1183db2ba02ec2aca695d1c87cc8'

* commit '5c485373563c1183db2ba02ec2aca695d1c87cc8':
libc: fix typo in waitid() declaration.
5c485373563c1183db2ba02ec2aca695d1c87cc8 13-Oct-2010 David 'Digit' Turner <digit@google.com> am d3f0638a: libc: fix typo in waitid() declaration.

Merge commit 'd3f0638aeec0b1daf4d3347386a5e441d5a4bcc4' into gingerbread-plus-aosp

* commit 'd3f0638aeec0b1daf4d3347386a5e441d5a4bcc4':
libc: fix typo in waitid() declaration.
d3f0638aeec0b1daf4d3347386a5e441d5a4bcc4 13-Oct-2010 David 'Digit' Turner <digit@google.com> libc: fix typo in waitid() declaration.

The implementation file uses the correct spelling.

Change-Id: I572e336f8695a9754267c8d2e0a67b1b69bacb06
ys/wait.h
168f267723234d3921d6419f0ad36af7e7c965b3 12-Oct-2010 Jean-Baptiste Queru <jbq@google.com> am ff7d9453: am f67e5211: Merge "Hide the symbol of helper function __libc_android_abort"

Merge commit 'ff7d94530db60cf4fe4a4c287ee8821ebdf6263a'

* commit 'ff7d94530db60cf4fe4a4c287ee8821ebdf6263a':
Hide the symbol of helper function __libc_android_abort
364462ea2ee025043a6a2d951961a95c20867e45 12-Oct-2010 David 'Digit' Turner <digit@google.com> am 1aeeeae1: am b8d2233e: Merge "libc: tag missing functions in system headers." into gingerbread

Merge commit '1aeeeae166920f871c1e4ecd960bb92dcaef0896'

* commit '1aeeeae166920f871c1e4ecd960bb92dcaef0896':
libc: tag missing functions in system headers.
ff7d94530db60cf4fe4a4c287ee8821ebdf6263a 11-Oct-2010 Jean-Baptiste Queru <jbq@google.com> am f67e5211: Merge "Hide the symbol of helper function __libc_android_abort"

Merge commit 'f67e5211e045af1b12f646448a5a35f96ba5e8f1' into gingerbread-plus-aosp

* commit 'f67e5211e045af1b12f646448a5a35f96ba5e8f1':
Hide the symbol of helper function __libc_android_abort
f67e5211e045af1b12f646448a5a35f96ba5e8f1 11-Oct-2010 Jean-Baptiste Queru <jbq@google.com> Merge "Hide the symbol of helper function __libc_android_abort"
1aeeeae166920f871c1e4ecd960bb92dcaef0896 11-Oct-2010 David 'Digit' Turner <digit@google.com> am b8d2233e: Merge "libc: tag missing functions in system headers." into gingerbread

Merge commit 'b8d2233e8abc30f33be7d7acc7f3ef6e6aabebac' into gingerbread-plus-aosp

* commit 'b8d2233e8abc30f33be7d7acc7f3ef6e6aabebac':
libc: tag missing functions in system headers.
bb5581ad6eec40041dab4e961149f7a8a3a83497 09-Oct-2010 David 'Digit' Turner <digit@google.com> libc: tag missing functions in system headers.

This matches recent changes in the NDK header.
We enclose missing functions in #if 0 .. #endif blocks
with a clear "MISSING" in comments in order to locate
them later.

Change-Id: I87b3a62e777897e75c9243360fb0a82bcc53d9fb
etopt.h
ched.h
ignal.h
tdio.h
tdlib.h
ys/fsuid.h
ys/mount.h
nistd.h
319de1758cca4efcd18be773aba6c0b7e36dcbaf 28-Sep-2010 repo sync <digit@google.com> am 686af0b3: resolved conflicts for merge of defd1622 to gingerbread-plus-aosp

Merge commit '686af0b3a5978356be3b1a97187c765d63f11623'

* commit '686af0b3a5978356be3b1a97187c765d63f11623':
libc: add <sys/eventfd.h> and corresponding implementations.
2336503264b9a274d8c05e9d439000a7b1c42858 28-Sep-2010 David 'Digit' Turner <digit@google.com> am a511f245: am 9973a564: libc: Add missing waitid() implementation.

Merge commit 'a511f245614d8e6c7700df624e13a41a084ad7e4'

* commit 'a511f245614d8e6c7700df624e13a41a084ad7e4':
libc: Add missing waitid() implementation.
37c4305633f30eb7c6ced2233a73e66034643413 28-Sep-2010 David 'Digit' Turner <digit@google.com> am 052fbd88: am a3ae60d3: libc: Add missing fdatasync() implementation

Merge commit '052fbd88080c88b7f568612dcac7579092c2e3d9'

* commit '052fbd88080c88b7f568612dcac7579092c2e3d9':
libc: Add missing fdatasync() implementation
1e95e58c9185a6eae5d0a520bbcc699d0eb88e12 28-Sep-2010 David 'Digit' Turner <digit@google.com> am 5b5212b4: am 307aadb8: Merge "libc: Add missing C++ guards to <pathconf.h>" into gingerbread

Merge commit '5b5212b457f7308f9d7d4011c02af71ef1cad9c4'

* commit '5b5212b457f7308f9d7d4011c02af71ef1cad9c4':
libc: Add missing C++ guards to <pathconf.h>
49034875550d8c798edfa0d82b91dae1a995de05 28-Sep-2010 David 'Digit' Turner <digit@google.com> am 5d335a1c: am 032a7135: Merge "libc: add missing O_CLOEXEC from <fcntl.h>" into gingerbread

Merge commit '5d335a1c6552f74e7da2c5f2d97f65eea8cb8c72'

* commit '5d335a1c6552f74e7da2c5f2d97f65eea8cb8c72':
libc: add missing O_CLOEXEC from <fcntl.h>
6f39e611f36738a9d3468357c3aac15b8227d13c 28-Sep-2010 David 'Digit' Turner <digit@google.com> am 914528cd: am 223ddfcf: Merge "libc: Add missing pipe2() declaration and implementation." into gingerbread

Merge commit '914528cdc90dced0c07055d4d986e68adc8da60c'

* commit '914528cdc90dced0c07055d4d986e68adc8da60c':
libc: Add missing pipe2() declaration and implementation.
2172188923b3ae14d20ab8923d99c2ec153d5576 28-Sep-2010 David 'Digit' Turner <digit@google.com> am 9aac3824: am bd8d987b: libc: remove C++ comments from public headers.

Merge commit '9aac38249b579282ae8eaa630de3deaf97c4edff'

* commit '9aac38249b579282ae8eaa630de3deaf97c4edff':
libc: remove C++ comments from public headers.
686af0b3a5978356be3b1a97187c765d63f11623 28-Sep-2010 repo sync <digit@google.com> resolved conflicts for merge of defd1622 to gingerbread-plus-aosp

Conflicts:
libc/arch-arm/syscalls/eventfd.S
libc/include/sys/eventfd.h
libc/include/sys/linux-syscalls.h

Change-Id: I02f6e9536aa5478322240c199ff4c2f4367922d0
a511f245614d8e6c7700df624e13a41a084ad7e4 28-Sep-2010 David 'Digit' Turner <digit@google.com> am 9973a564: libc: Add missing waitid() implementation.

Merge commit '9973a564222b842eb7497fd6e659fe8c8c49e2b3' into gingerbread-plus-aosp

* commit '9973a564222b842eb7497fd6e659fe8c8c49e2b3':
libc: Add missing waitid() implementation.
defd162212de3789d2268a1f3339c2a6097fa825 26-Sep-2010 David 'Digit' Turner <digit@google.com> libc: add <sys/eventfd.h> and corresponding implementations.

Change-Id: Ide040884c456190226e580513099fdb8377e015b
ys/eventfd.h
ys/linux-syscalls.h
ys/linux-unistd.h
052fbd88080c88b7f568612dcac7579092c2e3d9 28-Sep-2010 David 'Digit' Turner <digit@google.com> am a3ae60d3: libc: Add missing fdatasync() implementation

Merge commit 'a3ae60d343661784e3f6f4566b276d8e6b8a06a7' into gingerbread-plus-aosp

* commit 'a3ae60d343661784e3f6f4566b276d8e6b8a06a7':
libc: Add missing fdatasync() implementation
9973a564222b842eb7497fd6e659fe8c8c49e2b3 27-Sep-2010 David 'Digit' Turner <digit@google.com> libc: Add missing waitid() implementation.

Change-Id: I312ee608dbf9249e4886a10d45d13e3cda8a9042
ys/linux-unistd.h
ys/wait.h
a3ae60d343661784e3f6f4566b276d8e6b8a06a7 27-Sep-2010 David 'Digit' Turner <digit@google.com> libc: Add missing fdatasync() implementation

Change-Id: I04bb655d77e414021e1f2a973329167ad76ca1c4
ys/linux-syscalls.h
ys/linux-unistd.h
5b5212b457f7308f9d7d4011c02af71ef1cad9c4 28-Sep-2010 David 'Digit' Turner <digit@google.com> am 307aadb8: Merge "libc: Add missing C++ guards to <pathconf.h>" into gingerbread

Merge commit '307aadb8473744c3d946add8b3e4947ada5481aa' into gingerbread-plus-aosp

* commit '307aadb8473744c3d946add8b3e4947ada5481aa':
libc: Add missing C++ guards to <pathconf.h>
307aadb8473744c3d946add8b3e4947ada5481aa 28-Sep-2010 David 'Digit' Turner <digit@google.com> Merge "libc: Add missing C++ guards to <pathconf.h>" into gingerbread
5d335a1c6552f74e7da2c5f2d97f65eea8cb8c72 28-Sep-2010 David 'Digit' Turner <digit@google.com> am 032a7135: Merge "libc: add missing O_CLOEXEC from <fcntl.h>" into gingerbread

Merge commit '032a713549c12b79b5dde6ef3dff323b7698110d' into gingerbread-plus-aosp

* commit '032a713549c12b79b5dde6ef3dff323b7698110d':
libc: add missing O_CLOEXEC from <fcntl.h>
914528cdc90dced0c07055d4d986e68adc8da60c 28-Sep-2010 David 'Digit' Turner <digit@google.com> am 223ddfcf: Merge "libc: Add missing pipe2() declaration and implementation." into gingerbread

Merge commit '223ddfcfc4cb354641e70da31a60556248db5036' into gingerbread-plus-aosp

* commit '223ddfcfc4cb354641e70da31a60556248db5036':
libc: Add missing pipe2() declaration and implementation.
9aac38249b579282ae8eaa630de3deaf97c4edff 28-Sep-2010 David 'Digit' Turner <digit@google.com> am bd8d987b: libc: remove C++ comments from public headers.

Merge commit 'bd8d987b3c3aa6d9d00cede2cb091f00bdb42204' into gingerbread-plus-aosp

* commit 'bd8d987b3c3aa6d9d00cede2cb091f00bdb42204':
libc: remove C++ comments from public headers.
032a713549c12b79b5dde6ef3dff323b7698110d 28-Sep-2010 David 'Digit' Turner <digit@google.com> Merge "libc: add missing O_CLOEXEC from <fcntl.h>" into gingerbread
223ddfcfc4cb354641e70da31a60556248db5036 28-Sep-2010 David 'Digit' Turner <digit@google.com> Merge "libc: Add missing pipe2() declaration and implementation." into gingerbread
d285151df65f94daa01086ab9134463692c4327e 27-Sep-2010 Elliott Hughes <enh@google.com> am 8120a8df: am 3cf53d1a: Fixes for the ARM-specific bswap_16, bswap_32, and bswap_64.

Merge commit '8120a8df848e6dec31ef5f00bc0b41ed95ce1310'

* commit '8120a8df848e6dec31ef5f00bc0b41ed95ce1310':
Fixes for the ARM-specific bswap_16, bswap_32, and bswap_64.
8120a8df848e6dec31ef5f00bc0b41ed95ce1310 27-Sep-2010 Elliott Hughes <enh@google.com> am 3cf53d1a: Fixes for the ARM-specific bswap_16, bswap_32, and bswap_64.

Merge commit '3cf53d1a7814e1520df09d24b009c16f4f27db0d' into gingerbread-plus-aosp

* commit '3cf53d1a7814e1520df09d24b009c16f4f27db0d':
Fixes for the ARM-specific bswap_16, bswap_32, and bswap_64.
bd8d987b3c3aa6d9d00cede2cb091f00bdb42204 26-Sep-2010 David 'Digit' Turner <digit@google.com> libc: remove C++ comments from public headers.

Change-Id: I4af84f912062cd2ff34711c25122fb323f20c032
thread.h
ys/file.h
ys/ioctl_compat.h
ys/ptrace.h
tmp.h
00eea3f8a07190dc6d2c4d0e927fed3e47502424 26-Sep-2010 David 'Digit' Turner <digit@google.com> libc: add missing O_CLOEXEC from <fcntl.h>

Change-Id: Ie7ad57898e67800a9fe92bb52589d67ec30e1cd9
cntl.h
275cd48511daabe4591caa49c3ad0df34a6889ff 27-Sep-2010 David 'Digit' Turner <digit@google.com> libc: Add missing pipe2() declaration and implementation.

Change-Id: Iacb914bd6ac5adc60c5671e6fef680ede21f9b0c
ys/linux-syscalls.h
ys/linux-unistd.h
nistd.h
f33a7700a5a893798e92ee67495281d2e24159fa 27-Sep-2010 David 'Digit' Turner <digit@google.com> libc: Add missing C++ guards to <pathconf.h>

Change-Id: I94dad48678181d8b02431b1c1f5d507beafb5406
athconf.h
9d16a79b18f43faebbe8155dbc14896e9b7d8a2e 27-Sep-2010 Jim Huang <jserv@0xlab.org> Hide the symbol of helper function __libc_android_abort

Ideally __libc_android_abort would be static, but it could not be
because gcc would not allow calling a static function from an asm
statement. Instead, using GCC visibility is work around.

Change-Id: Ifff6b9957ca3f0fc03c75c3e42582a48d43cefa2
ys/cdefs_elf.h
3cf53d1a7814e1520df09d24b009c16f4f27db0d 25-Sep-2010 Elliott Hughes <enh@google.com> Fixes for the ARM-specific bswap_16, bswap_32, and bswap_64.

1. Make the feature test work by excluding known-deficient processors, so
we don't have to maintain a complete list of all the processors that support
REV and REV16.

2. Don't abuse 'register' to get an effect similar to GCC's +l constraint,
but which was unnecessarily restrictive.

3. Fix __swap64md so _x isn't clobbered, breaking 64-bit swaps.

4. Make <byteswap.h> (which declars bswap_16 and friends) use <endian.h>
rather than <sys/endian.h>, so we get the machine-dependent implementations.

Change-Id: I6a38fad7a9fbe394aff141489617eb3883e1e944
yteswap.h
8f670c8e41092f861ac0396c25fad7cb52e86867 08-Sep-2010 Keith Deacon <kdeacon@ti.com> am d7b156d2: am 3a1bbee3: Add eventfd system call support

Merge commit 'd7b156d2a38e58ab1e5f9e6a4b420588aeb78b46'

* commit 'd7b156d2a38e58ab1e5f9e6a4b420588aeb78b46':
Add eventfd system call support
d7b156d2a38e58ab1e5f9e6a4b420588aeb78b46 08-Sep-2010 Keith Deacon <kdeacon@ti.com> am 3a1bbee3: Add eventfd system call support

Merge commit '3a1bbee36b773862e88c6f1895b607c0cd81b499' into gingerbread-plus-aosp

* commit '3a1bbee36b773862e88c6f1895b607c0cd81b499':
Add eventfd system call support
3a1bbee36b773862e88c6f1895b607c0cd81b499 31-Aug-2010 Keith Deacon <kdeacon@ti.com> Add eventfd system call support
ys/eventfd.h
ys/linux-syscalls.h
ys/linux-unistd.h
75a3689b6904a2b979730c797a8ffa30df30e7d4 25-Aug-2010 Szymon Jakubczak <szym@google.com> am 41e533af: added missing ether_aton and ether_ntoa

Merge commit '41e533af4a2720c1dc228ba40b6582ca53085c3a'

* commit '41e533af4a2720c1dc228ba40b6582ca53085c3a':
added missing ether_aton and ether_ntoa
41e533af4a2720c1dc228ba40b6582ca53085c3a 09-Jun-2010 Szymon Jakubczak <szym@google.com> added missing ether_aton and ether_ntoa

Change-Id: I32ee448abde4d5693d393030ed77ddc6d2ad1dfc
et/if_ether.h
076bc8f92dca689e7ee7db68046bbc2243f942d3 18-Aug-2010 Jean-Baptiste Queru <jbq@google.com> am 3871d57b: Revert "added missing ether_aton and ether_ntoa"

Merge commit '3871d57ba581236142c9bf2f8be2d34cce7c5829'

* commit '3871d57ba581236142c9bf2f8be2d34cce7c5829':
Revert "added missing ether_aton and ether_ntoa"
3871d57ba581236142c9bf2f8be2d34cce7c5829 18-Aug-2010 Jean-Baptiste Queru <jbq@google.com> Revert "added missing ether_aton and ether_ntoa"

This reverts commit 4032c1e2dfcc99613fe3e509a8153191e35aec12.
et/if_ether.h
2304a0bf86f224efdd67e38f34c97f35c5cf3c56 11-Aug-2010 Jeff Hamilton <jham@android.com> Fix pwrite to take a const void* instead of void* for the buffer.

Change-Id: I10b315946b8f8f7e34825410dfef37e0220edbee
ys/linux-unistd.h
nistd.h
63673645c4da1cf97938d5018d7d373837563174 06-Aug-2010 Dima Zavin <dima@android.com> libc: make lseek64 proto be glibc compatible (loff_t -> off64_t)

Change-Id: Ib79b99be9ca8d4b1f95ceeba416b6abc04187c3c
Signed-off-by: Dima Zavin <dima@android.com>
nistd.h
91af9e64b5d86dd5925c0fcfdb3f3db5a86aa43c 30-Jul-2010 Dima Zavin <dima@android.com> am 18c5bcc6: Revert "Set SA_RESTORER in sigaction()"

Merge commit '18c5bcc66a9a7b2178dcdcf04a0716958798ab81' into gingerbread-plus-aosp

* commit '18c5bcc66a9a7b2178dcdcf04a0716958798ab81':
Revert "Set SA_RESTORER in sigaction()"
18c5bcc66a9a7b2178dcdcf04a0716958798ab81 30-Jul-2010 Dima Zavin <dima@android.com> Revert "Set SA_RESTORER in sigaction()"

This reverts commit e4fa46e75cd0d433b5c6c064720ed7e195cba7c8.
ys/linux-syscalls.h
ys/linux-unistd.h
6d4d8cb79c5578d33ab17806d67b1e53a730fbc3 23-Jul-2010 Jean-Baptiste Queru <jbq@google.com> resolved conflicts for merge of 4f086aeb to gingerbread-plus-aosp

Change-Id: Ice2a6d41a7e9d04eca02e15ed189d648d61b5801
4f086aeb4aa06e13079b7fec71a8178ceeacf318 25-Jun-2010 Matt Fischer <matt.fischer@garmin.com> Implemented pthread_atfork()

Change-Id: Ie6c0bf593315d3507b3c4a6c8903a74a1fa053db
thread.h
7ab9c068aac3373fe35a94b01a36d360c2bcb97f 09-Jul-2010 David 'Digit' Turner <digit@google.com> am ab8b5410: libc: fix fstatfs() implementation.

Merge commit 'ab8b54101eed0a4b92ebf8fa6994cd1b4f22d8f4' into gingerbread-plus-aosp

* commit 'ab8b54101eed0a4b92ebf8fa6994cd1b4f22d8f4':
libc: fix fstatfs() implementation.
ab8b54101eed0a4b92ebf8fa6994cd1b4f22d8f4 09-Jul-2010 David 'Digit' Turner <digit@google.com> libc: fix fstatfs() implementation.

The syscall expects the size of the buffer as the second argument.

Change-Id: I99ede2fec7fcd385ca03ff022c2cffa4297bea8d
ys/linux-unistd.h
cb0f5ed8111d4305cf6798aefdb4f9623570c83a 23-Jun-2010 David 'Digit' Turner <digit@google.com> am 50ace4fe: Remove compiler warnings when building Bionic.

Merge commit '50ace4fec5e8cb5afcbc656a4556fa528adfd760' into gingerbread-plus-aosp

* commit '50ace4fec5e8cb5afcbc656a4556fa528adfd760':
Remove compiler warnings when building Bionic.
50ace4fec5e8cb5afcbc656a4556fa528adfd760 17-Jun-2010 David 'Digit' Turner <digit@google.com> Remove compiler warnings when building Bionic.

Also add missing declarations to misc. functions.
Fix clearerr() implementation (previous was broken).
Handle feature test macros like _POSIX_C_SOURCE properly.

Change-Id: Icdc973a6b9d550a166fc2545f727ea837fe800c4
nttypes.h
imits.h
tdio.h
tdlib.h
ys/cdefs.h
ys/select.h
ys/types.h
char.h
f201ae83fc1742f34f9b0ff248c0c6c48a55f7a4 15-Jun-2010 David 'Digit' Turner <digit@google.com> am 6a09cfd9: Merge "wchar.h: improve wchar_t support in Bionic" into kraken

Merge commit '6a09cfd9f916e3a60de707ff0806cdeb143d77a4' into gingerbread-plus-aosp

* commit '6a09cfd9f916e3a60de707ff0806cdeb143d77a4':
wchar.h: improve wchar_t support in Bionic
3527fd6f0df794207215790321824b7844cc712d 15-Jun-2010 David 'Digit' Turner <digit@google.com> wchar.h: improve wchar_t support in Bionic

Change-Id: Iffd41046fd0933c66542abf7627a1569522dfcb2
ys/cdefs.h
char.h
49b53c0b948595ac34a52daca5fc6ef6af336b94 14-Jun-2010 The Android Open Source Project <initial-contribution@android.com> merge from froyo-plus-aosp

Change-Id: Ibbde24d8ee26259f3eff076ee4d32476f868db85
04ed4a1c888309dc3af3fbeb0a32eb91b3733f23 14-Jun-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: I63e2bfcf87d190fb063c5b2457ebe6b0d50ddd26
4032c1e2dfcc99613fe3e509a8153191e35aec12 09-Jun-2010 Szymon Jakubczak <szym@google.com> added missing ether_aton and ether_ntoa

Change-Id: I32ee448abde4d5693d393030ed77ddc6d2ad1dfc
et/if_ether.h
da3019b55305ce51b1b483d8727641e791ce0941 11-Jun-2010 David 'Digit' Turner <digit@google.com> libc: add missing truncate() declaration

Change-Id: Icb3601bbc9365b75b05ff443a39192f9cd3cbfb7
nistd.h
ecb6d4133477fef90c2fa23a40637d3c62681ee0 11-Jun-2010 David 'Digit' Turner <digit@google.com> libc: Add missing <termio.h> header

Change-Id: Id4e020ed330b3eabf09324f9b6d44d3a0f336d87
ermio.h
506b13d910a1a603b29fbc5a9ba41ba4c533b14c 21-May-2010 Jing Yu <jingyu@google.com> Remove a gcc-4.5 compilation warning:
bionic/libc/include/../include/stdlib.h: In function 'int grantpt(int)':
bionic/libc/include/../include/stdlib.h:138:23: warning: parameter '__fd' set but not used [-Wunused-but-set-parameter]

By adding __attribute((unused)) to __fd, the warning is gone, and this
attribute is compatible with gcc-4.4.0, gcc-4.3.1 gcc-4.2.1.
There is no any side effect.

Change-Id: I385f0f4da1013ffd1499e391eac9123aafe1f7a5
tdlib.h
aa4b1d042927872224e4bf5d22e4db5367e389fa 20-May-2010 David 'Digit' Turner <digit@google.com> Add missing sysinfo() implementation (already declared in <sys/sysinfo.h>) - DO NOT MERGE

Change-Id: Iac4eb5911ffe4a7ab72b84df44e907685ac816af
ys/linux-syscalls.h
ys/linux-unistd.h
a8a21488630980c1d2a2152d0ac39bd7978879e2 04-Jun-2010 Jean-Baptiste Queru <jbq@google.com> resolved conflicts for merge of 7b6e6fa5 to kraken

Change-Id: I2b9b80a7fa32c56be2b85ff8be0d6e7ac1848afe
7b6e6fa57240466c2728d553be136f800600dd71 03-Jun-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: Ib7fc9c6f79f9b13e2175da137005d8968ea85eaf
78c1c04ced772298be8bdb5a94b6ce491bb9b3e1 20-May-2010 André Goddard Rosa <andre.goddard@gmail.com> pthread: introduce pthread_setname_np() as a mean to give names to threads

... so that each cloned process at the kernel level can be named
independently. Tools like 'top' can display the CPU/memory statistics
for each process's thread if "Show Threads" mode is on.

With this function in place, we can convert dalvik/Thread.c setThreadName()
function over this function. This feature ought to be provided by the
underlying C library and not coded directly in Dalvik.

Change-Id: Ifa997665dbaa114e0b126f8c667708be9a4137fd
Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
thread.h
nistd.h
8a1d2cf1422e35257c160ac5bb12dd3ee481c433 12-May-2010 David 'Digit' Turner <digit@google.com> Add pthread_rwlock_t implementation to the C library (DO NOT MERGE)

Change-Id: I756d8c26afc37cd7b71117ddbaa02a2cb40fdecb
thread.h
fdf2454db21284b5e1ec23cb18724388c85fd975 14-May-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: I9c926a3cd680a96ece026cdec71c6e0fb0b7ad7c
1297428e89ead45849068989d334d8b7eae2f602 14-May-2010 David Turner <digit@android.com> Merge "Add declaration for sys_signame[] forgotten in change 12489"
4aef0ae660e81ca151a04ce0ddaf956275c70116 13-May-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: I2be62bce462ee53fe9519f433523bd7a44a73d40
e4fa46e75cd0d433b5c6c064720ed7e195cba7c8 11-Jan-2010 Matt Fischer <matt.fischer@garmin.com> Set SA_RESTORER in sigaction()

GDB looks for specific opcode sequences when trying to recognize a stack
frame as a signal trampoline. The sequences it looks for happen to be those
created when SA_RESTORER is set, since glibc always sets a restorer. This
patch does the same here, so that the trampolines can be correctly identified.

Change-Id: I0ac574a68818cb24d939c3527f3aaeb04b853d04
ys/linux-syscalls.h
ys/linux-unistd.h
81569aa72c48caef1e74be31a5f799fc34a1cfc5 01-Dec-2009 Thorsten Glaser <tg@mirbsd.org> Add declaration for sys_signame[] forgotten in change 12489
ignal.h
377d4c979dee3dcb5929e8f7a68a53c2407259ab 22-Mar-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: I70266ee8c520b216773f267e46c8273d2334c31d
ee7b077abf1d99503b986489ad93374a057cb354 18-Mar-2010 David 'Digit' Turner <digit@google.com> Add pthread_condattr_init/destroy/setpshared/getpshared

Note that this does not change the implementation of conditional variables
which still use shared futexes, independent on the flags being selected.

This will be fixed in a later patch, once our system is modified to use
pthread_condattr_setpshared(attr, PTHREAD_PROCESS_SHARED) properly.

Change-Id: I935de50964cd41f97a13dbfd6626d3407b0406c3
thread.h
e2a8b1fd19fb3a8ead2ba28ddba27be19fa978b5 31-Dec-2009 Matt Fischer <matt.fischer@garmin.com> Added support for dladdr()

dladdr() is a GNU extension function, which allows the caller to retrieve
symbol information for a specified memory address. It is useful for things
like generating backtrace information at runtime.

Change-Id: I3a1def1a6c9c666d93e1e97b7d260dfa5b9b79a9
lfcn.h
8641833b62e3b319796dc80ea16eb1592c05edf6 11-Mar-2010 Fabrice Di Meglio <fdimeglio@google.com> Revert "bionic: pthread: use private futexes by default for mutexes and condvars"

This reverts commit ba9c6f0989ae94778ba2b9f597adc827c9dc81e8.
thread.h
ba9c6f0989ae94778ba2b9f597adc827c9dc81e8 11-Mar-2010 David 'Digit' Turner <digit@google.com> bionic: pthread: use private futexes by default for mutexes and condvars

Private futexes are a recent kernel addition: faster futexes that cannot be
shared between processes. This patch uses them by default, unless the PROCESS_SHARED
attribute flag is used when creating a mutex and/or conditional variable.

Also introduces pthread_condattr_init/destroy/setpshared/getpshared.

Change-Id: I3a0e2116f467072b046524cb5babc00e41057a53
thread.h
9f6915631b918a56e0e6be958fb14d274cbab322 02-Mar-2010 Mike Chan <mike@android.com> bonic: libc: cpuacct support for setuid functions

Any of the setuid functions now updates /acct/uid/ with its own tid
before changing users. This is so we can properly account for cpu time
per uid.

Change-Id: I34186cf4d5228cac8439e582a9e26c01ef3011e4
Signed-off-by: Mike Chan <mike@android.com>
ys/linux-unistd.h
eb9d5ed3477ef8cd9ccfa424ea585541ea3af84a 25-Feb-2010 Andrei Popescu <andreip@google.com> add sigaltstack syscall
ys/linux-syscalls.h
ys/linux-unistd.h
75c5e25ae3615c34f4bcc7dcbe9b29e548e26b9c 24-Feb-2010 San Mehat <san@google.com> bionic: syscalls: Add ioprio_set/ioprio_get syscall wrappers

Signed-off-by: San Mehat <san@google.com>
ys/linux-syscalls.h
ys/linux-unistd.h
2e1a03c16fae7bfd5f5e6955985bc46baf93ba84 12-Feb-2010 Nicolas Catania <niko@google.com> Changed __get_h_errno linkage to "C".

Bug:2441631
etdb.h
49f0a8f23bba188466c6ee3652858ef4da228c6f 09-Feb-2010 David 'Digit' Turner <digit@google.com> Fix <sys/epoll.h> and <sys/system_properties.h> to include proper C++ inclusion guards
ys/epoll.h
ys/system_properties.h
97cf7f3394780d524038fc083e2c134031b54728 23-Jan-2010 David 'Digit' Turner <digit@google.com> Implement clone() C library function properly.

Only provide an implementation for ARM at the moment, since
it requires specific assembly fragments (the standard syscall
stubs cannot be used because the child returns in a different
stack).
ched.h
ys/linux-unistd.h
fc10b24accd082fb33c8f92ff8b92481c22fe3dc 14-Jan-2010 Colin Cross <ccross@android.com> Add implementation of fdprintf, clearenv, and stubs for ttyname_r, *usershell

Change-Id: I5fe7e8b6ee5edbb49e707c3b6737a58563781fa3
tdio.h
nistd.h
8c59d96e243ba1a05d7d9ab7a14d1a00e20bad4a 14-Jan-2010 Colin Cross <ccross@android.com> Add killpg function

Change-Id: I9bc347d264fe38faf2d0f9935d2ebb43a353196e
ignal.h
64ceac3f493e3063a289aec4a12c74787be974e4 14-Jan-2010 Colin Cross <ccross@android.com> Add fts, err, and sys/queue for grep

Change-Id: Id47514a1812d828e95efa2fab0e9c15c5b682b58
rr.h
ts.h
ys/queue.h
c29731a491ae96b5cfe8835a7ec23900c773ca7e 14-Jan-2010 Colin Cross <ccross@android.com> mntent.h requires stdio.h

Change-Id: If69f64cf088dedb19602bf47627d03400abb9095
ntent.h
e9d08ba5236fb6524c7b65135ef133002027f050 14-Jan-2010 Colin Cross <ccross@android.com> Add definition of rlim_t

Change-Id: Ie8c2451360cbcce9fc1587528a95aca09a03d0de
ys/resource.h
2497f65fee7c132d1ddb1997dbfa07678c07c4f0 13-Jan-2010 Colin Cross <ccross@android.com> Import change from ctype.h revision 1.20 from openbsd

Fixes builds with gcc >= 4.3 with -std=gnu99

Change-Id: I8729b7f4237fd7a99a82b2fe60573a7afe66b435
type.h
d1cfc947f9b2f431cf416185ffdffb7e76303414 13-Jan-2010 Colin Cross <ccross@android.com> Import include/arpa/telnet.h from BSD

Change-Id: I684251bfb8ef04f0706866ea55dceebcd2a5b0e1
rpa/telnet.h
4fa7b105644222d9b35347c9d226ca8e011072eb 13-Jan-2010 Colin Cross <ccross@android.com> Import regex from OpenBSD

Change-Id: I7ad7d907ef65e4e345f94777d730813b1270a612
egex.h
6458c49c96fd2069a82fa6bb48283b4397087a25 12-Jan-2010 Colin Cross <ccross@android.com> Fix ptsname_r(3) return type to match glibc

The gHardy man pages specify the return type of ptsname_r to be char*, but the
return value to be 0 on success, negative on error and the gHardy stdlib.h
defines extern int ptsname_r(...).

Busybox telnetd fails to run successfully without this change.
tdlib.h
99d7907611725e23b6fad3ae7acff4926504e687 15-Dec-2009 Elliott Hughes <enh@google.com> Fix usleep(3) return type to be POSIX-compliant.

POSIX usleep(3) returns 0 on successful completion, -1 otherwise:
http://www.opengroup.org/onlinepubs/007908799/xsh/usleep.html

This was found by an external user porting native code:
http://groups.google.com/group/android-porting/browse_thread/thread/674848f001db0292
nistd.h
278d960aae1b2f0b8a3fa0c8056ba4aded96b133 04-Dec-2009 Mathias Agopian <mathias@google.com> am f197147a: am ca07064c: am 5f53a182: Revert "Add qsort_r() implementation to the C library."

Merge commit 'f197147a787d7415e6e0a1bad15566836c55befb'

* commit 'f197147a787d7415e6e0a1bad15566836c55befb':
Revert "Add qsort_r() implementation to the C library."
44358b9fed375e7f452b22380e100bc0b536fea2 04-Dec-2009 David 'Digit' Turner <digit@google.com> am be71c814: am 20b3097d: am 754c178a: Add qsort_r() implementation to the C library.

Merge commit 'be71c8142d4225dd9af4742ec050f30fcbc2aa5e'

* commit 'be71c8142d4225dd9af4742ec050f30fcbc2aa5e':
Add qsort_r() implementation to the C library.
f197147a787d7415e6e0a1bad15566836c55befb 04-Dec-2009 Mathias Agopian <mathias@google.com> am ca07064c: am 5f53a182: Revert "Add qsort_r() implementation to the C library."

Merge commit 'ca07064c9ebd8523ed88fa09e97feaaafb7e9c15' into eclair-mr2-plus-aosp

* commit 'ca07064c9ebd8523ed88fa09e97feaaafb7e9c15':
Revert "Add qsort_r() implementation to the C library."
caa17a905a6f73eefbcd913e5c5cab4090f4820b 04-Dec-2009 Mathias Agopian <mathias@google.com> am 5f53a182: Revert "Add qsort_r() implementation to the C library."

Merge commit '5f53a18204ec991f5a77872806eeaa185936aa8c' into eclair-plus-aosp

* commit '5f53a18204ec991f5a77872806eeaa185936aa8c':
Revert "Add qsort_r() implementation to the C library."
ca07064c9ebd8523ed88fa09e97feaaafb7e9c15 04-Dec-2009 Mathias Agopian <mathias@google.com> am 5f53a182: Revert "Add qsort_r() implementation to the C library."

Merge commit '5f53a18204ec991f5a77872806eeaa185936aa8c' into eclair-mr2

* commit '5f53a18204ec991f5a77872806eeaa185936aa8c':
Revert "Add qsort_r() implementation to the C library."
be71c8142d4225dd9af4742ec050f30fcbc2aa5e 04-Dec-2009 David 'Digit' Turner <digit@google.com> am 20b3097d: am 754c178a: Add qsort_r() implementation to the C library.

Merge commit '20b3097d4cc225d948dac38e778a9d3b3b1549db' into eclair-mr2-plus-aosp

* commit '20b3097d4cc225d948dac38e778a9d3b3b1549db':
Add qsort_r() implementation to the C library.
5f53a18204ec991f5a77872806eeaa185936aa8c 04-Dec-2009 Mathias Agopian <mathias@google.com> Revert "Add qsort_r() implementation to the C library."

This reverts commit 754c178ae551aedcbbfd3bfd1c1c3b710d9ad989.

Turns out we don't need it afterall (needed a stable sort anyways).
So, we'll make that change in the dev branch instead.
tdlib.h
20b3097d4cc225d948dac38e778a9d3b3b1549db 04-Dec-2009 David 'Digit' Turner <digit@google.com> am 754c178a: Add qsort_r() implementation to the C library.

Merge commit '754c178ae551aedcbbfd3bfd1c1c3b710d9ad989' into eclair-mr2

* commit '754c178ae551aedcbbfd3bfd1c1c3b710d9ad989':
Add qsort_r() implementation to the C library.
f7ee5739faeff7e12bb25ae4350ce4a0d22f6d81 04-Dec-2009 David 'Digit' Turner <digit@google.com> am 754c178a: Add qsort_r() implementation to the C library.

Merge commit '754c178ae551aedcbbfd3bfd1c1c3b710d9ad989' into eclair-plus-aosp

* commit '754c178ae551aedcbbfd3bfd1c1c3b710d9ad989':
Add qsort_r() implementation to the C library.
754c178ae551aedcbbfd3bfd1c1c3b710d9ad989 03-Dec-2009 David 'Digit' Turner <digit@google.com> Add qsort_r() implementation to the C library.

NOTE: This replaces qsort.c with the FreeBSD version. While
the patch changes the source, it should not alter the
implementation that should use the exact same algorithm.
tdlib.h
c1202510b67f200b668d85ac0190db2b179b0c4d 25-Nov-2009 Andy McFadden <fadden@android.com> Added a comment.

The structs for stdin/stdout/stderr are formed with a static initializer
that needs to be updated if something in FILE is changed.
tdio.h
25f8ea4d40879096a56ae6036543dfe41e701ca5 23-Nov-2009 Fred Fettinger <fred.fettinger@motorola.com> am 01a1f8b0: am b5239ed1: libc: allow usage of time64.h from cpp code

Merge commit '01a1f8b080d9d4e619ce00039f195f6fa3aa2045'

* commit '01a1f8b080d9d4e619ce00039f195f6fa3aa2045':
libc: allow usage of time64.h from cpp code
01a1f8b080d9d4e619ce00039f195f6fa3aa2045 23-Nov-2009 Fred Fettinger <fred.fettinger@motorola.com> am b5239ed1: libc: allow usage of time64.h from cpp code

Merge commit 'b5239ed16aeba648f1c9bcb7a4887b8a41670326' into eclair-mr2-plus-aosp

* commit 'b5239ed16aeba648f1c9bcb7a4887b8a41670326':
libc: allow usage of time64.h from cpp code
b5239ed16aeba648f1c9bcb7a4887b8a41670326 20-Nov-2009 Fred Fettinger <fred.fettinger@motorola.com> libc: allow usage of time64.h from cpp code

Wrapped declarations in time64.h with __BEGIN_DECLS/__END_DECLS so that
the prototypes are correctly identified as extern C.

Change-Id: I253453307831c929a6c7174b28b48bceef946fed
Signed-off-by: Fred Fettinger <fred.fettinger@motorola.com>
Signed-off-by: Mike Lockwood <lockwood@android.com>
ime64.h
03c643b493d0d6e4385fe5a33d33d2cb945493d2 10-Nov-2009 Dan Bornstein <danfuzz@android.com> Add stdlib functions mbstowcs() and wcstombs().

As with the other wchar functions in Bionic, these are really
minimally functional stubs.

Change-Id: I805bc5642e7bc22d9d730cfc18f9fb4a5f164416
char.h
b152dde4cafffb3b37ca60c589f71110ca988c79 09-Nov-2009 Jean-Baptiste Queru <jbq@google.com> am 83362689: merge from open-source master

Merge commit '83362689f5b1f6393d376d242fe29541b63ead2d'

* commit '83362689f5b1f6393d376d242fe29541b63ead2d':
added and modified linker to support SuperH architecture
Add the BSD sys_signame array.
added and modified bionic code to support SuperH architecture
83362689f5b1f6393d376d242fe29541b63ead2d 09-Nov-2009 Jean-Baptiste Queru <jbq@google.com> merge from open-source master
10be95cffc7f2b02d8baac55a9cf1b16d8afbadb 09-Nov-2009 Jean-Baptiste Queru <jbq@google.com> merge from open-source master
92b10af793da235659198cf38ff2e0237c181058 02-Oct-2009 Thorsten Glaser <tg@mirbsd.org> Add the BSD sys_signame array.

Signed-off-by: Thorsten Glaser <tg@mirbsd.org>
ys/_sigdefs.h
35af95026e01e69cfaf0cb369e918a6638e76be1 15-Oct-2009 Jean-Baptiste Queru <jbq@google.com> am 73981476: merge from open-source master

Merge commit '73981476a389847e8537cca37503c43e107fadc9'

* commit '73981476a389847e8537cca37503c43e107fadc9':
Fill l_ld of linkmaps with value from soinfo::dynamic.
modified kernel headers re-generate tools to support SuperH architecture
added syscalls for SuperH which automatically generate by gensyscalls.py
73981476a389847e8537cca37503c43e107fadc9 14-Oct-2009 Jean-Baptiste Queru <jbq@google.com> merge from open-source master
cf399f77b83b03cd83da784aa27ef1df71cca78d 05-Oct-2009 Elliott Hughes <enh@google.com> Add a GNU-compatible TEMP_FAILURE_RETRY.

I wondered about #ifndef, but the other macros in here don't use it.

I also wondered about __GNUC__, since this macro uses two GCC extensions.
nistd.h
9641805419d30e8bfa4624cf54f823b7a3a9e320 23-Sep-2009 David 'Digit' Turner <digit@google.com> am d154954f: Merge change 26419 into eclair

Merge commit 'd154954f02691618fdf73a5a97336e64cad37af0' into eclair-plus-aosp

* commit 'd154954f02691618fdf73a5a97336e64cad37af0':
Add pthread_mutex_lock_timeout_np
3f56b7f65adb9ee35cd0f878ca00b92011eec427 22-Sep-2009 David 'Digit' Turner <digit@google.com> Add pthread_mutex_lock_timeout_np

This is used to perform a mutex lock for a given amount of
milliseconds before giving up. Using the _np prefix since this
is absolutely not portable.

Also remove a compiler warning in pthread_attr_getstackaddr
thread.h
4e30c09e57a0351daff70f6657794569445be21c 21-Sep-2009 Android Code Review <code-review@android.com> Merge change 10538

* changes:
added syscalls for SuperH which automatically generate by gensyscalls.py
895244b2ab91b34ab03efc78417ee1eb73f3e7ba 17-Sep-2009 Jean-Baptiste Queru <jbq@google.com> merge from open-source master
c88110e284d6fcb5922c72f524dc3b4f24139580 08-Sep-2009 Martin Storsjo <martin@martin.st> Define 64 bit types if compiling with -std=c99

Compiling with -std=c99 defines __STRICT_ANSI__, but the 64 bit types
and type macros should still be defined in this case.

This helps compiling third party code that needs -std=c99 with the NDK.
tdint.h
842cdcd2f63992dcdbe30e90a29c6d5ba2169f0e 10-Sep-2009 Erik Gilling <konkers@android.com> am 9e74f697: libc: add void to clock() function prototype

Merge commit '9e74f697e0178a0e9b6133a2b270cc7fed9920bf' into eclair-plus-aosp

* commit '9e74f697e0178a0e9b6133a2b270cc7fed9920bf':
libc: add void to clock() function prototype
9e74f697e0178a0e9b6133a2b270cc7fed9920bf 09-Sep-2009 Erik Gilling <konkers@android.com> libc: add void to clock() function prototype

Signed-off-by: Erik Gilling <konkers@android.com>
ime.h
00fb8b45d9d3fdf3db0dfb93df9a94a89f94f68d 01-Sep-2009 Jean-Baptiste Queru <jbq@google.com> merge from open-source master
8f53951b054d5d8267f4550a4bc726e09e66fc2d 21-Aug-2009 Android Code Review <code-review@android.com> Merge change 10749

* changes:
Make sure size_t is defined before used in strings.h
70f1280ca9ccbf211da5514f01a77fad54e546a4 22-Jul-2009 Martin Storsjo <martin@martin.st> Make sure size_t is defined before used in strings.h

Otherwise, including strings.h as the first file in a C file yields errors.

This fixes issue 3332.
trings.h
a2f5e212448f36f0b35cf695d13bb4defdb4472e 14-Jul-2009 Mathias Agopian <mathias@google.com> added pthread_cond_timedwait_relative_np()
thread.h
336efb5267e465ac52d78327d37f79553b3f0584 01-Jul-2009 Tony Sim <sim.chinyeow@renesas.com> added syscalls for SuperH which automatically generate by gensyscalls.py
ys/linux-syscalls.h
ys/linux-unistd.h
fc90c51f72a669ec3be951cace1a013d3b43c9f8 22-Jun-2009 David 'Digit' Turner <digit@google.com> am 09baf4e8: Add Glibc-compatible macro aliases for the nanosecond time accessors in stat structure

Merge commit '09baf4e881c78e67c7849aa81432ceb34e72e913'

* commit '09baf4e881c78e67c7849aa81432ceb34e72e913':
Add Glibc-compatible macro aliases for the nanosecond time accessors in stat structure
09baf4e881c78e67c7849aa81432ceb34e72e913 22-Jun-2009 David 'Digit' Turner <digit@google.com> Add Glibc-compatible macro aliases for the nanosecond time accessors in stat structure
ys/stat.h
c52c174e412fa6c829cf6353ce8dbebdf710511f 12-Jun-2009 Lorenzo Colitti <lorenzo@google.com> Make IPv6 definitions comply with RFC 3493:
- Add some definitions to netinet/in6.h
- Include netinet/in6.h from netinet/in.h
rpa/inet.h
etinet/in.h
etinet/in6.h
a48fa7f4deb6ba703e1da55143771476d4e668ce 15-May-2009 Eric Fischer <enf@google.com> Add standalone_months field to libc strftime().

Replicate my change 722a5c0462f38827f4097065bfc3826b9e0e9fb4 into
bionic in an attempt to fix the build.
ime.h
edbe7fc97bab7ff0684053d1be564330689bf3ad 19-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import //branches/master/...@140412
ime.h
1dc9e472e19acfe6dc7f41e429236e7eef7ceda1 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
lloca.h
rpa/inet.h
rpa/nameser.h
ssert.h
yteswap.h
type.h
irent.h
lfcn.h
lf.h
ndian.h
rr.h
rrno.h
cntl.h
eatures.h
nmatch.h
etopt.h
rp.h
nttypes.h
astlog.h
ibgen.h
imits.h
ocale.h
alloc.h
emory.h
ntent.h
et/ethertypes.h
et/if.h
et/if_arp.h
et/if_dl.h
et/if_ether.h
et/if_ieee1394.h
et/if_packet.h
et/if_types.h
et/route.h
etdb.h
etinet/ether.h
etinet/if_ether.h
etinet/in.h
etinet/in6.h
etinet/in_systm.h
etinet/ip.h
etinet/ip_icmp.h
etinet/tcp.h
etinet/udp.h
etpacket/packet.h
sswitch.h
athconf.h
aths.h
oll.h
thread.h
wd.h
esolv.h
ched.h
emaphore.h
etjmp.h
gtty.h
ha1.h
ignal.h
tdint.h
tdio.h
tdlib.h
tring.h
trings.h
ys/_errdefs.h
ys/_sigdefs.h
ys/_system_properties.h
ys/_types.h
ys/atomics.h
ys/cdefs.h
ys/cdefs_elf.h
ys/dirent.h
ys/endian.h
ys/epoll.h
ys/errno.h
ys/exec_elf.h
ys/file.h
ys/fsuid.h
ys/inotify.h
ys/ioctl.h
ys/ioctl_compat.h
ys/ipc.h
ys/klog.h
ys/limits.h
ys/linux-syscalls.h
ys/linux-unistd.h
ys/mman.h
ys/mount.h
ys/param.h
ys/poll.h
ys/prctl.h
ys/ptrace.h
ys/reboot.h
ys/resource.h
ys/select.h
ys/sendfile.h
ys/socket.h
ys/socketcalls.h
ys/stat.h
ys/statfs.h
ys/syscall.h
ys/sysconf.h
ys/sysinfo.h
ys/syslimits.h
ys/sysmacros.h
ys/system_properties.h
ys/time.h
ys/timeb.h
ys/times.h
ys/ttychars.h
ys/ttydev.h
ys/types.h
ys/uio.h
ys/un.h
ys/utime.h
ys/utsname.h
ys/vfs.h
ys/vt.h
ys/wait.h
yslog.h
ermios.h
ime.h
ime64.h
nistd.h
til.h
time.h
tmp.h
char.h
ctype.h
1767f908af327fa388b1c66883760ad851267013 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
lloca.h
rpa/inet.h
rpa/nameser.h
ssert.h
yteswap.h
type.h
irent.h
lfcn.h
lf.h
ndian.h
rr.h
rrno.h
cntl.h
eatures.h
nmatch.h
etopt.h
rp.h
nttypes.h
astlog.h
ibgen.h
imits.h
ocale.h
alloc.h
emory.h
ntent.h
et/ethertypes.h
et/if.h
et/if_arp.h
et/if_dl.h
et/if_ether.h
et/if_ieee1394.h
et/if_packet.h
et/if_types.h
et/route.h
etdb.h
etinet/ether.h
etinet/if_ether.h
etinet/in.h
etinet/in6.h
etinet/in_systm.h
etinet/ip.h
etinet/ip_icmp.h
etinet/tcp.h
etinet/udp.h
etpacket/packet.h
sswitch.h
athconf.h
aths.h
oll.h
thread.h
wd.h
esolv.h
ched.h
emaphore.h
etjmp.h
gtty.h
ha1.h
ignal.h
tdint.h
tdio.h
tdlib.h
tring.h
trings.h
ys/_errdefs.h
ys/_sigdefs.h
ys/_system_properties.h
ys/_types.h
ys/atomics.h
ys/cdefs.h
ys/cdefs_elf.h
ys/dirent.h
ys/endian.h
ys/epoll.h
ys/errno.h
ys/exec_elf.h
ys/file.h
ys/fsuid.h
ys/inotify.h
ys/ioctl.h
ys/ioctl_compat.h
ys/ipc.h
ys/klog.h
ys/limits.h
ys/linux-syscalls.h
ys/linux-unistd.h
ys/mman.h
ys/mount.h
ys/param.h
ys/poll.h
ys/prctl.h
ys/ptrace.h
ys/reboot.h
ys/resource.h
ys/select.h
ys/sendfile.h
ys/socket.h
ys/socketcalls.h
ys/stat.h
ys/statfs.h
ys/syscall.h
ys/sysconf.h
ys/sysinfo.h
ys/syslimits.h
ys/sysmacros.h
ys/system_properties.h
ys/time.h
ys/timeb.h
ys/times.h
ys/ttychars.h
ys/ttydev.h
ys/types.h
ys/uio.h
ys/un.h
ys/utime.h
ys/utsname.h
ys/vfs.h
ys/vt.h
ys/wait.h
yslog.h
ermios.h
ime.h
ime64.h
nistd.h
til.h
time.h
tmp.h
char.h
ctype.h
6f04a0f4c72acff80dad04828cb69ef67fa609d1 19-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132276
ys/linux-syscalls.h
ys/linux-unistd.h
ys/msg.h
ys/shm.h
9f65adf2ba3bb15feb8b7a7b3eef788df3fd270e 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
thread.h
tring.h
ys/stat.h
ys/time.h
ys/types.h
ime64.h
nistd.h
d37527501c85edcb3a6a7c8a0b6297d52d434897 20-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127101
emaphore.h
e5cc1f386b167b9f7bfdebc7219e89aa9b71e4b2 16-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@126645
tdio.h
tdlib.h
ys/android/atomics.h
ys/android/tls.h
ys/stat.h
ys/tls.h
char.h
6d6c82c7a0a6b9a89f61b61c66f9b90d9c7177dc 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
sc/assertions.h
sc/dst.h
sc/eventlib.h
sc/heap.h
sc/list.h
sc/memcluster.h
ocale.h
etdb.h
etjmp.h
tdlib.h
tring.h
ys/tls.h
char.h
4e468ed2eb86a2406e14f1eca82072ee501d05fd 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
irent.h
eatures.h
rp.h
et/if.h
etdb.h
etinet/in.h
etinet/in6.h
thread.h
ignal.h
tdint.h
tdio.h
tdlib.h
tl_pair.h
ys/_system_properties.h
ys/atomics.h
ys/linux-syscalls.h
ys/linux-unistd.h
ys/socket.h
ys/timeb.h
ermios.h
ime.h
nistd.h
tility
char.h
a27d2baa0c1a2ec70f47ea9199b1dd6762c8a349 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
lloca.h
rpa/inet.h
rpa/nameser.h
ssert.h
yteswap.h
type.h
irent.h
lfcn.h
lf.h
ndian.h
rr.h
rrno.h
cntl.h
nmatch.h
etopt.h
rp.h
nttypes.h
sc/assertions.h
sc/dst.h
sc/eventlib.h
sc/heap.h
sc/list.h
sc/memcluster.h
astlog.h
ibgen.h
imits.h
ocale.h
alloc.h
emory.h
ntent.h
et/ethertypes.h
et/if.h
et/if_arp.h
et/if_dl.h
et/if_ether.h
et/if_ieee1394.h
et/if_packet.h
et/if_types.h
et/route.h
etdb.h
etinet/ether.h
etinet/if_ether.h
etinet/in.h
etinet/in6.h
etinet/in_systm.h
etinet/ip.h
etinet/ip_icmp.h
etinet/tcp.h
etinet/udp.h
etpacket/packet.h
sswitch.h
athconf.h
aths.h
oll.h
thread.h
wd.h
esolv.h
ched.h
emaphore.h
etjmp.h
gtty.h
ha1.h
ignal.h
tdint.h
tdio.h
tdlib.h
tl_pair.h
tring.h
trings.h
ys/_errdefs.h
ys/_sigdefs.h
ys/_system_properties.h
ys/_types.h
ys/android/atomics.h
ys/android/tls.h
ys/atomics.h
ys/cdefs.h
ys/cdefs_elf.h
ys/dirent.h
ys/endian.h
ys/epoll.h
ys/errno.h
ys/exec_elf.h
ys/file.h
ys/fsuid.h
ys/inotify.h
ys/ioctl.h
ys/ioctl_compat.h
ys/ipc.h
ys/klog.h
ys/limits.h
ys/linux-syscalls.h
ys/linux-unistd.h
ys/mman.h
ys/mount.h
ys/msg.h
ys/param.h
ys/poll.h
ys/prctl.h
ys/ptrace.h
ys/reboot.h
ys/resource.h
ys/select.h
ys/sendfile.h
ys/shm.h
ys/socket.h
ys/socketcalls.h
ys/stat.h
ys/statfs.h
ys/syscall.h
ys/sysconf.h
ys/sysinfo.h
ys/syslimits.h
ys/sysmacros.h
ys/system_properties.h
ys/time.h
ys/times.h
ys/tls.h
ys/ttychars.h
ys/ttydev.h
ys/types.h
ys/uio.h
ys/un.h
ys/utime.h
ys/utsname.h
ys/vfs.h
ys/vt.h
ys/wait.h
yslog.h
ermios.h
ime.h
nistd.h
til.h
tility
time.h
tmp.h
char.h
ctype.h