This CL allows the Carrier Config app to request restricted WiFi nework
by setting the correspoding subscription ID in the network request.
Bug: 315835605
Test: atest android.net.cts.NetworkRequestTest
atest ConnectivityCoverageTests:android.net.connectivity.com.android.server.connectivity.CarrierPrivilegeAuthenticatorTest
atest ConnectivityCoverageTests:android.net.connectivity.com.android.server.ConnectivityServiceTest
Change-Id: I237e692d092ff5f969ce4b7962f6d58099a6f3a9
Apps that target an SDK before {@link Build.VERSION_CODES.VANILLA_ICE_CREAM}
will not see networks with this capability unless they explicitly set the
NET_CAPABILITY_LOCAL_NETWORK in their NetworkRequests.
In this way, `NET_CAPABILITY_LOCAL_NETWORK` should be public.
Bug: 313000440
Test: None
Change-Id: I44d9cf3ecf5da471a627696f3d2680f35d4b122d
Handa Wangauthored and Motomu Utsumicommited 2024-02-07 17:23:42 +09:00
Per CTS review comment in aosp/2949385:
```
You might want to make this a bit larger, otherwise if some new error codes are added in the future in a mainline update, already released CTS test packages will start to fail.
That should be fixed by mCTS, but since mCTS is not in place yet, it's best to be safe
```
This commit moves the too-large error code check into unit test to avoid
potential CTS compatibility issues.
Bug: 323791003
Change-Id: If99191630e1044cb8f5ed189bf79567cd51c3905
This is needed to upgrade the android_logger crate from 0.12.0
to 0.13.3.
with_max_level provides the same functionality as with_min_level.
The renaming is admittedly confusing, but the new name is accurate
and it makes sense that they deprecated and then removed the
previously poorly named with_min_level.
See crate documentation [1] and code [2].
[1]: https://docs.rs/android_logger/0.12.0/android_logger/struct.Config.html#method.with_min_level
[2]: https://docs.rs/android_logger/0.12.0/src/android_logger/lib.rs.html#227
Bug: 322718401
Test: build and run CF with the change.
Test: m aosp_cf_x86_64_phone
Change-Id: Icbfe09b864ce3d52953bf93ca98b7a2db0990e68
Jeff Vander Stoepcommited 2024-02-05 07:47:42 +01:00
For ot-daemon to perform mDNS operations, we need to implement an AIDL
service NsdPublisher. MdnsPublisher forwards the calls to NsdManager.
For now, only register & unregster a service without a custom host is supported.
Bug: 320211657
Bug: 318323473
Test: atest CtsThreadNetworkTestCases
Change-Id: Ia392a0f57046f53973ac6bd6043dec915d170666
This commit handles the ot-daemon crash by automatically restarting it
and rejoin the network if ever joined.
This also fixes the address not deleted issue in TunInterfaceContorller.
Bug: 321540728
Bug: 309792480
Change-Id: I3ed466eb70818974a1e57f01456363bdf82915d5
The comment that "The very first posted task is to initialize the
service cache, so it will be always set in other tasks running on
the handler" did not consider that if the looper was provided by the
caller, it is possible for other tasks to run on it before the
serviceCache is initialized. In particular, if the caller calls
registerListener on the looper thread right after calling the
constructor, this would be executed before the posted initialization
task.
In practice this does not happen as MdnsDiscoveryManager is created in
the NsdService constructor, and any usage of it is on messages posted to
the NsdService handler thread after the constructor has been called; so
the service cache initialization does happen before any other
MdnsDiscoveryManager task.
As this is error-prone, just initialize the service cache before first
use on the handler thread, as it is only used for
createServiceTypeClient, which runs on the handler thread.
Test: atest
Change-Id: Ie341bb71ef327dceb4f0aa6fc2d241d6e9cbb900
The check*Permission methods are a bit error-prone because people
can forget to check the return value and expect that they behave
like the enforce* methods. This was pointed out before in some bugs.
This change adds @CheckResult annotation to enforce linter warning
and rename methods accordingly.
Test: TH
Fix: 279691948
Change-Id: Ibb0df6540fe0ed40289bb190b790130daaa2f763
Instead of calling HandlerThread#getLooper immediately after starting
it, do it asynchronously in onLooperPrepared.
getLooper blocks until the looper is ready, which may take a significant
amount of time.
This involves queueing tasks until the looper is ready, so the thread
selection logic is refactored to a dedicated class.
Test: atest
Change-Id: I0444bffe8e4bb4e3f29bd0271c7b24bc46a62cf6
netbpfload.mainline.rc is derived from:
initrc-doc/bpfloader-sdk34-14-U.rc,
except that it is 'override' instead of 'updatable' and uses
the apex netbpfload instead of the platform bpfloader.
Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I1ecf14e3d927ece136a0669a9b209be7112e55b5
Maciej Żenczykowskicommited 2024-01-31 22:36:39 +00:00