Commit Graph

1470 Commits

Author SHA1 Message Date
Lorenzo Colitti
aefac392ea Temporarily restore the net.dnsX system properties.
This will limit app breakage in dogfood. The plan is to remove
these obsolete system properties again in O developer preview
builds so that application developers can move away from them.

Test: marlin boots and net.dnsX exists and is updated correctly

Bug: 33308258
Bug: 33807046
Bug: 34028616
Bug: 34115651
Change-Id: Iaf2fa213c314b7ba251c065b304e7e9869bafe9f
2017-01-06 03:09:18 +00:00
Hugo Benichi
cdb61441a0 NetworkNotificationManager: remove spammy log am: 9430f95c21
am: 08e147a7d0

Change-Id: I2b9b1b52e11ddf784244eedf1311f3b015841215
2016-12-22 03:07:19 +00:00
Hugo Benichi
08e147a7d0 NetworkNotificationManager: remove spammy log
am: 9430f95c21

Change-Id: I01785760854cd040c0d09f76e3832bbb7986dc4e
2016-12-22 03:02:39 +00:00
Hugo Benichi
9430f95c21 NetworkNotificationManager: remove spammy log
Test: build, flashed, booted phone.
Bug: 32198726
Change-Id: I3ac2f07c756f48653195f6198aaee4d8b3939fb5
2016-12-22 09:51:01 +09:00
Hugo Benichi
b2966ad433 DO NOT MERGE Stricter NetworkNotificationManagerTest
am: 85a6c96ef3

Change-Id: I94ea5c6994d181e730ec4f49e98001eb81ed8740
2016-12-20 06:49:08 +00:00
Paul Stewart
3d205c909c DO NOT MERGE Fix other String.format issues in NetworkNotificationManager.java
am: f2e4cc9037

Change-Id: I79c4129b861b9dd93ac14acce5a86aadd48e8d39
2016-12-20 05:04:46 +00:00
Joe LaPenna
c4a0d516ce DO NOT MERGE Fix malformed log statement.
am: d7423d12a9

Change-Id: Ie52f24f39305f325e01972f5046247482053db28
2016-12-20 05:04:02 +00:00
Hugo Benichi
85a6c96ef3 DO NOT MERGE Stricter NetworkNotificationManagerTest
This patch changes NetworkNotificationManagerTest to populate extraInfo
of NetworkInfo in order to catch regressions in malformed format Strings
of log statements in NetworkNotificationManager.

Test: verified that the test fails when reintroducing the format String
bug.
Bug: 33737715

Change-Id: If14063554b8246d9d80cd222cb41c30dee121c5a
2016-12-20 05:02:28 +00:00
Paul Stewart
f2e4cc9037 DO NOT MERGE Fix other String.format issues in NetworkNotificationManager.java
Commit 51727428fc added a string
format which caused an exception.  On top of the fixes to this
from 5a45327352, we can also fix
a few more issues here with some missing arguments to other
String.format invocations in the aforementioned CL, and other
formatting problems.

Bug: 33737715
Test: Build and run SUW

(cherry picked from commit e46b47d85d)

Change-Id: I40064d3e1a0f0300c43bdbc51839b579a5394a36
2016-12-20 12:31:49 +09:00
Joe LaPenna
d7423d12a9 DO NOT MERGE Fix malformed log statement.
Introduced in I1201d1d4fab8183dd83449c2afb2c35cfece883f

BUG: 33746580

Test: built, triggered notification, no crash.

(cherry picked from commit 5a45327352)

Change-Id: I50594ad865e6f95abc5c67c58af604ef2aa88f9b
2016-12-20 12:31:45 +09:00
Paul Stewart
e46b47d85d Fix other String.format issues in NetworkNotificationManager.java
Commit 51727428fc added a string
format which caused an exception.  On top of the fixes to this
from 5a45327352, we can also fix
a few more issues here with some missing arguments to other
String.format invocations in the aforementioned CL, and other
formatting problems.

Bug: 33737715
Test: Build and run SUW
Change-Id: I13410ffebbc606b8801656ea0934f96ccd4b5357
2016-12-19 13:12:09 -08:00
Joe LaPenna
5a45327352 Fix malformed log statement.
Introduced in I1201d1d4fab8183dd83449c2afb2c35cfece883f

BUG: 33746580

Test: built, triggered notification, no crash.

Change-Id: Ia3e5370f95a6cea421ae0d3febdc5e3fe156dceb
2016-12-19 10:35:10 -08:00
Hugo Benichi
65e291c235 DO NOT MERGE IP Connectivity metrics: add connect() statistics
am: 845c1a3b0b

Change-Id: I7ad93b1b3a3446ffd6dce7c0799ddb9a2b43955f
2016-12-19 08:40:37 +00:00
Hugo Benichi
bf7ad49e3e DO NOT MERGE Fix IP connectivity metrics tests
am: 0ef1916103

Change-Id: Ia6a28b09263729caa72786062e134f8c684e3ccb
2016-12-19 08:39:55 +00:00
Hugo Benichi
e22193d8a9 Merge changes I1450c126,I8926a922,I54403377,Idf216797 into nyc-mr2-dev
* changes:
  DO NOT MERGE IP Connectivity metrics: add connect() statistics
  DO NOT MERGE Fix IP connectivity metrics tests
  DO NOT MERGE IP connectivity metrics: introduce ConnectStatistics and DNS statistics
  DO NOT MERGE IP connectivity metrics: add transport field.
2016-12-19 08:31:17 +00:00
Hugo Benichi
a7c95ac2cb DO NOT MERGE Network notifications: revamp keying scheme
am: 6cccb3bec3

Change-Id: Ibad7d0210b2c69826462b781f43a82d65849ebfb
2016-12-19 08:29:23 +00:00
Hugo Benichi
567cf7c47d DO NOT MERGE Unit tests for NetworkNotificationManager
am: f9b95ad8f3

Change-Id: I873ea4a5625c526d61017967604305ada548f907
2016-12-19 08:29:11 +00:00
Hugo Benichi
845c1a3b0b DO NOT MERGE IP Connectivity metrics: add connect() statistics
This patch adds a ConnectStats class to aggregate connect() statistics
gathered in NetdEventListenerService. ConnectStats is uploaded once a
day by IpConnectivityMetrics.

Test: $ runtest frameworks-net + new unit test
Bug: 32198976

(cherry picked from commit 4f71a15973f7048076ed10f63d708f020e1a21e0)

Change-Id: I1450c126b90b628d9f1c73ddf054b4742f5e84c5
2016-12-15 22:56:36 +09:00
Hugo Benichi
0ef1916103 DO NOT MERGE Fix IP connectivity metrics tests
So that test assumptions match previous changes in ipconnectivity.proto.

This patch also tags metrics tests with @SmallTest.

Test: $ runtest frameworks-net
Bug: 32561414
Bug: 32198976

(cherry picked from commit 1fb81a644e)

Change-Id: I8926a92248ac2d46fc78749afc40bc5f0de10878
2016-12-15 21:31:25 +09:00
Hugo Benichi
6cccb3bec3 DO NOT MERGE Network notifications: revamp keying scheme
This patch changes the (tag: String, id: Int) keying scheme for network
notifications so that TRON notification counters can count network
related notifications unambiguously.

TRON instruments all notifications shown for package "android" as well
as user interactions with these Notifications. These counters are
grouped by id. However the network notifications ("no internet" dialog,
"captive portal sign in" dialog, ...) use a static tag and a dynamic id
for keying notifications, preventing the counters to correctly
aggregate. In addition there is also the risk of collision with other
SystemUi notification ids not managed by NetworkNotificationManager.

In order to make the TRON counters useful for network notifications,
the id is now encoding the network notification type in a stable way
while the tag is used to uniquely identify network notifications.

Test: change covered by previously added new unit tests.
Bug: 32198726
Bug: 33030620

(cherry picked from commit 51727428fc)

Change-Id: Iadf7f15da38de28587090ed0395f15c24d4ad442
2016-12-15 20:31:11 +09:00
TreeHugger Robot
b10d6c022e Merge "Network notifications: revamp keying scheme" 2016-12-15 09:26:58 +00:00
Hugo Benichi
f9b95ad8f3 DO NOT MERGE Unit tests for NetworkNotificationManager
Test: new unit test, no functional changes.
Bug: 32198726

(cherry picked from commit 20904677af)

Change-Id: Ib8a725cdd8c708ccb9cffad62321e0db8b27e593
2016-12-15 14:32:02 +09:00
Hugo Benichi
51727428fc Network notifications: revamp keying scheme
This patch changes the (tag: String, id: Int) keying scheme for network
notifications so that TRON notification counters can count network
related notifications unambiguously.

TRON instruments all notifications shown for package "android" as well
as user interactions with these Notifications. These counters are
grouped by id. However the network notifications ("no internet" dialog,
"captive portal sign in" dialog, ...) use a static tag and a dynamic id
for keying notifications, preventing the counters to correctly
aggregate. In addition there is also the risk of collision with other
SystemUi notification ids not managed by NetworkNotificationManager.

In order to make the TRON counters useful for network notifications,
the id is now encoding the network notification type in a stable way
while the tag is used to uniquely identify network notifications.

Test: change covered by previously added new unit tests.
Bug: 32198726
Bug: 33030620
Change-Id: I1201d1d4fab8183dd83449c2afb2c35cfece883f
2016-12-15 10:31:38 +09:00
Erik Kline
b9631bfd28 More correct startup and shutdown procedures. am: af209807ce
am: 205f7599df

Change-Id: I5096f6a6f3d42bd55b9d3c80e279f2ee2fb0a795
2016-12-14 11:46:26 +00:00
Erik Kline
205f7599df More correct startup and shutdown procedures.
am: af209807ce

Change-Id: Ib488e0cb49da2d3f655e189600f839721ea73358
2016-12-14 11:39:36 +00:00
TreeHugger Robot
ae8bdd4525 Merge "More correct startup and shutdown procedures." into nyc-mr2-dev 2016-12-14 11:33:38 +00:00
Michal Karpinski
fbffd00d49 DO NOT MERGE [DPM] DO can start network logging and listen for events
am: 7260c83c0d

Change-Id: I7952d67d22a141040f3ee3ac2b6c3aa2cfccbbf7
2016-12-14 10:50:36 +00:00
Erik Kline
af209807ce More correct startup and shutdown procedures.
During IpManager startup, anything sending messages to the state machine
must not begin doing so until after the state machine has been started.
Reorder the constructor accordingly.

During shutdown, AvoidBadWifiTracker needs to unregister the registered
BroadcastReceiver and might as well also unregister the ContentObserver.

Bug: 33388922
Change-Id: I58e07f7ccddaab160c153bcfb69fd45f50bb8710
2016-12-14 18:53:26 +09:00
Erik Kline
e4bb6883da Merge "Stop setting net.hostname" am: 042b78ef5e am: 06c37fff06 am: 2c062156df
am: 4559839045

Change-Id: Id89ab1373d9cf633d9fae45131f18eabc200a8f9
2016-12-14 08:21:04 +00:00
Erik Kline
4559839045 Merge "Stop setting net.hostname" am: 042b78ef5e am: 06c37fff06
am: 2c062156df

Change-Id: I9976537d761a761e9aeca5cb15298f689032664f
2016-12-14 08:13:30 +00:00
Erik Kline
2c062156df Merge "Stop setting net.hostname" am: 042b78ef5e
am: 06c37fff06

Change-Id: Id261566422c4af7a3ce65877ba04b0a401685c23
2016-12-14 08:07:01 +00:00
Erik Kline
06c37fff06 Merge "Stop setting net.hostname"
am: 042b78ef5e

Change-Id: Id03d2f8bf6fa8b447c5f32d3d2a51faef193ba62
2016-12-14 07:59:59 +00:00
Erik Kline
06da441cfa Stop setting net.hostname
Test: as follows
    - basics:
        - built
        - flashed
        - booted
    - connect to {v4-only, dualstack, v6-only} networks
        - verified expected connectivity on each
    - runtest frameworks-net
Bug: 30979015

Change-Id: I65e9878c7b8eaddaba1c0e1b8566ddfa0760047f
2016-12-14 13:11:15 +09:00
Michal Karpinski
7260c83c0d DO NOT MERGE [DPM] DO can start network logging and listen for events
This CL adds:
1) Setter and getter in DPM to manipulate logging switch (retrieval
method to come in a subsequent CL(s)).
2) A way for DPM to register to listen for events.
3) Skeleton of NetworkLogger class (more to come in subsequent CL(s)).

Bug: 29748723
Change-Id: I5c04662ccc6febd2ba294b0eaca1ed1da9c16e47
2016-12-13 17:15:38 +00:00
Hugo Benichi
4232499973 DO NOT MERGE IpConnectivityMetrics: rate limit ApfProgramEvents
am: 9f5013b6c0

Change-Id: I266f7b8da58513b1e6c1a9c2b37e528ba777a7d6
2016-12-13 04:09:49 +00:00
Hugo Benichi
5597ac3f99 DO NOT MERGE IpConnectivityMetrics reads buffer size in settings
am: 96a0e1f8c4

Change-Id: I5c433faa0d43202ae1169fdba4c42c09dd9c17dd
2016-12-13 04:08:18 +00:00
Hugo Benichi
72d7ed9e37 DO NOT MERGE IpConnectivity metrics: add version number
am: d5dbca9b15

Change-Id: Iccdf7d09ef4dc80f05c76774c456b5effb2c08c7
2016-12-13 04:05:08 +00:00
Hugo Benichi
8c584ea6d6 Merge "DO NOT MERGE IpConnectivityMetrics: rate limit ApfProgramEvents" into nyc-mr2-dev 2016-12-13 03:55:32 +00:00
Hugo Benichi
0acf1bcab5 Merge "DO NOT MERGE IpConnectivityMetrics reads buffer size in settings" into nyc-mr2-dev 2016-12-13 03:54:24 +00:00
Hugo Benichi
399e0903e6 Merge "Unit tests for NetworkNotificationManager" 2016-12-13 02:23:05 +00:00
Hugo Benichi
9f5013b6c0 DO NOT MERGE IpConnectivityMetrics: rate limit ApfProgramEvents
This patch uses the previously introduced TokenBucket to rate limit
ApfProgramEvents, still allowing for burst of ApfProgramEvents when a
new interface is set up (due to ipv4 provisioning, multicast lock, ipv6 RAs
triggering new APF program events in short amounts of time).

Test: new test in IpConnectivityMetricsTest
Bug: 1550402

(cherry picked from commit 811c4cec75)

Change-Id: Ibe41e9a76db36ea502697a5f19fc0d91c40a3087
2016-12-13 10:20:03 +09:00
Hugo Benichi
96a0e1f8c4 DO NOT MERGE IpConnectivityMetrics reads buffer size in settings
Test: IpConnectivityMetricsTest passes. Also manually changed the new
setting and verified the buffer size is as expected after flushing the
buffer.
Bug: 32198637

(cherry pick from commit d5f78a08b4)

Change-Id: Ie7ca1638533479601c5983bb6e54705003561b6c
2016-12-13 10:20:03 +09:00
Hugo Benichi
d5dbca9b15 DO NOT MERGE IpConnectivity metrics: add version number
This patch adds a version field to ipconnectivity.proto and populates it
to 2, which is the logical version number for NYC-MR2.

Test: IpConnectivity{EventBuilder,Metrics}Test pass
Bug: 32127906

(cherry picked from commit 79a739cbf3)

Change-Id: I5f37633afd9ec82f5402c5b6670fe2febae82a14
2016-12-13 10:19:13 +09:00
Hugo Benichi
8009d903e1 DO NOT MERGE Captive portal systel log improvements
am: 35ee7fd62e

Change-Id: Icbba206e8c035f566ff6d9e500d972a3dcf65bb6
2016-12-13 00:32:46 +00:00
Erik Kline
728ae18d2a Merge "Stop setting net.dns{1234} system properties." am: 2ecbd49edd am: 62f75e995a am: e17f2b6a8b
am: b33ceca786

Change-Id: I63216568d2ec5606fdfe108d0263714238dc1886
2016-12-12 08:48:21 +00:00
Erik Kline
e17f2b6a8b Merge "Stop setting net.dns{1234} system properties." am: 2ecbd49edd
am: 62f75e995a

Change-Id: I7d400352de4bc11204cd1ec8c9aeda5381cd4931
2016-12-12 08:35:20 +00:00
Erik Kline
62f75e995a Merge "Stop setting net.dns{1234} system properties."
am: 2ecbd49edd

Change-Id: I9b31b281896995943ce8217c3230867db380a841
2016-12-12 08:29:14 +00:00
Treehugger Robot
2ecbd49edd Merge "Stop setting net.dns{1234} system properties." 2016-12-12 08:16:35 +00:00
Hugo Benichi
35ee7fd62e DO NOT MERGE Captive portal systel log improvements
This patch improves system logging around captive portal detection to
make inspection of bug reports sligthly easier:

- NetworkMonitor now logs by default CMD_CAPTIVE_PORTAL_RECHECK and
  CMD_CAPTIVE_PORTAL_APP_FINISHED. Other system logs are kept off with
  a new VDBG boolean contant,
- NetworkNotificationManager now prints the notification id at
  notification time. This allows to easily correlate show and clear.
- errors in NetworkNotificationManager are logged as Throwable instead
  of through their implicit toString() method.

Test: $ runtest frameworks-net
Bug: 32198726

(cherry picked from commit 6fe7d3cdb3)

Change-Id: I7780c389a94c4b9fa226f53b02fe5960d1c08618
2016-12-09 16:14:32 +09:00
Stephen Chen
0889b39d2c DO NOT MERGE: Implement metered tracking for NetworkStats summary queries.
Dependent on ag/1550196 where API is defined.

Bug: 31015360
Bug: 26545374
Test: runtest --path
frameworks/base/core/tests/coretests/src/android/net/NetworkStatsTest.java,
other test classes.

(cherry picked from commit 7581e6d766)

Change-Id: I46da93ba4afa968facf98f7c3d844fd0c469095a
2016-12-09 13:59:33 +09:00