Commit Graph

1078 Commits

Author SHA1 Message Date
Paul Jensen
3eb30186ae Merge "If Internet probe is redirected, pass redirect destination to NetworkAgent." into nyc-dev am: 7e261a1
am: 2c1f03a

* commit '2c1f03ade023a61428b7d9101bc10e4c88ae941a':
  If Internet probe is redirected, pass redirect destination to NetworkAgent.

Change-Id: I4c5f5cb8591d8729de9036a6c2aabacd4aba0f39
2016-04-13 02:02:13 +00:00
Paul Jensen
6b866480f5 If Internet probe is redirected, pass redirect destination to NetworkAgent.
Transport may use the redirect to make additional determination about network
state.

Bug: 25203607
Change-Id: I07d8918f13fdcbe0b6fd757536bfc1850a2a244f
2016-04-12 08:54:36 -04:00
Lorenzo Colitti
842af569cf Merge "Reinstate much-reduced ConnectivityService logging." into nyc-dev am: 5275052
am: fb1a323

* commit 'fb1a323da6f07a90355efa8de9f3b84842c0ad2f':
  Reinstate much-reduced ConnectivityService logging.

Change-Id: I948e337c16115e27177700af0f9ddc4ac7a77e0a
2016-04-11 16:21:50 +00:00
Lorenzo Colitti
5275052215 Merge "Reinstate much-reduced ConnectivityService logging." into nyc-dev 2016-04-11 16:08:52 +00:00
Lorenzo Colitti
bdeb592c67 Merge changes Ic2c84de7,I379aef92 into nyc-dev am: 399db1e
am: 73ab8fd

* commit '73ab8fd683a5c2d363952cf6d30be04c85537530':
  Remove duplicated code in NetworkStateTrackerHandler.
  Improve Tethering and NativeDaemonConnector logging.

Change-Id: Iddd137e805233fb5026493fb57b32dcff4159092
2016-04-11 14:41:39 +00:00
Lorenzo Colitti
399db1e148 Merge changes Ic2c84de7,I379aef92 into nyc-dev
* changes:
  Remove duplicated code in NetworkStateTrackerHandler.
  Improve Tethering and NativeDaemonConnector logging.
2016-04-11 14:27:31 +00:00
Lorenzo Colitti
d0a7a79b6c Reinstate much-reduced ConnectivityService logging.
Change-Id: I9d1292f8c036be2a854fdb537f4ccb957d211966
2016-04-11 23:19:06 +09:00
Lorenzo Colitti
f0461853c0 Remove duplicated code in NetworkStateTrackerHandler.
Also use MessageUtils to decode message names.

Change-Id: Ic2c84de73fbf3eb10cc9634a083e5d3b3ffb807a
2016-04-11 17:40:22 +09:00
Jack Yu
21ac368eb7 Merge "Excluded certain APNs (e.g. IMS) from mobile data usage." into nyc-dev am: 6924695
am: 6754d23

* commit '6754d237bb8c6e1fba779f90417b4a2fe07d2b3e':
  Excluded certain APNs (e.g. IMS) from mobile data usage.

Change-Id: I0f37f4d296de88763019f469a0356e753b9f3636
2016-04-09 06:25:54 +00:00
Jack Yu
6924695bc1 Merge "Excluded certain APNs (e.g. IMS) from mobile data usage." into nyc-dev 2016-04-09 03:30:31 +00:00
Jack Yu
43c255193a Excluded certain APNs (e.g. IMS) from mobile data usage.
Added not_metered capability to a mobile network if none
of its associated APN types are metered. Also used not_metered
capability to determine if a network should be accounted for
data usage or not instead of using network type, which is
always MOBILE after refactoring. Will add VT usage support
in next phase.

bug: 20888836
Change-Id: Id692cb856be9a47d0e918371112630128965b1bb
2016-04-07 10:07:31 -07:00
Robin Lee
826f1ebf7c Merge "Internal API for system apps to determine default network for other apps" into nyc-dev am: f81cbe1
am: a948f88

* commit 'a948f8872aa045ab22f42285f195fdb413c5ff66':
  Internal API for system apps to determine default network for other apps

Change-Id: Ib719f0cebb41afe4aa52241f3797598a7e468d2d
2016-04-07 16:51:53 +00:00
Robin Lee
f81cbe1697 Merge "Internal API for system apps to determine default network for other apps" into nyc-dev 2016-04-07 16:43:15 +00:00
Robin Lee
da4d2e2b67 Internal API for system apps to determine default network for other apps
Callers with CONNECTIVITY_INTERNAL permission can read off the netId
that an application is assigned to by default.

Necessary for making connections as the default network for a client
app eg. when downloading stuff on its behalf.

Bug: 27074270
Change-Id: I8d35e8e99126875f55f3c545090326f3e9be43fb
2016-04-07 14:55:59 +00:00
Erik Kline
674d58b518 Don\'t flush DNS cache on route changes. am: 3d4ed15
am: 09a5fbd

* commit '09a5fbd6ec86000f95423a47e9266ee124609cb3':
  Don't flush DNS cache on route changes.

Change-Id: I0e019a46548bbc81628939989fad39f96bc83ebe
2016-04-06 04:00:25 +00:00
Erik Kline
3d4ed1573a Don't flush DNS cache on route changes.
Since Lollipop, routes are isolated within Networks.  Flushing a
Network's DNS cache whenever that same Network's routes are updated
doesn't provide any benefit.  Any system components depending on this
behaviour need to uncovered and fixed.

Additionally, clean up no-longer-used flushNetworkDnsCache().  This
should be replaced, when needed, by a proper binder interface to netd.

Change-Id: I34bf79e4839da014d466058a876d754209d0c007
2016-04-06 11:30:51 +09:00
Erik Kline
008e5a6410 Merge "Delete unused default DNS setting code" into nyc-dev am: 39ca5c2
am: 2e6eeed

* commit '2e6eeed7d321f468f9434927f0ca433926044bec':
  Delete unused default DNS setting code

Change-Id: I28efdd6bd2b1cbaf0936fcd7d0104b8bf3f27647
2016-04-05 04:09:44 +00:00
Erik Kline
d6506a1d41 Delete unused default DNS setting code
Change-Id: I601a647714171f205d179d6fef6c112949fc5a94
2016-04-05 11:48:01 +09:00
Lorenzo Colitti
f9e2b829c2 Merge "Add a toString method to ApfCapabilities." into nyc-dev am: 36e480c
am: 366ce8a

* commit '366ce8a8d92b3368c51b7d7f1408eadcddcaf96c':
  Add a toString method to ApfCapabilities.

Change-Id: Iee5554cdabab4fe8a274faed22e0d56c48c64317
2016-03-29 08:17:35 +00:00
Lorenzo Colitti
fc254678ee Add a toString method to ApfCapabilities.
Change-Id: I505b90b7cd818cb3477990ec6b41b16db46d1c08
2016-03-28 17:33:30 +09:00
Paul Jensen
533761ca07 Merge "Move ApfFilter from ConnectivityService to IpManager" into nyc-dev am: 732340c
am: ebdf3f0

* commit 'ebdf3f006854b04de2508314be7ac0788b6faa99':
  Move ApfFilter from ConnectivityService to IpManager
2016-03-25 13:01:09 +00:00
Paul Jensen
5eaf63272a Move ApfFilter from ConnectivityService to IpManager
There's a few advantages to having ApfFilter in IpManager:
1. If things go wrong, crashing a particular transport is less bad then
   crashing ConnectivityService.  We also don't want to use
   ConnectivityService as a dumping ground for transport-specific logic.
2. This makes implementing WifiManager.MulticastLock a lot simpler and
   safer because enabling/disabling it doesn't have to go through the
   NetworkAgent, which could risk various races (e.g. installing a filter
   into the wrong WiFi network).
3. IpManager is the ultimate source for LinkProperties for a particular
   transport and since ApfFilter uses the LinkProperties it's better to
   have it closely paired with the IpManager. Likewise, ApfFilter needs
   to know the APF capabilities of the transport, so having it in
   the transport avoids having to parcel this information through the
   NetworkAgent.

Bug: 26238573
Change-Id: I99b85f2b64972f0e7572170ec5d1926081aa3429
2016-03-25 07:46:07 -04:00
Pierre Imai
a793bf0614 Merge "Add initial connectivity metrics handling." into nyc-dev am: 956d4d5
am: 0abbcda

* commit '0abbcda3ad85b523fc1eef27f76f0d642c19245b':
  Add initial connectivity metrics handling.
2016-03-25 06:25:23 +00:00
Pierre Imai
956d4d5bc6 Merge "Add initial connectivity metrics handling." into nyc-dev 2016-03-25 06:17:36 +00:00
Pierre Imai
9575d17915 Add initial connectivity metrics handling.
Adds initial support for IP connectivity metrics collection (DHCP
client, IP reachability monitor, network monitor, connectivity
service).

Change-Id: If9a0455f2a34aa9abea90f9c1b38e4d895dc1a72
2016-03-25 13:21:41 +09:00
Erik Kline
121623bc71 Merge "Add "track default" type to NetworkRequestInfo" into nyc-dev am: 3e4c79e4
am: 6d54e91

* commit '6d54e91479d185030cd167d292441d7bd9321c9f':
  Add "track default" type to NetworkRequestInfo
2016-03-24 04:29:45 +00:00
Erik Kline
f446f21fc2 Add "track default" type to NetworkRequestInfo
The "default network tracking" request is somewhere between a listen
and a request, in previous semantics. It is more like a listen in that
it doesn't cause any network to be brought up, but also like a request
in that will only get callbacks about a single network at a time (not
all networks that might match).

This change minimally splits the NetworkRequest types into 3: LISTEN,
REQUEST, and TRACK_DEFAULT.

Change-Id: I2d113b2f6eed526a7808592bce0118260a56f77c
2016-03-24 12:52:54 +09:00
Erik Kline
d23d19cdcf Merge "Support registering a request for the default network" into nyc-dev am: d36ba73
am: e96834c

* commit 'e96834c583f99fb31bb9c80bddc8a73387fed028':
  Support registering a request for the default network
2016-03-22 07:33:25 +00:00
Erik Kline
e0aed6342f Support registering a request for the default network
Change-Id: I079f5be97b585cf5692dd4c7a144b993d168a9a5
2016-03-22 15:44:16 +09:00
Lorenzo Colitti
090e4ed9bc Merge changes Idf0cfee8,I27307e2e into nyc-dev am: 7d0e392
am: e77e70d

* commit 'e77e70d00f3da6dd856f2d641d46080fbebacd0a':
  Use native netd binder interface in NetworkManagementService.
  Fix IdleableHandlerThread.
2016-03-17 19:09:06 +00:00
Lorenzo Colitti
0cbda755e9 Fix IdleableHandlerThread.
Occasionally, ConnectivityServiceTest fails with "BUG: only one
idle handler allowed". I have not been able to reproduce this
consistently, but code inspection reveals an unsafe access to
mIdleHandler inside queueIdle. Wrap that in a synchronized block.

Change-Id: I27307e2e55fa8d937d7f043bd436894091c3c667
2016-03-17 10:52:57 +09:00
Lorenzo Colitti
e6146a38dc Merge "APF: add debug code." into nyc-dev am: 6b7c9ec
am: ae57b47

* commit 'ae57b477436f1e89bb7c92533680cf445db67053':
  APF: add debug code.
2016-03-16 08:20:36 +00:00
Lorenzo Colitti
dad8897a98 APF: add debug code.
1. Store additional debug information when RA filtering.
2. Add a toString method for RA packets.
3. Make "adb shell dumpsys connectivity apf" dump APF filter
   state.

Bug: 26238573
Change-Id: I1441ff7bc90e63624f8b10a220b2ac97f4d390a5
2016-03-16 15:45:47 +09:00
Jeff Davidson
7c103d6c65 Merge "NetworkStats.Bucket API polish." into nyc-dev am: 7b8ee822d4
am: cb4ad1548e

* commit 'cb4ad1548ec10019760bbfd76268805809301fd6':
  NetworkStats.Bucket API polish.
2016-03-14 19:37:56 +00:00
Jeff Davidson
7b8ee822d4 Merge "NetworkStats.Bucket API polish." into nyc-dev 2016-03-14 19:30:23 +00:00
Jeff Davidson
2cf791102e NetworkStats.Bucket API polish.
-Add @IntDef constants for STATE_ and ROAMING_.
-Expand docs for ROAMING_ constants.
-Use ROAMING_NO/YES instead of ROAMING_DEFAULT/ROAMING.

Bug: 27531260
Change-Id: I54ecfb4148caa549214df0bee9983036ffa4cb55
2016-03-14 11:24:12 -07:00
Robin Lee
d11a0637cf Merge "Skip lockdown setup if user is not up yet" into nyc-dev am: d646b3d67f
am: 2149ad57fd

* commit '2149ad57fda5b04a07a9ae7af723a358f7e29d2b':
  Skip lockdown setup if user is not up yet
2016-03-14 13:28:27 +00:00
Robin Lee
b402c02f3c Skip lockdown setup if user is not up yet
Sometimes USER_UNLOCKED can be sent before USER_STARTED. This puts
lockdown in a bad state as it needs a fully-functioning user to tie
itself to and listen for connectivity events.

Bug: 27637943
Change-Id: I41a784a75a8c8674cb61dbba10693dd56c9396dd
2016-03-14 13:19:14 +00:00
Joe Onorato
fba6810653 Merge changes Ib6e0e6f3,I109f04c2,Idc716000,I44c51d5f,I810b9bd5, ... into nyc-dev am: 5d4ab988bd
am: 15e93f3715

* commit '15e93f3715742d0ffad6089cf804842f2e5f393b':
  Turn down the logging a little bit.
  Turn down the logging a little bit and don't do a log wrapper function.
  Turn down the logging a little bit.
  Turn down the logging a little bit.
  Turn down the logging a little bit.
  Turn down the logging a little bit.
  Turn down the logging a little bit.
2016-03-04 21:53:06 +00:00
Joe Onorato
549c01ec10 Turn down the logging a little bit.
Change-Id: Ib6e0e6f3577afac3b9bfe9a9b1cce70fb16d9d04
2016-03-04 12:21:30 -08:00
Paul Jensen
3d3be815ab Have ConnectivityService install packet filters when possible am: 69b7682a46 am: 38ac9019d9
am: 171160a352

* commit '171160a35286c12fb89058cd89d1bf93ff8943bf':
  Have ConnectivityService install packet filters when possible
2016-03-03 14:54:43 +00:00
Paul Jensen
38ac9019d9 Have ConnectivityService install packet filters when possible
am: 69b7682a46

* commit '69b7682a4651d7d69fd7a0ffa5323ee15ce9f0d7':
  Have ConnectivityService install packet filters when possible
2016-03-03 14:48:45 +00:00
Lorenzo Colitti
8bb58b5899 Support 464xlat on Ethernet. am: bc241263b5 am: 81cf43c087
am: 9c129cccac

* commit '9c129cccac2a14ac2e4369e52134d2cb95e9da28':
  Support 464xlat on Ethernet.
2016-03-03 08:55:16 +00:00
Lorenzo Colitti
81cf43c087 Support 464xlat on Ethernet.
am: bc241263b5

* commit 'bc241263b559a12244863d5705abe22d42df2426':
  Support 464xlat on Ethernet.
2016-03-03 08:39:16 +00:00
Paul Jensen
69b7682a46 Have ConnectivityService install packet filters when possible
Listen for ICMP6 router advertisements on networks that support
packet filters.  Construct packet filters and install them to
ignore redundant future ICMP6 router advertisements.

Bug: 26238573
Change-Id: If78300b9fda257c21f3ee6533e1da7de9f897cb4
2016-03-03 17:32:01 +09:00
Lorenzo Colitti
bc241263b5 Support 464xlat on Ethernet.
Bug: 26991160
Change-Id: I848c9e86e1ed337e95cfddda46723a9a1dcaed30
2016-03-03 17:31:57 +09:00
Lorenzo Colitti
97fbf258c3 Merge changes Id78aab9c,I51096b18 into nyc-dev am: 1856df512f
am: 057f24547a

* commit '057f24547afe0e2122863cab96b8149a43d3cf2d':
  Speed up ConnectivityServiceTest.
  Make it easier to test code that uses WakeupMessage.
2016-03-02 08:59:08 +00:00
Lorenzo Colitti
cdb49e2109 Speed up ConnectivityServiceTest.
1. Override WakeupMessage with an implementation that uses
   sendEmptyMessageDelayed. This allows us to replace a
   6-second sleep with a 150ms wait.
2. Change waitFor()'s polling interval from 100ms to 50ms.

With these changes ConnectivityServiceTest goes from ~9s to ~3s.

Change-Id: Id78aab9cded90a5b17f09d7f437904e179808dd2
2016-03-02 17:01:50 +09:00
Lorenzo Colitti
82137901f2 Merge changes Ic366b532,I0179b45b into nyc-dev am: 45c7b01e49
am: 6ad667122c

* commit '6ad667122c35098ab62afd92b5ac26937397825b':
  Move PinningNetworkCallback out to a new NetworkPinner class.
  Use MessageUtils in ConnectivityManager.
2016-03-02 07:04:56 +00:00
Lorenzo Colitti
45c7b01e49 Merge changes Ic366b532,I0179b45b into nyc-dev
* changes:
  Move PinningNetworkCallback out to a new NetworkPinner class.
  Use MessageUtils in ConnectivityManager.
2016-03-02 04:18:03 +00:00