While dumpProtoLocked is called, InvalidProtocolBufferException
occurred because types are mismatched between platform side and
module side.
netstats.proto was moved into connectivity module, both the
platform(incident.proto) and the module uses protoc-gen-javastream
to generate the Java classes from it. It should be fine since
platform includes the source of the proto, and jarjar the generated
classess in the module to avoid conflict with platform.
Bug: 218566849
Test: adb shell incident 3001
adb shell dumpsys netstats --proto
atest CtsIncidentHostTestCases:IncidentdTest#testIncidentReportDumpAuto
Change-Id: I09cae385050e569b1da98ad7de0e226b13ee6895
Merged-In: I09cae385050e569b1da98ad7de0e226b13ee6895
CaptivePortalLoginActivity may load the page slowly in lower
performance devices. Test expects the login page to be loaded
within 10s. The flaky happened sometimes since loading page
took 10+ seconds and failed the test.
Extend the timeout from 10s to 20s to deflake the test.
Bug: 225800341
Test: atest CaptivePortalTest
Change-Id: I98ab3dbc78cb95eeee95d1c86ab286600c98390b
This change allows callers with the NETWORK_STACK or
PERMISSION_NETWORK_STACK to receive administrator UIDs. This will be
used by the VCN to ensure that administrator UIDs are accurately
populated, ensuring that the ConnectivityDiagnostics are triggered for
the VCN.
Bug: 193204385
Test: atest ConnectivityServiceTest
Change-Id: I3ecfbef6847dcc78adac05d0229719c97e3a220c
Switch to a bug template that assigns the correct group.
Consolidate into one file to make it easier for humans as well as
machines to figure out the ownership.
Remove me from per-file ownership; no longer relevant, causes
confusion.
Bug: 224454753
Test: Presubmit
Change-Id: I84bf472fe56fe3f5927a626bde06cdd8cee8353a
In some scenarios, Wi-Fi connectivity is disrupted after roam. If an application reacts to network errors by calling reportNetworkConnectivity(false), validation will immediately fail and the device will switch to cell data.
Add a way to ignore these validation failures for up to 10 seconds after Wi-Fi roams.
Bug: 216567577
Test: new unit tests
Change-Id: I58de486533bcc7c6e32b23536ae15bccb779e394
Revert "Change Ethernet API to use OutcomeReceiver"
Revert "Change network management listener to outcome receiver"
Revert submission 2028203-ethernet-outcomereceiver
Reason for revert: BuildMonitor investigating b/225169800
Reverted Changes:
I4c204a848:Change Ethernet API to use OutcomeReceiver
I7c46545a4:Change Ethernet API to use OutcomeReceiver
Id8fadfed9:Change network management listener to outcome rece...
Change-Id: Ibd1d70ac3fb691f9a777e59da4886ab60dc969ac
In S, the behaviour of createTunInterface and createTapInterface
changed so that they bring up the interface before returning it.
This makes it difficult to test code that brings interfaces up
itself, such as IpClient or EthernetManager, because the tests
cannot predict whether that code will see the interface up
or not. This leads to flaky tests and can even make it impossible
to reliably test some behaviour.
Add a method that allows the caller to specify whether to bring
up the interface or not.
Test: new codepath tested by other CL in topic
Test: existing codepaths already well-covered
Change-Id: I0f7698f4dad132f201db4203e65a78c6af564ab2
This change addresses API review feedback. In addition, it changes the
returned result from Network to the interface name. The current API
returning a Network object is racy and cannot be implemented correctly.
Users should instead use the ConnectivityManager#requestNetwork() API to
get hold of the Network for a given interface.
Bug: 220017952
Test: TH
Change-Id: I4c204a8489c0be006c00581d833f2bb46ae0e71d
* changes:
Add test for nullable IpConfiguration
Add Nullable IpConfiguration to ethernet update request
Replace assertParcelSane with assertParcelingIsLossless
* changes:
Fix the NPE thrown when starting Ethernet service in OS lower than T.
Remove the stub ethernet service from Connectivity module.
Update hidden API files for EthernetManager API move.
Provide a stub ethernet service to build in sc-mainline-prod.
Build ethernet framework source into framework-connectivity-tiramisu
Use int array for included and excluded uids so that uses
same data type as in PreferentialNetworkServiceConfig
Bug: 217365439
Test: ran connectivity service unit tests
Change-Id: I9ac7e6498df2fd20b8397b2c110296e019c7389e
When KEY_CARRIER_SUPPORTS_TETHERING_BOOL=false, it will behave as if
entitlement check failed and a system notifcation shows up if user
tries to turn on tethering from Settings UI.
Bug: 161206517
Test: manual
Change-Id: I78da390ecb0c8f4f68285ef16da80653f136c11e
Divide the NetworkPolicyManager API
notifyStatsProviderWarningOrLimitReached into the following two APIs:
1. notifyStatsProviderWarningReached()
2. notifyStatsProviderLimitReached()
Bug: 216474563
Test: atest NetworkStatsServiceTest NetworkPolicyManagerTest
NetworkPolicyManagerServiceTest OffloadControllerTest
Change-Id: I473b8b677d492a7076e63f445b3a3be24d25e14d
The stub ethernet service lib will be useless after removing all legacy
dependencies on ethernet-service.jar, so delete it from Connectivity
module as well.
Bug: 210586283
Test: m
Merged-In: Ica60df1140bf3f7345e61d642c9e9b706602c50b
Change-Id: Iadd1d6a4046a8960ec35f5d51ae5dc2f42eb3bfb
Applications may have an additional SDK sandbox process that should run
with the same network policy as the app itself. There is a 1:1 mapping
between appId and the SDK sandbox process that belongs to it; use that
mapping to set the same policy for SDK sandbox processes as for the app
that they belong to.
Bug: 215012578
Test: atest com.android.server.PermissionMonitorTest
Change-Id: Ibd2ada09c94d46e048f5731b90a721d8e85d3289
This CL also creates a fake ethernet-service.jar to ensure that
targets that depend on ethernet-service do not break.
Because ethernet-service.jar is on the system server classpath,
these classes cannot be in the com.android.server.ethernet
package, otherwise ConnectivityServiceInitializer will load
them instead of the real classes.
Test: m
Bug: 210586283
Merged-In: I6a4a0dc68233d4229d1cae4e5b196e287ef2ed5b
Change-Id: I591dcaf0fe6303cffa15aa0b869e429c626dc887
This is useful for link layers that disconnect but know they will
reconnect to a similar network soon, and do not want the device
to switch to another network until the reconnect happens. An
example is wifi switching to another network that is on a
different subnet without the device switching to cellular data.
This works by immediately destroying the network, so the link
layer can reuse the same interface name for the new network. It
would be possible to delay destroying the network until the new
network connects, but in practice this does not seem useful,
because the if the link layer reuses the interface, then the
interface will be undergoing reconfiguration, and will likely
not be usable for app traffic.
This CL also moves the call to onNetworkDestroyed into
destroyNativeNetwork. This is needed to ensure that the new
API calls onNetworkDestroyed even though most teardown
operations have not happened. This causes onNetworkDestroyed to
happen before the netId is marked free, but that shouldn't cause
any behavioural changes because netId allocation is an
implementation detail of ConnectivityService and is not
observable by apps or system components.
Bug: 216567577
Test: builds, boots
Test: atest FrameworksNetTests FrameworksNetIntegrationTests
Test: atest CtsNetTestCases:android.net.cts.ConnectivityManagerTest
Test: atest CtsNetTestCases:android.net.cts.NetworkAgentTest#testDestroyAndAwaitReplacement
Change-Id: I9f9e022fef66b31a29cce560413321075e992756
SpiUnavailableException.getSpi() is public API so it should be tested.
Test: CtsNetTestCases:IpSecManagerTest
Change-Id: I68856b80b0ec819b0603dfe0a06ff813be3c5dda