Commit graph android_packages_modules_Co.../framework-t
Message SHA1
Add RemoteAuthService
Add RemoteAuthService APIs and Stubs (hide) for Settings of D2DA

This CL introduces new SystemApi allow user to discover remote devices
compatible to be registered as remote authenticators via RemoteAuthManager

Design doc: go/remote-auth-manager-fishfood-design

Test: built successfully.
Bug: 290092977
API-Coverage-Bug: 294934095
Change-Id: Iaaae1126065fdc3db469eeb8d85ac654b8199a12

Igor Zaslavsky   commited 2023-08-24 17:50:11 +00:00
ec344f4c18
Merge "[Thread] move Thread into com.android.tethering" into main
Kangping Dong   authored and   Gerrit Code Review   commited 2023-08-23 08:37:38 +00:00
0dc49df9a4
[Thread] move Thread into com.android.tethering
Bug: 296211911
Change-Id: Ifd4f7cd06f1aeaba739d27d2328e89031ca73235

Kangping Dong   commited 2023-08-23 14:28:50 +08:00
e7fef8938a
Merge "remove unused TcpTx/RxPackets java & jni constants" into main
Maciej Żenczykowski   authored and   Gerrit Code Review   commited 2023-08-18 14:49:40 +00:00
359dacfd26
Merge "simplify tcpTx/RxPackets" into main
Maciej Żenczykowski   authored and   Gerrit Code Review   commited 2023-08-18 14:45:56 +00:00
b4870c4ce2
Merge "Add remoteauth to API owners" into main
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2023-08-15 01:55:11 +00:00
0a49f9619f
Add remoteauth to API owners
Similarly to Nearby, remoteauth is expected to regularly need to change
the API files.

Import the existing owners file for that purpose.

Test: m
Change-Id: I4b900481df3bf505a8209e5370dc4bc4c928dbee

Remi NGUYEN VAN   commited 2023-08-14 20:06:03 +09:00
a2009eaeec
remove unused TcpTx/RxPackets java & jni constants
(is this a valid change from hiddenapi perspective?)

Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I2dc1c54c56a628770149382f1e25b90a71f62167

Maciej Żenczykowski   commited 2023-08-13 09:32:33 +00:00
6f0ec43200
simplify tcpTx/RxPackets
On T+ this is mainline code, and the bpf program (netd.c)
does not support collecting tcp specific stats.

(note: this *is* a behaviour change, as it currently
just always returns 0, but UNSUPPORTED/-1 seems to make
more sense)

Test: TreeHugger
Bug: 294604315
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ifda15e67d9167a2be98ab6f4e3817ff7c0bb3fea

Maciej Żenczykowski   commited 2023-08-13 09:31:53 +00:00
66645a8d68
Enable service offload API
API-Coverage-Bug: 282618639
Bug: 269240366
Test: atest CtsNetTestCases
Change-Id: I7ac72b675ff3715891f31bc03c453e14b1264e40

Yuyang Huang   commited 2023-08-04 19:24:01 +09:00
00cf7eda31
Add callbacks for service offload
Components that can provide offload like IpClient (packet
filter offloading) can use the API to register a callback to be notified
when offload is necessary.

Bug: 269240366
Test: atest CtsNetTestCases
Change-Id: I8080702f5b530001b88e79e504f4722ac01bc576

Yuyang Huang   commited 2023-08-04 19:22:15 +09:00
33fa4d268c
Deduplicate items after clear interface in NetworkStats
Follow-up from commit Ie60829a65d0d9b5b63ad353695a820c0586e3665,
the interface field was cleared before returning the result to
the caller. However, this can cause problems in the
NetworkStats#subtract method. If the interface field is cleared,
the findIndexHinted method can match to a wrong entry.
This is because the keys of multiple entries will now be the
same. This can cause the subtract result to be unexpectedly
large and the return value of getUidStatsForTransport to be
mismatched with the values retrieved from other APIs.

Test: atest FrameworksNetTests:android.net.connectivity.com.android.server.net.NetworkStatsServiceTest \
      FrameworksNetTests:android.net.connectivity.android.net.NetworkStatsTest
Bug: 290728278
Change-Id: I891ab29b8a2902663febc7c32b04417caf510926

Junyu Lai   commited 2023-08-01 13:38:26 +08:00
23d89c0bbf
Refactor grouped by methods
This is a no-op refactoring, which re-write the group by methods
to use a common method that can slice NetworkStats by a given
lambda. This is useful for subsequent changes to slice NetworkStats
with different conditions.

Test: atest FrameworksNetTests:android.net.connectivity.android.net.NetworkStatsTest
Bug: 290728278
Change-Id: Ia28571021fba46fc59380798053ccdc91ddc6ae4

Junyu Lai   commited 2023-08-01 11:32:04 +08:00
0b9c0835b9
Remove the ServiceTypeClient after socket destroyed
The ServiceTypeClient should be removed after socket destroyed
because it's no longer used by any request. The requests will be
matched to the newly created ServiceTypeClient.

Bug: 278635632
Test: atest FrameworksNetTests CtsNetTestCases
Change-Id: Ia917b14d3666f3bfe8e874606a34800a4ce65c5a

Paul Hu   commited 2023-05-11 15:17:21 +08:00
f2a51ac5f8
Merge changes from topic "statsaccess"
* changes:
  Check MAINLINE_NETWORK_STACK as well to make GTS can access proper stats
  Move checkAnyPermissionOf to PermissionUtils

Junyu Lai   authored and   Gerrit Code Review   commited 2023-04-14 09:54:49 +00:00
9d25241337
Add missed NSD event name
Some events are missed their name in the EVENT_NAMES array and
shows the number on dumpsys logs. Add their name to the event
array to show correct info.

Before:
 rec[0]: time=04-12 15:15:23.553 processed=DefaultState org=EnabledState dest=<null> what=21
 rec[1]: time=04-12 15:15:23.555 processed=EnabledState org=EnabledState dest=<null> what=REGISTER_SERVICE
 rec[2]: time=04-12 15:15:24.375 processed=EnabledState org=EnabledState dest=<null> what=DISCOVER_SERVICES
 rec[3]: time=04-12 15:15:25.338 processed=EnabledState org=EnabledState dest=<null> what=23
 rec[4]: time=04-12 15:15:25.342 processed=EnabledState org=EnabledState dest=<null> what=RESOLVE_SERVICE
 rec[5]: time=04-12 15:15:25.344 processed=EnabledState org=EnabledState dest=<null> what=23
 rec[6]: time=04-12 15:15:25.358 processed=EnabledState org=EnabledState dest=<null> what=UNREGISTER_SERVICE
 rec[7]: time=04-12 15:15:25.551 processed=DefaultState org=EnabledState dest=<null> what=22

After:
 rec[0]: time=04-12 15:19:58.955 processed=DefaultState org=EnabledState dest=<null> what=REGISTER_CLIENT
 rec[1]: time=04-12 15:19:58.958 processed=EnabledState org=EnabledState dest=<null> what=REGISTER_SERVICE
 rec[2]: time=04-12 15:19:59.979 processed=EnabledState org=EnabledState dest=<null> what=DISCOVER_SERVICES
 rec[3]: time=04-12 15:20:00.768 processed=EnabledState org=EnabledState dest=<null> what=MDNS_DISCOVERY_MANAGER_EVENT
 rec[4]: time=04-12 15:20:00.777 processed=EnabledState org=EnabledState dest=<null> what=RESOLVE_SERVICE
 rec[5]: time=04-12 15:20:00.778 processed=EnabledState org=EnabledState dest=<null> what=MDNS_DISCOVERY_MANAGER_EVENT
 rec[6]: time=04-12 15:20:00.785 processed=EnabledState org=EnabledState dest=<null> what=UNREGISTER_SERVICE
 rec[7]: time=04-12 15:20:00.925 processed=DefaultState org=EnabledState dest=<null> what=UNREGISTER_CLIENT

Test: adb shell dumpsys servicediscovery
Bug: 275004614
Change-Id: I9c05efc2d2993af353a2a902fd8810f53ab2cd16

Paul Hu   commited 2023-04-12 15:24:02 +08:00
99fdf93066
Check MAINLINE_NETWORK_STACK as well to make GTS can access proper stats
Follow up from aosp/1933093. The test failed because certain
devices use a flattened apex that lacks the NETWORK_STACK
permission for sharing with the GTS apk.
Additionally, the NetworkStatsAccess does not recognize the
GTS apk, which holds the MAINLINE_NETWORK_STACK permission.

Test: TH
Bug: 275532605
Change-Id: Icce80a3d3dbea4a84fbd369d9b5fbe0029ab463e

Junyu Lai   commited 2023-04-11 14:56:15 +08:00
e68c42b888
Fix a var name in a comment
Remaining comment from aosp/2527124

Test: comment-only change
Change-Id: Ic0418bf0bc15b854e25e211bc7399d83487fe971

Chalard Jean   commited 2023-04-10 10:38:20 +09:00
e2294fb13e
Rename throwAboveU to throwAtLeastU
And address other comments on aosp/2527139

Bug: 273963543
Test: FrameworksNetTests
Change-Id: I4328aea2881badc2be667b900b7ac2a296af1678

Chalard Jean   commited 2023-04-07 12:19:10 +09:00
1bfd3ccf0b
Restore the null behavior of buildWifiTemplate
The old behavior was to only return those wifis that have
a null key/subscriber ID (e.g. not carrier wifi). To keep
backward compatibility, restore that behavior.

Also only crash the old methods on devices with initial
SDK U, because it can't be mandated that devices that
upgrade must not call these methods.

Bug: 273963543
Test: FrameworksNetTests
Merged-In: Iefb976ed86a732158964fae38e9e601001c2637a
Change-Id: Iefb976ed86a732158964fae38e9e601001c2637a

Chalard Jean   authored and   Remi NGUYEN VAN   commited 2023-04-07 02:49:28 +00:00
843cd6ca48
Merge "Do not crash when passing null into buildTemplateMobileAll"
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2023-04-04 01:27:41 +00:00
8a78f043ea
Merge "Cleanup visibility of framework-connectivity-t.impl"
Treehugger Robot   authored and   Gerrit Code Review   commited 2023-03-31 04:50:32 +00:00
85de09411f
Do not crash when passing null into buildTemplateMobileAll
Test: atest FrameworksNetTests:android.net.connectivity.android.net.NetworkTemplateTest
Test: atest FrameworksNetTests:android.net.connectivity.android.net.netstats.NetworkTemplateTest
Bug: 273963543
Change-Id: I0a8f94df124147e92d35cf474b3d69d1dee6902c

Junyu Lai   commited 2023-03-30 13:59:02 +08:00
2c12f922de
Merge "Add androidx.annotation_annotation library"
Treehugger Robot   authored and   Gerrit Code Review   commited 2023-03-28 01:14:42 +00:00
9d5066b806
Add androidx.annotation_annotation library
Change-Id: Ia8b745d674262a312044cd4e2b4320917d550725
Test: TH
Bug: 272150669

Xinyi Zhou   commited 2023-03-24 05:40:37 +00:00
0d195ae5d4
Merge "Add back @hide NetworkTemplate methods"
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2023-03-24 03:37:24 +00:00
123595655a
Add back @hide NetworkTemplate methods
Add back methods that were removed in recent refactoring
(aosp/2286634).  Even though they are fully @hide, some usage by
an OEM has been found on T.

Test: atest; the methods should be unused except on the OEM device
Change-Id: Icd67fb8b7e63cc131356a30a3044458ae2f5efff

Remi NGUYEN VAN   commited 2023-03-23 18:49:28 +09:00
37c4a9f222
Cleanup visibility of framework-connectivity-t.impl
Fixes: 274725920
Test: Presubmits
Change-Id: I325f686af34720cddbbc63580edec8477a9acc45

Cole Faust   commited 2023-03-22 14:19:02 -07:00
e49c11d884
Merge "Add a CompatChange flag to enable platform backend"
Paul Hu   authored and   Gerrit Code Review   commited 2023-03-17 13:14:19 +00:00
62503cfef1
Add a CompatChange flag to enable platform backend
Apps targeting sdk < U are considered to use a legacy native
daemon as NsdManager backend, but other apps use a
platform-integration mDNS implementation as backend. So add a
CompatChange flag to enable platform backend for non-legacy
apps.

Bug: 270306772
Test: atest FrameworksNetTests CtsNetTestCases
Change-Id: I7ba58f8a5186fb49ad5f8aeacc8b8234bef1eabe

Paul Hu   commited 2023-03-17 09:10:46 +08:00
2e0a88c0fa
Use filegroup defaults for framework sources
There's now a shared defaults module for this kind of filegroup. Use
that and remove the previously duplicated prop.

Bug: 271816210
Test: m
Change-Id: Ia4547984a73179fdfc98c427482dd10246f9722c

Anton Hansson   commited 2023-03-15 10:36:52 +00:00
57f3d69fd5
Merge "Remove requireNonNull check from matchesWifiNetworkKey"
Junyu Lai   authored and   Gerrit Code Review   commited 2023-03-09 09:13:40 +00:00
7ee63b6895
Merge "Migrate reigster service callback backend"
Paul Hu   authored and   Gerrit Code Review   commited 2023-03-08 10:27:57 +00:00
ee0e6cd701
Remove requireNonNull check from matchesWifiNetworkKey
matchesWifiNetworkKey expects a non-null value of the
wifiNetworkKey, however, it might be null in practice
and the null wifiNetworkKey will be stored into disk.
And then when the matchesWifiNetworkKey is called, the
requireNonNull will crash the system. Thus, remove the
requireNonNull from matchesWifiNetworkKey to avoid
system crash and handle if the wifiNetworkKey is null
then it should not match a template with non-empty
mMatchWifiNetworkKeys.

Check if WifiInfo contains a null network key then skip it
to prevent adding the identity to the network identity set.
Also, add a Log.wtf when setWifiNetworkKey(info.getNetworkKey()),
this might be useful to catch why the wifiNetworkKey is
null.

Bug: 267815242
Bug: 266598304
Test: FrmeworksNetTests
Change-Id: I9c21f7e3dca9482133c7e331741cf808105414e9

Aaron Huang   authored and   Junyu Lai   commited 2023-03-07 18:16:55 +08:00
8ac1143594
Compile HalfSheetUX against framework-connectivity-t.impl
HalfSheetUX uses private apis of framework-connectivity-t. It appears
that using just "framework-connectivity-t" will compile against either
the stubs or source of framework-connectivity-t depending on if the
module was included in the same apex as it or not.

aosp/2462194 is adding the ability to compile modules like HalfSheetUX
outside of the context of the apex, at which point it will start
compiling against stubs if we don't explicetly specify to use the
implementation library.

Bug: 254205429
Test: m javac-check with aosp/2462194
Change-Id: I1d41e47aa0e4e3d320b78b28cfc181fc30c4537c
Merged-In: I1d41e47aa0e4e3d320b78b28cfc181fc30c4537c

Cole Faust   commited 2023-03-06 23:15:49 +00:00
41228921c1
Migrate reigster service callback backend
registerServiceInfoCallback currently only sends updates for
addresses added, but does not handle removes (expiration) and
TXT/SRV record updates. Thus, migrate its backend to
MdnsDiscoveryManager which can support the expiration update.

Bug: 266030646
Test: atest FrameworksNetTests CteNetTestCases
Change-Id: I72add213935dc1beacb6277007868ad30bd89c00

Paul Hu   commited 2023-03-06 13:49:19 +08:00
30bd70d168
Merge changes I197fbfb8,I6375e771,I48536927
* changes:
  Add constructor which used by Android T CTS
  Delete testUnsupportedAppUsageConstructor from coverage test
  Add some hidden APIs back to NetworkTemplate

Junyu Lai   authored and   Gerrit Code Review   commited 2023-03-03 09:34:47 +00:00
d3e793d8a1
Add constructor which used by Android T CTS
aosp/2241257 and aosp/2241058 are included in the mainline train
release and it causes the T device can’t pass CTS-13_R2/CTS-13_R3.
It’s because some parameters of the constructor have been removed.

Add it back to keep backward compatibility.

Test: 1. atest CtsNetTestCases:android.net.netstats.NetworkTemplateTest
      2. CTS-13_R3
Fix: 269974916
Fix: 269834366
Change-Id: I197fbfb8419e4d4885a97a93a71f13d33c3f02da

Junyu Lai   commited 2023-03-03 15:16:36 +08:00
84b5936e3d
Add some hidden APIs back to NetworkTemplate
Since there's a bug about apps still call hidden
APIs, it's likely some developers might build apps
against hidden API.
To be safe, add these methods back to avoid apps
crash. These methods are still in
hiddenapi-max-target-o-low-priority.txt, so they
should not be removed without considering hidden
API usage. Removing hidden API in general isn't
forbidden, but the ones listed in hiddenapi usage
need extra care.

Bug: 269178029
Test: 1. atest CtsNetTestCases:android.net.netstats.NetworkTemplateTest
      2. CTS-13_R3
Change-Id: I485369274ccacd314230e3d267df665d8083bf97

Aaron Huang   authored and   Junyu Lai   commited 2023-03-03 13:54:42 +08:00
960c6267ca
Merge "Clear calling identity before calling into DPM"
Junyu Lai   authored and   Gerrit Code Review   commited 2023-03-02 05:56:51 +00:00
ae04a1a842
Clear calling identity before calling into DPM
Test: 1. manual test with test app
      2. atest CtsNetTestCases:android.net.cts.NetworkStatsManagerTest
Fix: 249920382
Fix: 269561252
Change-Id: I4af7fd640d551be3ef62ea248e58bf8bae5e0b87

Junyu Lai   commited 2023-03-01 15:56:59 +08:00
09330c436e
Merge "Add isMatchRuleMobile back"
Aaron Huang   authored and   Gerrit Code Review   commited 2023-02-24 05:30:06 +00:00
9ff2fe7747
Add isMatchRuleMobile back
There's a user still call this method which causes the app
crash and it might be the app was built against hidden API.
The bug was observed after updating the mainline module so
adding this method back to the module to avoid apps crash
due to the method is not found in NetworkTemplate.

Bug: 269178029
Test: build
Change-Id: I06dc694b1ce060488135f5d34138f14abd50ad32

Aaron Huang   commited 2023-02-21 17:23:48 +08:00
dc97905786
Fix backward compatibility issue for removed wildcard match rule
A template with type MATCH_MOBILE could have empty subscriber
IDs but it should not contain one of subscriber IDs is null.

An app might still build a template through the constructor
which is annotated with @UnsupportedAppUsage. NetworkTemplate
will throw an exception when the app trying to construct a
template with type *_WILDCARD. The constructor should be
backward compatible with old version so this change is to add
the backward compatibility to have NetworkTemplate not throw
an exception.

Bug: 267701889
Test: FrameworksNetTests
Change-Id: I23a607dae508e0c53520e2edf187cb611ed36b68

Aaron Huang   commited 2023-02-21 14:07:15 +08:00
69086d6cbc
Merge "Tempates with different subscriber ID should be not equal"
Aaron Huang   authored and   Gerrit Code Review   commited 2023-02-10 08:06:07 +00:00
2a69e41772
Tempates with different subscriber ID should be not equal
mSubscriberId was removed from NetworkTemplate and equals/hashCode
does not check the mMatchSubscriberIds. This will cause tempates
with different subscriber ID matching that are equal now. Thus
adding the check for mMatchSubscriberIds to fix it.

Bug: 267968247
Test: FrameworksNetTests:NetworkTemplateTest
Change-Id: I2956bf4c8cf2c4d73ebe102d53e755fbcc5d7642

Aaron Huang   commited 2023-02-10 08:04:53 +00:00
c9371d05fe
Moves all compatibility flags to ConnectivityCompatChanges.java
ConnectivityCompatChanges.java becomes the centralized place for all the
CompatChanges used in the Connectivity module. By putting all the
CompatChanges here, we are able to manage them under a single
platform_compat_config.

Bug: 268440216
Test: atest FrameworksNetTests
Change-Id: I3e17af545718073d7d1c96e27298e7790563fd33

Yuyang Huang   commited 2023-02-09 19:51:37 +09:00
90a2cbdd8d
Rename onResolveStopped to onResolutionStopped
Rename the method onResolveStopped(NsdServiceInfo) to
onResolutionStopped(NsdServiceInfo) for consistency as API
review feedback.

Bug: 266811051
Test: atest FrameworksNetTests CtsNetTestCases
Change-Id: I788b5903ecaf78a9aa960dd3b7413a22f171c72f

Paul Hu   commited 2023-01-30 08:53:15 +00:00
b2c0f3407f
New API to listen service update
Currently, the resolution is a one shot query, it only notifies
the first finding service information. There is no way to listen
the service update. Thus, add a new API that can register a
callback to listen to the service updates continuously.

Bug: 245369943
Test: atest FrameworksNetTests CtsNetTestCases
Change-Id: I0e9d92b9028375feb3e344ab6c4acb515c5b2be9

Paul Hu   authored and   Remi NGUYEN VAN   commited 2023-01-19 20:16:03 +09:00
18aecccc9d
New API to stop service resolution
Resolve service may take long time due to network issue or
using wrong service information, but users are not able to stop
it. They can only wait for the callback of resolveService to end,
which sometimes takes a long time. Thus, add the new API that
users can stop the service resolution.

Bug: 245369943
Test: atest FrameworksNetTests CtsNetTestCases
Change-Id: I6b6183c8c73f8db981b9afa51fbc73bf886d9ed3

Paul Hu   commited 2023-01-18 10:10:25 +00:00
b58deb706c