Commit Graph

7736 Commits

Author SHA1 Message Date
Chalard Jean
9589e72241 [NS A14] Move code notifying battery stats in its right place
This should be done once every time an interface comes online.
Doing this in updateLinkProperties guarantees this happens every
time a new interface comes online, but it doesn't do it more
often than needed.

Test: FrameworksNetTests NetworkStackTests
Change-Id: I0613c23f44192944266d76107308da8d1c541d1c
2019-12-02 13:02:38 +09:00
Chalard Jean
151d65dab6 Merge "Give apps access to the NAT64 prefix." am: 3391fbb6a2
am: 6a96b757df

Change-Id: I251c5ac17fb728d6f0fe91fd96c115c8b8d1879c
2019-12-01 18:27:36 -08:00
Chalard Jean
6a96b757df Merge "Give apps access to the NAT64 prefix."
am: 3391fbb6a2

Change-Id: I673a44f3f75a2395ae3d9d436c83708f20f414e6
2019-12-01 18:20:00 -08:00
Treehugger Robot
3391fbb6a2 Merge "Give apps access to the NAT64 prefix." 2019-12-02 02:05:16 +00:00
Mark Chien
ec489e4870 Merge changes from topic "tether_migrate" am: 783ba3e0bd
am: 3d076f29b7

Change-Id: Ice864e02b2ef9da73f5a69e0668b6856e718988f
2019-11-30 04:31:35 -08:00
markchien
7c525e9907 [Tether07] Migrate Tethering into module am: 5e86665079
am: bd4a462076

Change-Id: I6e71b418b7303d37144532ab056c21ccbefcb554
2019-11-30 04:31:28 -08:00
Mark Chien
3d076f29b7 Merge changes from topic "tether_migrate"
am: 783ba3e0bd

Change-Id: I03e43b7a112f91637941e5193bd21b3e714f5dac
2019-11-30 04:26:07 -08:00
markchien
bd4a462076 [Tether07] Migrate Tethering into module
am: 5e86665079

Change-Id: I1aaa034e91eae2d6e9abcbbd70741a54a18b3ddc
2019-11-30 04:25:57 -08:00
Mark Chien
783ba3e0bd Merge changes from topic "tether_migrate"
* changes:
  [Tether10]Remove UserManagerInternal usage in Tethering
  [Tether07] Migrate Tethering into module
  [Tether07] Clean up build rule for libtetheroffloadjni
2019-11-30 12:17:47 +00:00
Chalard Jean
7aa4400722 Give apps access to the NAT64 prefix.
Apps that do their own DNS queries need to know the NAT64 prefix
to resolve v4 addresses on v6-only networks.

Test: FrameworksNetTests NetworkStackTests
Bug: 144877069
Change-Id: I5a255b7afc2038646b93a0ab893f8ad62d0fb34f
2019-11-30 10:25:02 +00:00
markchien
5e86665079 [Tether07] Migrate Tethering into module
Now tethering would be run in dedicated service.
TetheringManager is the interface used to communicate with
TetheringService. The new call flow would be: ConnectivityManager
-> ConnectivityService -> TetheringManager -> TetheringService.
Note: the return value of #tether(), #untether() and #setUsbTethering()
APIs would always be no error. Client can use #getLastTetherError()
or #getTetheredIfaces or listen tether state change to check
status of corresponding interface.

Bug: 136040414
Bug: 144742179
Test: -build, flash, boot
      -atest TetheringTests
      -atest FrameworksNetTests

Change-Id: I7e78c0e0a3e70f940a749ba2a39ece7c7ec5b9b3
Merged-In: I7e78c0e0a3e70f940a749ba2a39ece7c7ec5b9b3
2019-11-30 10:03:08 +00:00
Chalard Jean
f01b2efc13 [NS A13] Move legacy broadcast handling after rematch.
As opposed to other patches in this series, there is a logic change
here. This will send all necessary legacy broadcasts after all
matches have been done.

This should be fine because the callbacks and the broadcasts are
unordered anyway, and the broadcasts are still sent in the same
order as before ; there should not be an observable change from
apps besides some jitter.

Bug: 113554781
Test: ConnectivityServiceTest
Change-Id: Ibeab8d0a9106c5198228888ac33084238c0a4a1a
2019-11-29 16:59:31 +09:00
Chalard Jean
61c79256b1 [NS A12] Move some legacy type tracker handling to a function
It's fine to do this out of the if() clause because :
• If the network newly satisfies a request it is sure to have
  it in the list of requests it satisfies
• If it does not newly satisfy a request and there is still
  a request with a legacy type that it satisfies, then it
  is already remembered by LegacyTypeTracker

As for the VPN, the code always enters the condition anyway.

Test: ConnectivityServiceTest
Change-Id: I8bd668ad27043d6a5036b1b3c52fa5a3146abcfa
2019-11-29 16:59:31 +09:00
Chalard Jean
0a2a20054d Add tests for ConnectivityService → BatteryStats messages
Test: ConnectivityServiceTest
Bug: 113554781
Change-Id: I7d3a16be76f606872f8edb84647b9ef94f36cba1
2019-11-29 16:59:30 +09:00
Aaron Huang
2dbf6f50f3 Merge "Add IpConfiguration parcelable interface implementation to system API" am: 2193b07c21
am: fda119df8e

Change-Id: Ic5b8e360cb33cdd18f32a4d2c17beb996584ebda
2019-11-28 02:14:56 -08:00
Aaron Huang
fda119df8e Merge "Add IpConfiguration parcelable interface implementation to system API"
am: 2193b07c21

Change-Id: I3ead12ee9162c16f8f5937cfc74f38071cef41c9
2019-11-28 02:09:43 -08:00
Aaron Huang
2193b07c21 Merge "Add IpConfiguration parcelable interface implementation to system API" 2019-11-28 09:56:58 +00:00
Aaron Huang
4c1dd06339 Add IpConfiguration parcelable interface implementation to system API
API lint robot warnings that parcelable requires writeToParcel
and describeContents.

Bug: 139268426
Bug: 135998869
Test: atest android.net.cts
      atest android.net.wifi.cts
      atest FrameworksNetTests
      ./frameworks/opt/net/wifi/tests/wifitests/runtests.sh

Change-Id: I7acf000c468788c3fdcb47f8601762e7804ab940
2019-11-28 07:25:40 +00:00
Hugo Benichi
af06575aef Merge "BitUtils: support packing/unpacking negative long values" am: cd46b46d51
am: c9b854f5be

Change-Id: If85ad67169295e8725d654966c4d0f42439f10c4
2019-11-27 07:52:49 -08:00
Hugo Benichi
c9b854f5be Merge "BitUtils: support packing/unpacking negative long values"
am: cd46b46d51

Change-Id: Ibd0c4756fb0f888a506111bb2f33c60debe33d57
2019-11-27 07:46:56 -08:00
Treehugger Robot
cd46b46d51 Merge "BitUtils: support packing/unpacking negative long values" 2019-11-27 15:34:46 +00:00
Hugo Benichi
31270734a2 BitUtils: support packing/unpacking negative long values
Bug: None
Test: Compiled. New unit tests.
Change-Id: Ia543285e206b0bbc7d64458da10e68a951f9eec1
2019-11-27 11:00:32 +09:00
Chiachang Wang
4a30d55644 Merge "Refactor based on new NetworkMonitor" am: 4a41fe8072
am: 02bec631c5

Change-Id: I631487e6ccc500dd921ec04fa82713f35523dce8
2019-11-26 04:10:13 -08:00
Chiachang Wang
02bec631c5 Merge "Refactor based on new NetworkMonitor"
am: 4a41fe8072

Change-Id: I6f2f42dee11b2ee3db9e52817cd7aa871539aaed
2019-11-26 04:03:47 -08:00
Chiachang Wang
4a41fe8072 Merge "Refactor based on new NetworkMonitor" 2019-11-26 10:52:33 +00:00
Chiachang Wang
bfb1ab4b02 Refactor based on new NetworkMonitor
Bug: 130325409
Test: atest NetworkStackIntegrationTests
Change-Id: I4426be339cb9990c05b3f4fb5666bd70bcd0f78e
2019-11-26 09:10:45 +08:00
Chalard Jean
758e340c84 Merge "[NS A11] Small refactor" am: a8e2afde61
am: 22391f5092

Change-Id: Ib593282845cca1bbd3a2b36a2049914fc73cbbd1
2019-11-25 06:22:26 -08:00
Paul Hu
36872f15f5 Merge "Fix hasUseBackgroundNetworksPermission issue." am: 0a6f03873a
am: d47085c444

Change-Id: I8b03c9e23ffc9ff46264d6307fb841a7eda76a76
2019-11-25 06:18:10 -08:00
Chalard Jean
22391f5092 Merge "[NS A11] Small refactor"
am: a8e2afde61

Change-Id: I317e6b99a51ddb0a3e49b08c595eb42f4edad1e9
2019-11-25 06:09:17 -08:00
Lucas Lin
61fcd4126f Merge "Fix title of PRIVATE_DNS_BROKEN notification when connecting VPN" am: fc8c834040
am: 22ba258b99

Change-Id: I0cb5a78a4f95ad5f5668b6bee5394877f640a2d0
2019-11-25 06:08:58 -08:00
Paul Hu
d47085c444 Merge "Fix hasUseBackgroundNetworksPermission issue."
am: 0a6f03873a

Change-Id: I6f378dcbbecb9848d02112b2d33c5a0f2d5c9d1f
2019-11-25 06:05:32 -08:00
Lucas Lin
22ba258b99 Merge "Fix title of PRIVATE_DNS_BROKEN notification when connecting VPN"
am: fc8c834040

Change-Id: I2df410b6ceb0f9a28ee0f171bb2ff7cadd4cdefb
2019-11-25 05:56:29 -08:00
Chalard Jean
a8e2afde61 Merge "[NS A11] Small refactor" 2019-11-25 08:55:19 +00:00
Paul Hu
0a6f03873a Merge "Fix hasUseBackgroundNetworksPermission issue." 2019-11-25 08:41:05 +00:00
Lucas Lin
fc8c834040 Merge "Fix title of PRIVATE_DNS_BROKEN notification when connecting VPN" 2019-11-25 08:14:09 +00:00
paulhu
97e1cdb105 Merge "Adjust PermissionMonitor#startMonitoring in ConnectivityService" am: 5d6da8de07
am: 9717a198bb

Change-Id: I14ef8eaa83b3df3b032556504a23e6b17f02435d
2019-11-24 07:37:03 -08:00
paulhu
9717a198bb Merge "Adjust PermissionMonitor#startMonitoring in ConnectivityService"
am: 5d6da8de07

Change-Id: Ic4e26e2dcf6c68dcae9a840a3119283118e45193
2019-11-24 07:31:36 -08:00
Treehugger Robot
5d6da8de07 Merge "Adjust PermissionMonitor#startMonitoring in ConnectivityService" 2019-11-24 15:21:43 +00:00
paulhu
9b2c01a7f0 Fix hasUseBackgroundNetworksPermission issue.
PermissionMonitor#hasUseBackgroundNetworksPermission only uses
the first package name of the uid for checking permission.
This is incorrect since each package declared different
permissions. So using the mApps which already checked both
network and using restricted network permissions. If uid is in
the mApps list that means uid has one of permission at least.

Bug: 135897744
Test: atest FrameworksNetTests
Change-Id: I3500a03ce06b5b822311ad0c67b606ce4039216a
2019-11-24 22:27:32 +08:00
Chalard Jean
6e40e5fa0b Merge changes I195d894e,I7069c111 am: 3d59a27d1c
am: cc64d36d32

Change-Id: Ia75369ad6b360644392766296542efa4a5fdf0ce
2019-11-22 06:33:34 -08:00
Chalard Jean
cc64d36d32 Merge changes I195d894e,I7069c111
am: 3d59a27d1c

Change-Id: I8e41058df03284ca677bf67930c5702d7d6c63bb
2019-11-22 06:27:42 -08:00
Chalard Jean
3d59a27d1c Merge changes I195d894e,I7069c111
* changes:
  [NS A10] Cleanup
  [NS A09] Always rematch all networks to requests
2019-11-22 14:08:09 +00:00
Aaron Huang
d91e5a5ccb Merge "Expose IpConfiguration and ProxyInfo APIs" am: c2df0b68c4
am: 10481a8f5f

Change-Id: I9ef7325d73b1df9b1a3eb32e419e4cd1caeb7729
2019-11-22 01:47:14 -08:00
Aaron Huang
10481a8f5f Merge "Expose IpConfiguration and ProxyInfo APIs"
am: c2df0b68c4

Change-Id: I7fa9b282ca87f0c442e267acb8424f6aeed5d3a0
2019-11-22 01:40:49 -08:00
Aaron Huang
c2df0b68c4 Merge "Expose IpConfiguration and ProxyInfo APIs" 2019-11-22 09:25:16 +00:00
lucaslin
784ca66669 Fix title of PRIVATE_DNS_BROKEN notification when connecting VPN
NetworkNotificationManager will only get the first transport
type from the NetworkCapabilities of network, and if the device
connects to a VPN and its underlying network is wifi, then the
first finding transport type will be TRANSPORT_WIFI. So, if the
private DNS is broken when device connected to VPN,
NetworkNotificationManager will try to get the SSID for the
title of notification but failed. For this kind of case, the
title of PRIVATE_DNS_BROKEN notification will show
"null has no internet access".

Bug: 143340533
Test: 1. Build pass.
      2. Connect to VPN and let private DNS to be broken, check
      title of PRIVATE_DNS_BROKEN notification.
      3. atest FrameworksNetTests

Change-Id: I1ed018cc8774d4fce4b94854f8e8703a28818463
2019-11-22 12:46:32 +08:00
Chalard Jean
832da6e8c4 Merge "Cut the dependency to APN constants" am: f1df59afe3
am: ca757d6635

Change-Id: I97f01b82916e66673339bef437d80927e78282ee
2019-11-21 04:52:31 -08:00
Chalard Jean
ca757d6635 Merge "Cut the dependency to APN constants"
am: f1df59afe3

Change-Id: I140f294e0b044c66b925ae5c8ae6f2859c694753
2019-11-21 04:45:07 -08:00
Chalard Jean
f1df59afe3 Merge "Cut the dependency to APN constants" 2019-11-21 12:37:33 +00:00
Chalard Jean
f9cc6e88e6 Merge changes I52f70756,Icc621f0a am: 3701fcd817
am: 41e584fa48

Change-Id: I1549ecd1361ee299073127e64108313872ed51b4
2019-11-21 00:56:08 -08:00