Commit Graph

3312 Commits

Author SHA1 Message Date
Les Lee
402b9a83e1 Fix: query TYPE_WIFI usage with empty string
Starting with API level 31, the subscriberId is applicable
for the wifi network. Considering applications may use
null or an empty string as subscriberId (for instance, cts),
frameworks create MATCH_WIFI_WILDCARD NetworkTemplate when querying
wifi network with null or an empty string which is the behavior before
API level 31.

Bug: 188915450
Test: atest -c NetworkStatsManagerTest

Change-Id: I084b69903f8ba7a6225b312560752e8508938714
2021-06-11 18:14:50 +08:00
Luke Huang
9fd7f864f4 Fix the comments from aosp/1717479.
1. Increase the cleanup delay from 3s to 10s.
2. Fix the comments from aosp/1717479.

Bug: 181810560
Test: atest NsdManagerTest NsdServiceTest
Change-Id: I71ebdd011574bd96de16a4248b0e15636418e87c
2021-06-08 10:09:30 +08:00
Luke Huang
9b56f2e0ec Make NsdService only start the native daemon when needed and automatically clean it up.
Currently, NsdService starts the native mdnsresponder daemon if any
NsdManager connect to it, which results in that when any constant
service holds the NsdManager connection, the device would always be
in the mdns multicast group whatever the connection is not used or not.
This is because mdnsresponder will join the multicast group when it
starts.

To solve this problem, start the native daemon only when needed, and
clean it up after the given idle timeout.

1. Start the native daemon when a new request come.
2. If there is no pending request, clean up the daemon after 3 seconds
of idle time.

Bug: 181810560
Test: atest NsdManagerTest NsdServiceTest
Change-Id: I3eb04552f6cf6c0c68c07abffe751bb4d0669215
2021-06-08 10:09:30 +08:00
Les Lee
b44db3dbee Merge "carrier data usage: Use carrier template as default policy" am: 568f75a883 am: 6435752c70
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1563312

Change-Id: I28386f42011e5b65cc1219b947eff2057d1f0848
2021-06-03 09:14:20 +00:00
Les Lee
6435752c70 Merge "carrier data usage: Use carrier template as default policy" am: 568f75a883
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1563312

Change-Id: Ie10a2dfe6c959a591cda641863af873eea409a37
2021-06-03 08:18:16 +00:00
lesl
2c07748882 carrier data usage: Use carrier template as default policy am: 22d53be4f7
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14782679

Change-Id: I8bdde6aaeea04c4c70a37d5a71ad31a5590323a9
2021-06-02 04:01:14 +00:00
Les Lee
568f75a883 Merge "carrier data usage: Use carrier template as default policy" 2021-06-01 10:42:08 +00:00
lesl
22d53be4f7 carrier data usage: Use carrier template as default policy
The carrier network means any network which linked with sepcific
subscriberId (for instances: merged Wifi or mobile).
Update default policy to use carrier network template to replace mobile
template.

No impact for current AOSP user because no any wifi network is merged
wifi. (Because the merged wifi network requires to support from the wifi module).

Also this change convert all of the old policies which template is
TYEP_MOBILE to TYPE_CARRIER to match the default policy.

Bug: 176396812
Test: atest -c NetworkPolicyManagerServiceTest
Test: atest -c CtsHostsideNetworkTests
Test: Manual Test with test code (Force wifi to merged wifi).
      The data will limit when using merged wifi.
      And mobile policy also work normally.

Merged-In: I33c10f7549e713c52ce9afd5b8c4cce2abbda616
Change-Id: I33c10f7549e713c52ce9afd5b8c4cce2abbda616
2021-06-01 18:12:56 +08:00
Pavan Kumar M
13f004e2f8 Gracefully handle integer overflows.
Avoid recording negative data by doing integer-based
math as much as possible, but switch to double-based
math if we detect that we'd end up causing an overflow.

Test :
    - Builds, Boots
    - High data throughput scenarios
    - NetworkStatsHistoryTest, NetworkStatsCollectionTest,
      NetworkStatsTest

Bug: 119527458
Change-Id: I355fc9bd127da83c1dc70ab3b1261346d4fa5de0
2021-05-26 08:09:31 +00:00
TreeHugger Robot
440fa3ba6d [automerger skipped] Merge "Improve documentation of IpSecTunnelInterface#setUnderlyingNetwork" into sc-dev am: 7e982787e1 -s ours
am skip reason: Merged-In I2e3c4fe735b3374b2ff6d23850970e36c0aafda5 with SHA-1 cf4d2eb208 is already in history

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14667143

Change-Id: Id39a25cc0292dcbdfc91df1347433f278f5954bd
2021-05-21 09:21:19 +00:00
Treehugger Robot
683c9918c9 Improve documentation of IpSecTunnelInterface#setUnderlyingNetwork
Clarify the consequence of adding IpSecTunnelInterface to the
underlying network.

Bug: 169855650
Test: builds
Change-Id: I2e3c4fe735b3374b2ff6d23850970e36c0aafda5
Merged-In: I2e3c4fe735b3374b2ff6d23850970e36c0aafda5
2021-05-20 21:56:26 +00:00
Treehugger Robot
8417b994dd Merge "Improve documentation of IpSecTunnelInterface#setUnderlyingNetwork" am: 5c20637731 am: 38a2af81f5
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1590415

Change-Id: I02207954757c9135fbf6674720dd8e623fc9e435
2021-05-20 21:22:32 +00:00
Treehugger Robot
38a2af81f5 Merge "Improve documentation of IpSecTunnelInterface#setUnderlyingNetwork" am: 5c20637731
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1590415

Change-Id: I38c900b277fa668fe66d6ac6f6a5230ad2c50920
2021-05-20 20:53:07 +00:00
Treehugger Robot
5c20637731 Merge "Improve documentation of IpSecTunnelInterface#setUnderlyingNetwork" 2021-05-20 20:33:41 +00:00
lesl
5c437e94ec carrier data usage: Use carrier template as default policy
The carrier network means any network which linked with sepcific
subscriberId (for instances: merged Wifi or mobile).
Update default policy to use carrier network template to replace mobile
template.

No impact for current AOSP user because no any wifi network is merged
wifi. (Because the merged wifi network requires to support from the wifi module).

Also this change convert all of the old policies which template is
TYEP_MOBILE to TYPE_CARRIER to match the default policy.

Bug: 176396812
Test: atest -c NetworkPolicyManagerServiceTest
Test: atest -c CtsHostsideNetworkTests
Test: Manual Test with test code (Force wifi to merged wifi).
      The data will limit when using merged wifi.
      And mobile policy also work normally.

Change-Id: I33c10f7549e713c52ce9afd5b8c4cce2abbda616
2021-05-20 23:46:39 +08:00
Les Lee
25a7def22e [automerger skipped] Merge "Support to query TYPE_WIFI usage with subscriberId" into sc-dev am: 8d16935478 -s ours
am skip reason: Merged-In Ia033521a24e2bb56182d74a41bb2b39710571782 with SHA-1 9528b8b452 is already in history

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14622496

Change-Id: If1a3eeb5077d7b078a3be260e01c4cf3f6790437
2021-05-20 09:06:38 +00:00
Les Lee
8d16935478 Merge "Support to query TYPE_WIFI usage with subscriberId" into sc-dev 2021-05-20 08:55:59 +00:00
Les Lee
4a1dfb8dd9 [automerger skipped] Merge "Add metered filter for API: buildTemplateCarrier" into sc-dev am: f00bbae424 -s ours
am skip reason: Merged-In I7196d62bb60844458a6c4b1d94e2baccb71e15cd with SHA-1 c9e6c56067 is already in history

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14622495

Change-Id: Ica7cf82e3d17cbe5d0577e14faa563cfbfdc9385
2021-05-19 14:48:10 +00:00
Les Lee
f00bbae424 Merge "Add metered filter for API: buildTemplateCarrier" into sc-dev 2021-05-19 14:32:29 +00:00
Junyu Lai
01e118fc8a [automerger skipped] Merge changes I3ba50cbd,I970ee365 into sc-dev am: b987babf5e -s ours
am skip reason: Merged-In I3ba50cbd8a7f60779c69ba85e10dc3cc8a52f8b1 with SHA-1 a081acd610 is already in history

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14562500

Change-Id: Ic87d5b62ddd55ec1c264839dd84c3c375794e428
2021-05-19 12:57:00 +00:00
lesl
43e738951b Add metered filter for API: buildTemplateCarrier
This CL modifies NetworkTemplate#buildTemplateCarrier to force on
metered carrier network and rename to buildTemplateCarrierMetered.
This method was introduced recently and has no callers.

This method will be used in Settings and NetworkPolicyManagerService
to display and manage data usage on carrier metered networks.

Settings/NetworkPolicyManagerService will use it instead of the existing
method buildTemplateMobileAll method, which only matches metered networks.
That code will change from matching metered mobile networks to matching
metered carrier networks.

Note: The carrier metered network includes metered mobile network and
metered "merged carrier wifi network" that is a specific cerrier wifi network
which provides the same user experience as mobile.

Bug: 176396812
Test: atest -c NetworkTemplateTest
Change-Id: I7196d62bb60844458a6c4b1d94e2baccb71e15cd
Merged-In: I7196d62bb60844458a6c4b1d94e2baccb71e15cd
2021-05-19 02:53:39 +00:00
lesl
9156aa122f Support to query TYPE_WIFI usage with subscriberId
Previous the API ignores subscriberId when network type is WIFI.
Allow caller to call querySummaryXXXX with TYPE: WIFI
+ subscriberId: IMSI to get carrier merged wifi usage which matches the wifi
network with the given IMSI.

Bug: 176396812
Test: atest -c NetworkStatsServiceTest
Change-Id: Ia033521a24e2bb56182d74a41bb2b39710571782
Merged-In: Ia033521a24e2bb56182d74a41bb2b39710571782
2021-05-19 02:53:16 +00:00
Chris Weir
22423db017 Merge "Print human-readable OEM managed states" am: a4587ab45f am: 267e033bc7
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1636561

Change-Id: I4ecc049acf7a5f2e3c99808c7e5f6c2f064d7e5c
2021-05-18 17:39:57 +00:00
Chris Weir
267e033bc7 Merge "Print human-readable OEM managed states" am: a4587ab45f
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1636561

Change-Id: I38380b1f6a80fdfbbcc21124470929530131fcdd
2021-05-18 17:03:21 +00:00
Chris Weir
a4587ab45f Merge "Print human-readable OEM managed states" 2021-05-18 16:29:26 +00:00
Les Lee
dab3be3c4a Merge "Support to query TYPE_WIFI usage with subscriberId" am: d8a067cd9e am: 72baf5dab7
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1608057

Change-Id: Ifeaab15fbf20b318bb7b35aa6b4604f21e2c98a1
2021-05-18 13:57:43 +00:00
Les Lee
b93cccec91 Merge "Add metered filter for API: buildTemplateCarrier" am: 7486607f4b am: 937568499f
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1699687

Change-Id: I46d8d8f0d9b83fb0a817a3455cbbc28d558b871c
2021-05-18 13:57:06 +00:00
Les Lee
72baf5dab7 Merge "Support to query TYPE_WIFI usage with subscriberId" am: d8a067cd9e
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1608057

Change-Id: I753603201bd935af055cf25135e4f8faf436bf2a
2021-05-18 13:35:08 +00:00
Les Lee
937568499f Merge "Add metered filter for API: buildTemplateCarrier" am: 7486607f4b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1699687

Change-Id: Iac42f02079de5c0507209741e648b13da667fb94
2021-05-18 13:26:24 +00:00
Les Lee
d8a067cd9e Merge "Support to query TYPE_WIFI usage with subscriberId" 2021-05-18 13:02:07 +00:00
Les Lee
7486607f4b Merge "Add metered filter for API: buildTemplateCarrier" 2021-05-18 13:01:38 +00:00
junyulai
d8d50e6c8f [FUI27] Fix internal naming of notifyNetworkStatus
Test: TH
Bug: 174123988
Merged-In: I970ee365ca221956ee85788005d331374b5fa71a
Change-Id: I970ee365ca221956ee85788005d331374b5fa71a
  (cherry-picked from aosp/1620539)
2021-05-17 14:07:00 +08:00
lesl
9528b8b452 Support to query TYPE_WIFI usage with subscriberId
Previous the API ignores subscriberId when network type is WIFI.
Allow caller to call querySummaryXXXX with TYPE: WIFI
+ subscriberId: IMSI to get carrier merged wifi usage which matches the wifi
network with the given IMSI.

Bug: 176396812
Test: atest -c NetworkStatsServiceTest
Change-Id: Ia033521a24e2bb56182d74a41bb2b39710571782
2021-05-16 22:18:32 +08:00
Junyu Lai
9e02177f83 Merge changes I3ba50cbd,I970ee365 am: 37f2408143 am: 2710ae1348
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1620859

Change-Id: If9a3e37e5359b955e330002d81cbeb48f90ee22b
2021-05-15 17:24:42 +00:00
Junyu Lai
2710ae1348 Merge changes I3ba50cbd,I970ee365 am: 37f2408143
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1620859

Change-Id: I2cf4ea0abb1ff7bc74302cce16cbe8041b08d321
2021-05-15 16:53:30 +00:00
junyulai
4e56bc1c93 [FUI27] Fix internal naming of notifyNetworkStatus
Test: TH
Bug: 174123988
Change-Id: I970ee365ca221956ee85788005d331374b5fa71a
2021-05-14 19:48:17 +08:00
Aaron Huang
da35346611 [automerger skipped] Merge "Rename *Iface* APIs to *Interface*" am: f281058618 am: 5ff38f7c0d am: 1750ceafb8 -s ours
am skip reason: Merged-In I38b476e762fb57fa88c4a789092d0af6f5330d80 with SHA-1 c6e149a977 is already in history

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1693585

Change-Id: I39709941a1770435d9a2e221025b46eed5d32ea0
2021-05-14 10:07:18 +00:00
Aaron Huang
1750ceafb8 Merge "Rename *Iface* APIs to *Interface*" am: f281058618 am: 5ff38f7c0d
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1693585

Change-Id: I9aa62677f52ac78916c518d1378a05bda143f676
2021-05-14 09:44:33 +00:00
Aaron Huang
5ff38f7c0d Merge "Rename *Iface* APIs to *Interface*" am: f281058618
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1693585

Change-Id: I62fa0403c8b2d78e7e7a90be8ac804576ec27456
2021-05-14 09:36:36 +00:00
Aaron Huang
a266a9855c Rename *Iface* APIs to *Interface*
Address API review feedback, other APIs have been refering to
these as "interface" instead of "iface" so migrate the APIs named
*Iface* to *Interface*.

(cherry-picked from ag/14326779)
Bug: 183972554
Test: atest android.net.UnderlyingNetworkInfoTest
Merged-In: I38b476e762fb57fa88c4a789092d0af6f5330d80
Change-Id: I38b476e762fb57fa88c4a789092d0af6f5330d80
2021-05-14 11:05:22 +08:00
lesl
c9e6c56067 Add metered filter for API: buildTemplateCarrier
This CL modifies NetworkTemplate#buildTemplateCarrier to force on
metered carrier network and rename to buildTemplateCarrierMetered.
This method was introduced recently and has no callers.

This method will be used in Settings and NetworkPolicyManagerService
to display and manage data usage on carrier metered networks.

Settings/NetworkPolicyManagerService will use it instead of the existing
method buildTemplateMobileAll method, which only matches metered networks.
That code will change from matching metered mobile networks to matching
metered carrier networks.

Note: The carrier metered network includes metered mobile network and
metered "merged carrier wifi network" that is a specific cerrier wifi network
which provides the same user experience as mobile.

Bug: 176396812
Test: atest -c NetworkTemplateTest
Change-Id: I7196d62bb60844458a6c4b1d94e2baccb71e15cd
2021-05-14 11:04:17 +08:00
Aaron Huang
2ed83a71ee Merge "Add return type javadoc to NetworkStateSnapshot#getLegacyType" into sc-dev 2021-05-12 05:11:45 +00:00
Benedict Wong
974cd14755 Merge "Add clarifying comments on for IPsec forward policies" am: 1a88665f3c am: df1dcf78f2 am: 3f397e3f6e
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1702525

Change-Id: I77e806ab3e76307dfc6456b210f691027aaeec66
2021-05-11 18:13:01 +00:00
Benedict Wong
3f397e3f6e Merge "Add clarifying comments on for IPsec forward policies" am: 1a88665f3c am: df1dcf78f2
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1702525

Change-Id: Ifef0b1d3a1def9dfcf995fb5ddc79c0a88658ad0
2021-05-11 17:48:00 +00:00
Benedict Wong
df1dcf78f2 Merge "Add clarifying comments on for IPsec forward policies" am: 1a88665f3c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1702525

Change-Id: I7267d331065ceadb830a14170920810f053eacb8
2021-05-11 17:17:53 +00:00
Benedict Wong
70f1aab8c7 Merge changes from topic "vcn-fwd" am: d7d2d2a15b am: fc14eeaf35 am: 07806ad6be
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1682047

Change-Id: I745687f69366657dc33bfdacd878e06affd6a8ec
2021-05-11 06:10:32 +00:00
Benedict Wong
07806ad6be Merge changes from topic "vcn-fwd" am: d7d2d2a15b am: fc14eeaf35
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1682047

Change-Id: I4e11bdfa3e887103673a354aad7f9b5fa746ac9e
2021-05-11 05:52:26 +00:00
Benedict Wong
fc14eeaf35 Merge changes from topic "vcn-fwd" am: d7d2d2a15b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1682047

Change-Id: I7f02785727c73c27ac498ad4663f25252242c6e0
2021-05-11 05:26:46 +00:00
Benedict Wong
47b528cfe7 Add clarifying comments on for IPsec forward policies
This change adds clarifying comments for the usage of the forward
policies in IPsec, and corrects a comment to properly specify the
permissions allowed.

Bug: 185495453
Test: Comment-only changes
Change-Id: I6d36522c344c41b0ebd90d46b216d115b678dd31
2021-05-10 18:26:02 -07:00
Aaron Huang
ba8093a22e Add return type javadoc to NetworkStateSnapshot#getLegacyType
Add javadoc to document the return type is the legacy network
type in getLegacyType.

Bug: 183972826
Test: only update javadoc
Change-Id: I7757253af5955f7d489d6349c090dcba146cfd7f
2021-05-10 23:18:41 +08:00