Commit graph android_packages_modules_Co.../tests/unit/java/com/android
Message SHA1
Merge "Revert "Partially enforce permission when calling getNetworkInfoForUid""
Treehugger Robot   authored and   Gerrit Code Review   commited 2022-11-10 12:13:56 +00:00
016269fbb8
Revert "Partially enforce permission when calling getNetworkInfoForUid"
This reverts commit 163cb98751.

Reason for revert: b/257407201

Change-Id: I412140117d25f4a4b439fff5aaa50785f33b0689

Junyu Lai   authored and   Gerrit Code Review   commited 2022-11-10 03:19:06 +00:00
d0cf7784dc
Merge "[Feature sync] Fix issue where multiple SRV records with same host are not fully resolved"
Paul Hu   authored and   Gerrit Code Review   commited 2022-11-09 06:38:22 +00:00
b800e5903b
Merge "Allow USE_RESTRICTED_NETWORKS for registerSystemDefaultNetworkCallback"
Treehugger Robot   authored and   Gerrit Code Review   commited 2022-11-09 05:49:54 +00:00
31ee1c1121
Merge "Notify NetworkStatsService if TEMPORARILY_NOT_METERED changed"
Aaron Huang   authored and   Gerrit Code Review   commited 2022-11-08 11:55:53 +00:00
4bf6a92a0a
Notify NetworkStatsService if TEMPORARILY_NOT_METERED changed
Currently 5G usage includes both metered and unmetered usage.
To support 5G unmetered usage metrics, unmetered usage should
be separated from the 5G usage. Thus, ConnectivityService needs
to inform NetworkStatsService if TEMPORARILY_NOT_METERED has
changed. Then NSS will count temporarily not metered usage as
unmetered.

Bug: 222339311
Bug: 183776809
Test: FrameworksNetTests:ConnectivityServiceTest
Change-Id: I0c7e1eb98925184f36e322e09b4d3d8c6f056fa6

Aaron Huang   commited 2022-11-08 16:01:54 +08:00
c067c87672
Merge "Make onPackage[Added|Removed] as non-public methods"
Paul Hu   authored and   Gerrit Code Review   commited 2022-11-07 01:35:11 +00:00
bd92295269
Merge "Update tests for new isValidationRequired args"
Treehugger Robot   authored and   Gerrit Code Review   commited 2022-11-04 11:14:41 +00:00
94ec30203b
Update tests for new isValidationRequired args
Bug: 253989196
Test: atest NetworkMonitorTest

Change-Id: I70633d748cc09a7f695cdc2b4c835d5bf187ec3d

Remi NGUYEN VAN   commited 2022-11-04 17:09:50 +09:00
21093ce089
Merge "Fix errorprone warnings that should be errors"
Treehugger Robot   authored and   Gerrit Code Review   commited 2022-11-02 19:38:39 +00:00
edceea23f4
Fix errorprone warnings that should be errors
This commit is part of a large scale change to fix errorprone
errors that have been downgraded to warnings in the android
source tree, so that they can be promoted to errors again.
The full list of changes include the following, but not all
will be present in any one individual commit:

BadAnnotationImplementation
BadShiftAmount
BanJNDI
BoxedPrimitiveEquality
ComparableType
ComplexBooleanConstant
CollectionToArraySafeParameter
ConditionalExpressionNumericPromotion
DangerousLiteralNull
DoubleBraceInitialization
DurationFrom
DurationTemporalUnit
EmptyTopLevelDeclaration
EqualsNull
EqualsReference
FormatString
FromTemporalAccessor
GetClassOnAnnotation
GetClassOnClass
HashtableContains
IdentityBinaryExpression
IdentityHashMapBoxing
InstantTemporalUnit
InvalidTimeZoneID
InvalidZoneId
IsInstanceIncompatibleType
JUnitParameterMethodNotFound
LockOnBoxedPrimitive
MathRoundIntLong
MislabeledAndroidString
MisusedDayOfYear
MissingSuperCall
MisusedWeekYear
ModifyingCollectionWithItself
NoCanIgnoreReturnValueOnClasses
NonRuntimeAnnotation
NullableOnContainingClass
NullTernary
OverridesJavaxInjectableMethod
ParcelableCreator
PeriodFrom
PreconditionsInvalidPlaceholder
ProtoBuilderReturnValueIgnored
ProtoFieldNullComparison
RandomModInteger
RectIntersectReturnValueIgnored
ReturnValueIgnored
SelfAssignment
SelfComparison
SelfEquals
SizeGreaterThanOrEqualsZero
StringBuilderInitWithChar
TreeToString
TryFailThrowable
UnnecessaryCheckNotNull
UnusedCollectionModifiedInPlace
XorPower

See https://errorprone.info/bugpatterns for more
information on the checks.

Bug: 253827323
Test: m RUN_ERROR_PRONE=true javac-check
Change-Id: I7625fa386afe93823b97cb2ecb8fd09a5856c05b

Cole Faust   commited 2022-11-02 10:13:14 -07:00
22f05839f5
Allow USE_RESTRICTED_NETWORKS for registerSystemDefaultNetworkCallback
Some callers (e.g. iwlan) need to learn about system default
network but they cannot have NETWORK_SETTINGS permission.
To allow them to use this API but prevent from misuse by
unprivileged apps, enforce USE_RESTRICTED_NETWORKS for this API.

Test: atest com.android.server.ConnectivityServiceTest#testRegisterPrivilegedDefaultCallbacksRequireNetworkSettings android.net.cts.ConnectivityManagerTest#testRegisterNetworkCallback
Fix: 242456635
Change-Id: I80ab27445af874328c9c0f4814a8fbf035ae5df4

Junyu Lai   commited 2022-11-02 14:16:36 +08:00
aa4ad8c2d1
Use expect instead of expectCallback
This use was checked in after the cleanup that changed the latter into the former

Bug: 157405399
Test: FrameworksNetTests
Change-Id: I2b27ad712ee218322209bbc6af6e8147a0a41430

Chalard Jean   authored and   Jean Chalard   commited 2022-11-02 05:40:03 +00:00
0e184ac0dd
Merge "Fix policy leak by deleting forwarding security policies"
Yan Yan   authored and   Gerrit Code Review   commited 2022-11-02 00:47:09 +00:00
18ddc7daab
Test dynamically calculated VPN MTUs
This change adds testing for VPN MTU calculations, and in particular
cases where IPv6 is not supported due to MTUs being too small.

Bug: 245612827
Test: atest FrameworksNetTests:VpnTest
Change-Id: Ib064e6670244cf3b53b5d03bd62c86b2139ff32a

lucaslin   authored and   Lucas Lin   commited 2022-11-01 08:09:37 +00:00
afe76f3b77
Fix policy leak by deleting forwarding security policies
Fix the policy leak by deleting forwarding policies when deleting
the IPsec tunnel interface.

Bug: 254566085
Test: atest IpSecServiceParameterizedTest (new tests added)
Change-Id: I29dd4810abb978fe886776b2fbacdfc74325436d

Yan Yan   commited 2022-10-31 22:51:08 +00:00
f4eceba0a9
Merge "[Feature sync] Fix flaky test in MdnsSocketClientTests"
Treehugger Robot   authored and   Gerrit Code Review   commited 2022-10-28 08:25:08 +00:00
9a726855f2
[Feature sync] Fix flaky test in MdnsSocketClientTests
The interface index is only propagated if there is an A/AAAA
record in the response. Since the responses here are not entirely
controlled in the test, we just want to verify that we get a
response with the target we expect.

Verified by running the test 1400 times via --runs_per_test flag.

Bug: 254155029
Fix: 255922416
Test: atest MdnsSocketClientTests#startDiscovery_andPropagate\
      InterfaceIndex_includesInterfaceIndex --iteration 100
Change-Id: Icb0fe7a58a1e626b7f781ff24c2389a3095d4dc6

Paul Hu   commited 2022-10-28 10:26:15 +08:00
cd04d83e68
ClatCoordinatorTest: override test generateIpv6Address correctly
aosp/2267683 adds the new param "mark" in generateIpv6Address and
TestDependencies#generateIpv6Address needs to override for this change
correctly.

Change-Id: Ia526bcdf80a428948d55a28bd5adec405530a634
Test: TH

Nucca Chen   commited 2022-10-27 10:11:28 +00:00
f76b8d67f8
Merge "Notify NetworkStats only when interfaces changed in updateLinkProperties"
Junyu Lai   authored and   Gerrit Code Review   commited 2022-10-27 06:49:33 +00:00
0f4cb380f0
Merge "Test session reset on VPN data stall"
Chiachang Wang   authored and   Gerrit Code Review   commited 2022-10-27 05:13:45 +00:00
c39c3759ca
Test session reset on VPN data stall
Add tests to verify ike session being triggered when data stall.

Bug: 238692379
Test: atest FrameworksNetTests
Change-Id: I656ea0973072b0bbdd54863eccbe105adb02d6ad

chiachangwang   commited 2022-10-26 03:05:59 +00:00
f60356f273
Merge "[Feature sync] Propagate network interface index to MdnsServiceInfo"
Paul Hu   authored and   Gerrit Code Review   commited 2022-10-26 01:17:10 +00:00
e3aa5c0e06
Merge "[Feature sync] fix handling arbitrary bytes in TXT value"
Paul Hu   authored and   Gerrit Code Review   commited 2022-10-26 01:05:55 +00:00
df7335f3cd
Merge "Bypass VPN lockdown for clat initialization"
Maciej Żenczykowski   authored and   Gerrit Code Review   commited 2022-10-25 07:43:12 +00:00
9592fa89b3
Notify NetworkStats only when interfaces changed in updateLinkProperties
In ConnectivityService, updateLinkProperties calls NetworkStats
even though the ip address or interface name has not changed and
only the tcp buffer size has changed. This is noisy and could
be problematic when RAT change occurs frequently, since when
RAT changes tcp buffer size configuration also changes.

This CL also fixes a wrong nullability annotation where the oldLp
of updateLinkProperties could be null when updateNetworkInfo
is called.

Test: atest ConnectivityServiceTest#testStatsIfacesChanged
Fix: 232048480
Change-Id: Ic226eb4a8aa1f38cba293510813f1cb55f0ea658

Junyu Lai   commited 2022-10-25 15:27:53 +08:00
2ed7d4182a
Merge changes I0789d9bd,Idf4cf74a
* changes:
  Disable ignoring validation on roam just after boot.
  Minor cleanups for ignore validation failures after roam tests.

Treehugger Robot   authored and   Gerrit Code Review   commited 2022-10-25 02:15:29 +00:00
a40faea28d
Bypass VPN lockdown for clat initialization
This allows clat to initialize properly when VPNs are configured
with "Block connections without VPN", rather than to error out with
"no IPv6 addresses were available for clat".

This issue primarily affects particular mobile networks configured
with NAT64 (without direct IPv4 connectivity).

Bug: 255040839
Change-Id: I4a8ee0295e0f5d1e330f7529856347b8bd10360c

t-m-w   authored and   Maciej Żenczykowski   commited 2022-10-25 01:54:51 +00:00
130e75b0ab
Merge "Improve tests for notifyIfacesChangedForNetworkStats."
Lorenzo Colitti   authored and   Gerrit Code Review   commited 2022-10-24 23:35:35 +00:00
5edd296baa
Disable ignoring validation on roam just after boot.
shouldIgnoreValidationFailureAfterRoam will incorrectly return
true in the first few seconds after boot even if the network
never roamed. This is extremely unlikely to happen, but add a
check for that just in case.

Fix: 230450214
Test: new unit test
Change-Id: I0789d9bdaa0bd9e78673e8f4248a2ca610052f1e

Lorenzo Colitti   commited 2022-10-24 23:28:56 +09:00
580d0d53be
Minor cleanups for ignore validation failures after roam tests.
- Confirm that the default network switches to cell for the right
  reason.
- Test the behaviour on T as well (always disabled).
- Minor code cleanups.

Bug: 216567577
Test: test-only change
Change-Id: Idf4cf74aec3d40246f67519d211dbd45e739a6dc

Lorenzo Colitti   commited 2022-10-24 23:28:54 +09:00
6bf9bb3e58
[Feature sync] Fix issue where multiple SRV records with same host are not fully resolved
For Matter, a device may have a single host with multiple A/AAAA
records, but multiple PTR/SRV pairs that represent different
operational identities for the same device.

Currently, MdnsResponseDecoder looks for only a single matching
MdnsResponse by hostname when looping through the A/AAAA records
(which will leave the second response incomplete). Updated with a
flag that will allow returning all MdnsResponses which match the
given hostname and update the Inet records for all responses.

Bug: 254155029
Test: atest FrameworksNetTests
      Verified with a Matter device with two identities that the
      second response is incomplete without this change.
      Additionally, added unit tests to verify the before and
      after behavior with a real packet capture from the device.
Change-Id: Ic4a101b305c039f6cd7fd557246a2bfdaf0c781a

Paul Hu   commited 2022-10-24 07:29:44 +00:00
e62d151d1e
[Feature sync] Propagate network interface index to MdnsServiceInfo
For Matter, in addition to the InetAddress and port, we also need
to know the associated NetworkInterface index. With this change,
the interface index is propagated from the MdnsSocketTypeClient
through to MdnsServiceInfo based on a flag (defaulting to -1 for
unspecified, if the flag is disabled).

Validated end-to-end against a commissioned Matter device,
enabling the flags, verifying the returned network index against
an adb shell 'ip link show' output.

Bug: 254155029
Test: atest FrameworksNetTests
Change-Id: I96e804b32cdeeff3ed22da35a030df4d5dbb179a

Paul Hu   commited 2022-10-24 06:41:50 +00:00
6540583f08
[Feature sync] fix handling arbitrary bytes in TXT value
RFC 6763 defines that TXT value can accept both utf-8 string and
binary data. Current implementation will always cast the TXT
value to a utf-8 string and will cause data lose when there are
non-utf-8 chars in the TXT value. This commit fixes this by
having the browser passing the TXT values back as byte[].

Also fixed the TXT key&value parsing issues per RFC 6763
section 6.5: accept cases of no '=' and reject empty key.

Bug: 254155029
Test: atest FrameworksNetTests CtsNetTestCases
Change-Id: I4b755e60ad6e59db19faa41556dd214993d73896

Paul Hu   commited 2022-10-24 06:03:50 +00:00
e231650e34
[CC05] Replace expectCallback* with expect
See CC03 (aosp/2255619) for details

Test: CtsNetTestCases
      FrameworksNetIntegrationTests
      FrameworksNetTests
Bug: 157405399
Change-Id: I0fd99561757bd76c073a050d511c668270ccb2b7

Chalard Jean   commited 2022-10-21 11:46:27 +09:00
90143e475f
Merge "[CC02] Expect losing explicitly"
Jean Chalard   authored and   Gerrit Code Review   commited 2022-10-19 00:22:48 +00:00
d6317fbe77
[CC02] Expect losing explicitly
Before this patch, ConnectivityServiceTest#TestNetworkCallback
relies on TestableNetworkCallback calling this overridden methods
for all expectCallback calls. This is very confusing :
- The code for TestableNetworkCallback might be refactored so it
  no longer calls this, we'd lose the checks and nobody would
  notice.
- Anyone using TestableNetworkCallback instead of
  TestNetworkCallback would get a different behavior but would
  not notice as the interface for these two classes is exactly
  the same

This is also bad for performance because all callback checks will
always look whether it's a check for LOSING, which is rare.
This patch also only generates the error message when the error
actually happens.

Test: ConnectivityServiceTest
Bug: 157405399
Change-Id: Ic9566b815dc4f9b001986ed1376d31a1b97ac8c5

Chalard Jean   commited 2022-10-18 17:52:56 +09:00
cea002351d
Merge "Filter ifaces for uid operations value before combine"
Aaron Huang   authored and   Gerrit Code Review   commited 2022-10-18 06:58:20 +00:00
151894e282
Filter ifaces for uid operations value before combine
Currently, the stats returned by getNetworkStatsUidDetail()
does not filter iface for mUidOperations, it will cause this
API returns the stats that might contain data with unexpected
iface. Thus filter iface for mUidOperations before combining
it into the return stats.

Bug: 235444141
Test: FrameworksNetTests
Change-Id: I81aaacb5682d69022e521a793516373037510742

Aaron Huang   commited 2022-10-17 15:41:52 +08:00
af1b47c2ce
Merge "Add logs for changes in capabilities and score"
Jean Chalard   authored and   Gerrit Code Review   commited 2022-10-17 05:54:39 +00:00
bda6a2d310
Merge changes Icf3df3aa,I92adad60
* changes:
  Add sEnableJavaBpfMap value to the dump
  Move CookieTag map dump to BpfNetMaps

Motomu Utsumi   authored and   Gerrit Code Review   commited 2022-10-17 04:23:36 +00:00
403d7d7589
Add logs for changes in capabilities and score
This will be useful for diagnosing default network changes.

Logs may look like, for example :
Update capabilities for net 100 : -NET_CAPABILITY_OEM_PAID+NET_CAPABILITY_TRUSTED
Or :
Update score for net 100 : -POLICY_EVER_EVALUATED+POLICY_IS_VPN+POLICY_IS_DESTROYED

Test: FrameworksNetTests
      manual
Change-Id: Ic4788c599573aae9daeca995b8853800aaaba0b8

Chalard Jean   commited 2022-10-14 14:32:38 +09:00
86317d8bb4
Improve tests for notifyIfacesChangedForNetworkStats.
Add code to verify which networks are passed in, and check that
the default interface appears in the LinkProperties of one of the
snapshots.

Test: test-only change
Change-Id: I3c1a483b89564b1c994b8e644ece5b903f549475

Lorenzo Colitti   commited 2022-10-13 16:06:54 +09:00
0df40f3eaf
Merge "Test MOBIKE trigged while VPN data stall"
Chiachang Wang   authored and   Gerrit Code Review   commited 2022-10-12 14:04:39 +00:00
98a35775cd
Merge "Move Interface stats map dump to NetworkStatsService"
Motomu Utsumi   authored and   Gerrit Code Review   commited 2022-10-07 10:27:04 +00:00
480ddf35f4
Merge "Partially enforce permission when calling getNetworkInfoForUid"
Treehugger Robot   authored and   Gerrit Code Review   commited 2022-10-07 04:38:30 +00:00
d577c39663
Partially enforce permission when calling getNetworkInfoForUid
Test: atest ConnectivityServiceTest#testGetNetworkInfoForUid
Change-Id: Ie0ac289e77a865cf3cc98a6a2bbd5b25cf402622

Junyu Lai   commited 2022-10-06 10:40:57 +08:00
163cb98751
Merge "Fix the test flake on ConnectivityServiceTest"
Treehugger Robot   authored and   Gerrit Code Review   commited 2022-10-05 11:23:32 +00:00
bc5a46e564
Move CookieTag map dump to BpfNetMaps
Also removes dump tests in TrafficController

Bug: 217624062
Test: atest BpfNetMaps TagSocketTest
Change-Id: I92adad60c55443435d7c7a0bfc84b38162fd51b0

Motomu Utsumi   commited 2022-10-05 18:28:13 +09:00
ef546a9bd5
Move Interface stats map dump to NetworkStatsService
Bug: 217624062
Test: dumpsys netstats, atest NetworkStatsServiceTest
Change-Id: Ie0357a79925c0bbb34aa05442f727c776f434f88

Motomu Utsumi   commited 2022-10-05 17:33:02 +09:00
809a316035