Make Parameterized compatible with SetFeatureFlagsRule. If both
are used, the method names seen by SetFeatureFlagsRule may
be followed by [\d+] in Parameterized style, leading to a method
not found exception in SetFeatureFlagsRule. With this patch, both
can be used at the same time.
Test: add a Parameterized rule to CaptivePortalLoginActivityTest
see how it fails with MethodNotFoundError without this patch
see how it works as expected with this patch
Change-Id: I3fe1e63600dd792bc290ed130b8598b49f2b95e1
Currently, upstream network validation is always required, even
for type None. This is unnecessary for APF and mDNS tests, as
they can be executed on local networks. Additionally, some
devices lack the ability to perform network validation when the
hotspot is enabled due to hardware limitations. Therefore, remove
the validation check for upstream type None.
Test: m connectivity_multi_devices_snippet && \
atest CtsConnectivityMultiDevicesTestCases:ConnectivityMultiDevicesTest
Bug: 335368434
Bug: 396551848
Change-Id: If2a96cf9d62e37fc27be6193f9ce9b9cfc8613df
Junyu Laiauthored and Paul Hucommited 2025-02-17 21:22:19 -08:00
Whenever LinkProperties is added/modified/removes, we are updating local
network prefixes for the modified interface/addresses. These prefixes
are used by BPF egress and ingress cgroup hooks to disallow local
network packets if the calling application do not have required
permission.
Bug: 369815823
Test: Manually tested
Test: atest ConnectivityCoverageTests:android.net.connectivity.com.android.server.BpfNetMapsTest
Test: atest ConnectivityCoverageTests:android.net.connectivity.com.android.server.CSLocalNetworkProtectionTest
Change-Id: Ie592ecb948ae05a0a73f47d0573560eb705f6bcf
This commit updates the timerfd JNI function calls to use
ErrnoException instead of IOException to handle exceptions
correctly.
Bug: 393169546
Test: m
Change-Id: I56385a0e9f20c778eb2c2d2c4fe43cbf12753d93
Ignore this error code during DEL operations.
It is returned when the specific thing to be deleted
is not found and is therefore a valid response.
Gets rid of 30+ logs worth of:
E TcUtils : NLMSG_ERROR message return error: -2
during netd startup (cleanup phase).
Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ie542f8ff418dbed604eea5b31b87f9b974ccdbcb
Maciej Żenczykowskicommited 2025-02-06 12:56:09 -08:00
TetheringManagerTest#testRequestLatestEntitlementResult in particular
set carrier config overrides without waiting for the override to be
applied, which caused flakes.
Wait for the override to be applied when adding and clearing them.
This makes the logic to wait for the update in NetworkAgentTest
unnecessary.
Bug: 391966043
Test: atest
Change-Id: I371ff5742627ca0b1b6eb6be5f0fd19a0487ae83
PERMISSION_INTERNET, PERMISSION_UPDATE_DEVICE_STATS,
PERMISSION_UNINSTALLED and NO_PERMISSIONS are used only internally
and don't need to be maintained as part of the public interface.
Bug: b/326383676
Test: PermissionMonitorTest
Change-Id: If906382965c8593f9078278af37cb0bc2825117f
This rtnl message is used with sendOneShotKernelMessage() which expects
that kernel returns an ACK. We need to set NLM_F_ACK explicitly for
that.
Bug: 390722214
Bug: 392491075
Test: Manually run the affected test, no more exception with EAGAIN.
Change-Id: I7ef9497461a8e89e9f7f7fe399562b2d8ede14a9
Currently IpClient uses netd to set MTU for interfaces while the
usage of netd can bring some unexpected side effects and execute in
slower speed.
This change moves forward with one less usage of netd to use netlink
directly set MTU in IpClient.
This patch adds support in netlink utils to set MTU for interfaces.
Bug: 383663804
Test: Manually call and make sure interface MTU is updated
Test: atest NetworkStaticLibTests
Change-Id: Id73d78156d1a560262e42540a3503d059a172e34
We have been seeing frequent EAGAIN errors during i/o operations in
tests. This change increases the timeout by 10x to hopefully minimize
these failures.
Per maze@: these methods are dependent on rcu synchronization, which
can take a long time on a busy system. Blocking the thread is
most likely always preferable over failing the operation.
Bug: 390722214
Test: TH
Change-Id: I96aa5a583c0c7558a8ea945eca5e5cb8f1c35c69
Some tests use CarrierConfigManager#overrideConfig(subId, bundle) to set
some configs, and then overrideConfig(subId, null) to reset the
override. However this also resets overrides that may have been set by
the instrumentation, such as ConnectivityTestTargetPreparer /
CarrierConfigSetupTest.
Avoid this by providing a common utility to set and tear down carrier
config, which reset the overrides to the original setting value instead
of clearing all overrides.
Test: atest
Bug: 253698734
Change-Id: Ia25b28d551b62205c52f91e0ffad1b94710c0828
Several extra callbacks are sent after the first timer expiration
notification. This occurs because data from the FileDescriptor
must be read after the timer expires. Otherwise, expiration
callbacks will continue to be sent, notifying of unread data.
This change also adds TFD_NONBLOCK to timerfd creation to ensure
reading safety.
Test: Manually verify that the callback is sent only once
Change-Id: I30559ed93d0a742b98a58d33d83723f7a155fbd9
This change adds missing dependancies of CtsNetTestCases to the automotive-general-tests zip
Change-Id: Iba2da89b380214ad785d504a484b0b72b508814d
BUG: 382649664
Flag: TEST_ONLY
Filip Zakrzewskicommited 2025-01-16 15:25:33 -08:00
IWLAN on U 24Q2 release may cause this test to fail, but this was
supposed to be addresed by CarrierConfigSetupTest already.
Add diagnostics on failure to figure out if the IWLAN config is as
expected.
Test: atest
Bug: 253698734
Change-Id: Iddc8975bb473979f9c2769cd178ef75644b82aa7
Instead of only waiting for an IPv6 address, wait for global IPv6
addresses to be routable.
This mirrors the check used for AI_ADDRCONFIG in DnsResolver. Without
this, the later call to network.getAllByName may only return IPv4
addresses if IPv6 global addresses are not reachable.
Test: atest
Change-Id: I2cedd58431eb8abeb5ffd9fb8daedb061586373b
Bluetooth apex name has changed from com.android.btservices to
com.android.bt. We now need to update the reference in the code.
Bug: 383863941
Flag: Exempt build infra
Test: m .
Change-Id: I92167eb785858565d28b1e72b3b98150378975a6
William Escandecommited 2025-01-09 12:25:16 -08:00
When a terrible error occurs, this change ensures that it is both logged
using Log.wtf() and reported via a dedicated metric. This dual approach
provides comprehensive error information for debugging in dogfood
environments (Log.wtf()) and tracks the occurrence of these errors in
production (via metrics).
Test: TH
Change-Id: Ic376f3789ab0cc9b094e79301849492143ed777c
This reverts commit 3d51a99dc8.
Reason for revert: Does not close the timerfd object properly, which may cause a memory leak.
Change-Id: I25d7da13591696c9dfda60ee0fdd2574dbcdf337
Since the requestId is generated by CS, the only way to get a hold of it
is by intercepting the onNetworkNeeded() callback.
Test: TH
Change-Id: I8d66d287633151f9cfe7053c2b934121d2c96dbc
Currently EthernetTracker uses netd to interact with interfaces, such as
retrieving all interfaces, updating interface configurations etc.
However, the usage of netd can bring some unexpected side effects, such
as clearing v4 address when toggling on/off interface.
This change moves forward with one less usage of netd to use netlink
directly to set interface up/down in EthernetTracker.
This patch adds support in netlink utils to get/set interface flags and
added related unit test.
Bug: 379021505
Test: atest NetworkStaticLibTests
Change-Id: I5f82781663ba340588450cceea55caec4e3991a8