Commit Graph

3749 Commits

Author SHA1 Message Date
Erik Kline
a9da29975b Merge "Expand logging capabilities of Tethering subsystem" am: cbe63224b0 am: 96f9371a66 am: 945ff184c2
am: e40047ec69

Change-Id: I2644f518304a03da469fb9c2aa01a6d8f1a97901
2017-05-18 04:04:57 +00:00
Erik Kline
e40047ec69 Merge "Expand logging capabilities of Tethering subsystem" am: cbe63224b0 am: 96f9371a66
am: 945ff184c2

Change-Id: Ia9d15f0dcc49ce070f8684eb8c8481310859faa5
2017-05-18 03:54:30 +00:00
Hugo Benichi
7e17f5a6e0 Merge "Fix NetworkNotificationManagerTest" am: c13a80deee am: 13f0d10115 am: 31c566037b
am: acef18b0aa

Change-Id: I000077352ab0e1af7209a266be0309607034dbea
2017-05-18 03:50:46 +00:00
Hugo Benichi
acef18b0aa Merge "Fix NetworkNotificationManagerTest" am: c13a80deee am: 13f0d10115
am: 31c566037b

Change-Id: Ib880777290f74eaa565839632eb7518642fcc4f3
2017-05-18 03:44:20 +00:00
Treehugger Robot
cbe63224b0 Merge "Expand logging capabilities of Tethering subsystem" 2017-05-18 03:25:30 +00:00
Hugo Benichi
1fb086dd8a Merge "Move NetworkNotificationManagerTest to tests/net" am: c6464fad2f am: 9fdc903af7 am: 777bf77c2c -s ours
am: b0ec728a3c

Change-Id: Ibba873042627166120f4040896c58e96bff2b085
2017-05-18 02:47:54 +00:00
Hugo Benichi
b0ec728a3c Merge "Move NetworkNotificationManagerTest to tests/net" am: c6464fad2f am: 9fdc903af7
am: 777bf77c2c  -s ours

Change-Id: I0f63e4f29228a404ec0dac3571b2474806e4c8d6
2017-05-18 02:40:26 +00:00
Hugo Benichi
08528b224b Fix NetworkNotificationManagerTest
The testNotificationsShownAndCleared test was not doing anything
because the list of notification to show was always empty.

This patch fixes this issue and actually makes the test loop on
non-empty collections, and also fixes another ordering issue in
assertions themselves, hidden until now by the first issue.

Bug: 32561414
Test: runtest -x frameworks/base/tests/net/java/com/android/server/connectivity/NetworkNotificationManagerTest.java
Merged-In: I4837b1175d7c9133e9156e33acaa1e7e3341cc62
Change-Id: Ia30587bd68a87b83b62f57eeeb28fef7d95dbf81

(cherry picked from commit 913556e68e)
2017-05-18 11:08:31 +09:00
Hugo Benichi
c6464fad2f Merge "Move NetworkNotificationManagerTest to tests/net" 2017-05-18 02:01:40 +00:00
Hugo Benichi
9a7a008037 Merge "Finish moving NetworkStats tests to tests/net" am: d72f5f7c9a am: cd821b231a am: 544bcbe78e
am: 5019e0b10f

Change-Id: I663f5ae4f1e15bd39e8ed927ac71958818452967
2017-05-18 00:57:00 +00:00
Hugo Benichi
5019e0b10f Merge "Finish moving NetworkStats tests to tests/net" am: d72f5f7c9a am: cd821b231a
am: 544bcbe78e

Change-Id: I5d9a01a5804a7cc6289253db09078ede00fc0dc5
2017-05-18 00:48:14 +00:00
Erik Kline
ef8bd29f51 Expand logging capabilities of Tethering subsystem
Introduce a SharedLog that can be shared among all Tethering
components.  All log entries go to the same log, and each includes
its subsystem name.  Additionally, all entries emitted to the
system log shared the same tag, so can easily be watched.

More subsystems can inherit a SharedLog, but to minimize cherry-pick
conflicts we limit ourselves to these changes only.

Test: as follows
    - built
    - flashed
    - booted
    - log output observed via dumpsys
    - runtest frameworks-net passes
Bug: 32163131
Bug: 36988090
Bug: 38218697
Change-Id: I1229d4c55987402d84b0d4a2c8a595e0c829aa3e
2017-05-18 09:46:45 +09:00
Hugo Benichi
d72f5f7c9a Merge "Finish moving NetworkStats tests to tests/net" 2017-05-18 00:09:54 +00:00
Erik Kline
7194d9773f Merge "Add tethering offload HAL call via JNI" am: adb6e7b60b am: f421d60824 am: c967d56ad7 -s ours
am: 1302059404  -s ours

Change-Id: Iab8e98fdc4d7e4cf682dd4dffec3d64e6cef2556
2017-05-17 18:23:09 +00:00
Erik Kline
1302059404 Merge "Add tethering offload HAL call via JNI" am: adb6e7b60b am: f421d60824
am: c967d56ad7  -s ours

Change-Id: Ic1c1ab0a51459e390e8607217be8f0c6ef0c2bde
2017-05-17 17:37:25 +00:00
Hugo Benichi
256e3db020 Move NetworkNotificationManagerTest to tests/net
Bug: 32561414
Test: no functional change
Change-Id: Iad17e3336a4a589da5cf88fd6359323e34b747e1
2017-05-17 22:24:05 +09:00
Hugo Benichi
57ac13993a Finish moving NetworkStats tests to tests/net
Follow-up of commit 73fbb5303f.

Also add @SmallTest annotation to classes moved to tests/net.

Test: no functional change
Bug: 32561414
Change-Id: I0a0e8865d37ba7bae06ce352d3fc385989adc300
2017-05-17 22:24:05 +09:00
Treehugger Robot
adb6e7b60b Merge "Add tethering offload HAL call via JNI" 2017-05-17 07:09:15 +00:00
Erik Kline
b18f82a3e8 Merge "Add tethering offload HAL call via JNI" into oc-dev-plus-aosp
am: 652d17e238  -s ours

Change-Id: I7478fbe6c11a8543f96311e936b10d479442c42f
2017-05-17 05:14:06 +00:00
Erik Kline
672cf0d785 Add tethering offload HAL call via JNI
Additionally, try to locate java Control interface.

Test: as follows
    - built
    - flashed
    - booted
    - OffloadController log messages observed, but only ever
      "not enabled" messages (needs a supporting implementation)
Bug: 29337859
Bug: 32163131
Bug: 34361337
Merged-In: I5251d05f2d2fd732a33a8955a6c346b3a2401e46
Change-Id: I5251d05f2d2fd732a33a8955a6c346b3a2401e46
(cherry picked from commit 0b08ce4abb)
2017-05-17 13:44:25 +09:00
Erik Kline
b8bf26d5db Add tethering offload HAL call via JNI
Additionally, try to locate java Control interface.

Test: as follows
    - built
    - flashed
    - booted
    - OffloadController log messages observed, but only ever
      "not enabled" messages (needs a supporting implementation)
Bug: 29337859
Bug: 32163131
Bug: 34361337
Merged-In: I5251d05f2d2fd732a33a8955a6c346b3a2401e46
Change-Id: I5251d05f2d2fd732a33a8955a6c346b3a2401e46
(cherry picked from commit 0b08ce4abb)
2017-05-17 13:41:30 +09:00
Erik Kline
0b08ce4abb Add tethering offload HAL call via JNI
Additionally, try to locate java Control interface.

Test: as follows
    - built
    - flashed
    - booted
    - OffloadController log messages observed, but only ever
      "not enabled" messages (needs a supporting implementation)
Bug: 29337859
Bug: 32163131
Bug: 34361337
Change-Id: I5251d05f2d2fd732a33a8955a6c346b3a2401e46
2017-05-17 11:31:45 +09:00
TreeHugger Robot
c1f0216960 Merge "ConnectivityManager: fix documentation" 2017-05-16 14:31:28 +00:00
Hugo Benichi
6b5df8313d Merge "Remove unused import in ConnectivityManager" am: db6fc1afe8 am: fe098f8207 am: e13c192d0f
am: 5e769511ec

Change-Id: I455d9712ad7f60f7474077435ff977c95b3b48c3
2017-05-16 13:34:37 +00:00
Hugo Benichi
5e769511ec Merge "Remove unused import in ConnectivityManager" am: db6fc1afe8 am: fe098f8207
am: e13c192d0f

Change-Id: Ib8368c5a8538914cba2723368c03618401ac159f
2017-05-16 13:25:09 +00:00
Hugo Benichi
ac78670f57 Remove unused import in ConnectivityManager
This makes the pre-upload verification pass.

Test: no functional change.
Change-Id: I6beccea10ccfcb39d975cb8f6f34fc9d79f1e170
2017-05-16 11:39:08 +09:00
Hugo Benichi
e73017a135 ConnectivityManager: fix documentation
Documentation pointing to the registerNetwork() overload including a
timeout argument was pointing to the version removed by commit
38ea810b27. This makes it impossible to
cherry pick 38ea810b27 due to the linter
complaining about unresolvable links.

This patch fixes the documentation to point to the registerNetwork()
with argument types NetworkRequest, NetworkCallback, int, in that order.

Bug: 36370941
Test: no functional change
Change-Id: Ieaf58f81d89fdf63f480fd15e65ed52822fc4f51
2017-05-16 11:36:24 +09:00
Hugo Benichi
77ddfa4781 Merge "ConnectivityService: minor formatting change" am: 4c949ee07c am: 9374e0b598 am: 88a3389b2c
am: 172cf14807

Change-Id: I252d293f37d29a53e1b5d913f682c0c16b2a122c
2017-05-15 06:24:57 +00:00
Hugo Benichi
172cf14807 Merge "ConnectivityService: minor formatting change" am: 4c949ee07c am: 9374e0b598
am: 88a3389b2c

Change-Id: I5ce0d4a057edc0512f45d8cbf760bab1d2824183
2017-05-15 06:17:03 +00:00
Hugo Benichi
478587688c ConnectivityService: minor formatting change
This patch adds a space character between "synchronized" and
"(mTheLockVariable)" so that all synchronized block have a consistent
syntax. Basic stats shows that "synchronized (" is x10 time more likely
than "synchronized(".

This facilitates finding all locked sections by grepping.

Test: no semantics changes
Bug: 37119619
Change-Id: Id860700efa85ffebafed11af3a2997bc115d9c03
2017-05-15 01:09:36 +00:00
Hugo Benichi
2e39aebd6b Merge "Merge changes Ie762ce75,I611fd791 am: 21a57f263f am: cc9f695ba0 am: 164854bde2" into oc-dev-plus-aosp
am: b09b85471c

Change-Id: I8b1b20d81efa2d86345b3b15600bed4cd40bb6e8
2017-05-11 14:52:23 +00:00
Hugo Benichi
7d82c66d31 Merge changes Ie762ce75,I611fd791 am: 21a57f263f am: cc9f695ba0
am: 164854bde2

Change-Id: I1495249f1ced84438dbd5dd0ad6678e2ee4062cb
2017-05-11 14:28:23 +00:00
Hugo Benichi
edcc374b3c ConnectivityManager: unit test for argument validation
Bug: 36701874, 37107940
Test: new test passes
Change-Id: Ie762ce758b3d94052b7438a67fc55bef4690cbbb
2017-05-11 14:15:20 +09:00
Hugo Benichi
145e379d5d ConnectivityManager: uses service error codes and exceptions
This patch introduces between ConnectivityManager and
ConnectivityService a mechanism for propagating back to clients
informative errors in the form of error codes and associated custom
runtime exceptions.

Without error code, the service can only throw a limited number of
different exceptions over Binder. Furthermore the throw site stack
traces are always loss. Although for individual instances of a throw,
the error message can be inspected, aggregations of stack traces from
app crashes sanitize error messages and only leaves the stack traces.

This makes debugging dificult for some service calls such as
requestNetwork that can have a variety of failure modes.

In this patch only one failure mode is codified. More can be added later
at a light cost by: 1) defining an error code, 2) defining an
associated exception, 3) mapping the code to the exception. This patch
can serves as a template for doing so.

Test: $ runtest frameworks-net,
      #testNetworkRequestMaximum() detects the new exception type.
Bug:  36556809, 36701874
Change-Id: I611fd7915575c9e418f7149fcdc8a879d2a3716d
2017-05-11 14:15:15 +09:00
Hugo Benichi
88216649e1 Merge "NetworkStatsFactory: fix double accounting on IPv6 only networks" into oc-dev am: f37b271894 -s ours
am: bb19c87d68  -s ours

Change-Id: Ia2b1ca862959fb685e6595f41dbfb130cdad6009
2017-05-10 08:49:28 +00:00
Hugo Benichi
bb19c87d68 Merge "NetworkStatsFactory: fix double accounting on IPv6 only networks" into oc-dev
am: f37b271894  -s ours

Change-Id: I28f139b2bc5a42eed4caf01bea7a1a9426a91625
2017-05-10 08:38:56 +00:00
Hugo Benichi
053b8f91b6 Merge "Merge "NetworkStatsFactory: fix double accounting on IPv6 only networks" am: 183d968881 am: 76dc14ec88 am: 1697d48faf" into oc-dev-plus-aosp
am: 18d29a6ee8

Change-Id: I97d5fcc43d6f11c05b74b29ebf3182a3ea7198c5
2017-05-10 02:12:15 +00:00
Hugo Benichi
ae49870916 Merge "Merge "NetworkStatsFactory: fix double accounting on IPv6 only networks" am: 183d968881 am: 76dc14ec88 am: 1697d48faf" into oc-dev-plus-aosp
am: f8dbdba5a2

Change-Id: Ie09f2b4e04749e61923781f4b13e796054108fad
2017-05-10 02:06:06 +00:00
Android Build Merger (Role)
18d29a6ee8 Merge "Merge "NetworkStatsFactory: fix double accounting on IPv6 only networks" am: 183d968881 am: 76dc14ec88 am: 1697d48faf" into oc-dev-plus-aosp 2017-05-10 00:47:39 +00:00
Hugo Benichi
2362279537 Merge "NetworkStatsFactory: fix double accounting on IPv6 only networks" am: 183d968881 am: 76dc14ec88
am: 1697d48faf

Change-Id: I8b0cf31ef356aae9992f893ca35001d048999519
2017-05-10 00:44:51 +00:00
Hugo Benichi
373ab28387 Merge "NetworkStatsFactory: fix double accounting on IPv6 only networks" am: 183d968881 am: 76dc14ec88
am: 1697d48faf

Change-Id: I7dbfe3c96678e2325eb533f31523ad10d861ad02
2017-05-10 00:40:28 +00:00
Hugo Benichi
6c07bead32 NetworkStatsFactory: fix double accounting on IPv6 only networks
For 464xlat scenarios on IPv6 networks, the clatd interface setup
introduces double counting of apps ipv4 traffic. NetworkStatsFactory was
accounting for this on the tx path, but not on the rx path. Also it did
not accounted for the 20 bytes added by the IPv6 header.

This patch subtract correctly the rx and tx traffic from the root uid on
the underlying interface, and also adds correctly the 20 bytes cost per
packet on the stacked interface for 464xlat traffic.

Test: added several new unit tests, based on synthetic data and real
      data also.
Bug: 33681750
Change-Id: I4867fe181938d94b5594b3d88896a3c4e01d895c
Merged-In: I2675643b220acbc6110179fa937d4c313b6f5e32

(cherry picked from commit e1bb3a14d1ee1aba2f92e5bccf659774699eaffe)
2017-05-10 09:19:12 +09:00
Hugo Benichi
183d968881 Merge "NetworkStatsFactory: fix double accounting on IPv6 only networks" 2017-05-10 00:07:29 +00:00
Hugo Benichi
043095b615 NetworkStatsFactory: fix double accounting on IPv6 only networks
For 464xlat scenarios on IPv6 networks, the clatd interface setup
introduces double counting of apps ipv4 traffic. NetworkStatsFactory was
accounting for this on the tx path, but not on the rx path. Also it did
not accounted for the 20 bytes added by the IPv6 header.

This patch subtract correctly the rx and tx traffic from the root uid on
the underlying interface, and also adds correctly the 20 bytes cost per
packet on the stacked interface for 464xlat traffic.

Test: added several new unit tests, based on synthetic data and real
      data also.
Bug: 33681750
Change-Id: I2675643b220acbc6110179fa937d4c313b6f5e32
2017-05-09 22:46:14 +09:00
Android Build Merger (Role)
82899a874a Merge "Merge "Move some NetworkStats tests to tests/net." into oc-dev am: 74fe2cbc3a -s ours am: 1217cfd0c3 -s ours" 2017-05-09 06:49:26 +00:00
Lorenzo Colitti
d43686fd6a Merge "Move some NetworkStats tests to tests/net." into oc-dev am: 74fe2cbc3a -s ours
am: 1217cfd0c3  -s ours

Change-Id: I40b5bb1e640358e6889f92dacdd2a977bc9758fb
2017-05-09 06:46:48 +00:00
Lorenzo Colitti
1217cfd0c3 Merge "Move some NetworkStats tests to tests/net." into oc-dev
am: 74fe2cbc3a  -s ours

Change-Id: I4c58d302385c733108614c681632d3a8bc2dbdcf
2017-05-09 06:40:41 +00:00
Hugo Benichi
0313b3cbf7 Merge changes I4872f8ba,I92039f29,Iaad13e13 am: 767ac317e2 am: 717238a614 am: 44e9b81c54
am: 4799bdc8fa

Change-Id: Ia0f85518fd0e75e768fa037c5d0bcf062b3c1f93
2017-05-09 06:39:13 +00:00
Hugo Benichi
4799bdc8fa Merge changes I4872f8ba,I92039f29,Iaad13e13 am: 767ac317e2 am: 717238a614
am: 44e9b81c54

Change-Id: I9c38d1254f82b50f4d1e953e72bf15a46562d3b8
2017-05-09 06:30:48 +00:00
Hugo Benichi
fc28684dda NsdService: test coverage for client requests.
Adding coverage for:
  - NsdManager client disconnection
  - in-flight request GC

Test: new test passes
Bug: 37013369, 33298084
Change-Id: I92039f297cf99352bbf4196797933d89c0b819ff
2017-05-09 10:49:33 +09:00