Commit Graph

1207 Commits

Author SHA1 Message Date
Paul Hu
2dd1f14da1 Merge "Fix hasUseBackgroundNetworksPermission issue." am: bc582ab167 am: c4ca8c9877
am: 92079abc2d

Change-Id: I8a1575dedd6e3b7a8b60ee2ffd475d790aec55c4
2019-11-25 10:35:55 -08:00
Lucas Lin
a1265ce930 Merge "Fix title of PRIVATE_DNS_BROKEN notification when connecting VPN" am: acac9a269b am: e00efe4c24
am: 7e76a7bdb8

Change-Id: I9539e73842040e3a38a64c4b4863adfe32c893e9
2019-11-25 10:33:04 -08:00
Paul Hu
bc582ab167 Merge "Fix hasUseBackgroundNetworksPermission issue." 2019-11-25 08:41:05 +00:00
Lucas Lin
acac9a269b Merge "Fix title of PRIVATE_DNS_BROKEN notification when connecting VPN" 2019-11-25 08:14:09 +00:00
paulhu
121b2fb600 Fix hasUseBackgroundNetworksPermission issue.
PermissionMonitor#hasUseBackgroundNetworksPermission only uses
the first package name of the uid for checking permission.
This is incorrect since each package declared different
permissions. So using the mApps which already checked both
network and using restricted network permissions. If uid is in
the mApps list that means uid has one of permission at least.

Bug: 135897744
Test: atest FrameworksNetTests
Change-Id: I3500a03ce06b5b822311ad0c67b606ce4039216a
2019-11-24 22:27:32 +08:00
lucaslin
78bfa8c92d Fix title of PRIVATE_DNS_BROKEN notification when connecting VPN
NetworkNotificationManager will only get the first transport
type from the NetworkCapabilities of network, and if the device
connects to a VPN and its underlying network is wifi, then the
first finding transport type will be TRANSPORT_WIFI. So, if the
private DNS is broken when device connected to VPN,
NetworkNotificationManager will try to get the SSID for the
title of notification but failed. For this kind of case, the
title of PRIVATE_DNS_BROKEN notification will show
"null has no internet access".

Bug: 143340533
Test: 1. Build pass.
      2. Connect to VPN and let private DNS to be broken, check
      title of PRIVATE_DNS_BROKEN notification.
      3. atest FrameworksNetTests

Change-Id: I1ed018cc8774d4fce4b94854f8e8703a28818463
2019-11-22 12:46:32 +08:00
Chalard Jean
10d53ec99a Merge "Rename waitForConnectivityBroadcast" am: eb6a236187 am: 4073f980bf
am: c16dd33261

Change-Id: I9c3197407c99bb209700364686ee64d6ccb07a06
2019-11-20 06:21:12 -08:00
Chalard Jean
4870538794 Merge "Add tests for the legacy broadcast" am: 840102cf8d am: d0d5ff5d7c
am: d7e3abc2e7

Change-Id: Ifc56e73f7eeaa22d8f16fcd50083f0b0fa37dc95
2019-11-19 19:43:42 -08:00
Chalard Jean
ba1a47dd75 Rename waitForConnectivityBroadcast
This doesn't wait, so it was ill-named.
Test: ConnectivityServiceTest

Change-Id: I15e5083f961e415b1d2d870e49c177fc84f0312c
2019-11-19 22:41:09 +09:00
Chalard Jean
840102cf8d Merge "Add tests for the legacy broadcast" 2019-11-19 13:32:17 +00:00
Chalard Jean
53f3e0c141 Add tests for the legacy broadcast
Test: this
Change-Id: I0777bf443f65d894eaab9b800db40c1caf6520fe
2019-11-19 21:08:44 +09:00
Jayachandran Chinnakkannu
0072e72ac1 Merge "Remove usage of Telephonymanager getDefault() and from() hidden APIs" am: 73e22ad21d am: c9c264b861
am: f1b55ba4af

Change-Id: Ief1f090f3664d583565f291c89357bfbac58fe17
2019-11-18 01:09:40 -08:00
Jayachandran C
4022aa3829 Remove usage of Telephonymanager getDefault() and from() hidden APIs
This CL replaces with getSystemService(TelephonyManager.class)

Bug: 140768340
Test: atest frameworks/base/tests/net
Change-Id: I0f14cc5440fa85c81ab90f3199e9e91c1b00f5e1
2019-11-15 19:26:33 -08:00
Remi NGUYEN VAN
5057703a30 Merge "Add permissions to NetIntegrationTests manifest" am: 541077b76a am: 4a0d8ff37e
am: 81dc489a66

Change-Id: I33f628f9845d672edce17807f32819e31549eefd
2019-11-11 21:54:17 -08:00
Remi NGUYEN VAN
541077b76a Merge "Add permissions to NetIntegrationTests manifest" 2019-11-12 05:31:19 +00:00
Lucas Lin
d2e1439018 Merge "[NS01] Create NetworkScore" am: 0dba9c87f1 am: 6ee212b303
am: 15731e9d75

Change-Id: Ic093e655b1ff7e44db57d7add6b0818a06700962
2019-11-07 17:05:20 -08:00
Lucas Lin
0dba9c87f1 Merge "[NS01] Create NetworkScore" 2019-11-08 00:47:22 +00:00
lucaslin
fe4c578d6e [NS01] Create NetworkScore
It's the first patch for refounding network selection. The new
network selection will try to compare the networks by more
factors, and will try to choose the best network after doing
the evaluation of trade-off.
Create the object that will serve to represent network quality
for more comprehensive ranking.

Bug: 143676287
Test: 1. Build pass.
      2. atest FrameworksNetTests

Change-Id: I4b6071d14365aa84d06be9802516fedf527e70f7
2019-11-07 16:47:56 +08:00
Remi NGUYEN VAN
129af07343 Add permissions to NetIntegrationTests manifest
As the TestNetworkStack target is updated not to use the complete
NetworkStackManifest to avoid including priv-app permissions and actual
service names, the missing permissions must be added to the
FrameworksNetIntegrationTests manifest.

Add the permissions and attributes that are necessary for the test, and
used to be merged from the TestNetworkStack library manifest.

Test: atest FrameworksNetIntegrationTests
Change-Id: I8b434e67f3a6c9141da71c6dfab1be77aa0f8411
2019-10-30 18:30:03 +09:00
Jeongik Cha
342dad56b9 Change AIDL module name
Naming rule for aidl module is changed to make using unstable AIDL module more explicit
So, to use unstable version AIDL module, use "-unstable" suffix version
And also, module name without any suffix means latest frozen version.

But wrt modules for C++ and NDK, module name with latest frozen version
is not available for now.

In b/139280289, more background is explained

Test: m
Bug: 139280289
Change-Id: Ib38e2cb114cc373ef50652f421ddaff9b4fbe5b9
Merged-In: Ib38e2cb114cc373ef50652f421ddaff9b4fbe5b9
2019-10-29 16:01:18 +09:00
Jeongik Cha
6f6126be75 Change AIDL module name
Naming rule for aidl module is changed to make using unstable AIDL module more explicit
So, to use unstable version AIDL module, use "-unstable" suffix version
And also, module name without any suffix means latest frozen version.

But wrt modules for C++ and NDK, module name with latest frozen version
is not available for now.

In b/139280289, more background is explained

Test: m
Bug: 139280289
Change-Id: Ib38e2cb114cc373ef50652f421ddaff9b4fbe5b9
2019-10-26 00:38:46 +09:00
Mark Chien
ae0c397f98 Merge "[Tether02] Migrate TetheringConfiguration into module" am: cb757f00af am: f19a4acbdc am: 9df4739b71
am: cdbd306850

Change-Id: Ia361893223c5d08e7ca0193c38f9b1b88a330320
2019-10-24 07:14:21 -07:00
Mark Chien
cb757f00af Merge "[Tether02] Migrate TetheringConfiguration into module" 2019-10-24 13:10:24 +00:00
markchien
194406d2a2 [Tether02] Migrate TetheringConfiguration into module
TetheringConfiguration is a utility class to encapsulate the various
configuration elements.

Bug: 136040414
Test: -build, flash, boot
      -atest TetheringTests

Change-Id: I9434ab213bc5e0fca59f14a6c8cea554abefc3a4
2019-10-24 14:00:05 +08:00
Lucas Lin
1b284f0674 Merge "Better notification to user when DNS-over-TLS is broken" am: 7317869f48 am: 52b44b20c4 am: a7f8602ea3
am: 9941806049

Change-Id: Iffbdc181d8249f26b3c370474583673aaa1c5032
2019-10-23 03:27:05 -07:00
Lucas Lin
7317869f48 Merge "Better notification to user when DNS-over-TLS is broken" 2019-10-23 09:20:09 +00:00
lucaslin
8cf57f5cd5 Better notification to user when DNS-over-TLS is broken
Provide a specifc notification to let users know that device
has no internet is because it really doesn't have internet access
or it's caused by private DNS resolution failed.

Bug: 113242081
Test: atest FrameworksNetTests
Change-Id: I710c88a4742f5fd56c39fc797d7fa3ad36dba553
2019-10-22 18:27:33 +08:00
Martin Stjernholm
e94548814c Merge "Remove unnecessary dependencies on ART internal libraries." am: 0616996614 am: 5f239b684f am: 36e489ee2d
am: 42ca5e6dd8

Change-Id: Ief1fda0e7bc6da454d24e49853f260d3a1989e50
2019-10-19 06:02:55 -07:00
Martin Stjernholm
1938f861d4 Remove unnecessary dependencies on ART internal libraries.
Bug: 133140750
Test: atest FrameworksNetTests
Change-Id: Id6817a2ae09eb6ecfc4c5c8dc08ade44a16d710b
2019-10-17 23:29:57 +01:00
paulhu
97c7ec6eee Merge "Remove @FlakyTest on testTcpBufferReset" am: 23d3603ab8 am: 382568d4bc am: d90c2d6fd1
am: 5ffbf73b8b

Change-Id: I41e30d81907e8a651d9bb982045276910944a4c2
2019-10-11 05:07:09 -07:00
Treehugger Robot
23d3603ab8 Merge "Remove @FlakyTest on testTcpBufferReset" 2019-10-11 11:06:14 +00:00
Chris Tate
684e81be36 Merge "Move PackageManagerInternal to services.jar" 2019-10-09 17:51:10 +00:00
Christopher Tate
d9f67bd78b Move PackageManagerInternal to services.jar
The one messy internal caller is the settings provider, so a new @hide
API on PackageManager was introduced to decouple the provider from
LocalServices.  That new entry point is only callable by uid 1000,
paralleling the previous system-caller-only availability.

Bug: 140833849
Test: system boots & runs normally
Change-Id: I93ae38b8f55db7864893a97795aea63014bf5e12
2019-10-08 15:49:43 -07:00
Valentin Iftime
a039e57ead API to detect which network interfaces support wake-on-lan
Add a new method in LinkProperties, isWakeOnLanEnabled() which returns
true if network interface is defined in config_wakeonlan_enabled_interfaces
string-array (config.xml)

Bug: 132705025
Test: atest LinkPropertiesTest & atest ConnectivityServiceTest
Change-Id: I3f7803aafd2f8eaf8aa18419b21339e15d4b7a0b
2019-10-08 13:03:30 +02:00
Chalard Jean
f7edecb54a Rename CallbackRecord to CallbackEntry
Test: FrameworkNetTests NetworkStackTests
Change-Id: I8f6ea8fb6879cf7c40396d92f13cb5e12cc45ee7
2019-10-07 13:00:50 +09:00
Chalard Jean
cc1381518d Merge "Decrease load-related flakiness in ConnectivityServiceTest" 2019-10-02 02:38:30 +00:00
Chalard Jean
5ea0f921bb Decrease load-related flakiness in ConnectivityServiceTest
Almost always this timeout is not waited anyway.

Test: ConnectivityServiceTest
Change-Id: I74376633d0ec8d93fb48609a4df73cad5fc5d508
2019-09-27 21:44:54 +09:00
Treehugger Robot
038d906ac8 Merge "Properly test TrafficController permissions on package updates." 2019-09-27 05:35:25 +00:00
Chalard Jean
4e9ecc6f34 Fix TestNetworkAgentWrapper flakiness
The underlying issue here is that before aosp/986824 the call to
waitForIdle is the local ConnectivityServiceTest function, but
after that patch TestNetworkAgentWrapper has an identically
named member that only wait for its own handler.

Bug: 141341704
Test: ConnectivityServiceTest --generate-new-metrics 100
Change-Id: I38709cc69ec7a261c1c6e008abe03d2882e2083d
2019-09-20 17:19:31 +09:00
Lorenzo Colitti
aa639e4ce8 Properly test TrafficController permissions on package updates.
The current test we have for a package changing TrafficController
permissions (i.e., INTERNET or UPDATE_DEVICE_STATS permissions)
is not realistic.

This is because the test simulates the update by removing and
adding the package. But TrafficController permissions are not
driven by broadcasts, they are driven by PackageListObserver,
and when an app is updated, PackageListObserver does not see a
remove and and add, but a single change event.

Add a new test for this.

Bug: 137864893
Test: new unit test added
Change-Id: I691b928f57c79c19dfb6ddb01983d55ef305c472
2019-09-20 11:58:43 +09:00
paulhu
3099fe24ef Remove @FlakyTest on testTcpBufferReset
After aosp/1111617 merged, the test pass rate of
testTcpBufferReset is 100% on Android Test Metrics. That means
this test is not flaky. So remove @FlakyTest annotation on the
test.

Change-Id: I1fb47a9fda294030c41dc53cf4bac3849a2f3d54
Fix: 140305678
Test: atest ConnectivityServiceTest#testTcpBufferReset
2019-09-10 17:44:33 +08:00
Steven Moreland
ff493b1344 Remove libhwbinder/libhidltransport deps
Since these were combined into libhidlbase.

Bug: 135686713
Test: build only (libhwbinder/libhidltransport are empty)
Change-Id: I136e4d4459bb8c3c5abf3c0758dd5ae14d0ad2a2
2019-09-09 16:28:55 +00:00
Xin Li
3e350bb864 Merge "DO NOT MERGE - Merge Android 10 into master" 2019-09-05 16:53:23 +00:00
Lucas Lin
f4aa4861e0 Merge "Fix flaky test - testPartialConnectivity" 2019-09-05 11:40:01 +00:00
lucaslin
e2bfa65a04 Fix flaky test - testPartialConnectivity
This timing issue is happened when test case already verified
NetworkMonitor#setAcceptPartialConnectivity() before
NetworkAgent send the CONNECTED state to ConnectivityService.
This test case expects that the
NetworkMonitor#setAcceptPartialConnectivity() will be invoked
when network state is CONNECTED in
ConnectivityService#updateNetworkInfo().

NetworkAgent communicates with ConnectivityService by
AsyncChannel. Before they connect to each other, the thread of
NetworkAgent is keeping idle, so waitForIdle cannot handle this
kind of case. Although they have connected to each other, but
they don't communicate with each other, waitForIdle() still
cannot handle this case. It means waitForIdle() can only handle
the case that NetworkAgent already connected to
ConnectivityService and NetworkAgent is communicating with
ConnectivityService. So, that's why waitForIdle() sometimes
doesn't work in this case, and the most simplest and right way
to fix this case is to wait the available callback then verify
the method.

Bug: 140306320
Test: atest FrameworksNetTests: \
      ConnectivityServiceTest#testPartialConnectivity \
      --generate-new-metrics 500

Change-Id: I64bfecbfe3c5776bd5c347a821f9127e79539c48
2019-09-05 11:39:20 +00:00
Remi NGUYEN VAN
f3ba3cd27b Add NetIdManagerTest
Add a simple test to verify that IDs loop correctly, that they skip used
IDs correctly, and throw when there is no remaining ID.

Test: atest com.android.server.NetIdManagerTest
Change-Id: I4c9518c725156d743286e062fd2eec1423a0459e
2019-09-04 15:57:58 +09:00
Remi NGUYEN VAN
ebe5298d84 Add ConnectivityServiceIntegrationTest
This test exercises the Connectivity <-> NetworkMonitor integration.
This CL only contains a simple test (network validates), but more
generally it sets up a test package that contains both services.jar
classes and NetworkStack classes, and runs NetworkStack components in
another process (using TestNetworkStackService).

ConnectivityServiceIntegrationTest runs in the test process and binds to
TestNetworkStackService to obtain TestNetworkStackConnector and to
NetworkStackInstrumentationService to obtain
NetworkStackInstrumentationConnector. That last connector allows the
test to mock NetworkMonitor HTTP Requests.

Test: atest FrameworksNetIntegrationTests
Change-Id: Ieca18e273609044cf6b1870d2f0dba33ca7b38d3
2019-09-04 15:57:47 +09:00
Guang Zhu
4416eecc3a Merge "Mark 3 tests as flaky."
am: f6c61f329a

Change-Id: Ie1c38e247ccfaa407d35cf6b6e28306d36cdccca
2019-09-02 12:03:12 -07:00
Treehugger Robot
f6c61f329a Merge "Mark 3 tests as flaky." 2019-09-02 18:44:24 +00:00
Guang Zhu
6665297de9 Mark 3 tests as flaky.
Bug: 140306320
Bug: 140305589
Bug: 140305678
Test: apct/net/networking_framework_unit_test
Change-Id: I5a288d7d64b3e95e0025c2c1f4a64ffe85cc3cd6
2019-09-01 21:37:04 -07:00