Commit Graph

7160 Commits

Author SHA1 Message Date
Nick Kralevich
604a49118f ZygoteInit: Remove CAP_SYS_RESOURCE am: 4911af2b8c am: 1cc9ec47c8 am: 8965cd6a39 am: 47beaa8fab am: 55c8a1ede9 am: 66a08a5413 am: 7a06357519 am: a07389b446 am: 5f4382e2a6 am: 3946a75cb3 am: 3c529012d3
am: ce8a0dea71

Change-Id: I7f963478355bf0019520c6d9242a6670398698f0
2017-05-23 00:47:08 +00:00
Nick Kralevich
f00f966fcf system_server: add CAP_SYS_PTRACE am: 966619d0ab am: b8d972e973 am: c46889e2d2 am: f5bd84b82d am: 982b8018af am: 7fd2d8ea31 am: 5bfe82c3ee am: 12c5f0da9f am: dc87ac995a am: 02f0044d98 am: 6cadbad153
am: fdf1fdfc1b

Change-Id: I76b74d2ec3f72bfc6b3ec6247beb40589112fdfd
2017-05-23 00:46:08 +00:00
Nick Kralevich
ce8a0dea71 ZygoteInit: Remove CAP_SYS_RESOURCE am: 4911af2b8c am: 1cc9ec47c8 am: 8965cd6a39 am: 47beaa8fab am: 55c8a1ede9 am: 66a08a5413 am: 7a06357519 am: a07389b446 am: 5f4382e2a6 am: 3946a75cb3
am: 3c529012d3

Change-Id: I9b3ea4577928b601f81525390fa6dae525275323
2017-05-23 00:39:49 +00:00
Nick Kralevich
fdf1fdfc1b system_server: add CAP_SYS_PTRACE am: 966619d0ab am: b8d972e973 am: c46889e2d2 am: f5bd84b82d am: 982b8018af am: 7fd2d8ea31 am: 5bfe82c3ee am: 12c5f0da9f am: dc87ac995a am: 02f0044d98
am: 6cadbad153

Change-Id: I05c01c682c89b4ae42ef9f66a94da611c7378148
2017-05-23 00:38:33 +00:00
Nick Kralevich
3c529012d3 ZygoteInit: Remove CAP_SYS_RESOURCE am: 4911af2b8c am: 1cc9ec47c8 am: 8965cd6a39 am: 47beaa8fab am: 55c8a1ede9 am: 66a08a5413 am: 7a06357519 am: a07389b446 am: 5f4382e2a6
am: 3946a75cb3

Change-Id: I9992c35cfc2b2ad8c4bbff7bf4bf9ca79b6f4568
2017-05-23 00:25:35 +00:00
Nick Kralevich
6cadbad153 system_server: add CAP_SYS_PTRACE am: 966619d0ab am: b8d972e973 am: c46889e2d2 am: f5bd84b82d am: 982b8018af am: 7fd2d8ea31 am: 5bfe82c3ee am: 12c5f0da9f am: dc87ac995a
am: 02f0044d98

Change-Id: I8fbd6580c4b6c1595b0ff1c34faaec5e1b9ad4de
2017-05-23 00:24:33 +00:00
Nick Kralevich
3946a75cb3 ZygoteInit: Remove CAP_SYS_RESOURCE am: 4911af2b8c am: 1cc9ec47c8 am: 8965cd6a39 am: 47beaa8fab am: 55c8a1ede9 am: 66a08a5413 am: 7a06357519 am: a07389b446
am: 5f4382e2a6

Change-Id: Ieab172a133b0d9198cef008b037c4a1107d0746c
2017-05-23 00:18:31 +00:00
Nick Kralevich
02f0044d98 system_server: add CAP_SYS_PTRACE am: 966619d0ab am: b8d972e973 am: c46889e2d2 am: f5bd84b82d am: 982b8018af am: 7fd2d8ea31 am: 5bfe82c3ee am: 12c5f0da9f
am: dc87ac995a

Change-Id: Ic7e65852a72cde3d2e285774e9cb85e9590e7fd2
2017-05-23 00:17:22 +00:00
Nick Kralevich
5f4382e2a6 ZygoteInit: Remove CAP_SYS_RESOURCE am: 4911af2b8c am: 1cc9ec47c8 am: 8965cd6a39 am: 47beaa8fab am: 55c8a1ede9 am: 66a08a5413 am: 7a06357519
am: a07389b446

Change-Id: I5e8fdff89b3d8d1e36f24767dc60efa1dc352dcb
2017-05-23 00:07:43 +00:00
Nick Kralevich
dc87ac995a system_server: add CAP_SYS_PTRACE am: 966619d0ab am: b8d972e973 am: c46889e2d2 am: f5bd84b82d am: 982b8018af am: 7fd2d8ea31 am: 5bfe82c3ee
am: 12c5f0da9f

Change-Id: I8ce1d6a2399967cf0408adf7ffbe1839f471e1e7
2017-05-23 00:06:55 +00:00
Nick Kralevich
a07389b446 ZygoteInit: Remove CAP_SYS_RESOURCE am: 4911af2b8c am: 1cc9ec47c8 am: 8965cd6a39 am: 47beaa8fab am: 55c8a1ede9 am: 66a08a5413
am: 7a06357519

Change-Id: I9301189268f519d4b87d8c9bfa88d1da4e8a53cd
2017-05-22 23:51:48 +00:00
Nick Kralevich
12c5f0da9f system_server: add CAP_SYS_PTRACE am: 966619d0ab am: b8d972e973 am: c46889e2d2 am: f5bd84b82d am: 982b8018af am: 7fd2d8ea31
am: 5bfe82c3ee

Change-Id: I95333a7ff3d6ee1a3161d436a2a0b312931b663e
2017-05-22 23:50:57 +00:00
Nick Kralevich
7a06357519 ZygoteInit: Remove CAP_SYS_RESOURCE am: 4911af2b8c am: 1cc9ec47c8 am: 8965cd6a39 am: 47beaa8fab am: 55c8a1ede9
am: 66a08a5413

Change-Id: Ica5cb7828a37bd597dc0d83f7a65e89380d1e31c
2017-05-22 23:36:12 +00:00
Nick Kralevich
5bfe82c3ee system_server: add CAP_SYS_PTRACE am: 966619d0ab am: b8d972e973 am: c46889e2d2 am: f5bd84b82d am: 982b8018af
am: 7fd2d8ea31

Change-Id: I4b57d119b9b8d512a017ede0fb62658fb25f9580
2017-05-22 23:35:04 +00:00
Nick Kralevich
66a08a5413 ZygoteInit: Remove CAP_SYS_RESOURCE am: 4911af2b8c am: 1cc9ec47c8 am: 8965cd6a39 am: 47beaa8fab
am: 55c8a1ede9

Change-Id: Ia3e4d749c5b5475640325fd47eb4260d52e61365
2017-05-22 23:19:09 +00:00
Nick Kralevich
7fd2d8ea31 system_server: add CAP_SYS_PTRACE am: 966619d0ab am: b8d972e973 am: c46889e2d2 am: f5bd84b82d
am: 982b8018af

Change-Id: I8cb5052694668ee8021f75778244e4d1b6cc3bb5
2017-05-22 23:18:24 +00:00
Nick Kralevich
55c8a1ede9 ZygoteInit: Remove CAP_SYS_RESOURCE am: 4911af2b8c am: 1cc9ec47c8 am: 8965cd6a39
am: 47beaa8fab

Change-Id: Ie697e5e8bfb7664b410d564a84ae5784be890f90
2017-05-22 23:02:54 +00:00
Nick Kralevich
982b8018af system_server: add CAP_SYS_PTRACE am: 966619d0ab am: b8d972e973 am: c46889e2d2
am: f5bd84b82d

Change-Id: I163a9224d6b0ff5f42f52656773e1c297661b977
2017-05-22 23:02:13 +00:00
Nick Kralevich
47beaa8fab ZygoteInit: Remove CAP_SYS_RESOURCE am: 4911af2b8c am: 1cc9ec47c8
am: 8965cd6a39

Change-Id: If549cda5fd1a640fee746311745b9b08ebf63b91
2017-05-22 22:46:18 +00:00
Nick Kralevich
f5bd84b82d system_server: add CAP_SYS_PTRACE am: 966619d0ab am: b8d972e973
am: c46889e2d2

Change-Id: I840740012d9ba0c434f7de0fd9ca83a44926d018
2017-05-22 22:45:44 +00:00
Nick Kralevich
8965cd6a39 ZygoteInit: Remove CAP_SYS_RESOURCE am: 4911af2b8c
am: 1cc9ec47c8

Change-Id: Ic81685686dabbc1f0004a30785a021bf89420846
2017-05-22 22:24:39 +00:00
Nick Kralevich
c46889e2d2 system_server: add CAP_SYS_PTRACE am: 966619d0ab
am: b8d972e973

Change-Id: I4d9e2d9b53523b9182a9f9272d06a93a87b0c61b
2017-05-22 22:23:47 +00:00
Nick Kralevich
1cc9ec47c8 ZygoteInit: Remove CAP_SYS_RESOURCE
am: 4911af2b8c

Change-Id: I4aa46981edb8fd711e1aec8c889528e596e5c233
2017-05-22 22:05:18 +00:00
Nick Kralevich
b8d972e973 system_server: add CAP_SYS_PTRACE
am: 966619d0ab

Change-Id: Ie5f95f2c078cd0bec7a2b2321c3303301ec9ec74
2017-05-22 22:04:57 +00:00
Nick Kralevich
4911af2b8c ZygoteInit: Remove CAP_SYS_RESOURCE
Please see commit 3082eb7c72 for an
explanation of this change.

This capability is not used by system_server.

Bug: 34951864
Bug: 38496951
Test: code compiles, device boots, no selinux errors ever reported.
Change-Id: I4242b1abaa8679b9bfa0d31a1df565b46b7b3cc3
(cherry picked from commit 35775783fc)
2017-05-22 12:19:29 -07:00
Nick Kralevich
966619d0ab system_server: add CAP_SYS_PTRACE
Commit https://android.googlesource.com/kernel/common/+/f0ce0eee added
CAP_SYS_RESOURCE as a capability check which would allow access to
sensitive /proc/PID files. system_server uses this capability to collect
smaps from managed processes. Presumably this was done to avoid the
implications of granting CAP_SYS_PTRACE to system_server.

However, with SELinux enforcement, we can grant CAP_SYS_PTRACE but not
allow ptrace attach() to other processes. The net result of this is that
CAP_SYS_PTRACE and CAP_SYS_RESOURCE have identical security controls, as
long as system_server:process ptrace is never granted.

Add CAP_SYS_PTRACE to the set of capabilities granted to system_server.

Don't delete CAP_SYS_RESOURCE for now. SELinux has blocked the use of
CAP_SYS_RESOURCE, but we still want to generate audit logs if it's
triggered. CAP_SYS_RESOURCE can be deleted in a future commit.

Bug: 34951864
Bug: 38496951
Test: Device boots, functionality remains identical, no sys_resource
denials from system_server.
Change-Id: I2570266165396dba2b600eac7c42c94800d9c65b
(cherry picked from commit 3082eb7c72)
2017-05-22 11:28:48 -07:00
Andreas Gampe
4c88a8c684 Zygote: Allow arbitrary-length wrap property names
The restriction on system property key length has been lifted.
Update the invoke-with code to first check the full-length property.
Then fall back to the truncated version for backwards-compatibility.

Test: m
Test: manual with long package name (Maps)
Change-Id: I9f714af093a6017307cfef18c84de769f0de7c3e
2017-05-15 19:51:29 -07:00
Paul Duffin
4455130610 Moved c.a.i.u.Predicate[s] into legacy-test
These classes are only used by android.test classes that are
being removed. As their name suggests they should not be in the
Android API at all so it makes sense to remove them. Especially
as there is java.lang.function.Predicate available now.

It appears as though Predicate was only added in to the API
because it was used by a method in the API as the directory in
which it and Predicates live was not on the list of classes to
explicitly index. Moving it into legacy-test meant that they are
now being indexed explicitly which means that Predicates needs
to be hidden.

Keeps running the tests as part of the existing target.

At runtime apps targeted at the API version before these are
removed will have the legacy-test library automatically added
to their classpath so they should see no effect. Apps that
target a later API will have to include those classes from the
android.legacy.test.jar which will contain all the android.test
classes that depend on it as well.

Bug: 30188076
Test: make checkbuild
Change-Id: Ia8502ec77ac11f85e078d70b68df214a9435eee7
Merged-In: I6f6f5f16fe93bd80227a450c6254166632fc6813
2017-05-15 15:17:48 +01:00
Hugo Benichi
00a16e077a NetworkStatsFactory: no double looping on stats + stacked interfaces
This patch uses the associative structure of the stacked/base interface
collection to avoid the two nested for loops over stacked/base
interfaces and all stats entries when correcting 464xlat traffic stats.

Consequently the list of stats entries is iterated only once.

Test: runtest -x frameworks/base/../NetworkStatsFactoryTest.java
Bug: 33681750
Change-Id: I84ae997fb693b909f431764697627b9957131732
2017-05-10 09:14:14 +09:00
Hugo Benichi
e1bb3a14d1 NetworkStatsFactory: fix double accounting on IPv6 only networks
For 464xlat scenarios on IPv6 networks, the clatd interface setup
introduces double counting of apps ipv4 traffic. NetworkStatsFactory was
accounting for this on the tx path, but not on the rx path. Also it did
not accounted for the 20 bytes added by the IPv6 header.

This patch subtract correctly the rx and tx traffic from the root uid on
the underlying interface, and also adds correctly the 20 bytes cost per
packet on the stacked interface for 464xlat traffic.

Test: added several new unit tests, based on synthetic data and real
      data also.
Bug: 33681750
Change-Id: I2675643b220acbc6110179fa937d4c313b6f5e32
2017-05-09 22:46:14 +09:00
Hugo Benichi
495a17b332 Move byte logics from ApfFilter into BitsUtil
This patch extracts into BitUtils byte manipulation helper methods
and unsigned type manipulation helper methods from ApfFilter into
an independent and reusable structure.

Test: $ runtest frameworks-net
Change-Id: I0f33af10457a63dbde5983f14353a79b8cd877d9
2017-04-22 10:07:03 +09:00
Hugo Benichi
9910dbc682 Add BitUtils bit packing methods (Connectivity metrics: add transports pretty printing)
This patch is a partial cherry-pick from commit
df456e13a1 for the BitUtils and
NetworkCapabilities classes.

Bug: 34901696
Test: none

(cherry picked from commit df456e13a1)

Merged-In: Id04f9080e7f75608deeb49306aec34941e71794c
Change-Id: I64eae49f646365b7cd1683a689315fe03bf0bdd9
2017-04-22 09:58:42 +09:00
Eugene Susla
8ab86a6dc6 Add BitUtils (from "Support multiple filters per association request")
This patch is a cherry-pick of the BitUtils class from commit
36e866b8e0.

(cherry picked from commit 36e866b8e0)

Test: none
Change-Id: Iaf33929f6841db273a92d650e84287bf2964fa3d
Merged-In: I0a978787551a1ee5750ec5544b241d3bbfed5a7c
2017-04-20 12:16:48 +09:00
Andrew Zeng
aa448d0290 DO NOT MERGE Notify keyguard of when power button is pressed.
This is done on wear power button doesn't turn off the screen,
when the device wakes from keyguard UI isn't visible yet, so
it needs to react to power press in some way.

Bug: 35147955
Change-Id: I22619ea446770d09b53370e9244215646b60a9db
2017-04-13 18:26:21 -07:00
Mukesh Agrawal
ad2684ca3d Merge changes I5c16c650,I3151fb6b
am: 55efea25f3

Change-Id: Ifaaae29780d905ffe9f82645d6d17dad478ba6a9
2017-03-29 18:30:00 +00:00
mukesh agrawal
47e1c7a005 StateMachine: make toString() terser
The current implementation of the toString()
method calls dump(). This causes two problems:

1. toString() may return a large string. This
   is at odds with the advice in the documentation
   for Object.toString(), which says that the
   returned String should be concise, and easy
   to read.
2. The dump() method is overriden by many of the
   StateMachine subclasses. Some of those subclasses
   have dump() implementations that are expensive,
   and/or have dependencies on other objects.

To resolve these problems, we simpify
StateMachine.toString().

Along the way: remove a stale comment about
implementing dump() using toString().

Note: only ran the StateMachine tests, since some
other tests are already failing.

Bug: 36661851
Test: tests/utiltests/runtests.sh \
      -e class com.android.internal.util.StateMachineTest
Change-Id: I5c16c650f01178c4d018b6a65e4aa95fb905aff6
2017-03-28 18:21:36 -07:00
Andreas Gampe
1d9c3ba10d Merge "Zygote: Preserve capabilities in WrapperInit"
am: 1ae7af10ff

Change-Id: Ia1ffb03d6e03b098cc634ef2deb3785c6bb87202
2017-03-21 18:54:22 +00:00
Andreas Gampe
220aba254b Zygote: Preserve capabilities in WrapperInit
Preserve the capabilities a zygote fork has across the sh exec in
WrapperInit. Use ambient capabilities.

Test: m
Test: adb shell setprop wrap.com.android.bluetooth logwrapper && adb shell kill `pid com.android.bluetooth`
Merged-In: I3526d6a31aaadf082365c9ce31da0950e17677eb
Change-Id: I3526d6a31aaadf082365c9ce31da0950e17677eb
2017-03-21 08:39:26 -07:00
tony.ys_liu
959628a32e Merge "Set system server's class loader for wrap.system_server"
am: 8d2d6bfa12

Change-Id: Iba4af152c9f29ad6e8c9bb1b0a1047e96d287c6b
2017-03-16 15:42:53 +00:00
tony.ys_liu
34738174ba Set system server's class loader for wrap.system_server
Root Cause: systemServer's class path is not set
  after set wrap.system_server property, and restart system_server,
  it shows a java.lang.RuntimeException:
    Missing class when invoking static main com.android.server.SystemServer

Solution: Correctly pass and parse a passed classpath.

Bug: 34692265
Test: adb root && adb shell stop && adb shell setprop wrap.system_server logwrapper && adb shell start
Change-Id: Ia6707dc05fa627af6cc28360d26b894487a6eff1
2017-03-15 16:33:04 -07:00
Hiroshi Yamauchi
55310df6bc Merge "Fix the reset of boosted zygote thread priority."
am: 83aceea07d

Change-Id: I6ebd30a631ae10ada65b3279ec66c41d3f50fb1f
2017-03-13 17:42:50 +00:00
Hiroshi Yamauchi
04ed650083 Fix the reset of boosted zygote thread priority.
This fixes the unexpected priority 112 of the daemon threads
(eg. HeapTaskDaemon). The problem was that when the zygote main
thread's priority is reset, it directly calls setpriority() and fails
to update the priority value in java.lang.Thread, which in turn causes
any threads created by the thread to unexpectedly inherit the boosted
priority. Calling java.lang.Thread.setPriority instead fixes.

(cherry picked from commit 1e3db871e5)

Bug: 35801778
Bug: 28866384
Test: angler master userdebug boots and thread priorities checked.

Change-Id: I68a6ed7244a9067acc2749feca7f88422bf44b02
2017-03-13 10:31:30 -07:00
Mukesh Agrawal
0a2d5cf7db Merge "StateMachine: add getLogRecMaxSize()"
am: 22e43471ed

Change-Id: Iaab7955c0721e240487e8c842e994c90141d6013
2017-02-24 19:32:03 +00:00
mukesh agrawal
8ed82ec198 StateMachine: add getLogRecMaxSize()
Add the getLogRecMaxSize() method, so that
WifiStateMachine tests can verify the log
record buffer size, without having to fill
the buffer.

Bug: 35399013
Test: compile
Change-Id: Ib1bd8d670b7b39e9f740a4dd92ea67463b179ce2
2017-02-23 17:40:01 -08:00
Paul Duffin
fd61eb1e39 Merge "Deprecate TestSuiteBuilder and related classes."
am: a26000b8f5

Change-Id: Ia9d491bd72f2a9f08838e298aaf4de5de28c7d4f
2017-02-23 13:44:24 +00:00
Paul Duffin
253ad40649 Deprecate TestSuiteBuilder and related classes.
Deprecates com.android.internal.util.Predicate in favour of
java.util.function.Predicate.

Deprecates TestMethod and TestSuiteBuilder in favour of
Android Test Support Library.

Bug: 35089332
Test: make checkbuild
Change-Id: Id8b2be55925d7ca09750fc9681817793517ceb5d
2017-02-22 15:18:19 +00:00
Xiaohui Chen
0a804ff49c Merge "ReolverActivity: try auto launching single choice" into nyc-mr2-dev
am: daacf547ac

Change-Id: I06ca33714f6227f8cf86ecce29e1b87df80add6b
2017-02-16 19:29:18 +00:00
TreeHugger Robot
daacf547ac Merge "ReolverActivity: try auto launching single choice" into nyc-mr2-dev 2017-02-16 19:22:02 +00:00
Xiaohui Chen
393c8018a1 ReolverActivity: try auto launching single choice
We already does this on start.  Now we also do the same when
the list of options changes.

Test: locally on device
Bug: 34470067
Change-Id: Ib184d67b532c5afd584fb9cd52daac69a7c50d0a
2017-02-15 09:48:38 -08:00
Michael Kwan
e7c91f721c Merge "Fix incorrect values for VelocityTracker in SwipeDismissLayout." into cw-f-dev am: c61cd1a635
am: 83b072c48c

Change-Id: I77b0a0a30e60658dbcf3ab0806bd0227939b8ba8
2017-02-14 22:57:48 +00:00