Commit graph

938 commits

Author SHA1 Message Date
Steinar H. Gunderson
d33019030c Implement RFC3484 policy table changes from draft-ietf-6man-rfc3484-revise-01.
The changes in a nutshell:

 - Handle v4-mapped as different from v4-compat (this was probably
   an existing bug in our code).
 - Add policy entries for ULA, above most everything else.
 - Put v4-compat, old-style IPv6 site-local and 6bone addresses
   way down in the preference table.

The rest is just shuffling numbers around (no actual changes to
priority).

Change-Id: Ieb111e0edd705992bc9d066befaaee95a8c1a5df
2011-01-13 17:42:58 +01:00
Steinar H. Gunderson
64b6c43379 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
2011-01-05 13:55:40 +01:00
David 'Digit' Turner
72a23d0560 Merge "libc: Fix the definition of SIGRTMAX" 2011-01-05 00:19:20 -08:00
Lorenzo Colitti
81e03be699 Merge "Don't treat private IPv4 addresses as being in a non-global scope. The effect of this change is essentially to prefer NATed IPv4 over 6to4." 2011-01-04 20:09:37 -08:00
David 'Digit' Turner
2a9b0df9e7 Merge "libc: remove obsolete sha1hash.c source file" 2011-01-04 12:30:23 -08:00
David Turner
99d685d288 am 3de4dcdb: Merge "android-x86: use proper variable typing"
* commit '3de4dcdb189262e5beb73fe8431df67d51ec9f5f':
  android-x86: use proper variable typing
2010-12-31 03:03:42 -08:00
David Turner
ce13670546 am ae5df14f: Merge "Use __asm__ instead of asm in public libc headers"
* commit 'ae5df14f9349a000356cf45ec0292bc21ceb5b3a':
  Use __asm__ instead of asm in public libc headers
2010-12-31 03:03:39 -08:00
David Turner
3de4dcdb18 Merge "android-x86: use proper variable typing" 2010-12-31 02:35:25 -08:00
David Turner
ae5df14f93 Merge "Use __asm__ instead of asm in public libc headers" 2010-12-31 02:30:33 -08:00
Jean-Baptiste Queru
53c3e86fae am 3d302be4: Merge "android-x86: add sigsetjmp.S"
* commit '3d302be485bc2f62a889fac85e386c9b8775eb59':
  android-x86: add sigsetjmp.S
2010-12-29 11:29:33 -08:00
Jean-Baptiste Queru
3d302be485 Merge "android-x86: add sigsetjmp.S" 2010-12-29 11:01:23 -08:00
Jean-Baptiste Queru
6042658cb5 am b05aa150: Merge "Replace all occurrances of asm with __asm__ in the output headers"
* commit 'b05aa1500035d0e02d30143a0702a72b111f200e':
  Replace all occurrances of asm with __asm__ in the output headers
2010-12-28 11:35:22 -08:00
Jean-Baptiste Queru
b05aa15000 Merge "Replace all occurrances of asm with __asm__ in the output headers" 2010-12-28 11:10:31 -08:00
Chih-Wei Huang
18635d9c17 android-x86: add sigsetjmp.S
It adds two functions sigsetjmp and siglongjmp
that fix compiling errors in bluetooth and mksh.

Copy directly from sigsetjmp.S of OpenBSD.

Change-Id: I4696f82ee6f85d1c93cbdd3c9e40f4917d50f3a6
2010-12-26 09:22:13 -08:00
Chih-Wei Huang
b9aedb2c57 android-x86: use proper variable typing
Change-Id: Iff99932acd2f6cb482fc5da9ff586d7ab2a8b209
2010-12-23 09:32:12 +08:00
David Turner
4ad2f19f14 am a4f6d228: Merge "Add a method for replacing tokens in the preprocessed headers"
* commit 'a4f6d2281f979c013080e28b1f658c2ba9a8e9f3':
  Add a method for replacing tokens in the preprocessed headers
2010-12-22 11:29:30 -08:00
David 'Digit' Turner
0546fd7ee0 libc: remove obsolete sha1hash.c source file
The source file is not part of the C library build, so the Android.mk
is unaffected. In other words, this source file was never compiled.

Change-Id: Idec3d5b6ec30dc9ee38296d12dc6e522997df29a
2010-12-20 16:03:07 +01:00
David 'Digit' Turner
5c8c00a95a 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
2010-12-20 15:58:06 +01:00
David 'Digit' Turner
be5755969d linker: Remove unsecure env. variable for setuid programs.
This removes several unsecure environment variables from the
environment block when the program being loaded is setuid. The
list of env. variables is the same than what GLibc uses at this
point.

Change-Id: I456d3ea0880fe0d4de0d3c5dd51871dd36e87fd6
2010-12-20 12:06:45 +01:00
David Turner
a4f6d2281f Merge "Add a method for replacing tokens in the preprocessed headers" 2010-12-20 02:43:26 -08:00
Steinar H. Gunderson
d1624add2b Don't treat private IPv4 addresses as being in a non-global scope. The effect of this change is essentially to prefer NATed IPv4 over 6to4.
Change-Id: I53a8613ca9eb61cac0bf18f0b5f98a2d35ab9c50
2010-12-20 11:15:33 +01:00
David 'Digit' Turner
d4a65d28d4 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
2010-12-16 20:53:03 +01:00
David 'Digit' Turner
95d751feac 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
2010-12-16 17:04:41 +01:00
David 'Digit' Turner
4a7f31fad7 libc: Remove duplicate eventfd declaration from SYSCALLS.TXT
The second declaration came from an incorrect change in AOSP.
The eventfd stubs are not affected by this, they are already correct.

Change-Id: Icfc7612a68fc37a48dde2687137960a5d1dbc534
2010-12-16 14:57:31 +01:00
Jean-Baptiste Queru
6dba546e53 am c99892f1: am a9e5bbfd: Merge "Support usage of __ARM_HAVE_LDREX_STREX"
* commit 'c99892f155efd1d3005abf8a2bae83d290606ba1':
  Support usage of __ARM_HAVE_LDREX_STREX
2010-12-15 09:37:48 -08:00
Jean-Baptiste Queru
c99892f155 am a9e5bbfd: Merge "Support usage of __ARM_HAVE_LDREX_STREX"
* commit 'a9e5bbfd3d321bf52226d3fd57ed390925ab6a3d':
  Support usage of __ARM_HAVE_LDREX_STREX
2010-12-15 09:29:06 -08:00
Jean-Baptiste Queru
a9e5bbfd3d Merge "Support usage of __ARM_HAVE_LDREX_STREX" 2010-12-15 09:21:34 -08:00
David Turner
bb8717109e am 572fced5: am 9691ecc9: Merge "Remove extra/unneeded copy of fenv.h"
* commit '572fced5b0376a0bdc9111843aa89065cba82629':
  Remove extra/unneeded copy of fenv.h
2010-12-14 07:25:28 -08:00
David Turner
572fced5b0 am 9691ecc9: Merge "Remove extra/unneeded copy of fenv.h"
* commit '9691ecc9a768e7e08cb6af0b454029195ffc285f':
  Remove extra/unneeded copy of fenv.h
2010-12-14 07:19:17 -08:00
David Turner
9691ecc9a7 Merge "Remove extra/unneeded copy of fenv.h" 2010-12-14 07:09:35 -08:00
Bruce Beare
ff3129b0fe sigsetmask.c was not processing the "mask" argument.
Change-Id: I79b898ea5b882e8c0564e25466e827a9bedda6e8
Author: yhe19 <yunan.he@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
2010-12-09 15:17:28 -08:00
Yu Shan Emily Lau
abdffc4e23 Revert "sigsetmask.c was not processing the "mask" argument."
This reverts commit 9a9c1619b8.
2010-12-09 11:57:42 -08:00
Martin Storsjo
c9205dba43 Replace all occurrances of asm with __asm__ in the output headers
asm() conflicts with userland code compiled with -std=c99, the userland
libc should only use __asm__() instead. Therefore, this transformation
has to be applied to all exported headers.

This only changes arch-arm/asm/byteorder.h.

Change-Id: I1cf88c37201c3a91668d387293a18885c316d53c
2010-12-08 11:41:37 +01:00
Martin Storsjo
d32c8052fc Add a method for replacing tokens in the preprocessed headers
Change-Id: I14cf6337945560b012732ae0fe7a247074810678
2010-12-08 11:40:59 +01:00
Martin Storsjo
5775163f04 Use __asm__ instead of asm in public libc headers
If compiling userland code with -std=c99, the current header produces an
error. The content of this header originally is a kernel internal header,
where asm() is acceptable. In a header visible to userland, this should be
__asm__ instead.

Change-Id: I4d3188dd96f7836148ca89f5053d0389dd459d6e
2010-12-08 09:40:12 +01:00
David Turner
0a0c1edd80 am 48bebaec: am 4efbf95d: Merge "Use proper variable typing"
* commit '48bebaeca84cd9014171d2874785ddb57d1103ae':
  Use proper variable typing
2010-12-07 06:44:41 -08:00
David Turner
48bebaeca8 am 4efbf95d: Merge "Use proper variable typing"
* commit '4efbf95d8c88a3a203d687d9048b51e256ef3641':
  Use proper variable typing
2010-12-07 06:38:26 -08:00
David Turner
4efbf95d8c Merge "Use proper variable typing" 2010-12-07 06:27:23 -08:00
David 'Digit' Turner
6a916acce2 Merge "<sched.h>: Add sched_getcpu() and cpu_set_t" 2010-12-07 04:51:40 -08:00
David 'Digit' Turner
6451571aef Merge "<time.h>: Add timegm(), timelocal() and others." 2010-12-07 04:26:32 -08:00
David 'Digit' Turner
b338686778 Merge "libc: Add <android/api-level.h>" 2010-12-07 04:26:27 -08:00
David Turner
bd4ab138d8 am e05762a5: am 8e6435ea: Merge "Add defines for CAIF support"
* commit 'e05762a5312261b96d20597eb6c3a61abaeac2cf':
  Add defines for CAIF support
2010-12-06 16:44:46 -08:00
Jean-Baptiste Queru
5d7995be24 am b11d7c3e: am bcb0a925: Merge "sigsetmask.c was not processing the "mask" argument."
* commit 'b11d7c3eca0e5bc04c14afe82a530429f173706c':
  sigsetmask.c was not processing the "mask" argument.
2010-12-06 16:44:30 -08:00
David Turner
e05762a531 am 8e6435ea: Merge "Add defines for CAIF support"
* commit '8e6435ead5b118f1fd458d4acbdd0bf86754ab1b':
  Add defines for CAIF support
2010-12-06 13:31:43 -08:00
David Turner
8e6435ead5 Merge "Add defines for CAIF support" 2010-12-06 13:18:37 -08:00
Jean-Baptiste Queru
b11d7c3eca am bcb0a925: Merge "sigsetmask.c was not processing the "mask" argument."
* commit 'bcb0a925b0d6d545bbd9a4ebd9ac61bdacbfa2fe':
  sigsetmask.c was not processing the "mask" argument.
2010-12-06 10:55:14 -08:00
Jean-Baptiste Queru
bcb0a925b0 Merge "sigsetmask.c was not processing the "mask" argument." 2010-12-06 10:42:08 -08:00
David 'Digit' Turner
72e6fd4242 <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
2010-12-06 13:42:54 +01:00
David 'Digit' Turner
6481b91520 <time.h>: Add timegm(), timelocal() and others.
Add timegm(), timelocal(), time2posix() and posix2time() to the
C library.

Change-Id: I34d5771ed83dd994870a5ca58a511d01898b1ffb
2010-12-06 12:25:52 +01:00
David 'Digit' Turner
23d24394e7 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.
2010-12-06 12:05:11 +01:00