Commit Graph

5813 Commits

Author SHA1 Message Date
Bill Yi
3521abfe19 Merge pi-platform-release to stage-aosp-master - DO NOT MERGE
Change-Id: I13571b072111900d0979f026670e648cdef9899b
2018-10-24 09:08:38 -07:00
Luke Huang
477db5fe1a Refactor UidRange by using stable aidl structure
Use stable aidl generated structure instead of UidRange

Test: runtest frameworks-net passes
Test: manual testing of UidRange related function works
Change-Id: Iaf1c10777dc1e71df2be2a57533a10257b12626b
2018-10-24 19:45:09 +09:00
Chalard Jean
698b80818c Merge "To support skip464xlat per Network" 2018-10-24 07:15:20 +00:00
Nathan Harold
26f91069c1 Merge "Move some members to the "Q blacklist"." 2018-10-23 21:53:51 +00:00
Mathew Inwood
0e71d36c58 Move some members to the "Q blacklist".
Based on some analysis, these fields/methods are likely false positives.
Set maxTargetSdk=P so that any apps using them are required to migrate off
them in future. See the bug for more details.

Exempted-From-Owner-Approval: Automatic changes to the codebase
affecting only @UnsupportedAppUsage annotations, themselves added
without requiring owners approval earlier.

Bug: 115609023
Test: m
Merged-In: I719b5c94e5b1f4fa562dd5d655953422958ad37e
Change-Id: I719b5c94e5b1f4fa562dd5d655953422958ad37e
(cherry picked from commit 2622bdf569)
2018-10-22 17:28:24 -07:00
hiroaki.yokoyama
a1a397d1d1 ConnectivityService: make log configurable
Make log of ConnectivityService configurable by system property.

Two levels:
VERBOSE: whole VDBG log.
DEBUG: selected necessary log for debug purpose.

Relevant log can be enbled in either way:
1. use adb command at run time.
2. config init.xx.rc file at compile time by adding.
on boot && property:ro.build.type=userdebug
    setprop log.tag.ConnectivityService DEBUG

Bug: 117632924
Change-Id: I43cc84878c64c5b448853c7393393a02262afd15
2018-10-22 15:59:17 +09:00
Junyu Lai
e302f75920 Merge "Add tests for the network blocked status change"
am: bbc0585a03

Change-Id: I0f3f93807d9089239f572c487d791acd7a324a2e
2018-10-19 09:18:38 -07:00
Junyu Lai
118cf0e236 Merge "Add new callback to inform blocking of network on specific uid."
am: f41deeb4a9

Change-Id: Ia99ee2fbefa67a7ee00d6fecce430ba6431945cd
2018-10-19 09:14:23 -07:00
Junyu Lai
bbc0585a03 Merge "Add tests for the network blocked status change" 2018-10-19 15:20:48 +00:00
Junyu Lai
f41deeb4a9 Merge "Add new callback to inform blocking of network on specific uid." 2018-10-19 15:20:48 +00:00
Mike Yu
96612aedb1 Add tests for the network blocked status change
onBlockedStatusChanged is intruduced for network blocked status.
The changes in this patch are:
  - Test onBlockedStatusChanged which tells apps whether the
    network is blocked.
  - Fixed the tests which is affected by the order changed in
    onAvailable.

Test: as follows
    - runtest frameworks-net
    - runtest -x NetworkPolicyManagerServiceTest.java
Bug: 74575553
Change-Id: I383c037ed895ef69c478dc3cff69fb1e27c42845
2018-10-19 19:52:50 +08:00
Chalard Jean
26e6255faa Merge changes I66e40b4b,I599a2ff9,I7c210623
am: e70b760e83

Change-Id: Iba4bb6d1676d889f1e4a781a7970f01c0e321275
2018-10-16 09:14:22 -07:00
Treehugger Robot
e70b760e83 Merge changes I66e40b4b,I599a2ff9,I7c210623
* changes:
  [PT16] Simplification of sendProxyBroadcast.
  [PT15] Tiny bugfix in setGlobalProxy
  [PT14] No-op refactoring of sendProxyBroadcast
2018-10-16 14:48:33 +00:00
Luke Huang
39fe20e389 Merge "Network-related commands porting"
am: 5f81fcf08d

Change-Id: I96b2bb80cca6e9d80f3f0fe08f7b71ce31b67528
2018-10-16 01:09:30 -07:00
Luke Huang
5f81fcf08d Merge "Network-related commands porting" 2018-10-16 07:44:37 +00:00
Android Build Merger (Role)
e43baff38b Merge changes into stage-aosp-master 2018-10-15 22:44:53 +00:00
Android Build Merger (Role)
214f2425b6 Merge changes into stage-aosp-master 2018-10-15 22:44:53 +00:00
Lorenzo Colitti
65b71e6a20 Merge "Change permissions checks for setAirplaneMode."
am: 38149e3ea7

Change-Id: I578923c3f9012055f715e536f5d4d42ed669c5ee
2018-10-15 08:03:52 -07:00
Android Build Merger (Role)
9d4ecb210e Merge changes into stage-aosp-master 2018-10-15 15:00:04 +00:00
Android Build Merger (Role)
370172f67b Merge changes into stage-aosp-master 2018-10-15 15:00:04 +00:00
Lorenzo Colitti
38149e3ea7 Merge "Change permissions checks for setAirplaneMode." 2018-10-15 13:36:45 +00:00
Chalard Jean
110cb12040 [PT16] Simplification of sendProxyBroadcast.
sendProxyBroadcast is always called with the same argument, and
it would make no sense with another argument anyway. Remove it.

This concludes the ProxyTracker refactoring with 227 lines removed
from ConnectivityService, a lot clarified, and some bugs removed.
Things can still be improved, but presumably at a much higher cost.

Next steps are : write tests, now that ProxyTracker is both testable
and mockable. And try to pour some gasoline on the PROXY_CHANGE_ACTION
broadcast, see if it burns well.

Test: runtest
Change-Id: I66e40b4bf5cfd0b2dc4fa37ea97b3429fe1b7e6c
2018-10-15 12:58:41 +09:00
Chalard Jean
0d21a064a6 [PT15] Tiny bugfix in setGlobalProxy
This bug has existed for a long time. If mDefaultProxyEnabled is
false, then the mDefaultProxy member should obviously not be used
in the broadcast.

Test: runtest
Change-Id: I599a2ff9f96d4667e824cf000c2125f86010bb02
2018-10-15 12:58:41 +09:00
Chalard Jean
1836a63e92 [PT14] No-op refactoring of sendProxyBroadcast
If mGlobalProxy is non-null, then getDefaultProxy returns mGlobalProxy
so the first change is a no-op.
If mGlobalProxy is null and mDefaultProxyEnabled is true, then
getDefaultProxy returns mDefaultProxy, which has just been set to
proxyInfo, so the second change is a no-op.
If mGlobalProxy is null and mDefaultProxyEnabled is true, then
getDefaultProxy returns mDefaultProxy ; if mGlobalProxy is null and
mDefaultProxyEnabled is false, then getDefaultProxy returns null,
therefore the third change is a no-op.

Test: runtest
Change-Id: I7c21062302bf54f4fc917c82e0175975051a55ec
2018-10-15 12:58:40 +09:00
Chalard Jean
1e161fd7b5 Merge "[PT13] Simple cleanup of ProxyTracker."
am: db2eff0874

Change-Id: I6a30f78e517716ca3ff14a3601374fddc65e4aec
2018-10-12 00:50:29 -07:00
Lorenzo Colitti
c7da00d199 Change permissions checks for setAirplaneMode.
Require NETWORK_SETTINGS (or NETWORK_SETUP_WIZARD) instead of the
legacy CONNECTIVITY_INTERNAL permission. The users are as follows:

- The system callers (Phone, Settings, SystemUI, VrSettings) all
  have NETWORK_SETTINGS.
- SetupWizard has NETWORK_SETUP_WIZARD
- sl4a has NETWORK_STACK

Bug: 115302596
Test: builds, boots, airplane mode via SystemUI works
Change-Id: I8ca40182bd8b5e3fd9a82296c0cc28de30ed4baf
2018-10-12 16:35:46 +09:00
Chalard Jean
db2eff0874 Merge "[PT13] Simple cleanup of ProxyTracker." 2018-10-12 07:34:43 +00:00
Chalard Jean
a0785d1a0e Merge "[PT12] Factor some code into ProxyTracker."
am: 665502961c

Change-Id: Ib92107f434576d8296ba74aab0d9abfe56cefa7c
2018-10-11 22:55:28 -07:00
Yuuki Habu
addf827426 To support skip464xlat per Network
To add skip464exlat in NetworkMisc.
NetworkAgent can skip to start 464xlat if need.
(e.g. IMS PDN for Cellular can be disabled)

Device will treat the network as IPv6-only if it is set

Bug: 69949375
Test: Nat464XlatTest, ConnectivityServiceTest

Change-Id: I676a02cb92530d64f29f34e89482a934f3ec4553
2018-10-12 14:35:30 +09:00
Chalard Jean
665502961c Merge "[PT12] Factor some code into ProxyTracker." 2018-10-12 04:23:16 +00:00
Chalard Jean
7a6ad8e2a9 Merge "Add log for debugging ConnectivityManager"
am: 12f8847e40

Change-Id: I666e534f42a930a2d0fee55032d7a9e4516349c0
2018-10-11 21:11:51 -07:00
Chalard Jean
12f8847e40 Merge "Add log for debugging ConnectivityManager" 2018-10-12 03:14:48 +00:00
Android Build Merger (Role)
c9fae266fb Merge changes into stage-aosp-master 2018-10-11 15:45:44 +00:00
Android Build Merger (Role)
f4bd5dd297 Merge changes into stage-aosp-master 2018-10-11 15:45:44 +00:00
Chalard Jean
1c4c870faf Merge "[PT11] Move handleDeprecatedGlobalHttpProxy to ProxyTracker"
am: 782db99fa1

Change-Id: I91e1a230864f0d5d826c01f91918a35461e2a433
2018-10-11 06:36:29 -07:00
Treehugger Robot
782db99fa1 Merge "[PT11] Move handleDeprecatedGlobalHttpProxy to ProxyTracker" 2018-10-11 12:50:17 +00:00
junyulai
f2c67e4521 Add new callback to inform blocking of network on specific uid.
Currently, apps rely on querying NetworkInfo object to know
whether their network is blocked or not. There is no proactive
way to tell app when it is being blocked/unblocked. The only
event that app would receive is SocketException with
ECONNABORTED when their ongoing socket connection has been
blocked, which is not an elegant way to notify app.

Thus, this commit is trying to address this problem. Therefore,
with the uses of other callbacks, the need of
getState/getDetailedState in NetworkInfo could be completely
eliminated.

Test: runtest frameworks-net
      runtest -x NetworkPolicyManagerServiceTest.java
      cts-tradefed run cts -m CtsHostsideNetworkTests
      cts-tradefed run cts -m CtsNetTestCases -t \
              android.net.cts.ConnectivityManagerTest
Bug: 74575553

Change-Id: Iec96a3103d0aa9a505020eb89d69b89c0b694486
2018-10-11 16:31:10 +08:00
Lorenzo Colitti
c37dffde10 Merge "Make setAirplaneMode @SystemApi for SetupWizard."
am: 772b75c26d

Change-Id: Ib418ca0a9f8d9be9c4bdc419c9d2ed05aa47a49d
2018-10-10 20:14:03 -07:00
Lorenzo Colitti
0bfef02a24 Make setAirplaneMode @SystemApi for SetupWizard.
Expose ConnectivityManager#setAirplaneMode and the
NETWORK_SETUP_WIZARD permission so that SetupWizard can call
setAirplaneMode.

Delete setAirplaneMode from the greylist because the permissions
checks on it, since at least 2013, have been for a privileged
permission (CONNECTIVITY_INTERNAL) that normal apps don't have.

Test: m
Bug: 115302596
Change-Id: I28f24d32c4b4b386407e9e0e3514ea9f8854f4a8
2018-10-10 17:50:05 +09:00
Soi, Yoshinari
b8102ef4d7 Add log for debugging ConnectivityManager
Add log to ConnectivityManager for better investigations of issue.
This patch adds StackTrace to the following APIs.

reportInetCondition()
reportBadNetwork()
reportNetworkConnectivity()
sendRequestForNetwork()
requestNetwork()
releaseNetworkRequest()
registerNetworkCallback()
unregisterNetworkCallback()

Bug: 116751720
Change-Id: I992292cd9d6f3d69c91ddbde5577591f9ec0f39b
2018-10-10 11:56:04 +09:00
Luke Huang
b913c8165e Network-related commands porting
Test: runtest frameworks-net passes
Test: manual testing of network related function works
Change-Id: Id197d20c80b04378731b113ad74676672bd8b67e
2018-10-09 11:29:02 +08:00
android-build-team Robot
0d9d8162a3 Snap for 5053079 from 77c2e6736ada05dbb36a90bbd90a9b718febcf94 to pi-qpr2-release
Change-Id: Id3c0d523b5de906851919cbee8d50c5a8c0af6d1
2018-10-06 03:07:24 +00:00
Yan Yan
e09f9d1a93 Merge changes I10c01f2b,Ie05bc535
am: 90a0bdb98a

Change-Id: I2e55a266f65268ca734c028d4da7add14a281d75
2018-10-05 11:47:12 -07:00
Yan Yan
90a0bdb98a Merge changes I10c01f2b,Ie05bc535
* changes:
  Check to ensure UDP-encap is used only for IPv4
  Add UDP encapsulation tests for IpSecService.
2018-10-05 17:38:41 +00:00
Android Build Merger (Role)
b8480d5bda Merge changes into stage-aosp-master 2018-10-05 17:35:26 +00:00
Android Build Merger (Role)
8b2dc0adc6 Merge changes into stage-aosp-master 2018-10-05 17:35:26 +00:00
Chalard Jean
fa17d29fa9 Merge "[PT10] Move loadGlobalProxy into ProxyTracker."
am: 79822ffb6f

Change-Id: If5d2eb35f1c990fc6af5747fb2f8e3d55afb7eb9
2018-10-05 02:22:44 -07:00
Chalard Jean
f9d8e07ea0 [PT13] Simple cleanup of ProxyTracker.
ProxyInfo#getPacFileUrl() is guaranteed to return non-null.

Test: runtest
Change-Id: Id206829441f01c6ed4066028de3e1f7fcbe8930b
2018-10-05 16:40:06 +09:00
Chalard Jean
bf650912c6 [PT12] Factor some code into ProxyTracker.
Test: runtest
Change-Id: Ic61ef1e735dcc988cf8fc698b853f3b3be331d8b
2018-10-05 16:40:02 +09:00
Chalard Jean
0933537df9 [PT11] Move handleDeprecatedGlobalHttpProxy to ProxyTracker
This contains a significant logic change : it will load the
deprecated proxy settings synchronously instead of on the next
run loop. I think this is okay because it would happen almost
immediately anyway, and there is nothing in ConnectivityService
that might be changing this setting in the mean time. As for
the possibility that this was executed in the handler because
of possible disk access, I want to point out that the
loadGlobalProxy method that now calls this was already doing
those same similar accesses.

Test: runtest
Change-Id: Idc6f260e2a337689dc274eb758eb00f6a31089bb
2018-10-05 16:39:53 +09:00