Commit Graph

2589 Commits

Author SHA1 Message Date
Hugo Benichi
a2decca4f2 IP connectivity metrics: ConnectStats additions
This patch:
  - adds a counter to ConnectStats for counting the number of successful
    connect() calls done in blocking mode. This allows to compute error
    rates for connect() in blocking mode.
  - add printing of ConnectStats when dumping NetdEventListenerService
    and/or IpConnectivityMetrics service.

Test: $ runtest frameworks-net, + manual tests verifying logged events.
Bug: 34901696
Change-Id: I889e8ccd12681b0511be487e9d2ee44290a2d7d7
2017-03-13 09:25:15 +09:00
TreeHugger Robot
1966cccd32 Merge "Keep Settings.Global.NETWORK_RECOMMENDATIONS_ENABLED updated." 2017-03-07 23:01:50 +00:00
Jeremy Joslin
9925c6a7e7 Keep Settings.Global.NETWORK_RECOMMENDATIONS_ENABLED updated.
Make sure Settings.Global.NETWORK_RECOMMENDATIONS_ENABLED reflects
the current active scorer state. When valid the setting will have a
value of 1, when invalid it will be 0 (or more
accurately not 1, see below).

Introduced a new valid setting value, -1, which indicates the feature
has been forced off.

Test: runtest frameworks-services -c com.android.server.NetworkScorerAppManagerTest
Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
Bug: 35896421
Change-Id: I271725f798e5d0acc7c08c79678dba5115f8faad
2017-03-07 10:13:41 -08:00
Etan Cohen
a123f73a1c Merge "[CM] Allow timeout in request network" am: 8328f27a87 am: 645b48c8af
am: ac879cbcaf

Change-Id: If42250966d619073d45d608aab454589213b1756
2017-03-07 17:02:05 +00:00
Etan Cohen
645b48c8af Merge "[CM] Allow timeout in request network"
am: 8328f27a87

Change-Id: Ic7a3da0a5292be5e13abca9c98c422bc2f50f3a0
2017-03-07 16:49:53 +00:00
Etan Cohen
8328f27a87 Merge "[CM] Allow timeout in request network" 2017-03-07 16:40:27 +00:00
Erik Kline
a33ae2d884 Merge "request{LinkProperties,NetworkCapabilities} no longer needed" am: 75dfc5bd91 am: 0f901af920
am: bb54baba04

Change-Id: Id2aa8aeff6d299edb85955c12ab0a04023458597
2017-03-07 13:42:11 +00:00
Erik Kline
0f901af920 Merge "request{LinkProperties,NetworkCapabilities} no longer needed"
am: 75dfc5bd91

Change-Id: I79b9323be242ed5d2bf83962f78c613a465a20b8
2017-03-07 13:33:29 +00:00
Erik Kline
465c46d555 request{LinkProperties,NetworkCapabilities} no longer needed
Test: as follows
    - built (bullhead)
    - flashed
    - booted
    - runtest frameworks-net passes
    - manual USB tethering toggling between WiFi and mobile
Bug: 32163131
Change-Id: I57edf5114b6361f320577c7870e40f8b3cdf74ce
2017-03-07 17:18:06 +09:00
Erik Kline
6bbefcbf40 Merge "Always send all available state when calling onAvailable()." am: affbb8b6a9 am: e0a62a4398
am: 3765538bab

Change-Id: Ic82e3cb92841ea99972faad6ae004d77c725831b
2017-03-07 06:08:40 +00:00
Erik Kline
e0a62a4398 Merge "Always send all available state when calling onAvailable()."
am: affbb8b6a9

Change-Id: I81e70fecf060a4103b51084a60a32c78f6219f6b
2017-03-07 06:00:09 +00:00
Erik Kline
c75d4fad22 Always send all available state when calling onAvailable().
The state that needs to be transferred includes:
    - NetworkCapabilities
    - LinkProperties
    - whether the network is currently suspended

Additionally:
    - Rename notifyNetworkCallback() to notifyNetworkAvailable()
      in order to clarify its real function.
    - fix previous copy/paste error in unittest

Test: as follows
    - built (bullhead)
    - flashed
    - booted
    - runtest frameworks-net passes
    - USB tethering with mobile and Wi-Fi upstream toggling
Bug: 32163131
Change-Id: Ib4460bcd5d08863a9feac9e8ab41a238897bb3ea
2017-03-07 12:57:26 +09:00
Hugo Benichi
45deba76fc Merge "Revert "ConnectivityManager: no double NetworkCallback registration" because oit caused regressions http://b/35955593, http://b/35921499." am: 704520c392 am: 4cf199383f
am: 22d4258a75

Change-Id: I8e66e223003a38735b707d21d7bedb19170b1937
2017-03-06 12:45:10 +00:00
Hugo Benichi
4cf199383f Merge "Revert "ConnectivityManager: no double NetworkCallback registration" because oit caused regressions http://b/35955593, http://b/35921499."
am: 704520c392

Change-Id: Ia0ae78f8406b81377491407cf5ef8ca339952def
2017-03-06 12:30:05 +00:00
Hugo Benichi
649e32484e Revert "ConnectivityManager: no double NetworkCallback registration" because oit caused regressions http://b/35955593, http://b/35921499.
This reverts commit faa70976b4.

Change-Id: I86c07c113f24753be7c977e6d7f570b99391e1b5
2017-03-06 06:16:51 +00:00
Etan Cohen
aebf17e7f1 [CM] Allow timeout in request network
Add (unhide) a public API which provides network requests with a
timeout. When timed-out the (newly unhidden) onUnavailable() callback
is triggered.

Note: this CL does not add a handler to the API to be consistent
with the existing APIs. There is a separate effort (b/32130437)
to update these APIs with Handlers.

Bug: 31399536
Test: unit tests and CTS (new)
Change-Id: I45ce9ada63372cb56937bb620bfbb7729e5e25d2
2017-03-02 08:06:27 -08:00
Hugo Benichi
00a5f2a658 Merge "ConnectivityManager: no double NetworkCallback registration" am: 06a192fa49 am: 5983a772cb
am: 974e83cc0b

Change-Id: I73569fd084c14a78067e09565418f296994cd424
2017-03-02 08:12:09 +00:00
Hugo Benichi
5983a772cb Merge "ConnectivityManager: no double NetworkCallback registration"
am: 06a192fa49

Change-Id: I250fa7d3c5e37a66caa41cc898a44bcb18c9a0c4
2017-03-02 08:04:03 +00:00
Hugo Benichi
faa70976b4 ConnectivityManager: no double NetworkCallback registration
Test: new test in ConnectivityManagerTest
Bug: 20701525
Change-Id: I205333d31d43e6e6c7fe704ce63b458065f345ce
2017-03-02 15:19:37 +09:00
TreeHugger Robot
c4584c1da8 Merge "Add a network scorer label metadata field to NetworkScoreAppData" 2017-03-01 21:54:37 +00:00
Stephen Chen
8b1339af53 Add a network scorer label metadata field to NetworkScoreAppData
This field allows Network Score Services to pass an alternate label for
the scorer.

Bug: 35848510
Test: runtest --path
frameworks/base/services/tests/servicestests/src/com/android/server/NetworkScorerAppManagerTest.java
runtest --path
frameworks/base/services/tests/servicestests/src/com/android/server/NetworkScoreServiceTest.java

Change-Id: Ic28671c1663bd08b2406045d20c150a209d56054
2017-03-01 11:47:38 -08:00
Nathan Harold
9ac082f8bb Merge "Add API Surface for creating IpSec Transforms" am: 7645fa2816 am: 0a6305d5dd
am: 3ddaf3e6b0

Change-Id: Idceae0e5a1af2f357378b03fc0d257dab605b217
2017-03-01 14:22:57 +00:00
Nathan Harold
0a6305d5dd Merge "Add API Surface for creating IpSec Transforms"
am: 7645fa2816

Change-Id: Ibe70a60c5c5808a7877145cccefcc1f11bfacc51
2017-03-01 14:12:55 +00:00
TreeHugger Robot
983552d03e Merge "Move some static methods from NPMS to NPM class." 2017-03-01 08:38:46 +00:00
Nathan Harold
330e1089da Add API Surface for creating IpSec Transforms
This CL adds an API to set up an IPSec Security Association
and Security Policy to perform Transport-Mode and Tunnel-Mode encapuslation
of IP Packets.

Bug: 30984788
Bug: 34811752
Test: 34812052, 34811227
Change-Id: Ic9f63c7bb366302a24baa3e1b79020210910ac0a
2017-02-28 22:01:20 -08:00
Jeremy Joslin
e9052a3cbc Cleanup else blocks on security checks.
Addresses post-submit comments from ag/1922454.

Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
Bug: 35095406
Change-Id: Idccad9400f4f6ae4708b03d6b3a66373683f635b
2017-02-28 17:01:49 +00:00
Jeremy Joslin
f621bc9733 Move NetworkScorerAppManager into com.android.server.
NetworkScorerAppManager is only used internally by the
NetworkScoreService and no longer needs to be part of core.
Extracted its inner class, NetworkScorerAppData, into a top-level
class and left it in android.net as it's used as part of the
NetworkScoreManager API.

Test: runtest frameworks-services -c com.android.server.NetworkScorerAppManagerTest
Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
Bug: 35095406
Change-Id: I201f081e05d0a909b4ae3142b63afc3e21548f77
2017-02-24 10:50:12 -08:00
TreeHugger Robot
a6be43461e Merge "Enforce the calling permissions within NetworkRecommendationProvider." 2017-02-24 18:43:01 +00:00
Erik Kline
e20e7ebbfb Merge "Update UpstreamNetworkMonitor to use custom Handlers" am: 35c89886c2 am: 279a4feb72
am: c239511cdb

Change-Id: I9a210b4896810e7365b2403495716395b3866650
2017-02-24 08:24:51 +00:00
Erik Kline
279a4feb72 Merge "Update UpstreamNetworkMonitor to use custom Handlers"
am: 35c89886c2

Change-Id: I76433822a9b7c124e4b7cfcf2a20cb0e43a60199
2017-02-24 08:15:19 +00:00
Erik Kline
b583b03675 Update UpstreamNetworkMonitor to use custom Handlers
Test: as follows
    - built (bullhead)
    - flashed
    - booted
    - runtest frameworks-net passes
Bug: 32130437
Bug: 32163131

Change-Id: I2bc3f87cdf7fa6392b4750eb8adb4ea33c6a3f43
2017-02-24 13:06:51 +09:00
Sudheer Shanka
e359c3db33 Move some static methods from NPMS to NPM class.
Moved isProcStateAllowedWhileIdleOrPowerSaveMode and
isProcStateAllowedWhileOnRestrictBackground to
NetworkPolicyManager from NetworkPolicyManagerService
so that these can be accessed from other classes.

Bug: 27803922
Test: Builds without any errors.
Change-Id: I4736652d546cdc84de3cdea9b6524854e4773419
2017-02-23 17:16:57 -08:00
TreeHugger Robot
c6baac4710 Merge "Display longer date string in certificate information" 2017-02-23 15:23:38 +00:00
Hugo Benichi
6dd3529aa6 Merge "IP connectivity metrics: cleanup obsolete code" 2017-02-23 07:02:30 +00:00
TreeHugger Robot
0e9acb53bd Merge "Add "Use open Wi-Fi automatically" setting." 2017-02-23 02:37:26 +00:00
Jeremy Joslin
8160544d58 Enforce the calling permissions within NetworkRecommendationProvider.
Had to add a new ctor to get a Context instance and deprecate the
single arg ctor. Since this was being done I also took the opportunity
to replace the Handler param with an Executor which is more
appropriate in this case.

I'll remove the deprecated ctor once I've updated all of its
call points.

Test: adb shell am instrument -e class android.net.NetworkRecommendationProviderTest -w com.android.frameworks.coretests/android.support.test.runner.AndroidJUnitRunner
Bug: 34518584
Change-Id: Ic2441655d69838ae9caa7d598e876dec36e15363
2017-02-22 17:22:56 -08:00
Sudheer Shanka
f764962b0d Merge "Revert "Ensure network connectivity on app start."" 2017-02-22 22:47:56 +00:00
Amin Shaikh
bc9a8e6f5b Add "Use open Wi-Fi automatically" setting.
- Add constant in NetworkScoreManager for the meta-data key required
for NetworkRecommendationProviders to specify which package provides
this feature.
- Add Setting to specify which package is enabled for providing this
feature.

Bug: 34773276
Test: make
Change-Id: I3f8209c21b8b219c242650f97ba407b5985a5250
2017-02-22 14:23:50 -08:00
Sudheer Shanka
c9d9407e8e Revert "Ensure network connectivity on app start."
This reverts commit 27e6931583.

Change-Id: I4c41ce7c1839d3b91931bc8a8f117f32bf6cd381
2017-02-22 22:13:55 +00:00
Hugo Benichi
a06ede044f Merge "ConnectivityManager: allow custom Handlers" am: ef69246260 am: cb47118af1
am: 0f99e5367b

Change-Id: I9f7fc64c2d3d6f88344c9547b8e1ac17cf3d1104
2017-02-22 05:59:44 +00:00
Hugo Benichi
95cb226c1a IP connectivity metrics: cleanup obsolete code
This patch cleans obsolete code related to IP connectivity metrics:
 - remove @SystemApi on android.net.metrics: now that metrics events
   are processed and serialized in the frameworks only, event classes
   should not appear in the system apis.
 - remove obsolete Logger classes: ConnectivityMetrics app was the
   unique user of ConnectivityMetricsLogger until nyc-mr1. From nyc-mr1
   the app started using dumpsys to get metrics for IpConnectivity and
   Telephony, which made ConnectivityMetricsLogger obsolete.
 - simplifications in MetricsTestUtil

Test: - runtest frameworks-net
      - manually verified $ adb shell dumpsys connmetrics
Bug: 30054585
Bug: 32648597
Change-Id: I85ef65f7f69eb9299e4636cc7af54067201d9daf
2017-02-22 12:56:38 +09:00
Hugo Benichi
cb47118af1 Merge "ConnectivityManager: allow custom Handlers"
am: ef69246260

Change-Id: I8da5540f6561cdef4adc91bbeeb9c21a91c08d49
2017-02-22 03:48:10 +00:00
Hugo Benichi
2583ef0239 ConnectivityManager: allow custom Handlers
This patch adds overloaded version of registerDefaultNetworkCallback
registerNetworkCallback, and requestNetwork with an additional Handler
argument that is used for running the caller provided NetworkCallback.

It also clarifies the documentation of the existing methods that
implicitly uses the internal singleton ConnectivityThread about which
internal Handler is used for running NetworkCallbacks.

Test: build, flashed, booted device
Bug: 32130437
Change-Id: Iae15f81e47e2dc0355baf2f2c1679b77e56af299
2017-02-22 09:24:01 +09:00
Charles He
2b47e744e2 Display longer date string in certificate information
Previously the date string used for "issued on" and "expires on" fields
are in short format (e.g. 2/3/17), which is ambiguous. In this CL we
use the date format of medium length (e.g. 2 Mar 2017) which also
adjusts automatically to the system locale.

Bug: 34428233
Test: manual, by opening Settings > Security > Certificates > any
      certificate

Change-Id: I5eff133d5c621e3e9969c7cf22ec757bd2b48dc4
2017-02-20 17:32:12 +00:00
TreeHugger Robot
6e82080513 Merge "Move Badging from ScoredNetwork to NetworkingBadging." 2017-02-18 01:14:04 +00:00
Hugo Benichi
01432b306d resolve merge conflicts of 9355bce0c3 to master
Test: none
Change-Id: Iac65e01d07edf79ec97e7d996f8cfee6f811606b
2017-02-17 10:47:58 +09:00
Hugo Benichi
9355bce0c3 Merge "IP connectivity metrics: delete obsolete logger service" am: 37e3f22c2e am: c54962a4bd
am: 9c2b6afa2f

Change-Id: I5f8cd508812d9532778c2f1f019308a4b8d8ee33
2017-02-17 00:18:35 +00:00
Hugo Benichi
9c2b6afa2f Merge "IP connectivity metrics: delete obsolete logger service" am: 37e3f22c2e
am: c54962a4bd

Change-Id: Iccc3ee97bd2ac267b312c6c7d9269ac02a2bd68e
2017-02-17 00:09:11 +00:00
Hugo Benichi
c54962a4bd Merge "IP connectivity metrics: delete obsolete logger service"
am: 37e3f22c2e

Change-Id: Ib335bc5e19c2c703d23267bf2835fc89fcf5a957
2017-02-17 00:00:14 +00:00
Hugo Benichi
37e3f22c2e Merge "IP connectivity metrics: delete obsolete logger service" 2017-02-16 23:52:13 +00:00