Commit Graph

1817 Commits

Author SHA1 Message Date
Hugo Benichi
65ecfacf15 ConnectivityServiceTest: mark flaky test as such
This patch extracts into its own independent test a test sub-block looking
for a race condition when not waiting on handlers to become idle:
there is no way to prevent the race from not happening when looking for
it this way. This makes the test flakky.

This new independent test is tagged with @FlakkyTest(tolerance = 3).

Test: ConnectivityServiceTest passes, with higher probability.
Bug: 31479480

(cherry picked from commit 144810b6cf)

Change-Id: I3c702bd981ed80ed606be0fb52d61eb3d7195a6f
2017-01-26 18:50:45 +09:00
Calvin On
c11a8e2206 Add option to skip and avoid captive portals.
Test: ConnectivityServiceTest updated with test cases.
Test: Manually tested against att-wifi in B42.
Bug: 30222699

(cherry picked from commit dada145a85)

Change-Id: I90c0f97fe0e41de4059bceae7b56ab3a70145696
2017-01-26 18:50:42 +09:00
Erik Kline
d99da81fae Support timeouts for requestNetwork() invocations.
(cherry-pick of 0b7a74842b)
(cherry picked from commit 155a59aa63)

Bug: 21414325
Change-Id: I1a58823a372154589f972b98c4c428eab0e0523e
2017-01-26 18:50:23 +09:00
Pierre Imai
e3b646f25d Silence the obnoxious MTU 0 error message that occur when no MTU is
specified for a given network.

Bug: 10705136

(cherry picked from commit 07c53a35ae)

Change-Id: I89e2fdfbbfa981d435a2974422d9d9c009872d76
2017-01-26 18:50:18 +09:00
Hugo Benichi
ef41b769e8 ConnectivityServiceTest: remove flaky waitForIdle test.
This patch removes testNotWaitingForIdleCausesRaceConditions() from
ConnectivityServiceTest because it is in nature flaky and prevents using
ConnectivityServiceTest as a patch presubmit check. Estimated failure
rate is 1/15 on Nexus 6p.

This patch also simplifies how ConnectivityServiceTest waits for
handlers to become idle by removing IdleableHandlerThread and turning it
into a signle static method.

Test: $ runtest frameworks-net
Bug: 31479480
Change-Id: I2d78709cbb61d5d01cd59cff326469417f73f1ab
2017-01-24 15:22:48 +09:00
Robin Lee
c9327b4903 Merge "Disable always-on VPN in factoryReset" am: 9847e78b72 am: adb7a1c631 am: f6c57b8f2f
am: 5c709185ef

Change-Id: Iaccb7394994ccce66df0ab2f713fd890a8b999c8
2017-01-23 17:05:42 +00:00
Robin Lee
5c709185ef Merge "Disable always-on VPN in factoryReset" am: 9847e78b72 am: adb7a1c631
am: f6c57b8f2f

Change-Id: I99207281321861a3e720b5c1e2e316e12b104677
2017-01-23 17:01:31 +00:00
Robin Lee
f6c57b8f2f Merge "Disable always-on VPN in factoryReset" am: 9847e78b72
am: adb7a1c631

Change-Id: I66b6721932ae8798cbb406cafa04ed0c92fe47f6
2017-01-23 16:54:59 +00:00
Robin Lee
adb7a1c631 Merge "Disable always-on VPN in factoryReset"
am: 9847e78b72

Change-Id: I021b288e3db17ddefbea3645fd282e3ee123a6e8
2017-01-23 16:47:58 +00:00
Robin Lee
9847e78b72 Merge "Disable always-on VPN in factoryReset" 2017-01-23 16:40:07 +00:00
Erik Kline
c4529228a0 Merge "More concisely export whether we have a "tetherable configuration"" am: 1f2437c65a am: b0949a3ede am: e7234fc716
am: 157ac7a76a

Change-Id: I290df5269739bc7fb5ebc8614a96c38bf7faf367
2017-01-23 07:30:22 +00:00
Erik Kline
157ac7a76a Merge "More concisely export whether we have a "tetherable configuration"" am: 1f2437c65a am: b0949a3ede
am: e7234fc716

Change-Id: Iba07ae91906fa2f0763dae831f56b4841572e1f1
2017-01-23 07:26:28 +00:00
Erik Kline
e7234fc716 Merge "More concisely export whether we have a "tetherable configuration"" am: 1f2437c65a
am: b0949a3ede

Change-Id: Ic67b2d4589f586c67109216330f68cb1fc08c55a
2017-01-23 07:20:32 +00:00
Erik Kline
b0949a3ede Merge "More concisely export whether we have a "tetherable configuration""
am: 1f2437c65a

Change-Id: I5f9717c9dab6b39f1fbf2186107b2a1f3f2d4f8f
2017-01-23 07:13:56 +00:00
Erik Kline
21933391e8 More concisely export whether we have a "tetherable configuration"
Test: as follows
    - built (bullhead)
    - flashed
    - booted
    - runtest frameworks-net passes
    - vanilla WiFi-to-mobile tethering works
Bug: 32163131
Change-Id: I20dd36b5bf7fc55a639c76ea4bdb55b650654881
2017-01-23 13:04:28 +09:00
Hugo Benichi
f4fcd280f1 DO NOT MERGE Unit tests for NetworkNotificationManager
Test: new unit test, no functional changes.
Bug: 32198726

(cherry picked from commit baebb23d3c)

Change-Id: I123de68de9ae353b95edce89eb570cfbb5f8d9a3
2017-01-20 15:08:38 +09:00
Jeff Sharkey
475c3eadb0 StrictMode to detect untagged network traffic.
Network usage is tracked by the kernel at the UID level, which is
granular enough for normal apps, but large components (such as the
system server) are impossible to debug without adding additional
socket tagging to help identify subsystems within a UID.

To help ensure that system components tag all their network traffic,
this change offers a new StrictMode option to detect and report
untagged sockets.

Test: builds, boots, all common traffic tagged
Bug: 30943431, 30414041
Change-Id: I825c7941076054732264690247de2863342638e2
2017-01-19 20:52:05 -07:00
sj.cha
a256f19d3a Infinite reboot when OS upgrade from M to N with set Always-on VPN
Symptom : Infinite reboot

Reproduce step :
1. Set the Always-on VPN in M OS
2. OS upgrade from M to N

Reproduce frequency : 100%

Reason of issue :
https://android.googlesource.com/platform/frameworks/base/+/9b74791
As you know, in M OS, Always-on VPN information is stored in keystore with encryted.
However, in N OS, there is no encryption when it put in keystore.
So, You deleted keystore check(locked/unlock) logic on ConnectivityService.
By this reason, when device upgrade to N OS(set Always-on VPN), it goes infinite boot.
(Cannot read old always-on vpn information untill device unlock.)

Solution :
I founded exception handling when this case as follows:
If getting Credentials.LOCKDOWN_VPN information has null value(catch the exception),
updateLockdownVpn returns false value.

Signed-off-by: SangJin Cha <sj.cha@lge.com>
Change-Id: I6fd980152440bb5248aab45e2f8fda448d3f6c7b
2017-01-20 12:40:15 +09:00
Tamas Berghammer
a05cbcb4b1 Merge "DO NOT MERGE: Revert "Update package names to work with the proto3 compiler"" into nyc-mr1-dev-plus-aosp 2017-01-18 19:59:59 +00:00
Tamas Berghammer
4dac494ece DO NOT MERGE: Revert "Update package names to work with the proto3 compiler"
This reverts commit 0c0c8f7825.

Change-Id: I6e8d193fa22e0e7e30b214c13ae0480d3c9b0dc6
2017-01-18 19:33:22 +00:00
Tamas Berghammer
4ce688e0d8 Merge "Update package names to work with the proto3 compiler" into nyc-mr1-dev-plus-aosp 2017-01-18 12:58:01 +00:00
Stephen Chen
5df334f572 DO NOT MERGE: Implement metered tracking for NetworkStats summary queries.
Dependent on ag/1550196 where API is defined.

Bug: 31015360
Bug: 26545374
Test: runtest --path
frameworks/base/core/tests/coretests/src/android/net/NetworkStatsTest.java,
other test classes.

(cherry picked from commit 9369e9d105)

(cherry picked from commit 757658193d)

Change-Id: I79e401fc4159264a075febba82bd8c295b8e677f
2017-01-18 19:08:41 +09:00
Felipe Leme
5210ff9305 DO NOT MERGE: Refactored NetworkStatsServiceTest to use Mockito instead of EasyMock.
Test: m -j32 FrameworksServicesTests && adb install -r -g ${ANDROID_PRODUCT_OUT}/data/app/FrameworksServicesTests/FrameworksServicesTests.apk && adb shell am instrument -e class "com.android.server.net.NetworkStatsServiceTest" -w "com.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner"

BUG: 30943463

(cherry picked from commit de2a6f1b1d)

(cherry picked from commit 6670ab4480)

Change-Id: I93cdfc8753dcded141732c0587783d1fa2085f5a
2017-01-18 19:08:29 +09:00
Felipe Leme
cf0dc7a2cf DO NOT MERGE: Use @Ignore to explicitly disable a @Test method.
BUG: 30839080
BUG: 31007021

(cherry picked from commit a4dc2a7129)

(cherry picked from commit b8a440f538)

Change-Id: I45efc93b40e526467c97d0735289db1404ccd22d
2017-01-18 19:08:27 +09:00
Felipe Leme
d63c8bc4a2 DO NOT MERGE: Fixed NetworkStatsServiceTest and converted it to JUnit4.
Most tests were failing because due to a null NetworkCapabilities.
Example:

1) testNetworkStatsWifi(com.android.server.net.NetworkStatsServiceTest)
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.net.NetworkCapabilities.hasCapability(int)' on a null object reference
	at
	com.android.server.net.NetworkStatsService.updateIfacesLocked(NetworkStatsService.java:983)

BUG: 30839080

(cherry picked from commit f96df4b298)

(cherry picked from commit 00a6e6c111)

Change-Id: I6eee96178ade6adfc1406e06d5376206ca2420e5
2017-01-18 19:08:25 +09:00
Etan Cohen
a814243e87 DO NOT MERGE: [CS] Remove timeout event after first available
Guarantees that timeouts are only delivered if a network never
becomes available. Once a network is available the timeout is
canceled.

Bug: 31402633
Test: all timeout related unit tests pass (new one added)

(cherry picked from commit 5eba9d7061)

(cherry picked from commit 3fb372fe9f)

Change-Id: I0cf1a2b7d25bc9912e03fca30621809a9071396c
2017-01-18 19:08:11 +09:00
Lorenzo Colitti
e8d1e9daa0 DO NOT MERGE: Move the connectivity tests to frameworks/base/tests/net.
This will give us a good place to put all the networking tests.

Fix: 31479480
Test: adb  shell am instrument -w -e notClass com.android.server.connectivity.tethering.TetherInterfaceStateMachineTest 'com.android.frameworks.tests.net/android.support.test.runner.AndroidJUnitRunner'  # PASS

(cherry picked from commit 5a7c486d70)

Change-Id: I4c417c2ba0747d2085169e47ae4a99e93c4d8814
2017-01-18 19:08:05 +09:00
Lorenzo Colitti
0c7a3c349d DO NOT MERGE: De-guava BroadcastInterceptingContext and move it to testutils.
Removing the static dependency on guava reduces test compile time
by about 20 seconds on a Z840, thus substantially speeding up the
compile/test cycle.

Make FutureIntent public instead of package-private because it is
used directly by NetworkPolicyManagementServiceTest, which as of
this CL is now in a different package.

(cherry picked from commit 6a64dd2178)

Test: runtest frameworks-services -c com.android.server.ConnectivityServiceTest  # PASS
Test: runtest frameworks-services -c com.android.server.NetworkPolicyManagerServiceTest  # PASS
Test: runtest frameworks-services -c com.android.server.net.NetworkStatsServiceTest  # PASS
Test: runtest frameworks-services -c com.android.server.NetworkManagementServiceTest  # Already failing.
Bug: 31479480

(cherry picked from commit 834805275a)

Change-Id: I8a95d4618dced81f173d2b38b9c1dfe3860b348a
2017-01-18 19:08:02 +09:00
Lorenzo Colitti
cf31451670 DO NOT MERGE: Move FakeSettingsProvider to a common location.
(cherry picked from commit 4163f9ca8f)

Test: runtest frameworks-util -c com.android.internal.util.test.FakeSettingsProviderTest
Test: runtest frameworks-services -c com.android.server.ConnectivityServiceTest
Test: runtest frameworks-services -c com.android.server.retaildemo.PreloadAppsInstallerTest
Test: runtest frameworks-services -c com.android.server.retaildemo.RetailDemoModeServiceTest
Bug: 31479480

(cherry picked from commit 4166a1fcfa)

Change-Id: Ib82b162f354b8cbb521bc0783556f3225b4d12ac
2017-01-18 19:08:00 +09:00
Hugo Benichi
30c0460727 DO NOT MERGE: ConnectivityServiceTest: mark flaky test as such
This patch extracts into its own independent test a test sub-block looking
for a race condition when not waiting on handlers to become idle:
there is no way to prevent the race from not happening when looking for
it this way. This makes the test flakky.

This new independent test is tagged with @FlakkyTest(tolerance = 3).

Test: ConnectivityServiceTest passes, with higher probability.
Bug: 31479480

(cherry picked from commit 144810b6cf)

Change-Id: I32632bb763585c23f1de5bb1811a384a35bf9f64
2017-01-18 19:07:59 +09:00
Erik Kline
ee83e11aeb DO NOT MERGE: Support timeouts for requestNetwork() invocations.
(cherry-pick of 0b7a74842b)
(cherry picked from commit 155a59aa63)

Bug: 21414325

(cherry picked from commit 5791c5f681)

Change-Id: I640c43315a071ecbf881e5ce898164915e0b787f
2017-01-18 19:07:33 +09:00
Koichi, Sugimoto
45dbfe7c3e Disable always-on VPN in factoryReset
When network setting reset is started while always-on VPN is enabled,
application crash occurs with IllegalStateException in prepareVpn().

Therefore, it's necessary to also disable always-on VPN in factoryReset
before prepareVpn() when turning off VPN.

Bug: 29030858
Change-Id: I08c5406717dd7937d197c2e934a56d037477aafc
2017-01-18 10:02:58 +00:00
Pierre Imai
9e98fecd15 DO NOT MERGE: Silence the obnoxious MTU 0 error message that occur when no MTU is
specified for a given network.

Bug: 10705136

(cherry picked from commit 07c53a35ae)

(cherry picked from commit fb3178adfc)

Change-Id: I12ac6f511a6760ef26f489ba3a052ca3c125e5ee
2017-01-18 18:12:35 +09:00
Lorenzo Colitti
bcafe16d3a Merge "Enable mobile data always on." am: 7ab1654533 am: 0df74d1ee7 am: e50c60e1f1
am: f9f8abce19

Change-Id: I8d61c1a22a702cbd23638d46dfad36365b29180c
2017-01-17 06:56:53 +00:00
Lorenzo Colitti
f9f8abce19 Merge "Enable mobile data always on." am: 7ab1654533 am: 0df74d1ee7
am: e50c60e1f1

Change-Id: Iaf4f84f53be65800c95a4f1b456a0d2d142c8c87
2017-01-17 04:36:21 +00:00
Lorenzo Colitti
e50c60e1f1 Merge "Enable mobile data always on." am: 7ab1654533
am: 0df74d1ee7

Change-Id: Ie2b6887021585a2e7246d66603dadc8d0fa1bd94
2017-01-17 04:31:00 +00:00
Lorenzo Colitti
0df74d1ee7 Merge "Enable mobile data always on."
am: 7ab1654533

Change-Id: I9758da5105b9a8eac66aaaf9e4a1658685a6a3f7
2017-01-17 04:25:44 +00:00
Lorenzo Colitti
bcecc7a8ae Enable mobile data always on.
Test: has been on in fishfood several months.
Bug: 23113288
Change-Id: I73ba432f619d28dab78e2d865d56aa7e7c5a67f9
2017-01-17 11:07:50 +09:00
Hugo Benichi
2d26b0e4b0 Stricter NetworkNotificationManagerTest
This patch changes NetworkNotificationManagerTest to populate extraInfo
of NetworkInfo in order to catch regressions in malformed format Strings
of log statements in NetworkNotificationManager.

Test: verified that the test fails when reintroducing the format String
bug.
Bug: 33737715

(cherry picked from commit 3cb1d2b45d)

Change-Id: Ic2f23e860a17cb83b90edcfd2ba365134cacfe36
2017-01-16 15:15:26 +09:00
Hugo Benichi
04d4730e15 Merge "ConnectivityServiceTest: some fixes in CallbackInfo" am: 37727596cc am: ac7e9a2b47
am: 073a0ac614

Change-Id: Ifc208e00e05efb29eaa2ab37abdc66d8c7ed8f4f
2017-01-16 05:13:01 +00:00
Hugo Benichi
073a0ac614 Merge "ConnectivityServiceTest: some fixes in CallbackInfo" am: 37727596cc
am: ac7e9a2b47

Change-Id: I839ed526e802b88bbed490b611f90d829b952f26
2017-01-16 05:04:39 +00:00
Hugo Benichi
ac7e9a2b47 Merge "ConnectivityServiceTest: some fixes in CallbackInfo"
am: 37727596cc

Change-Id: I636b7b0ef210aaa3e130e1c1a162a35cdc099295
2017-01-16 05:00:30 +00:00
Tamas Berghammer
0c0c8f7825 Update package names to work with the proto3 compiler
Bug: b/28974522
Change-Id: I5f3adf4946ee4ba1e09e4f40afe83c151405972a
(cherry picked from commit 55f36459c8)
2017-01-11 11:27:38 +00:00
Lorenzo Colitti
443b6c4049 Temporarily restore the net.dnsX system properties.
This will limit app breakage in dogfood. The plan is to remove
these obsolete system properties again in O developer preview
builds so that application developers can move away from them.

Test: marlin boots and net.dnsX exists and is updated correctly

Bug: 33308258
Bug: 33807046
Bug: 34028616
Bug: 34115651
Change-Id: Iaf2fa213c314b7ba251c065b304e7e9869bafe9f
2017-01-06 03:09:18 +00:00
Hugo Benichi
fce1a04cc7 DO NOT MERGE Captive portal systel log improvements
This patch improves system logging around captive portal detection to
make inspection of bug reports sligthly easier:

- NetworkMonitor now logs by default CMD_CAPTIVE_PORTAL_RECHECK and
  CMD_CAPTIVE_PORTAL_APP_FINISHED. Other system logs are kept off with
  a new VDBG boolean contant,
- NetworkNotificationManager now prints the notification id at
  notification time. This allows to easily correlate show and clear.
- errors in NetworkNotificationManager are logged as Throwable instead
  of through their implicit toString() method.

Test: $ runtest frameworks-net
Bug: 32198726

(cherry picked from commit 2a3998dd05)

Change-Id: I1eaab5ea702063dde3e23324d3a1b3dc172c5ac5
2017-01-05 12:09:35 +09:00
Hugo Benichi
bfcdbc7c4d NetworkNotificationManager: remove spammy log am: 02e5966fac
am: 29a41b05d1

Change-Id: I2b9b1b52e11ddf784244eedf1311f3b015841215
2016-12-22 03:07:19 +00:00
Hugo Benichi
29a41b05d1 NetworkNotificationManager: remove spammy log
am: 02e5966fac

Change-Id: I01785760854cd040c0d09f76e3832bbb7986dc4e
2016-12-22 03:02:39 +00:00
Hugo Benichi
02e5966fac NetworkNotificationManager: remove spammy log
Test: build, flashed, booted phone.
Bug: 32198726
Change-Id: I3ac2f07c756f48653195f6198aaee4d8b3939fb5
2016-12-22 09:51:01 +09:00
Hugo Benichi
4ff0a309da DO NOT MERGE Stricter NetworkNotificationManagerTest
am: 3cb1d2b45d

Change-Id: I94ea5c6994d181e730ec4f49e98001eb81ed8740
2016-12-20 06:49:08 +00:00
Paul Stewart
99ce10284e DO NOT MERGE Fix other String.format issues in NetworkNotificationManager.java
am: c39ecf10e0

Change-Id: I79c4129b861b9dd93ac14acce5a86aadd48e8d39
2016-12-20 05:04:46 +00:00