OSDN Git Service

android-x86/bionic.git
7 years agoMerge "Add seccomp blacklist, and exclude swap functions"
Paul Lawrence [Thu, 13 Apr 2017 15:18:23 +0000 (15:18 +0000)]
Merge "Add seccomp blacklist, and exclude swap functions"
am: a8f9c8069e

Change-Id: Ie254d107b740fade338ac320db5a3349dc4f85c8

7 years agoMerge "Add seccomp blacklist, and exclude swap functions"
Treehugger Robot [Thu, 13 Apr 2017 15:09:46 +0000 (15:09 +0000)]
Merge "Add seccomp blacklist, and exclude swap functions"

7 years agoAdd seccomp blacklist, and exclude swap functions
Paul Lawrence [Wed, 12 Apr 2017 17:02:54 +0000 (10:02 -0700)]
Add seccomp blacklist, and exclude swap functions

Bug: 37253880
Test: Make sure device boots
      Run pylint on genseccomp.py, test_genseccomp.py
      Run test_genseccomp.py
      Run new CTS test
      cts-tradefed run cts -m CtsSecurityTestCases -t android.security.cts.SeccompTest

Change-Id: I833a5364a1481d65173e77654da1798dc45a3f9d

7 years agoMerge "Move libc_logging.cpp over to CachedProperty."
Elliott Hughes [Wed, 12 Apr 2017 19:11:10 +0000 (19:11 +0000)]
Merge "Move libc_logging.cpp over to CachedProperty."
am: 2be8013027

Change-Id: I806f666717ae5110933a0e8a7492cc53a87bf444

7 years agoMerge "Move libc_logging.cpp over to CachedProperty."
Treehugger Robot [Wed, 12 Apr 2017 19:02:14 +0000 (19:02 +0000)]
Merge "Move libc_logging.cpp over to CachedProperty."

7 years agoMerge "The workaround for apps using older version of soinfos"
Dimitry Ivanov [Wed, 12 Apr 2017 18:55:52 +0000 (18:55 +0000)]
Merge "The workaround for apps using older version of soinfos"
am: 735f41afc4

Change-Id: I3d672808ed8ff20d2201f896366635886ee760fb

7 years agoMerge "The workaround for apps using older version of soinfos"
Treehugger Robot [Wed, 12 Apr 2017 18:41:26 +0000 (18:41 +0000)]
Merge "The workaround for apps using older version of soinfos"

7 years agoMerge "Move localtime.c over to CachedProperty."
Elliott Hughes [Wed, 12 Apr 2017 18:24:56 +0000 (18:24 +0000)]
Merge "Move localtime.c over to CachedProperty."
am: 21d4a9ac6b

Change-Id: Idc7acb8a7825c9599fd53bbe7f00976db4dc5de4

7 years agoMerge "Move localtime.c over to CachedProperty."
Treehugger Robot [Wed, 12 Apr 2017 18:15:51 +0000 (18:15 +0000)]
Merge "Move localtime.c over to CachedProperty."

7 years agoThe workaround for apps using older version of soinfos
Dimitry Ivanov [Tue, 11 Apr 2017 22:22:49 +0000 (15:22 -0700)]
The workaround for apps using older version of soinfos

Skip the check for accessibility in the case soinfo
does not have primary/secondary namespaces associated
with them.

Bug: http://b/37191433
Test: start an app from http://b/37191433 make sure it does not crash on lunch
Change-Id: Id4c0bdab4dfc6bc8a33fc275d71e325518e0759f
(cherry picked from commit 97b4c5f2649db06661e45147f21a2ab26340ad89)

7 years agoMerge "'make bionic-unit-tests' now builds all the required binaries"
Dimitry Ivanov [Wed, 12 Apr 2017 08:00:46 +0000 (08:00 +0000)]
Merge "'make bionic-unit-tests' now builds all the required binaries"
am: faf7f3542a

Change-Id: Ic1668e2b3b5c39fc815fe3d929a04d5e707d0f26

7 years agoMerge "'make bionic-unit-tests' now builds all the required binaries"
Treehugger Robot [Wed, 12 Apr 2017 07:54:02 +0000 (07:54 +0000)]
Merge "'make bionic-unit-tests' now builds all the required binaries"

7 years agoMerge "Remove the useless lock from CachedProperty."
Elliott Hughes [Wed, 12 Apr 2017 06:07:39 +0000 (06:07 +0000)]
Merge "Remove the useless lock from CachedProperty."
am: ff82ce8746

Change-Id: I1a298b6558d0487a2a851ce819d9fddbe3898a62

7 years agoMerge "Remove the useless lock from CachedProperty."
Treehugger Robot [Wed, 12 Apr 2017 05:59:56 +0000 (05:59 +0000)]
Merge "Remove the useless lock from CachedProperty."

7 years agoRemove the useless lock from CachedProperty.
Elliott Hughes [Wed, 12 Apr 2017 00:23:37 +0000 (17:23 -0700)]
Remove the useless lock from CachedProperty.

Also document that the caller should provide locking at an
appropriate scope.

Bug: N/A
Test: ran tests
Change-Id: Ib84802fd8b9dbe69f98feab80edef05549a3f73e

7 years agoMerge "Mark CRT objects as vendor available"
Dan Willemsen [Wed, 12 Apr 2017 00:13:20 +0000 (00:13 +0000)]
Merge "Mark CRT objects as vendor available"
am: 53a9bcdcf5

Change-Id: I0cbea9f010022ca4e99586279f564279d2140ed4

7 years agoMerge "Mark CRT objects as vendor available"
Dan Willemsen [Wed, 12 Apr 2017 00:06:51 +0000 (00:06 +0000)]
Merge "Mark CRT objects as vendor available"

7 years agoMark CRT objects as vendor available
Dan Willemsen [Fri, 7 Apr 2017 21:09:05 +0000 (14:09 -0700)]
Mark CRT objects as vendor available

This will build separate copies of the CRT for vendor vs system when
BOARD_VNDK_VERSION is set. We'll be able to change crtbrand / etc as
needed with #ifdef __ANDROID_VNDK__ and similar.

Bug: 36426473
Bug: 36079834
Test: Put #ifdef __ANDROID_VNDK__ into crtbrand.S, see changes
Change-Id: I7db0cccfe94d144f072e7cef23832884f3c066f0

7 years agoMerge "Don't let missing Treble property context files affect errno."
Elliott Hughes [Tue, 11 Apr 2017 23:53:15 +0000 (23:53 +0000)]
Merge "Don't let missing Treble property context files affect errno."
am: d517ac2dcd

Change-Id: I55c6abb9ea1a2813add0f34435dbd4827253d006

7 years agoMerge "Don't let missing Treble property context files affect errno."
Treehugger Robot [Tue, 11 Apr 2017 23:48:56 +0000 (23:48 +0000)]
Merge "Don't let missing Treble property context files affect errno."

7 years agoMerge "Fix missing parse_open_file method."
Christopher Ferris [Tue, 11 Apr 2017 23:24:13 +0000 (23:24 +0000)]
Merge "Fix missing parse_open_file method."
am: 94f58b2f0c

Change-Id: I0dd3e749a876b3df40822267f25324c43568dce7

7 years ago'make bionic-unit-tests' now builds all the required binaries
Dimitry Ivanov [Mon, 10 Apr 2017 23:52:25 +0000 (16:52 -0700)]
'make bionic-unit-tests' now builds all the required binaries

Test: make
Change-Id: Ie2f5dffaa4a09eba6714ced8ab0043fd7446bee5

7 years agoMerge "Fix missing parse_open_file method."
Christopher Ferris [Tue, 11 Apr 2017 23:14:55 +0000 (23:14 +0000)]
Merge "Fix missing parse_open_file method."

7 years agoMove libc_logging.cpp over to CachedProperty.
Elliott Hughes [Tue, 11 Apr 2017 22:18:38 +0000 (15:18 -0700)]
Move libc_logging.cpp over to CachedProperty.

Bug: N/A
Test: ran tests
Change-Id: I50f9065799e783df961e1275a4cda671fcf0fd32

7 years agoMove localtime.c over to CachedProperty.
Elliott Hughes [Tue, 11 Apr 2017 21:44:51 +0000 (14:44 -0700)]
Move localtime.c over to CachedProperty.

Since localtime.c is C, this entails pulling our code out into its own
C++ file, which we should probably have done years ago anyway.

Bug: N/A
Test: ran tests, and manually tested via Settings
Change-Id: Ifc787a553e8f739a87641a2d35321aca40a47286

7 years agoDon't let missing Treble property context files affect errno.
Elliott Hughes [Tue, 11 Apr 2017 20:38:36 +0000 (13:38 -0700)]
Don't let missing Treble property context files affect errno.

User code on a non-treble device was starting with errno == ENOENT rather
than 0 because of this treble support:

  openat(AT_FDCWD, "/property_contexts", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
  faccessat(AT_FDCWD, "/system/etc/selinux/plat_property_contexts", R_OK) = -1 ENOENT (No such file or directory)

This caused us to fail some toybox tests by reporting bogus errno values
where errno should have been left unset:

  PASS: date -d @0
  FAIL: date -d @0x123
  echo -ne '' | TZ=UTC date -d @0x123 2>&1
  --- expected
  +++ actual
  @@ -1 +1 @@
  -date: bad date '@0x123'
  +date: bad date '@0x123': No such file or directory
  PASS: date -d 06021234
  PASS: date -d 060212341982
  FAIL: date -d 123
  echo -ne '' | TZ=UTC date -d 123 2>&1
  --- expected
  +++ actual
  @@ -1 +1 @@
  -date: bad date '123'
  +date: bad date '123': No such file or directory
  PASS: date -d 1110143115.30
  PASS: date -d 111014312015.30
  PASS: date Unix time missing @

Bug: http://b/37248982
Test: ran tests
Change-Id: Iacf08c89dbe207ec53a7837e6ac7f78f5541ef35

7 years agoMerge "Remove .(ll)ndk suffix from (ll)ndk_library"
Dan Willemsen [Tue, 11 Apr 2017 16:53:25 +0000 (16:53 +0000)]
Merge "Remove .(ll)ndk suffix from (ll)ndk_library"
am: 6c0468bba7

Change-Id: Ib271eaff5daeb96c9e58987f38b1813c5c72ab8a

7 years agoFix missing parse_open_file method.
Alessio Balsini [Tue, 11 Apr 2017 16:27:29 +0000 (18:27 +0200)]
Fix missing parse_open_file method.

gensyscalls.py was failing to execute because of a missing "self"
keyword when calling parse_open_file.

Test: manual test running gensyscalls.py.

Change-Id: I78db2cba704c5ca56a730019e36601a7ccd069f8

7 years agoMerge "Remove .(ll)ndk suffix from (ll)ndk_library"
Treehugger Robot [Tue, 11 Apr 2017 16:19:14 +0000 (16:19 +0000)]
Merge "Remove .(ll)ndk suffix from (ll)ndk_library"

7 years agoRemove .(ll)ndk suffix from (ll)ndk_library
Dan Willemsen [Fri, 7 Apr 2017 21:09:18 +0000 (14:09 -0700)]
Remove .(ll)ndk suffix from (ll)ndk_library

Soong handles these automatically now.

Bug: 33241851
Test: Android-aosp_arm.mk is the same before/after
Test: build.ninja is the same before/after
Test: build-aosp_arm.ninja is the same before/after
Merged-In: Ibfe4cf5db732d9007b1cc12dbc523c427de1b23d
Change-Id: Ibfe4cf5db732d9007b1cc12dbc523c427de1b23d

7 years agoMerge "Send developers straight to the text relocation docs."
Elliott Hughes [Tue, 11 Apr 2017 06:15:09 +0000 (06:15 +0000)]
Merge "Send developers straight to the text relocation docs."
am: f17048bfb8

Change-Id: I84931113b8da9b7cabf1af1ce7fa65a798bbe106

7 years agoMerge "Send developers straight to the text relocation docs."
Treehugger Robot [Tue, 11 Apr 2017 06:07:06 +0000 (06:07 +0000)]
Merge "Send developers straight to the text relocation docs."

7 years agoSend developers straight to the text relocation docs.
Elliott Hughes [Mon, 10 Apr 2017 16:52:33 +0000 (09:52 -0700)]
Send developers straight to the text relocation docs.

It's been years since we allowed text relocations, but I had a developer
ask me how to fix them at last week's O Developer Day. They'd never seen
our docs, so let's try to fix that for anyone else who's still confused...

Bug: N/A
Test: builds
Change-Id: I9202a7b0a3f024041b646c43c87585f4fab22d09

7 years agoMerge "Refactor Config from a struct to a class."
Christopher Ferris [Mon, 10 Apr 2017 20:00:31 +0000 (20:00 +0000)]
Merge "Refactor Config from a struct to a class."
am: bdbab30e32

Change-Id: Ie6fe456974ad3d17a66a93682f66d8bd282dc061

7 years agoMerge "Refactor Config from a struct to a class."
Christopher Ferris [Mon, 10 Apr 2017 19:49:37 +0000 (19:49 +0000)]
Merge "Refactor Config from a struct to a class."

7 years agoMerge "Add LLNDK stub libraries for the VNDK"
Dan Willemsen [Fri, 7 Apr 2017 21:31:19 +0000 (21:31 +0000)]
Merge "Add LLNDK stub libraries for the VNDK"
am: df244d876a

Change-Id: I664a8fc016c5a60edbce1f924cbc6595e01c2171

7 years agoMerge "Add LLNDK stub libraries for the VNDK"
Dan Willemsen [Fri, 7 Apr 2017 21:21:32 +0000 (21:21 +0000)]
Merge "Add LLNDK stub libraries for the VNDK"

7 years agoMerge "versioner: fix LLVM assertion failure."
Josh Gao [Thu, 6 Apr 2017 23:46:17 +0000 (23:46 +0000)]
Merge "versioner: fix LLVM assertion failure."
am: a07033e0dc

Change-Id: Ib23326e7a3ebecc70ceeb8ff40fcd592ead41c91

7 years agoMerge "versioner: fix LLVM assertion failure."
Treehugger Robot [Thu, 6 Apr 2017 23:35:51 +0000 (23:35 +0000)]
Merge "versioner: fix LLVM assertion failure."

7 years agoMerge "Move scopeguard into android::base"
Tom Cherry [Thu, 6 Apr 2017 22:45:19 +0000 (22:45 +0000)]
Merge "Move scopeguard into android::base"
am: c40af334c7

Change-Id: I4f507f5c2304b0ea00cadcb0693207e0a3c95180

7 years agoMerge "Enable FORTIFY unit tests for clang"
George Burgess IV [Thu, 6 Apr 2017 22:42:13 +0000 (22:42 +0000)]
Merge "Enable FORTIFY unit tests for clang"
am: afb59c3e42

Change-Id: Ie05c82311eb58c8a5593d2a9bb83d0085659c378

7 years agoMerge "Move scopeguard into android::base"
Tom Cherry [Thu, 6 Apr 2017 22:41:02 +0000 (22:41 +0000)]
Merge "Move scopeguard into android::base"

7 years agoRefactor Config from a struct to a class.
Christopher Ferris [Thu, 6 Apr 2017 02:13:03 +0000 (19:13 -0700)]
Refactor Config from a struct to a class.

This should make it easier to add new options, and to add options that
are complex. For example, I want to modify the behavior of
record_allocs_file so that it also enables record_allocs to a default
state.

Test: All unit tests pass.
Test: Enable the backtrace option and restart.
Change-Id: Idf5cdeed06ade3bc2c8ae39d228734bf65209b4f

7 years agoMerge "Enable FORTIFY unit tests for clang"
Treehugger Robot [Thu, 6 Apr 2017 22:30:20 +0000 (22:30 +0000)]
Merge "Enable FORTIFY unit tests for clang"

7 years agoMerge "Add support for disabling the greylist."
Elliott Hughes [Thu, 6 Apr 2017 20:45:35 +0000 (20:45 +0000)]
Merge "Add support for disabling the greylist."
am: 2d389ffee9

Change-Id: I3c2dd8677b61b0ecae87969405040dfef25e843b

7 years agoversioner: fix LLVM assertion failure.
Josh Gao [Thu, 6 Apr 2017 19:57:22 +0000 (12:57 -0700)]
versioner: fix LLVM assertion failure.

MemoryBuffer::getOpenFileSlice asserts that the map size passed in
isn't -1 (presumably because the offset can be nonzero). Switch to
getOpenFile, which results in an identical call to the implementation
function without the assert.

Bug: http://b/37002637
Test: export FORCE_BUILD_LLVM_COMPONENTS=true
      export FORCE_BUILD_LLVM_DEBUG=true
      export FORCE_BUILD_LLVM_DISABLE_NDEBUG=true
      mma -j && versioner

Change-Id: Ib610db9e07429aa3f64128eaef6ef555c4d1868e

7 years agoMerge "Add support for disabling the greylist."
Treehugger Robot [Thu, 6 Apr 2017 20:29:40 +0000 (20:29 +0000)]
Merge "Add support for disabling the greylist."

7 years agoEnable FORTIFY unit tests for clang
George Burgess IV [Thu, 6 Apr 2017 18:26:11 +0000 (11:26 -0700)]
Enable FORTIFY unit tests for clang

And add a thing to remind us to enable the malloc FORTIFY test when we
pull a new clang in.

Bug: 34747525
Test: vts -m BionicUnitTests on bullhead
Change-Id: If341a27756d608a0fa77ba6518e9bcc725f7632c

7 years agoAdd support for disabling the greylist.
Elliott Hughes [Fri, 24 Mar 2017 00:42:49 +0000 (17:42 -0700)]
Add support for disabling the greylist.

Useful for testing whether apps have actually stopped using greylisted
libraries even if they still have references to them in their apk to support
old Android releases but also haven't bumped their targetSdkVersion yet.

Since we already have two expensive __system_property_get calls and this
would add a third, optimize two (but leave the third since it's not
obviously amenable to optimization). None of this matters for user builds,
but I don't want userdebug/eng to have distractingly different performance.

(cherrypick of 7933bec2872aa1c3430149c7649726333c0ac9d8.)

Bug: http://b/36106661
Test: ran "can you escape 5" with and without this property
Change-Id: Id9a804695c1dca9b4be2ebd0e72f01817bb13cba

7 years agoMerge "Fix compare_exchange_weak tests to allow spurious failure"
Hans Boehm [Thu, 6 Apr 2017 01:09:46 +0000 (01:09 +0000)]
Merge "Fix compare_exchange_weak tests to allow spurious failure"
am: e06c69d073

Change-Id: I597ca938774cfe9028bca7f8c2055be7369fc31e

7 years agoMerge "Fix compare_exchange_weak tests to allow spurious failure"
Hans Boehm [Thu, 6 Apr 2017 01:02:28 +0000 (01:02 +0000)]
Merge "Fix compare_exchange_weak tests to allow spurious failure"

7 years agoMerge "libc: add const-correct string.h overloads"
George Burgess IV [Thu, 6 Apr 2017 00:11:12 +0000 (00:11 +0000)]
Merge "libc: add const-correct string.h overloads"
am: 278d31d36e

Change-Id: If13974446e21dfc81a6ebf54377c020dad6dd075

7 years agoMerge "libc: add const-correct string.h overloads"
Treehugger Robot [Wed, 5 Apr 2017 23:57:12 +0000 (23:57 +0000)]
Merge "libc: add const-correct string.h overloads"

7 years agoMove scopeguard into android::base
Tom Cherry [Wed, 5 Apr 2017 23:20:29 +0000 (16:20 -0700)]
Move scopeguard into android::base

Test: boot bullhead, bionic unit tests
Change-Id: I223249684867655ecb53713b10da41d3014f96ae

7 years agoFix compare_exchange_weak tests to allow spurious failure
Hans Boehm [Wed, 5 Apr 2017 00:34:59 +0000 (17:34 -0700)]
Fix compare_exchange_weak tests to allow spurious failure

Test: Ran bionic unit tests on angler.

Bug: 36869788
Change-Id: Ic1e0e4e409ac719d5b426391a771b4858a6149ee

7 years agoMerge "libc: remove newlines in prototypes in string.h"
George Burgess IV [Wed, 5 Apr 2017 22:49:34 +0000 (22:49 +0000)]
Merge "libc: remove newlines in prototypes in string.h"
am: 1261f29631

Change-Id: Ia4741bcdcbfb60d2844cb56a34b824fc8595c34a

7 years agoAdd LLNDK stub libraries for the VNDK
Dan Willemsen [Mon, 20 Mar 2017 21:07:47 +0000 (14:07 -0700)]
Add LLNDK stub libraries for the VNDK

The stub libraries are the same as the (equivalent version) NDK, but
they also contain symbols tagged with 'vndk'. Except there are none of
those in Bionic currently.

For headers, the LLNDK/VNDK isn't using a sysroot like the NDK. Nor is
it hardcoding an explicit source path list like the platform. Instead it
runs the bionic/libc/include directory through versioner like the NDK,
then exports those generated headers and the kernel headers from the
stub library like any other exported header. Except it uses -isystem
instead of -I due to export_headers_as_system.

Test: aosp_arm; m -j
Test: Enable BOARD_VNDK_VERSION on aosp_arm; m -j
Test: Inspect out/soong/build.ninja before/after (w/o vndk)
Change-Id: Ief58a73907a83053b408b1d4b62999cba470d61c

7 years agoMerge "libc: remove newlines in prototypes in string.h"
Treehugger Robot [Wed, 5 Apr 2017 22:28:59 +0000 (22:28 +0000)]
Merge "libc: remove newlines in prototypes in string.h"

7 years agolibc: remove newlines in prototypes in string.h
George Burgess IV [Wed, 5 Apr 2017 20:24:05 +0000 (13:24 -0700)]
libc: remove newlines in prototypes in string.h

This gives more useful diagnostics if clang needs to mention these
functions (or a parameter of them).

Bug: 36984245
Test: m on bullhead completes successfully.
Change-Id: I17c2b624d08bc9dd3f08185b30029ed0c49ebb08

7 years agolibc: add const-correct string.h overloads
George Burgess IV [Wed, 5 Apr 2017 00:34:02 +0000 (17:34 -0700)]
libc: add const-correct string.h overloads

libcxx provides const-correct overloads for a few string.h functions.
These overloads use clang's enable_if attribute, so they're preferred
over our FORTIFY'ed equivalents.

This weakens _FORTIFY_SOURCE=2 when used with some of these functions,
since clang needs to see __pass_object_size in order to pass an accurate
result for __builtin_object_size(s, 1) at a callsite. Since those
functions don't have __pass_object_size on their params, clang can't do
that. This makes LLVM lower the __builtin_object_size calls, which means
we get the same result as __builtin_object_size(s, 0).

We have to provide all of the overloads in Bionic, since enable_if is
only used to disambiguate overloads with (otherwise) the same type. In
other words:

// overload 1
char *strchr(const char *, int s) __attribute__((enable_if(1, "")));
// overload 2
char *strchr(char *, int s);

void foo() {
  char cs[1] = {};
  strchr(static_cast<const char *>(cs), '\0'); // calls overload #1.
  strchr(cs, '\0'); // calls overload #2.
}

Bug: 34747525
Test: m checkbuild on bullhead internal master + AOSP. vts -m
BionicUnitTests passes on both. Surprisingly, the only code that this
seems to break is contained in Bionic.

Change-Id: Ie406f42fb3d1c5bf940dc857889876fc39b57c90

7 years agoMerge "Add (duplicate) license from new XML file"
Neil Fuller [Wed, 5 Apr 2017 14:15:00 +0000 (14:15 +0000)]
Merge "Add (duplicate) license from new XML file"
am: 0a40cb3872

Change-Id: Ia6c24085d91d4c549c0df28ff3006d653a5f4d09

7 years agoMerge "Add (duplicate) license from new XML file"
Neil Fuller [Wed, 5 Apr 2017 14:11:14 +0000 (14:11 +0000)]
Merge "Add (duplicate) license from new XML file"

7 years agoAdd (duplicate) license from new XML file
Neil Fuller [Wed, 5 Apr 2017 13:57:00 +0000 (14:57 +0100)]
Add (duplicate) license from new XML file

This change was forgotten when I uploaded tzlookup.xml for
review. I meant to check this with enh@. Apologies. This fixes
the the NOTICE file so others can upload.

Test: repo upload
Change-Id: I9e722952f9ae8c8d971b1c2d23d53079d85f4ae7

7 years agoMerge "Addition of a new system file for time zone data"
Neil Fuller [Wed, 5 Apr 2017 13:40:01 +0000 (13:40 +0000)]
Merge "Addition of a new system file for time zone data"
am: d90713b335

Change-Id: I03770ae595fcc777b24bc16998f112844c3024bb

7 years agoMerge "Addition of a new system file for time zone data"
Neil Fuller [Wed, 5 Apr 2017 13:33:32 +0000 (13:33 +0000)]
Merge "Addition of a new system file for time zone data"

7 years agoMerge "Remove obsolete Android.mk comments"
Dan Willemsen [Wed, 5 Apr 2017 02:19:45 +0000 (02:19 +0000)]
Merge "Remove obsolete Android.mk comments"
am: b209e14d36

Change-Id: I07e38ac17b6b973f7d600decb0fb73f2500b9fe6

7 years agoMerge "Remove obsolete Android.mk comments"
Treehugger Robot [Wed, 5 Apr 2017 02:12:00 +0000 (02:12 +0000)]
Merge "Remove obsolete Android.mk comments"

7 years agoRemove obsolete Android.mk comments
Dan Willemsen [Tue, 4 Apr 2017 22:51:26 +0000 (15:51 -0700)]
Remove obsolete Android.mk comments

Test: none
Change-Id: I0419800d44a7918a4415baf840c7d30bf30a18ed

7 years agoMerge "Add kryo support."
Christopher Ferris [Tue, 4 Apr 2017 21:17:25 +0000 (21:17 +0000)]
Merge "Add kryo support."
am: 07807a10a2

Change-Id: I777c9ea39e63d2f3365981e786b81d5424564eda

7 years agoMerge "Add kryo support."
Christopher Ferris [Tue, 4 Apr 2017 21:10:55 +0000 (21:10 +0000)]
Merge "Add kryo support."

7 years agoMerge "libc: use __bos instead of __bos0 for strchr."
George Burgess IV [Tue, 4 Apr 2017 20:09:28 +0000 (20:09 +0000)]
Merge "libc: use __bos instead of __bos0 for strchr."
am: defecea27b

Change-Id: I9576be3579f1cc95e09360376cb527e434722227

7 years agoMerge "libc: use __bos instead of __bos0 for strchr."
Treehugger Robot [Tue, 4 Apr 2017 20:01:36 +0000 (20:01 +0000)]
Merge "libc: use __bos instead of __bos0 for strchr."

7 years agolibc: use __bos instead of __bos0 for strchr.
George Burgess IV [Tue, 4 Apr 2017 01:03:36 +0000 (18:03 -0700)]
libc: use __bos instead of __bos0 for strchr.

I dunno why I used __bos0 in the first place; clang's strrchr (and
GCC's strchr+strrchr) both use __bos.

Bug: 34747525
Test: m. Device still boots. cts -m BionicUnitTests shows no new
failures.
Change-Id: Ifec0e05a6a1144fa3e3ac70562af3ec57c09c194

7 years agoMerge "Break android_set_abort_message out of libc_logging."
Josh Gao [Tue, 4 Apr 2017 00:49:24 +0000 (00:49 +0000)]
Merge "Break android_set_abort_message out of libc_logging."
am: 1c864b630f

Change-Id: I7d8ab343a09a0e2166d0462a3b378257cb837f67

7 years agoMerge "Break android_set_abort_message out of libc_logging."
Josh Gao [Tue, 4 Apr 2017 00:40:38 +0000 (00:40 +0000)]
Merge "Break android_set_abort_message out of libc_logging."

7 years agoMerge changes I70edafb7,I96cba65e,I5142a335
Josh Gao [Mon, 3 Apr 2017 23:26:49 +0000 (23:26 +0000)]
Merge changes I70edafb7,I96cba65e,I5142a335
am: 1400acc159

Change-Id: I8a336aac72ba8fa173ef2ea3364a55d7d84fc4f5

7 years agoMerge changes I70edafb7,I96cba65e,I5142a335
Treehugger Robot [Mon, 3 Apr 2017 23:17:58 +0000 (23:17 +0000)]
Merge changes I70edafb7,I96cba65e,I5142a335

* changes:
  versioner: remove useless log message.
  versioner: fix indentation in usage.
  versioner: guard preprocessing messages with -v.

7 years agoBreak android_set_abort_message out of libc_logging.
Josh Gao [Mon, 3 Apr 2017 22:13:29 +0000 (15:13 -0700)]
Break android_set_abort_message out of libc_logging.

libc_logging is getting statically linked into the crash handler
library, resulting in two copies of the abort message code existing in
processes, one in the linker, and one in the crash handler.

Move android_set_abort_message to its own file to solve this.

Bug: http://b/36862204
Test: /data/nativetest/debuggerd_test/debuggerd_test32
Change-Id: Ie198c5a3bb07645aa43296915c9a6752693f14a9

7 years agoMerge changes I826756d9,I00e2edb2
Josh Gao [Mon, 3 Apr 2017 20:41:38 +0000 (20:41 +0000)]
Merge changes I826756d9,I00e2edb2
am: 6367f5ee55

Change-Id: I0585784475e8288fc06e5ca1089ff227f87001bd

7 years agoMerge changes I826756d9,I00e2edb2
Josh Gao [Mon, 3 Apr 2017 20:33:16 +0000 (20:33 +0000)]
Merge changes I826756d9,I00e2edb2

* changes:
  libc_logging: mention that they're async signal safe.
  linker: update dependencies.

7 years agoversioner: remove useless log message.
Josh Gao [Mon, 3 Apr 2017 18:48:55 +0000 (11:48 -0700)]
versioner: remove useless log message.

Test: tools/versioner/run_tests.py
Change-Id: I70edafb7ad6a6274e7daa508903520dbb4b399c8

7 years agoversioner: fix indentation in usage.
Josh Gao [Mon, 3 Apr 2017 18:24:48 +0000 (11:24 -0700)]
versioner: fix indentation in usage.

Test: versioner -h
Change-Id: I96cba65e53c564c8f47714c74d300e8f3dee7e82

7 years agoversioner: guard preprocessing messages with -v.
Josh Gao [Mon, 3 Apr 2017 18:24:17 +0000 (11:24 -0700)]
versioner: guard preprocessing messages with -v.

Bug: http://b/36751878
Test: tools/versioner/run_tests.py
Change-Id: I5142a33519b101548ccaec8a3bc498e446a648a7

7 years agoAdd kryo support.
Christopher Ferris [Wed, 29 Mar 2017 20:10:56 +0000 (13:10 -0700)]
Add kryo support.

Currently, using kryo is the same as using krait, but there are specialized
routines that are pending that will be used after this commit.

Bug: 36728278

Test: Built and booted a sailfish using kryo.
Change-Id: Id7510640673c31f7536367041212db6d96a564f0

7 years agoMerge "Cleanup ANDROID_DNS_MODE and BIONIC_DNSCACHE"
Nick Kralevich [Mon, 3 Apr 2017 17:26:26 +0000 (17:26 +0000)]
Merge "Cleanup ANDROID_DNS_MODE and BIONIC_DNSCACHE"
am: 4df5ca1e02

Change-Id: I899ca838e59469348cd9bd25296ab9ac8e298291

7 years agoMerge "Cleanup ANDROID_DNS_MODE and BIONIC_DNSCACHE"
Treehugger Robot [Mon, 3 Apr 2017 17:21:53 +0000 (17:21 +0000)]
Merge "Cleanup ANDROID_DNS_MODE and BIONIC_DNSCACHE"

7 years agoCleanup ANDROID_DNS_MODE and BIONIC_DNSCACHE
Nick Kralevich [Sat, 1 Apr 2017 16:54:19 +0000 (09:54 -0700)]
Cleanup ANDROID_DNS_MODE and BIONIC_DNSCACHE

For security reasons, when a binary is executed which causes a security
transition (eg, a setuid binary, setgid binary, filesystem capabilities,
or SELinux domain transition), the AT_SECURE flag is set. This causes
certain blacklisted environment variables to be stripped before the
process is executed. The list of blacklisted environment variables is
stored in UNSAFE_VARIABLE_NAMES. Generally speaking, most environment
variables used internally by libc show up in this list.

Add ANDROID_DNS_MODE to the list of unsafe variables.
Similar to RESOLV_HOST_CONF and RES_OPTIONS (which are already
blacklisted), this variable controls how name resolution requests are
handled. Allowing ANDROID_DNS_MODE to be set across a security
boundary could induce resolution failures or otherwise impact
name resolution.

Remove BIONIC_DNSCACHE. This does not appear to be used, and setting
this variable across a security boundary could cause name resolution
problems.

Test: Android compiles and runs with no obvious problems.
Change-Id: I835a7b42d6afbc9c67866594c7951cfd9b355d81

7 years agoMerge "Fix lookup logic for linked namespaces"
Dimitry Ivanov [Sun, 2 Apr 2017 02:20:13 +0000 (02:20 +0000)]
Merge "Fix lookup logic for linked namespaces"
am: 6a2c7f5a68

Change-Id: I6af8cccc6ca6a18ced2f4843621563319fdc29f5

7 years agoMerge "Fix lookup logic for linked namespaces"
Treehugger Robot [Sun, 2 Apr 2017 02:14:45 +0000 (02:14 +0000)]
Merge "Fix lookup logic for linked namespaces"

7 years agoMerge "Only use environment variables on the host."
Elliott Hughes [Sat, 1 Apr 2017 07:41:13 +0000 (07:41 +0000)]
Merge "Only use environment variables on the host."
am: 5d8b8310aa

Change-Id: I4439714a733487a76221e789805b50ce958829f4

7 years agoMerge "Only use environment variables on the host."
Treehugger Robot [Sat, 1 Apr 2017 07:35:14 +0000 (07:35 +0000)]
Merge "Only use environment variables on the host."

7 years agoOnly use environment variables on the host.
Elliott Hughes [Fri, 31 Mar 2017 22:35:21 +0000 (15:35 -0700)]
Only use environment variables on the host.

It's faster and safer to skip them on the device, where we know where
everything is anyway.

(cherrypick of cf6365690cc68bdd7e16648fb7881ba0b5cae93d.)

Bug: http://b/36807787
Test: ran tests
Change-Id: I0bb7879cc46f194152c67ddaf072cbebb424f789

7 years agoMerge "Expand whitelist"
Paul Lawrence [Sat, 1 Apr 2017 00:15:45 +0000 (00:15 +0000)]
Merge "Expand whitelist"
am: 7cf467bd23

Change-Id: Id4baef4988302e5178d5e7bf850f3e9a028b3162

7 years agoMerge "Expand whitelist"
Treehugger Robot [Sat, 1 Apr 2017 00:07:11 +0000 (00:07 +0000)]
Merge "Expand whitelist"

7 years agoMerge "Refactor sanitized library on-disk layout - bionic."
Vishwath Mohan [Fri, 31 Mar 2017 16:41:24 +0000 (16:41 +0000)]
Merge "Refactor sanitized library on-disk layout - bionic."
am: 2a41bf4190

Change-Id: I4f62c79e7f5e93c42e3f168609557e9f48a83a5b

7 years agoMerge "Refactor sanitized library on-disk layout - bionic."
Treehugger Robot [Fri, 31 Mar 2017 16:35:51 +0000 (16:35 +0000)]
Merge "Refactor sanitized library on-disk layout - bionic."

7 years agoExpand whitelist
Paul Lawrence [Thu, 30 Mar 2017 22:24:13 +0000 (15:24 -0700)]
Expand whitelist

Bug: 36726183
Test: Builds, call 90 added to policy

(cherry picked from commit 3ba8223b9ac3db1642931876d19127ca6a9a0914)

Change-Id: Ib8db1b764ce22aadf8050031d40040dd6c0e669e

7 years agoAddition of a new system file for time zone data
Neil Fuller [Thu, 30 Mar 2017 17:12:49 +0000 (18:12 +0100)]
Addition of a new system file for time zone data

This file is to replace the time_zones_by_country.xml
file from frameworks/base/core/res/res/xml/

This new file is intended to be updated outside of
an OTA, unlike time_zones_by_country.xml.

The tzlookup.xml file is read by code in libcore, not
frameworks/base.

The format of the file is slightly different from
time_zones_by_country.xml but the information is the
same as the current version. It was generated using
a sed transform and manual coallescing of the
<country> elements / comments:

sed 's/<timezones>$/<timezones>\n  <countryzones>/' frameworks/base/core/res/res/xml/time_zones_by_country.xml \
    | sed 's/<\/timezones>/  <\/countryzones>\n<\/timezones>/' \
    | sed 's/<timezone\( code=\"..\">\)/<country\1\n      <id>/g' \
    | sed 's/<\/timezone>/<\/id>\n    <\/country>/g'

The time_zones_by_country.xml file will be deleted
in a follow up change when the new code is wired into
the code that uses this data.

Test: See associated libcore change that will ensure the file
      is kept in sync with tzdata when applying IANA rules
      changes.
Bug: 25338903
Change-Id: I8912307bf6a41750ac06ffce9143e8055ea4e7c5

7 years agoRefactor sanitized library on-disk layout - bionic.
Vishwath Mohan [Wed, 29 Mar 2017 22:31:34 +0000 (15:31 -0700)]
Refactor sanitized library on-disk layout - bionic.

This CL changes the linker to point to the newly refactored location
of ASAN-ified libraries on disk.

This supports changes made by the following CLs -
https://android-review.googlesource.com/#/c/359087/
https://android-review.googlesource.com/#/c/359389/

Which refactor the on-disk location as follows:
/data/lib* --> /data/asan/system/lib*
/data/vendor/* --> /data/asan/vendor/*

There are a couple of advantages to this, including better isolation
from other components, and more transparent linker renaming and
SELinux policies.

Bug: 36574794
Bug: 36674745
Test: m -j40 && SANITIZE_TARGET="address" m -j40 and the device
boots. All sanitized libraries are correctly located in /data/asan/*.

Change-Id: Iad8b298a66c38eb0f6327f6b51027f0728aa7a40

7 years agoMerge "Revert "isnan and isinf aren't functions.""
Dan Albert [Fri, 31 Mar 2017 02:32:27 +0000 (02:32 +0000)]
Merge "Revert "isnan and isinf aren't functions.""
am: 6d225bdf7c

Change-Id: I57dedc84133b553f84a3eea4cd654a3ebe45aba4