cb302f932a3532f1484e1e70894e9b1199384283 |
|
20-Apr-2017 |
Josh Gao <jmgao@google.com> |
The future is now. __INTRODUCED_IN_FUTURE -> __INTRODUCED_IN(26) Bug: http://b/37437368 Test: treehugger Change-Id: I601a23da83b65a0cd582cc840ed3856a9031b673
|
95b59c520b24aabcdc63b93a3f1eaf73e57a3afe |
|
14-Feb-2017 |
Daniel Micay <danielmicay@gmail.com> |
add fortified implementations of send/sendto Bug: None Test: Bullhead builds+boots; CtsBionicTestCases passes. Change-Id: I2f137a100f679f7f2145d84b2f29ddd3e96a36ae
|
156d5a8ae93c6515919dd6706481991c7c0dc600 |
|
10-Feb-2017 |
George Burgess IV <gbiv@google.com> |
Match __bos0 to __pass_object_size0 in FORTIFY pass_object_size(N) forwards the result of __builtin_object_size(param, N) to a function. So, a function that looks like: size_t foo(void *const p __pass_object_size) { return __bos0(p); } int bar = foo(baz); would effectively be turned into size_t foo(void *const p, size_t sz) { return sz; } int bar = foo(baz, __bos(baz)); // note that this is not __bos0 This is bad, since if we're using __bos0, we want more relaxed objectsize checks. __bos0 should be more permissive than __bos in all cases, so this change Should Be Fineā¢. This change also makes GCC and clang share another function's implementation (recv). I just realized we need to add special diagnostic-related overloads bits for clang to it, but I can do that in another patch. Bug: None Test: Bullhead builds and boots; CtsBionicTestCases passes. Change-Id: I6818d0041328ab5fd0946a1e57321a977c1e1250
|
7cc779f15c524e1622f7d5b1c7e82e6ffc6677fd |
|
09-Feb-2017 |
George Burgess IV <gbiv@google.com> |
libc: add clang FORTIFY support This patch adds clang-style FORTIFY to Bionic. For more information on FORTIFY, please see https://goo.gl/8HS2dW . This implementation works for versions of clang that don't support diagnose_if, so please see the "without diagnose_if" sections. We plan to swap to a diagnose_if-based FORTIFY later this year (since it doesn't really add any features; it just simplifies the implementation a lot, and it gives us much prettier diagnostics) Bug: 32073964 Test: Builds on angler, bullhead, marlin, sailfish. Bionic CTS tests pass on Angler and Bullhead. Change-Id: I607aecbeee81529709b1eee7bef5b0836151eb2b
|
8d7687143843c4fe8c8e79ea8abbc2d6b9c889f2 |
|
14-Dec-2016 |
Elliott Hughes <enh@google.com> |
Update socket constants. This corresponds to Linux 4.10. Bug: N/A Test: builds Change-Id: Ia7135c9fec181613b79726d1b16867133cdefd04
|
5bc78c8bcd0c1e634c04029309ede3ec05f2d424 |
|
16-Nov-2016 |
Elliott Hughes <enh@google.com> |
Add and use constants for the Android API levels. Test: bionic tests still pass Change-Id: If1b619cfc9db1d3f5d91f14f2ace71058dca0c4a
|
11f0e10c4911e39733145194ee78bb65d684fff4 |
|
09-Sep-2016 |
Dan Albert <danalbert@google.com> |
Provide an inline __cmsg_nxthdr. This was defined as an inline in the legacy NDK headers. Keep that here until we can get it into libandroid_support. Test: make checkbuild Bug: http://b/30465923 Change-Id: I62393b58e4fba3bc7337cc5ecf4ae1590b0e9917
|
2b9605fec499b24bcbe9ff408b934455b4d85e57 |
|
16-Aug-2016 |
Elliott Hughes <enh@google.com> |
Fix various <sys/socket.h> prototypes. http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_socket.h.html Interestingly, recvmmsg/sendmmsg do actually return int, unlike their recv/recvmsg/sendv/sendvmsg siblings. The generated assembler stubs don't actually change. Change-Id: If71cd02431903774de9bbce77fbedf6b03f90c0f
|
8197aca7f2110fa764c1aecd005d878d8ddd3a3c |
|
12-Aug-2016 |
Elliott Hughes <enh@google.com> |
Fix recvfrom prototype. http://pubs.opengroup.org/onlinepubs/9699919799/functions/recvfrom.html Change-Id: Iba203c74045c88e53e28c2e0c8bc1f9ac63ce23e
|
dfa6bbb54bd9ab2a71df4c066427ea804608e20b |
|
03-Aug-2016 |
Dan Albert <danalbert@google.com> |
Guard fortify inlines with __ANDROID_API__. Test: make checkbuild with libc ndk_library patches applied Change-Id: Ic5e248994c4f2702b0f4d6dfeda787187ea86017
|
3b2096a9d6edd74622b94cacc76b77100f919b84 |
|
23-Jul-2016 |
Elliott Hughes <enh@google.com> |
Remove unnecessary 'extern's. Change-Id: Iba2b3fb6ff88e504f1657b915120ae43d58a1e03
|
508d292f8deb2933914b0ceef56908cdd4ee589f |
|
22-Jul-2016 |
Elliott Hughes <enh@google.com> |
Only define sa_family_t once. Change-Id: Icf700910c836d22c8a27ad026ec8af11697edd5a
|
14adff1cfa06a3d4d3281a9bf7848b556d84c20d |
|
29-Apr-2016 |
Josh Gao <jmgao@google.com> |
Add versioning information to symbols. Bug: http://b/28178111 Change-Id: I46bf95accd819f4521afb1173d8badcc5e9df31c
|
c7ca8f3a6332638021b9ae99e1ce15739350ee98 |
|
28-Jan-2016 |
Greg Hackmann <ghackmann@google.com> |
socket.h: update AF_* constants Change-Id: I8ca219fa429ca8d8f872ed1db98275cd1a06f00b Signed-off-by: Greg Hackmann <ghackmann@google.com>
|
d75abb9614b04c3da3104099752726f9d1c6d8c7 |
|
26-Aug-2015 |
Greg Hackmann <ghackmann@google.com> |
Fix SOCK_* flag definitions MIPS and the rest of the world only disagree on the first two SOCK_* constants, so restructure the #ifdef accordingly. As a deliberate side effect, this fixes SOCK_DCCP being missing on non-MIPS platforms. Change-Id: I2267008f1121a7eebe1ed9097afab6e612bce7f0 Signed-off-by: Greg Hackmann <ghackmann@google.com>
|
268af26359c8f1c87585e26d2763e3a3a63f8714 |
|
11-Sep-2015 |
Dan Albert <danalbert@google.com> |
CMSG_DATA should return an unsigned char*. http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_socket.h.html > CMSG_DATA(cmsg) > If the argument is a pointer to a cmsghdr structure, this macro > shall return an unsigned character pointer to the data array > associated with the cmsghdr structure. Change-Id: I3f89ba19cbca4e6727abc65a2bbcd59267892ba8
|
55ee845b8ec0861d09197b32fbb5f2d34320155d |
|
07-Oct-2014 |
Dan Albert <danalbert@google.com> |
Inline helpers need to be exported unmangled. __open_2() is used by the fortify implementation of open(2) in fcntl.h, and as such needs an unmangled C name. For some reason (inlining?), this doesn't cause problems at the default optimization level, but does for -O0. The rest of these didn't cause build failures, but they look suspect and probably will, we just haven't caught them yet. (cherry-pick of 658727e111ed6dee7be5239494f0764f7b1b02f8 with conflicts in stdio.h and string.h.) Bug: 17784968 Change-Id: I7391a7a8999ee204eaf6abd14a3d5373ea419d5b
|
658727e111ed6dee7be5239494f0764f7b1b02f8 |
|
07-Oct-2014 |
Dan Albert <danalbert@google.com> |
Inline helpers need to be exported unmangled. __open_2() is used by the fortify implementation of open(2) in fcntl.h, and as such needs an unmangled C name. For some reason (inlining?), this doesn't cause problems at the default optimization level, but does for -O0. The rest of these didn't cause build failures, but they look suspect and probably will, we just haven't caught them yet. Bug: 17784968 Change-Id: I7391a7a8999ee204eaf6abd14a3d5373ea419d5b
|
d87d401ab134996d1f25f5b63cefb48b5b5877c8 |
|
18-Aug-2014 |
Elliott Hughes <enh@google.com> |
Improve <sys/cdefs.h>. Fix and use __RENAME (and lose ___RENAME --- two underscores should be enough for anybody). This was the point of this change, because I want to use __RENAME to support the two basename variants and the two strerror_r variants. Lose a bunch of macros that weren't being used. Lose three dead files from the DNS code. Bug: 17784968 (cherry picked from commit 2cfb4e8e2e217ef0e4140dcbf9b3da809781158c) Change-Id: I5e96146f92c0521248c78c0933bec5e9a9818222
|
2cfb4e8e2e217ef0e4140dcbf9b3da809781158c |
|
18-Aug-2014 |
Elliott Hughes <enh@google.com> |
Improve <sys/cdefs.h>. Fix and use __RENAME (and lose ___RENAME --- two underscores should be enough for anybody). This was the point of this change, because I want to use __RENAME to support the two basename variants and the two strerror_r variants. Lose a bunch of macros that weren't being used. Lose three dead files from the DNS code. Change-Id: I3ef645c566b16a52217bc2e68c7d54b37c7c9522
|
291da8d3533b3ee47f8d742c72d789d3149d15da |
|
18-Jul-2014 |
Elliott Hughes <enh@google.com> |
Remove SIOCKILLADDR from <sys/socket.h>. (cherry picked from commit 8a3d1ca183e19d849728318fe8b0d36856fa000f) Change-Id: Idb5cc4cff3ece7fa8740db12a19438d1a1c9a6a8
|
8a3d1ca183e19d849728318fe8b0d36856fa000f |
|
18-Jul-2014 |
Elliott Hughes <enh@google.com> |
Remove SIOCKILLADDR from <sys/socket.h>. Change-Id: I6b64a9abe01c786a9ec26aee1517cb981a4860fb
|
f6968e3c0822b27e9aa584c3490573f34b1725c1 |
|
12-Jul-2014 |
Elliott Hughes <enh@google.com> |
Define SIOCKILLADDR which isn't in the common kernel uapi headers. (cherry picked from commit 2ba2888cac2f04daff7bbaf032d0df7a095b00c3) Change-Id: I3845871bb44dae94d9a0428af0f562ddfb8bd660
|
2ba2888cac2f04daff7bbaf032d0df7a095b00c3 |
|
12-Jul-2014 |
Elliott Hughes <enh@google.com> |
Define SIOCKILLADDR which isn't in the common kernel uapi headers. Change-Id: I8760950d13a9625aa543e76bc9d6cd86ac782c2e
|
096b4eb752aa7a5392875cb2f2faf0d67c676ac1 |
|
19-Jun-2014 |
Calin Juravle <calin@google.com> |
Prefix cmsg_nxthdr with "__". This brings us on par with glibc. To avoid breaking clients, temporary keep cmsg_nxthdr until the next NDK refresh. Bug: 15822452 Change-Id: I24c24e68c31f4f2b8f3d2df7acd575cb75174173
|
ff64831b0965c16c95c9f81a148f30a6ef3a6c64 |
|
07-Apr-2014 |
Calin Juravle <calin@google.com> |
Use glibc structure for __cmsg_nxthdr. Bug: 13418328 Change-Id: I7e656b373e53e80d708325321e48dcedacf5086d
|
9cea3775056d0a8d04d49c3983440b89d82a462b |
|
31-Mar-2014 |
Christopher Ferris <cferris@google.com> |
Small accept4 fixes. Put the accept4 test in the sorted order, and put the accept4 define in sorted order. Also add the missing SYS_RECVMMSG and SYS_SENDMMSG defines. Change-Id: Iba55354975e0d5027dbee53f6de752c2df719493
|
8f2a30a92ab6981cccbc1a9e17b738f7542ae33f |
|
26-Mar-2014 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Add accept4() syscall Add accept4() using SYSCALLS.TXT and gensyscall Change-Id: I6f19f29144186d15d46423e10f2cc4b4223719c6
|
f1de90b3a26d6ec46c0f1c741ef93509fe69f942 |
|
19-Mar-2014 |
Calin Juravle <calin@google.com> |
Clean up CMSG_*HDR in <sys/socket.h> Removed __CMSG_NXTHDR, __CMSG_FIRSTHDR and cmsg_nxthdr. Bug: 13418328 Change-Id: I6b1ed58b41b3f37d41e070c4f222b5bfa512bc48
|
247dc91889ffc8b71fc3371edba9d834afab96ab |
|
11-Mar-2014 |
Elliott Hughes <enh@google.com> |
Take ownership of various simple syscall wrappers. None of these trivial functions is something we're going to get from BSD. Change-Id: Iee1d1281b73db67da5ec303da7a49748121464bf
|
a8b1eb3fcf13fab029a16fa3b6636218a64c4583 |
|
01-Mar-2014 |
Elliott Hughes <enh@google.com> |
Fix build. Change-Id: I71cde79263d5f5a8382865b8151f65c5c05ea17b
|
6ff0c75c838e73d2aeccc0102ab58a7b865172ca |
|
10-Feb-2014 |
Guillaume Ranquet <guillaumex.ranquet@intel.com> |
Add recvmmsg and sendmmsg syscalls. Also add the corresponding constant, struct, and function declarations to <sys/socket.h>, and perfunctory tests so we know that the symbols actually exist. Signed-off-by: Guillaume Ranquet <guillaumex.ranquet@intel.com> Change-Id: Ib0d854239d3716be90ad70973c579aff4895a4f7
|
9f87a0b285128542a221f2b69d3b959a4e33c054 |
|
07-Feb-2014 |
Elliott Hughes <enh@google.com> |
Remove <sys/_types.h>. Bug: 12213562 Change-Id: I0d10664f9da60739bdbad0408be0dd61eea3c1fe
|
43d2137af0e2f65b7febf4414e10b979aa0007bf |
|
14-Oct-2013 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Add SOCK_CLOEXEC and SOCK_NONBLOCK socket flags. SOCK_CLOEXEC is used to atomically set close-on-exec flag for the new descriptor(s), and SOCK_NONBLOCK is used to mark descriptor(s) as non-blocking. Change-Id: I8ba6a70543d23759e3ddcc7ff9c21b567184d681
|
60f4f9a5b99a0a66817f50edfc2194a49f8b5146 |
|
25-Sep-2013 |
Nick Kralevich <nnk@google.com> |
libc: fortify recvfrom() Fortify calls to recv() and recvfrom(). We use __bos0 to match glibc's behavior, and because I haven't tested using __bos. Change-Id: Iad6ae96551a89af17a9c347b80cdefcf2020c505
|
d73c0b300e2dbaa4cc59f87fc1435661e5e1c736 |
|
04-Jan-2013 |
Elliott Hughes <enh@google.com> |
Add AF_CAN and PF_CAN (and other missing families). Change-Id: I2c183a6f5f7a7e81e87dad85d8c9aff9c43ed33a
|
86ec05acc9df3098c4e99e5b3ad85dcef66712c7 |
|
12-Sep-2012 |
Elliott Hughes <enh@google.com> |
Update the kernel headers to match external/kernel-headers. Note that the Linux kernel handed over responsibility for most of the socket constants to glibc some time ago. Someone had updated our external/kernel-headers file but not regenerated the bionic headers, so this change copies the missing stuff from the old bionic <linux/socket.h> into <sys/socket.h>. This is what glibc does. I've hacked a few of the other files to #include <sys/socket.h> for backward compatibility, but even so this requires numerous other changes to switch people over from direct inclusion of <linux/...> headers. Change-Id: I0e4af64e631d3cef911a31d90f2f806e058278a0
|
6437eac15a5b595ab26ef51834509c44695eb7e4 |
|
03-Aug-2012 |
Raghu Gandham <raghu@mips.com> |
MIPS support to sys/ headers Change-Id: I32207a1d918e4842da341f6b242ae39c69a83b03
|
1dc9e472e19acfe6dc7f41e429236e7eef7ceda1 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
|
1767f908af327fa388b1c66883760ad851267013 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
|
4e468ed2eb86a2406e14f1eca82072ee501d05fd |
|
18-Dec-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Code drop from //branches/cupcake/...@124589
|
a27d2baa0c1a2ec70f47ea9199b1dd6762c8a349 |
|
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
|