This provides some support for tests that want to test the new
onBlockedStatusChanged(Network, int) callback. This cannot be
implemented entirely in TestableNetworkCallback, because in
Kotlin, "override" is a mandatory keyword, but NetworkCallback
(which TestableNetworkCallback inherits from) only has the new
method in S, not R.
The unit tests in the other CL in this topic provide an idea of
how to do this. There may be more elegant ways to do it though.
Bug: 165835257
Test: new ConnectivityServiceTest tests in this topic
Change-Id: Ibdf36a6bc916bf247688c19bfd81f6b62d59bf03
Allow framework-connectivity to depend on net-utils-framework-srcs, and
add @hide annotations to classes that were missing it.
This allows depending on less classes than net-utils-device-common, and
avoids transitive dependency on androidx.annotations used by
net-utils-device-common (which itself depends on the public SDK).
Bug: 183600168
Test: m
Ignore-AOSP-First: needs manual cherry-picks
Change-Id: I89a18bb46311800fd6807dad5785f12648f165d9
NetworkCapabilities is included in framework-connectivity, so external
module cannot have dependencies on its hidden API. Move the method to
libs/net and rename it to inferRestrictedCapability so that external
module can use it by inculding the library.
Ignore-AOSP-First: to avoid merging conflict to internal
Bug: 178777253
Test: FrameworksNetTests
NetworkStaticLibTests
Change-Id: I51244048e31699b562b1444d88511e3a3da845ec
Keep the constants are only used by framework in TrafficStatsConstants
and move the others to NetworkStackConstants which is in libs/net.
Bug: 182349970
Test: FrameworksNetTests
NetworkStackTests
TetheringTests
Change-Id: I7b3a6ba6283a72cc3f2a727001f0f581dce5a7c0
Merged-In: I7b3a6ba6283a72cc3f2a727001f0f581dce5a7c0
The utility is @UnsupportedAppUsage, and also used by internal classes
like WifiTrackerLib or Mms, so it needs to be in a shared location.
Bug: 182859030
Test: atest NetworkStaticLibTests
Change-Id: Ia2be2ef62ea1e7dfdff1f54a14d8f2e282d36fca
The mocking of services was incorrect for services queried by class name
instead of service name.
Fix getSystemService mocking to cover both methods.
Bug: 181837977
Test: atest NetworkStaticLibTests
Change-Id: Ifc9bc26e85b5152754941bbe33bccdefff62195a
This is a near trivial copy of NaHeader & buildNaPacket()
Test: builds
Bug: 154669942
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I3b9b15e23317363bf9556b06ddecf8a2bf967c61
Keep the constants are only used by framework in TrafficStatsConstants
and move the others to NetworkStackConstants which is in libs/net.
Bug: 182349970
Test: FrameworksNetTests
NetworkStackTests
TetheringTests
Ignore-AOSP-First: this topic needs to be cherry-picked manually
to AOSP to avoid automerging differences.
Change-Id: I7b3a6ba6283a72cc3f2a727001f0f581dce5a7c0
This will increase test coverage numbers for Tethering until
TetheringPrivilegedTests can be put into coverage runs.
Bug: 182785371
Test: atest NetworkStaticLibTests
Change-Id: Id93e6190e76bfacfe17082848d40f161b3fcab6a
InetAddressUtils's parcelInetAddress and #unparcelInetAddress
methods do not correctly parcel scoped IPv6 addresses. Fix this
by using the same code that LinkProperties uses, and add a test.
Bug: 182785371
Test: atest NetworkStaticLibTests
Change-Id: Idc9fcbcf4b2b0746c19831fef68b0ddc206eb161
The corresponding class was moved to frameworks/libs/net, so the test
needs to be in the frameworks/libs/net tests too.
Bug: 182785371
Test: atest NetworkStaticLibTests
Change-Id: I761544ec0b2513bf0e3115fd0eaecf47efacda62
CompatUtil was missing return statements and falled back to S
behavior even on Q and R.
Bug: 179329291
Change-Id: I8efb8e56948383c29d476e0b090619bac156d372
Test: atest CtsNetTestCasesLatestSdk
LocationPermissionChecker was written to be used by multiple
connectivity modules, so it belongs in the frameworks/libs/net library.
The file is moved as-is with minor modifications in the test to avoid
usage of the privileged ActivityManager.getCurrentUser API.
Bug: 181837977
Test: atest NetworkStaticLibTests
Change-Id: I80cff14c06c3cab3e8f3bd1978c2951c4a3317c6
This follow-up change updates EtherType name in the Ethernet header
diagram, replaces "length" filed in the IPv6 header with "payloadLength",
and also make ND options constructor as package private to encapsulate
the constant params(e.g. ICMPv6 type/code).
Bug: 168868607
Test: atest NetworkStackIntegrationTest
Change-Id: Ia0500a7020fd9a85dce2a8c67c21b00b238a4e8d
The connection service will become the main line module.
It is difficult to include BitUtils in the module. and so
Move the hidden API needed in BitUtils to NetworkCapabilitiesUtils.
Bug: 170598012
Test: atest NetworkStaticLibTests
Change-Id: I56286b2991ea9902f9ed78624e2a592138dd4315
ByteArray is the unique type whose actual size might be different
with the size delcared in the annotation, e.g, user initializes an
object manually, or mutates the byte array after parsing from
ByteBuffer. Therefore, checking the length of byte array is required
before writing the array value to output bytes array or ByteBuffer.
Bug: 163492391
Test: atest NetworkStaticLibTests
Change-Id: I28936a2afbe60dd2dadac803d08062df153b2588
indexOf() is based on the current any() implementation, but gives more
flexibility as the caller can know the position of the found element.
Bug: 174541037
Test: atest NetworkStaticLibTests
Change-Id: I1d679b8369aeee359516bb5ca4275c744a606c3a
To keep the tests passing on Q and R, add a CompatUtil class that will
keep creating StringNetworkSpecifiers (now removed) instead.
Bug: 179329291
Test: atest CtsNetTestCases
Merged-In: I14c1ac7cee0ec32353b38ebca4ae6c5cd2e25541
Change-Id: I14c1ac7cee0ec32353b38ebca4ae6c5cd2e25541
This reverts commit 405c1bfca93fa25ae1616a93ee6e2a1f76d87d1e.
Bug: 168868607
Test: atest NetworkStackIntegrationTest
Reason for revert: Roll forward the previous change and try to merge it one by one instead of using the topic, which should avoid the build broken on the sc-dev branch due to the deferred auto-merge process.
Change-Id: I751fbd9d978ed60206bab009212f621fe902f321
The utilities replace the ones from IpClientIntegrationTests. Original
Kotlin implementation is aosp/1440812.
Bug: 168868607
Test: atest NetworkStackIntegrationTest
Change-Id: I1c050ae42d99f541eeaa3dcd80a53574ab9bc1c3
Instead of having the cached version field protected, which is only
usable by DeviceConfigUtilsTest, have a public method to reset it to -1
so that other tests exercising feature flags can reset it before and
after running.
Bug: 173068192
Test: atest NetworkStaticLibTests
Change-Id: I8f5be3c91b2a47070507d5bf263e2e5d7d9d9d14