* changes:
DO NOT MERGE: IpConnectivityMetrics: rate limit ApfProgramEvents
DO NOT MERGE: TokenBucket for rate-limiting and throttling
DO NOT MERGE: IpConnectivityMetrics reads buffer size in settings
DO NOT MERGE: CaptivePortalLogin: set mixed content policy to compatibility.
DO NOT MERGE: Add IP conn metrics to dumpsys and bug reports
DO NOT MERGE: IpConnectivity metrics: add version number
This patch uses the previously introduced TokenBucket to rate limit
ApfProgramEvents, still allowing for burst of ApfProgramEvents when a
new interface is set up (due to ipv4 provisioning, multicast lock, ipv6 RAs
triggering new APF program events in short amounts of time).
Test: new test in IpConnectivityMetricsTest
Bug: 1550402
(cherry picked from commit e1c173d224)
Change-Id: Idb640dec13ba64180985544b9709a586af66eb6e
This patch adds a TokenBucket class that can accumulate and distribute
tokens over time.
Test: comes with unit tests.
Bug: 32198637
(cherry picked from commit 998493f0ee)
Change-Id: I4012ae6d02f7004bceee9a2ba03914f2a2506031
Test: IpConnectivityMetricsTest passes. Also manually changed the new
setting and verified the buffer size is as expected after flushing the
buffer.
Bug: 32198637
(cherry picked from commit 05686dbb6b)
Change-Id: Iefbeac3a688b260fb3f92dfe0bfd9db28e26749d
This makes the policy for mixed HTTP/HTTPS content match Chrome.
This allows us to display login pages where unimportant
subresources are HTTP.
Bug: 32171569
(cherry picked from commit 625166377b)
Change-Id: Ia82958192d978280715442e182c34f9da5c88c66
This patch adds a version field to ipconnectivity.proto and populates it
to 2, which is the logical version number for NYC-MR2.
Test: IpConnectivity{EventBuilder,Metrics}Test pass
Bug: 32127906
(cherry picked from commit d680d4c856)
Change-Id: If8f167c0dc4c1abe0e235e2adfd131168a4ddc52
Nothing in the system consumes these properties, they were never part
of an official public API, and they can leak information about the
current network to applications without networking prvileges.
Specifically, these properites allow applications to access network state
(and detect network changes, etc.) without having the ACCESS_NETWORK_STATE
permission.
Test: runtest ConnectivityServiceTest passes
Bug: 33308258
Change-Id: I85abc52bc11aee33940fd0af2397478a9a5c3b8f
Also report the actual delay if sendResult is eventually called.
Test: Manual - device boots, no timeouts
Bug: 30813554
Change-Id: I1271181ab9d2653fad1167049c84a6780ad46ff0
Defined a new IntDef in NetworkScoreManager named CacheUpdateFilter
with 3 values. Caches must be registered with a filter value and will
only receive updates based on their registered filter. Actual
filtering implementation will follow.
Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
BUG: 32912120
Change-Id: I8940e0ed1a7bbcb5a81fb3b6a7fafe4fbbc33875
MemoryIntArray was using the size of the undelying
ashmem region to mmap the data but the ashmem size
can be changed until the former is memory mapped.
Since we use the ashmem region size for boundary
checking and memory unmapping if it does not match
the size used while mapping an attacker can force
the system to unmap memory or to access undefined
memory and crash.
Also we were passing the memory address where the
ashmem region is mapped in the owner process to
support cases where the client can pass back the
MemoryIntArray instance. This allows an attacker
to put invalid address and cause arbitrary memory
to be freed.
Now we no longer support passing back the instance
to the owner process (the passed back instance is
read only), so no need to pass the memory adress
of the owner's mapping, thus not allowing freeing
arbitrary memory.
Further, we now check the memory mapped size against
the size of the underlying ashmem region after we do
the memory mapping (to fix the ahsmem size) and if
an attacker changed the size under us we throw.
Tests: Updated the tests and they pass.
bug:33039926
bug:33042690
Change-Id: Ibf56827209a9b791aa83ae679219baf829ffc2ac
Cancel the long press when viewing home (launcher) to disable the
double vibration that should occur when in multiwindow mode.
Fixes: 29927464
Test: manual - at home and multiwindow to long press recents button
Change-Id: Ic9c8a5096ce9f30fc1265774ebb82c1356b1221b
The enforcement assertion provides better explanation of the problem and fix
instructions.
Test: Removed permission from a privapp xml and verified that test fails
Bug: 31008485
Change-Id: I58454d1b38722a232764dea14ebe2e4ada09e24f
Bug 33177567
The fragment manager is being accessed after it has been torn
down. This protects BackStackRecord from accessing the null
mHost in that case.
Test: cts-tradefed run singleCommand cts -d --skip-preconditions
--skip-connectivity-check -m CtsFragmentTestCases
Change-Id: Id927eb1bc78e3750b01f685523418bde5a9cf8a0
In the version of getDefaultDialerApplication that has an argument for
user id, make use of it when querying the list of installed dialer
packages. Otherwise, a secondary user may find their default dialer
pointing to an app that they had disabled.
Test: manual
Change-Id: Id85ff730b820741cddb6afee8af095232d3dae0f