Commit graph

27057 commits

Author SHA1 Message Date
Elliott Hughes
15f24e5df9 Merge "Revert "Revert "android_ids: move to bionic""" am: b2375fc40c
am: 5f57659030

Change-Id: I3a09908f05e410e899e757f3710278d3a32ed2c5
2017-01-10 01:28:11 +00:00
Tomasz Wasilczyk
e324500f3f Merge "Make metadata field mandatory for program info struct." 2017-01-10 01:24:27 +00:00
Elliott Hughes
5f57659030 Merge "Revert "Revert "android_ids: move to bionic"""
am: b2375fc40c

Change-Id: Ifc69bdc6668e173517206b75f9d1f0f7f28d8095
2017-01-10 01:23:33 +00:00
Elliott Hughes
b2375fc40c Merge "Revert "Revert "android_ids: move to bionic""" 2017-01-10 01:15:30 +00:00
Tomasz Wasilczyk
70a8148b52 Make metadata field mandatory for program info struct.
Also, make metadata struct aligned.

Test: VTS, manual
Change-Id: I7dbd62d36ac21475fdbc49723ba3ea6744460d21
2017-01-09 14:26:43 -08:00
Mark Salyzyn
4935c99659 Merge "liblog: retry -ENOTCONN | -ECONNREFUSED | -ENOENT indefinitely" am: d5583867c6
am: 295f3ba442

Change-Id: Ica7b00f403b7dafcd20961d28b56365036b32566
2017-01-09 17:22:51 +00:00
Mark Salyzyn
295f3ba442 Merge "liblog: retry -ENOTCONN | -ECONNREFUSED | -ENOENT indefinitely"
am: d5583867c6

Change-Id: I60b71aa34c305b5af0487a512b6f63f31caaaef3
2017-01-09 17:18:20 +00:00
Treehugger Robot
d5583867c6 Merge "liblog: retry -ENOTCONN | -ECONNREFUSED | -ENOENT indefinitely" 2017-01-09 17:11:12 +00:00
Wei Wang
f44214c444 Merge "Restart wificond when zygote died" am: 7e6c19e8b8
am: 63c3065bdc

Change-Id: I547f5fbfcf1560785a83bef56282c7ee2cbf855c
2017-01-09 16:44:48 +00:00
Wei Wang
63c3065bdc Merge "Restart wificond when zygote died"
am: 7e6c19e8b8

Change-Id: If6bbfb9c68c83d7183e725818cd51ae5e9ed1573
2017-01-09 16:39:49 +00:00
Wei Wang
7e6c19e8b8 Merge "Restart wificond when zygote died" 2017-01-09 16:30:54 +00:00
Mark Salyzyn
65e1e6284c liblog: retry -ENOTCONN | -ECONNREFUSED | -ENOENT indefinitely
Deal with recovering after transitory failures surrounding logd
crash or recovery.  Improve the chances that the logging functions
can work in a signal handler, not officially supported, but making
sure logging is not blamed for system lockups when misused.

Reorder gTests so that setuid(AID_SYSTEM) is performed after
liblog.enoent test, and that this occurs after other tests that
like to see buffers with content in them as we stop logd.

Test: gTest liblog-unit-tests --gtest_filter=liblog.enoent
Bug: 33755074
Change-Id: I66f88599534614b7b61da6b2ae5fe099ebaced3a
2017-01-09 15:51:09 +00:00
Wei Wang
38fcd33e46 Restart wificond when zygote died
This helps to avoid tearDownInterfaces call from WiFiStateMachine's
constructor.

Bug: 33752168
Test: on device

(cherry picked from commit 0db195d0757e36c73b9da5a95d9b9986386f0f2e)

Change-Id: I55f56dd8daa5089073ff8dd424e92d09326c7d00
2017-01-07 19:45:42 -08:00
James Hawkins
953117a0c9 Merge "bootstat: Log ro.boottime.init timing properties." am: cdd7ec12be
am: 449826ad8c

Change-Id: If893c6b1524e093cdf28a927906cb4cf639cecfb
2017-01-07 22:24:16 +00:00
James Hawkins
449826ad8c Merge "bootstat: Log ro.boottime.init timing properties."
am: cdd7ec12be

Change-Id: Ia2ae2106b2140131498dfd53df17dd3c586aeb81
2017-01-07 22:19:45 +00:00
Treehugger Robot
cdd7ec12be Merge "bootstat: Log ro.boottime.init timing properties." 2017-01-07 22:12:46 +00:00
Mark Salyzyn
2c94374dcf Merge "liblog: test: switch to private event structures" am: bfe1d9b83b
am: a7ce596bba

Change-Id: Ia7946fb472f00d1b87b49d247c9209ca8f7311c7
2017-01-06 23:17:24 +00:00
Mark Salyzyn
a7ce596bba Merge "liblog: test: switch to private event structures"
am: bfe1d9b83b

Change-Id: I997f81725348ac6566910c2142b6f4334ab0df34
2017-01-06 23:13:24 +00:00
Treehugger Robot
bfe1d9b83b Merge "liblog: test: switch to private event structures" 2017-01-06 23:10:52 +00:00
James Hawkins
ef0a090e6f bootstat: Log ro.boottime.init timing properties.
Bug: none
Test: adb logcat | grep bootstat
Change-Id: I3375c75e8ef39be710c8001f19a9e2fb493805e9
2017-01-06 14:52:52 -08:00
Mark Salyzyn
b52f445dbb liblog: test: switch to private event structures
Some tests use hard-coded offsets to interpret the binary
events buffers.  Switch to using the private event structures
to access the components of common event messages.

Test: gTest liblog-unit-tests
Bug: 33755074
Change-Id: I17447814583099d5ec417a54389e962158456005
2017-01-06 22:13:34 +00:00
Dan Albert
579b873088 Merge "Unversion NDK stub libraries." am: 879fc83ad1
am: 5e650e53ff

Change-Id: I64aef67c54a3cda34aaf01a5f5bbf69364a9cd70
2017-01-06 21:05:22 +00:00
Dan Albert
5e650e53ff Merge "Unversion NDK stub libraries."
am: 879fc83ad1

Change-Id: Iabff159275551a9944f1e8fe39e9ef3d3f9f1079
2017-01-06 20:57:12 +00:00
Treehugger Robot
879fc83ad1 Merge "Unversion NDK stub libraries." 2017-01-06 20:49:30 +00:00
Dan Albert
9a41bcecc6 Unversion NDK stub libraries.
The system versions of these libraries aren't versioned yet.

Bug: https://github.com/android-ndk/ndk/issues/278
Test: make ndk
Change-Id: Icf5ff9921441d3e252771aef37002c772c08cbd0
2017-01-06 11:04:15 -08:00
Tao Bao
2b5065648c Merge "adb: Fix the 'adb reboot sideload' for A/B devices." am: 9f59a4663c
am: b26579f326

Change-Id: I297f0ca93ea98f520b5b492af23f598f876136b0
2017-01-06 17:08:28 +00:00
Tao Bao
b26579f326 Merge "adb: Fix the 'adb reboot sideload' for A/B devices."
am: 9f59a4663c

Change-Id: I9d1998124a38508a5681b0230ad7d11eba3edb60
2017-01-06 17:04:28 +00:00
Tao Bao
9f59a4663c Merge "adb: Fix the 'adb reboot sideload' for A/B devices." 2017-01-06 16:59:39 +00:00
Tao Bao
40e0ec918e adb: Fix the 'adb reboot sideload' for A/B devices.
We used to write the command file (/cache/recovery/command) to trigger
the sideload mode. A/B devices don't support that (may not have /cache
paritition). This CL switches to using libbootloader_message which
writes the command to BCB (bootloader control block) instead.

Test: "adb root && adb reboot sideload" reboots sailfish into recovery
      sideload mode.

Change-Id: I158fd7cbcfa9a5d0609f1f684a2d03675217628f
2017-01-05 18:01:01 -08:00
Jaekyun Seok
3b00f1cc8f Merge "Use shared lib of libutils, libz and libbase." am: 4bf9c82857
am: 70f6d5878e

Change-Id: I33d1f440eaf0aab019b0c222b44953923f255de9
2017-01-05 23:31:45 +00:00
Jaekyun Seok
70f6d5878e Merge "Use shared lib of libutils, libz and libbase."
am: 4bf9c82857

Change-Id: I7429632c24ca9f7581eb4e4d94640fb222b8d56e
2017-01-05 23:27:45 +00:00
Treehugger Robot
4bf9c82857 Merge "Use shared lib of libutils, libz and libbase." 2017-01-05 23:24:21 +00:00
Mark Salyzyn
4ec4e12b87 Merge "logd: sepolicy dynamic rate limiting" am: 8954ef987b
am: f80377d73a

Change-Id: Ia920a417e95a87625775f0ac3a5151b8eb0948f1
2017-01-05 20:48:28 +00:00
Mark Salyzyn
f80377d73a Merge "logd: sepolicy dynamic rate limiting"
am: 8954ef987b

Change-Id: Id219bfcf31a621afe0c0109455119da0a29ba2d5
2017-01-05 20:44:58 +00:00
Treehugger Robot
8954ef987b Merge "logd: sepolicy dynamic rate limiting" 2017-01-05 20:28:34 +00:00
Mark Salyzyn
247d682fe1 logd: sepolicy dynamic rate limiting
Processing overhead for selinux violation messages is costly. We want
to deal with bursts of violations, but we have no intent of allowing
that sustained burst to go unabated as there is a cost of processing
and battery usage.

Tunables in libaudit.h are:

AUDIT_RATE_LIMIT_DEFAULT 20        /* acceptable burst rate      */
AUDIT_RATE_LIMIT_BURST_DURATION 10 /* number of seconds of burst */
AUDIT_RATE_LIMIT_MAX     5         /* acceptable sustained rate  */

Since we can only asymptotically handle DEFAULT rate, we set an upper
threshold of half way between the MAX and DEFAULT rate.

Default kernel audit subsystem message rate is set to 20 a second.
If sepolicy exceeds 125 violation messages over up to ten seconds
(>=~12/s), tell kernel audit subsystem to drop the rate to 5 messages
a second.  If rate drops below 50 messages over the past ten seconds
(<5/s), tell kernel it is ok to increase the burst rate back to 20
messages a second.

Test: gTest logd-unit-tests --gtest_filter=logd.sepolicy_rate_limiter_*
Bug: 27878170
Change-Id: I843f8dcfbb3ecfbbe94a4865ea332c858e3be7f2
2017-01-04 14:46:58 -08:00
Elliott Hughes
ed5555ed8a Merge "Don't use bare noreturn in log.h." am: fe05f1cde4
am: 3f789b70ea

Change-Id: I5f5d65daaf5d6b9e006463960da50a33e9f8bfd3
2017-01-04 00:44:30 +00:00
Elliott Hughes
3f789b70ea Merge "Don't use bare noreturn in log.h."
am: fe05f1cde4

Change-Id: I5e1fa172496d2b5c038df9e1f66a7ac3734ed3bc
2017-01-04 00:42:00 +00:00
Elliott Hughes
fe05f1cde4 Merge "Don't use bare noreturn in log.h." 2017-01-04 00:37:18 +00:00
Adrian Salido
08cbedfb14 Merge "init/service.cpp: fix access check for console" am: 4a3b03e9e5
am: 7cc669c493

Change-Id: I4b8db330cf35d4c227ac1778201dbd4a3bc882a0
2017-01-03 23:32:37 +00:00
Adrian Salido
7cc669c493 Merge "init/service.cpp: fix access check for console"
am: 4a3b03e9e5

Change-Id: I69e33c783d8afb7cd7781a8782504f3307b61435
2017-01-03 23:30:36 +00:00
Nick Kralevich
7d93c5c036 Merge "Send property_service AVC messages to the kernel audit system" am: d06f86ced6
am: d4fc568820

Change-Id: Ica6e9eb7f578953f07f2c37cdbd074ce69f3468a
2017-01-03 23:28:37 +00:00
Treehugger Robot
4a3b03e9e5 Merge "init/service.cpp: fix access check for console" 2017-01-03 23:27:40 +00:00
Nick Kralevich
d4fc568820 Merge "Send property_service AVC messages to the kernel audit system"
am: d06f86ced6

Change-Id: I6a1b06620029935bedc28b69ec46eff0bade140b
2017-01-03 23:26:06 +00:00
Treehugger Robot
d06f86ced6 Merge "Send property_service AVC messages to the kernel audit system" 2017-01-03 23:24:48 +00:00
Nick Kralevich
48ff04f986 Merge "LogAudit.cpp: replace newlines with spaces in audit messages" am: 5badada997
am: 5083c589fa

Change-Id: Ic41ed573f2ee717edb347ef1db28daa6ab20de07
2017-01-03 22:38:31 +00:00
Nick Kralevich
5083c589fa Merge "LogAudit.cpp: replace newlines with spaces in audit messages"
am: 5badada997

Change-Id: Ic19c090caafa110a88eded401015d1eebfede58d
2017-01-03 22:30:01 +00:00
Treehugger Robot
5badada997 Merge "LogAudit.cpp: replace newlines with spaces in audit messages" 2017-01-03 22:21:37 +00:00
Nick Kralevich
8adb4d9d12 Send property_service AVC messages to the kernel audit system
The property service uses an SELinux userspace check to determine if a
process is allowed to set a property. If the security check fails, a
userspace SELinux denial is generated. Currently, these denials are only
sent to dmesg.

Instead of sending these denials to dmesg, send it to the kernel audit
system. This will cause these userspace denials to be treated similarly
to kernel generated denials (eg, logd will pick them up and process
them). This will ensure that denials generated by the property service
will show up in logcat / dmesg / event log.

After this patch, running "setprop asdf asdf" from the unprivileged adb
shell user will result in the following audit message:

  type=1107 audit(39582851.013:48): pid=1 uid=0 auid=4294967295
  ses=4294967295 subj=u:r:init:s0 msg='avc: denied { set } for
  property=asdf pid=5537 uid=2000 gid=2000 scontext=u:r:shell:s0
  tcontext=u:object_r:default_prop:s0 tclass=property_service'

Test: manual
Bug: 27878170
Change-Id: I0b8994888653501f2f315eaa63d9e2ba32d851ef
2017-01-03 13:50:13 -08:00
Mark Salyzyn
3322aaf11d Merge "logd: Add support for ro.logd.auditd.[main|events]" am: 891df1c410
am: 0236379593

Change-Id: I06f4f668092c256d728d1a57a2e3ccd95587d4d2
2017-01-03 21:25:27 +00:00