Commit Graph

1620 Commits

Author SHA1 Message Date
Lorenzo Colitti
d388cbb9e4 Merge "Add a method to start the captive portal login app." into oc-dev
am: 5555b1e3d1

Change-Id: Ic7c14bd3dfd07f97c04901f043ed1cd3b1eee6e4
2017-05-02 04:44:31 +00:00
Lorenzo Colitti
500dbae1b5 Add a method to start the captive portal login app.
Bug: 36203355
Bug: 36656914
Test: ConnectivityServiceTest (including new test) passes
Change-Id: I82a9a9a8da47870ba3f1bbef5941b37e970c844f
2017-05-01 16:01:15 +09:00
Erik Kline
a069fc8481 Merge "Clarify some IpManager/ApfFilter debugging output." am: ce94c07ffd am: 3cc7ccfc69
am: b1914ebb50

Change-Id: If64f2b8a5cdf8b946a82a0c97a42cf61ef5e0b08
2017-04-27 00:35:25 +00:00
Erik Kline
6a14375cc2 Clarify some IpManager/ApfFilter debugging output.
Test: as follows
    - built
    - flashed
    - booted
    - "runtest frameworks-net" passes
    - "adb shell dumpsys wifi ipmanager" shows updated output
Bug: 34793131
Change-Id: I6dec135b97343943efb421ef7b2e84c4751dd5ea
(cherry picked from commit af579eb5b516296a8ec0b02d824f2ba646e60ca2)
2017-04-26 17:17:04 +09:00
Erik Kline
aca4fac0db Clarify some IpManager/ApfFilter debugging output.
Test: as follows
    - built
    - flashed
    - booted
    - "runtest frameworks-net" passes
    - "adb shell dumpsys wifi ipmanager" shows updated output
Bug: 34793131
Change-Id: I6dec135b97343943efb421ef7b2e84c4751dd5ea
2017-04-26 17:14:47 +09:00
Etan Cohen
e6d346bc06 Merge "[AWARE] Add UID checking to WifiAwareNetworkSpecifier" am: 7b6ba2b3ea am: 3c6305cc55
am: 887fd90742

Change-Id: I8480ac43d89dc85b541e6255c3cdc597393896cf
2017-04-25 13:40:42 +00:00
Etan Cohen
7b6ba2b3ea Merge "[AWARE] Add UID checking to WifiAwareNetworkSpecifier" 2017-04-25 13:21:36 +00:00
Hugo Benichi
72ba66b48a Merge changes I5187d17c,I49a76582 am: 8b41dd0318 am: f2e5cf715d
am: 31259c219f

Change-Id: I174179db3a08ba51aef737cfb3956d1cf789b362
2017-04-22 00:59:36 +00:00
Hugo Benichi
8b41dd0318 Merge changes I5187d17c,I49a76582
* changes:
  ConnectivityService: regroup bool <-> int conversions
  ConnectivityService: move reportNetworkConnectivity to handler
2017-04-22 00:34:07 +00:00
Robin Lee
8fc4ec1ec4 Merge "Use Vpn rules (not firewall) for always-on VPN" am: dcb162176e am: cd8557d15a
am: 4de3794c26

Change-Id: Ic1e96eac68ddc8a713b3c71b5c126cb8b99c59f5
2017-04-21 22:17:15 +00:00
Treehugger Robot
dcb162176e Merge "Use Vpn rules (not firewall) for always-on VPN" 2017-04-21 21:53:15 +00:00
Etan Cohen
1b6d418785 [AWARE] Add UID checking to WifiAwareNetworkSpecifier
Wifi Aware networks are per app - i.e. a requestor gets
a dedicated network. Change verifies that the only the
original requestor matches the created network (using UID).

Bug: 36053921
Test: Integration (sl4a) tests
Change-Id: I4ff3994731dd7ccb88e2bea333d1e6905b136f02
2017-04-21 18:47:35 +00:00
Hugo Benichi
f4210294ac ConnectivityService: regroup bool <-> int conversions
This patch cleanups conversion of boolean values to ints when reading
configuration values or sending Messages whose arg1 or arg2 has boolean
semantics.

Test: runtest frameworks-net
Change-Id: I5187d17cd746486f63b1c410d191c30edd93ff6f
2017-04-21 15:18:51 +09:00
Hugo Benichi
d6b510a23e ConnectivityService: move reportNetworkConnectivity to handler
This patch moves reportNetworkConnectivity onto the handler of
ConnectivityService.

This allows:
  - to inspect NetworkAgentInfo on the ConnectivityService handler,
    which is always more correct than doing so on a Binder thread.
  - to improve locking policies around NetworkAgentInfo.

Test: $ runtest frameworks-net
Bug: 37119619, 36902662
Change-Id: I49a765826e65c29a1995242290e5e7544112c94e
2017-04-21 15:17:54 +09:00
Hugo Benichi
6fa7889bd8 Merge "ConnectivityManager: remove obsolete callback types" am: afeeac07e2 am: 23ee1621c7
am: b51307e12e

Change-Id: I2f5fad0b559b972e82ecacdfcdd3805f0fbb2655
2017-04-20 13:59:32 +00:00
Erik Kline
278c771b04 Merge "Make tetherChangePermission to be secured for AppOps permission" am: d721dd8ebb am: 0d1f04384f
am: d9bfb83d96

Change-Id: I6dd418684b1a40292cd496ead3613cf938577c09
2017-04-20 13:52:35 +00:00
Hugo Benichi
981ee3f2c3 resolve merge conflicts of 7bbd03be361f to oc-dev-plus-aosp
Conflits were:
  - static import section of ConnectivityService
  - code deleted in commit 8d96292e08

Test: built.
Change-Id: I0e026522558f39d8ae6812b62a30f2501923ab86
2017-04-20 22:26:50 +09:00
Hugo Benichi
afeeac07e2 Merge "ConnectivityManager: remove obsolete callback types" 2017-04-20 12:38:29 +00:00
Erik Kline
d721dd8ebb Merge "Make tetherChangePermission to be secured for AppOps permission" 2017-04-20 04:28:53 +00:00
Hugo Benichi
f8a0f9f873 ConnectivityManager: remove obsolete callback types
This patch also:
  - suppresses callback triggers from ConnectivityService for these
    obsolete callback types.
  - marginally refactors callCallbackForRequest().

Test: runtest frameworks-net
Change-Id: Idfb75640732943c599de4975f252f706d21ad594
2017-04-20 10:42:38 +09:00
Hugo Benichi
8d96292e08 ConnectivityManager: unify prety printing of callback types.
And also remove some small code duplication (checkNotNull).

Test: built, flashed, runtest frameworks-net
Change-Id: Id6c13bca9d12f70b88806032e0a4fa198efbedc6
2017-04-20 10:42:38 +09:00
Tetsutoki Shiozawa
b47da283e7 Make tetherChangePermission to be secured for AppOps permission
Symptom:
AppOps verified the incorrect package of calling tether state
changing API.
It threw SecurityException by mistake.

Solution:
Pass the correct package name to enforceTetherChangePermission.

Bug: 32931147
Change-Id: Ia1167f26f556678b189a24a4a716f1a7e5cb12eb
2017-04-19 16:50:33 +09:00
TreeHugger Robot
46d1e597bc Merge changes I76ae853c,If94102c7 into oc-dev
* changes:
  Ignore potential SystemProperties errors when setting net.dns
  Make ConnectivityServiceTest pass on wifi-only devices.
2017-04-17 05:11:21 +00:00
Etan Cohen
6c2ab24a4c Make the NetworkSpecifier a class instead of a string.
Bug: 27533960
Bug: 36053921
Bug: 36275276
Test: connectivity, wifi, telephony unit tests
Change-Id: Idd9b10a8418c53c8cf386d9ff8252226b076bbf9
Merged-In: I7535495681da8f168c46d6d95e13925cffecc99b
Merged-In: I6500639ae839ee9ad5af34d1292d1539c943e2ad
2017-04-14 18:22:10 +09:00
Erik Kline
5e89c9abfb Ignore potential SystemProperties errors when setting net.dns
Test: as follows
    - built
    - flashed
    - booted
    - "runtest frameworks-net" passes
Bug: 33308258
Bug: 36249702

Change-Id: I76ae853ceb61b7b900f36f9c3cd67b2d2284aab0
(cherry picked from commit 4edba01eb4c05c0a9872014255e9e46c60463fd9)
2017-04-13 18:04:24 +09:00
Lorenzo Colitti
ac7f4f261c Make ConnectivityServiceTest pass on wifi-only devices.
Test: ConnectivityServiceTest passes on ryu on internal master
Test: ConnectivityServiceTest passes on bullhead
Bug: 36249702
Change-Id: If94102c7df0257ea9e69e72b07a685ae3c2c4022
(cherry picked from commit 42cdf577037770a66d27f831d0f9e26532c3628d)
2017-04-13 18:03:58 +09:00
Erik Kline
5dd4e7c27a Merge "Ignore potential SystemProperties errors when setting net.dns" am: a0d447ce3e am: 1303b8b9ca
am: 1d3528ba86

Change-Id: Ic9bf0af39fc2f879fb1fa365480f4d6d187a4d79
2017-04-13 06:18:38 +00:00
Erik Kline
54e35c046d Ignore potential SystemProperties errors when setting net.dns
Test: as follows
    - built
    - flashed
    - booted
    - "runtest frameworks-net" passes
Bug: 33308258
Bug: 36249702

Change-Id: I76ae853ceb61b7b900f36f9c3cd67b2d2284aab0
2017-04-13 13:16:22 +09:00
Lorenzo Colitti
05a404cea0 Merge changes from topic 'network_specifier' am: 78e38f292d am: 362bef45d1
am: cfd729093f

Change-Id: I7535495681da8f168c46d6d95e13925cffecc99b
2017-04-12 22:58:42 +00:00
Lorenzo Colitti
78e38f292d Merge changes from topic 'network_specifier'
* changes:
  [CM] Unhide the NetworkSpecifier as object API
  Make the NetworkSpecifier a class instead of a string.
2017-04-12 22:27:37 +00:00
Treehugger Robot
253efa0a14 Merge "Add an API hint for metered multipath traffic." 2017-04-10 05:40:10 +00:00
Hugo Benichi
499541673f Merge "ConnectivityService: safer locking" 2017-04-07 02:10:45 +00:00
Sudheer Shanka
6be72c390a Merge "ConnectivityService: safer locking" into oc-dev
am: 6120db5990

Change-Id: I1c22edc7a247d83d860e7016fe7edab1537c5bb7
2017-04-06 20:07:00 +00:00
Hugo Benichi
e9d321b068 ConnectivityService: safer locking
This path changes a dangerous lock path in reportNetworkConnectivity().
This methods is called outside of the main ConnectivityService handler
and takes a lock on a specific NetworkAgentInfo whose connectivity
status is being reported.

While this lock is held, reportNetworkConnectivity() goes on and query
the network policy state for that network, which may ends into
NetworkPolicyManagerService.

Instead, the lock on NetworkAgentInfo is only held long enough to make a
copy of LinkProperties, which is then passed to
NetworkPolicyManagerService without that lock.

Bug: 36902662
Test: could not repro b/36902662, reportNetworkConnectivity() works.
      $ runtest frameworks-net

Change-Id: Iac4b75bcecbdddb0ac695c8b1a87ae755f62f47f
2017-04-06 11:50:09 -07:00
Hugo Benichi
475dd68f11 ConnectivityService: safer locking
This path changes a dangerous lock path in reportNetworkConnectivity().
This methods is called outside of the main ConnectivityService handler
and takes a lock on a specific NetworkAgentInfo whose connectivity
status is being reported.

While this lock is held, reportNetworkConnectivity() goes on and query
the network policy state for that network, which may ends into
NetworkPolicyManagerService.

Instead, the lock on NetworkAgentInfo is only held long enough to make a
copy of LinkProperties, which is then passed to
NetworkPolicyManagerService without that lock.

Bug: 36902662
Test: could not repro b/36902662, reportNetworkConnectivity() works.
      $ runtest frameworks-net

Change-Id: Iac4b75bcecbdddb0ac695c8b1a87ae755f62f47f
2017-04-06 17:23:28 +09:00
Lorenzo Colitti
e454b43d3f Add an API hint for metered multipath traffic.
This allows an application that knows how to provide seamless
network connectivity (e.g., using QUIC multipath) to find out if
doing so is desired.

(cherry picked from commit 48a2a32bdd)

Test: builds, boots, runtest frameworks-net passes.
Bug: 34630278
Change-Id: Ic7fd0b9e1cd879fdfaf84009d7125391895e9087
2017-04-06 16:50:06 +09:00
Etan Cohen
8913454e36 Make the NetworkSpecifier a class instead of a string.
Bug: 27533960
Bug: 36053921
Bug: 36275276
Test: connectivity, wifi, telephony unit tests
Change-Id: Idd9b10a8418c53c8cf386d9ff8252226b076bbf9
2017-04-05 14:18:20 -07:00
Hugo Benichi
d51e308af3 Merge "Move back networking policy logic into NetworkPolicyManagerService" into oc-dev
am: 1173ec5bbb

Change-Id: I7d7b66cc1dc6888ea28e2b4d83d570fa440c29f2
2017-04-04 00:58:02 +00:00
Hugo Benichi
1173ec5bbb Merge "Move back networking policy logic into NetworkPolicyManagerService" into oc-dev 2017-04-04 00:50:24 +00:00
Hugo Benichi
efe72f98cf Merge "ConnectivityService: simplify WakeLock management" am: 063cd4485d am: 8da1697f8f
am: 56ca1705d6

Change-Id: Iacc2e977c1eec2ebc9deb9395e1f77a62b57f070
2017-04-03 09:17:18 +00:00
Hugo Benichi
8da1697f8f Merge "ConnectivityService: simplify WakeLock management"
am: 063cd4485d

Change-Id: I1e0ae930cd7a329febf21ff3fc83ad2d0a3be69b
2017-04-03 09:03:13 +00:00
Hugo Benichi
063cd4485d Merge "ConnectivityService: simplify WakeLock management" 2017-04-03 08:56:24 +00:00
Jeff Sharkey
67043b4932 Consistent dump() permission checking.
am: c372a5cd06

Change-Id: I300f8bc07e1266b9e78f56d085cd458862176a85
2017-04-03 06:19:02 +00:00
Jeff Sharkey
c372a5cd06 Consistent dump() permission checking.
This change introduces new methods on DumpUtils that can check if the
caller has DUMP and/or PACKAGE_USAGE_STATS access.  It then moves all
existing dump() methods to use these checks so that we emit
consistent error messages.

Test: cts-tradefed run commandAndExit cts-dev -m CtsSecurityTestCases -t android.security.cts.ServicePermissionsTest
Bug: 32806790
Change-Id: Iaff6b9506818ee082b1e169c89ebe1001b3bfeca
2017-04-02 22:29:07 -06:00
Hugo Benichi
ffe196ad66 Merge "ConnectivityService: log wakelock activity in dumps" am: de6ae12f16 am: 62498caa03
am: bf1b181c63

Change-Id: Id4c980a2a1ef7f51b6a06c7c8636160437e99b84
2017-04-03 00:00:19 +00:00
Hugo Benichi
471b62a6b8 ConnectivityService: simplify WakeLock management
This patch simplifies wakelock management by acknowledging that only one
acquisition at most is in flight at any time. This allows to remove the
serial number associated with wakelock acquisition and to avoid double
release when regaining a default network.

Example of $ adb shell dumpsys connectivity logs:
  NetTransition WakeLock activity (most recent first):
    03-31 00:15:13.816 - RELEASE (EVENT_CLEAR_NET_TRANSITION_WAKELOCK)
    03-31 00:14:59.216 - ACQUIRE for NetworkAgentInfo [WIFI () - 101]
    03-31 00:09:05.799 - RELEASE (EVENT_EXPIRE_NET_TRANSITION_WAKELOCK)
    03-31 00:08:05.738 - ACQUIRE for NetworkAgentInfo [WIFI () - 100]

Test: watched wakelock section $ adb shell dumpsys connectivity while
      turning on and off Wifi (with no other network).
Bug: 36703718
Change-Id: I899b0816c0e41b3991d9540e9b9a604914ff673a
2017-04-03 08:54:54 +09:00
Hugo Benichi
62498caa03 Merge "ConnectivityService: log wakelock activity in dumps"
am: de6ae12f16

Change-Id: If08e0088ab25f1494aaf3a339a38e7a8e343d910
2017-04-02 23:47:15 +00:00
Hugo Benichi
de6ae12f16 Merge "ConnectivityService: log wakelock activity in dumps" 2017-04-02 23:40:27 +00:00
Chris Wren
31e645ab44 Merge "move network notification IDs to central registry" into oc-dev
am: fb54aee325

Change-Id: I0abcea4b9fe43e5c08885413e0f9a419b87b7206
2017-04-01 16:23:25 +00:00
Chris Wren
79e151d78c move network notification IDs to central registry
Bug: 36808999
Test: make
Change-Id: I34bafa9ce69fc6913a6b4a5935cafd8979d0193b
2017-03-31 14:02:23 -04:00