Commit Graph

2458 Commits

Author SHA1 Message Date
Jeremy Klein
35e99ea8ef Add a null check for the OnStartTetheringCallback.
This avoids a NullPointerException when trying to call the callback
and gives a more readable error message.

Change-Id: Id0353ef541c76efcb4a9a12c082e1b6ec9389f02
2016-03-14 12:57:17 -07:00
Lorenzo Colitti
e74e501c37 DO NOT MERGE: Move PinningNetworkCallback out to a new NetworkPinner class. am: 502d7cd551 -s ours am: 96b3d0a1bb
am: fc79ffdbe6  -s ours

* commit 'fc79ffdbe641a470e364cf205616879cb87e3eb1':
  DO NOT MERGE: Move PinningNetworkCallback out to a new NetworkPinner class.
2016-03-07 22:30:32 +00:00
Lorenzo Colitti
96b3d0a1bb DO NOT MERGE: Move PinningNetworkCallback out to a new NetworkPinner class.
am: 502d7cd551  -s ours

* commit '502d7cd551e8a510f818bbe85a038c4e60913ef7':
  DO NOT MERGE: Move PinningNetworkCallback out to a new NetworkPinner class.
2016-03-07 22:19:32 +00:00
Lorenzo Colitti
502d7cd551 DO NOT MERGE: Move PinningNetworkCallback out to a new NetworkPinner class.
Cherry-picked from 4b0c762011

Bug: 19159232
Change-Id: Ic366b53259ee5944a8e864876425a6558c0a7216
2016-03-07 10:34:32 -08:00
Joe Onorato
f18010f994 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
8441f29d3a Turn down the logging a little bit.
Change-Id: Ib6e0e6f3577afac3b9bfe9a9b1cce70fb16d9d04
2016-03-04 12:21:30 -08:00
Paul Jensen
e3b37eaa84 Have ConnectivityService install packet filters when possible am: 9eca1f6072 am: 1d411461ef
am: 171160a352

* commit '171160a35286c12fb89058cd89d1bf93ff8943bf':
  Have ConnectivityService install packet filters when possible
2016-03-03 14:54:43 +00:00
Paul Jensen
1d411461ef Have ConnectivityService install packet filters when possible
am: 9eca1f6072

* commit '9eca1f607295b7138ac2113f77ae6018fe17f200':
  Have ConnectivityService install packet filters when possible
2016-03-03 14:48:45 +00:00
Lorenzo Colitti
dd29cf55ce Support 464xlat on Ethernet. am: 6a6903553b am: fbf7f85029
am: 9c129cccac

* commit '9c129cccac2a14ac2e4369e52134d2cb95e9da28':
  Support 464xlat on Ethernet.
2016-03-03 08:55:16 +00:00
Lorenzo Colitti
fbf7f85029 Support 464xlat on Ethernet.
am: 6a6903553b

* commit '6a6903553b196988d149d251652af9b73a2ddec2':
  Support 464xlat on Ethernet.
2016-03-03 08:39:16 +00:00
Paul Jensen
9eca1f6072 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
6a6903553b Support 464xlat on Ethernet.
Bug: 26991160
Change-Id: I848c9e86e1ed337e95cfddda46723a9a1dcaed30
2016-03-03 17:31:57 +09:00
Lorenzo Colitti
68f220aabb 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
4c11582db3 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
a34b991bb3 Merge changes Ic366b532,I0179b45b into nyc-dev am: fd38423bd4
am: 6ad667122c

* commit '6ad667122c35098ab62afd92b5ac26937397825b':
  Move PinningNetworkCallback out to a new NetworkPinner class.
  Use MessageUtils in ConnectivityManager.
2016-03-02 07:04:56 +00:00
Jeff Sharkey
65ad544ca1 Merge "When system server goes down, crash apps more." into nyc-dev am: 60b7bcc614
am: 33a64f5e56

* commit '33a64f5e5600d86ef6ce270ce57fffbf4f2ab35d':
  When system server goes down, crash apps more.
2016-03-02 06:57:26 +00:00
Lorenzo Colitti
fd38423bd4 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
Lorenzo Colitti
4b0c762011 Move PinningNetworkCallback out to a new NetworkPinner class.
Also add tests.

Bug: 19159232
Change-Id: Ic366b53259ee5944a8e864876425a6558c0a7216
2016-03-02 12:50:35 +09:00
Jeff Sharkey
c78f85ca53 When system server goes down, crash apps more.
Apps making calls into the system server may end up persisting
internal state or making security decisions based on the perceived
success or failure of a call, or the default values returned.

The reality is that if the system process just died, init will be
along shortly to kill all running apps, so we should have no problem
rethrowing the RemoteException as a RuntimeException.

Bug: 27364859
Change-Id: Ife0bcb079636c88d54c44d17eb580409fd79028b
2016-03-01 19:29:16 -07:00
Robin Lee
0190497d11 Merge "ConnectivityService: listen to USER_UNLOCKED too" into nyc-dev am: 2f4286b792
am: fc46e9e4ca

* commit 'fc46e9e4caf6c0dfe0b6f905a06c2d2b132d8173':
  ConnectivityService: listen to USER_UNLOCKED too
2016-03-02 02:00:05 +00:00
Lorenzo Colitti
b027e6e92b Use MessageUtils in ConnectivityManager.
Change-Id: I0179b45bc54ffced8e5647d6f005b891b5de93ab
2016-03-01 22:57:29 +09:00
Robin Lee
829f7c72e5 ConnectivityService: listen to USER_UNLOCKED too
When the credential-encrypted private storage for the target user is
unlocked, we should try to start up VPN for them.

Bug: 27357283
Change-Id: Id9079230d00e3cea08a49ae66bd1f553416b4f54
2016-02-29 16:29:44 +00:00
Erik Kline
640723b521 Delete all NetworkUtils DHCP-related code. am: af0170a562 am: 866306752b
am: 80027c1f0b

* commit '80027c1f0b6a754b1a7cc5a6df918144cf979c78':
  Delete all NetworkUtils DHCP-related code.
2016-02-22 09:24:12 +00:00
Erik Kline
866306752b Delete all NetworkUtils DHCP-related code.
am: af0170a562

* commit 'af0170a562468acc53ef60f1d97c4dbd259b9af9':
  Delete all NetworkUtils DHCP-related code.
2016-02-22 09:16:16 +00:00
Erik Kline
af0170a562 Delete all NetworkUtils DHCP-related code.
Bug: 26991160
Change-Id: I2c74e0161f43f65c1b6a85dc9f294b64c8f1ae6e
2016-02-22 15:14:31 +09:00
Antonio Cansado
c2509f607b Merge "Implementation of data usage callbacks." into nyc-dev am: 12d7ea815b
am: 7e098af672

* commit '7e098af67280dbc877790486043998b13e83986e':
  Implementation of data usage callbacks.
2016-02-18 21:12:15 +00:00
Antonio Cansado
01cb4ff14d Implementation of data usage callbacks.
NetworkStatsService will register data usage requests
and keep data usage stats scoped to the request.

There are different types of data usage requests
- scoped to a set of NetworkTemplate; these are restrictred to
device owners and carrier apps and allow the caller to monitor
all activity on the specified interfaces.
- scoped to all uids visible to the user, if the user has
android.Manifest.permission#PACKAGE_USAGE_STATS permission.
The set of uids may change over time, so we keep track of that.
- scoped to a set of uids given by the caller, granted that
the caller has access to those uids.
- scoped to the caller's own data usage. This doesn't require
PACKAGE_USAGE_STATS.

Bug: 25812785
Change-Id: Ie11f35fc1f29d0dbe82f7fc924b169bb55c76708
2016-02-17 18:43:53 -08:00
Pierre Imai
e9ffe453a1 Merge "Silence the obnoxious MTU 0 error message that occur when no MTU is specified for a given network." 2016-02-12 01:51:23 +00:00
Erik Kline
2a813d23e8 Expose measurement results to interested callers.
am: 6ba9b90805

* commit '6ba9b90805d3e9a759a9b9a364b9ac406d9d573b':
  Expose measurement results to interested callers.
2016-02-10 15:58:17 +00:00
Erik Kline
6ba9b90805 Expose measurement results to interested callers.
With this it's possible for callers to:

    Network network = ...
    LinkProperties lp = ...

    NetworkDiagnostics netdiag = new NetworkDiagnostics(network, lp, 5000);
    netdiag.startMeasurements();
    netdiag.waitForMeasurements();

    boolean result = true;
    for (Measurement m : netdiag.getMeasurements()) {
        if (!m.checkSucceeded()) {
            result = false;
            // Additional error handling here.
        }
    }

    return result;

Bug: 21832299
Bug: 26780890
Change-Id: Iaf7ff029e2c6a998b574c23d0dcde8d57a467a22
2016-02-11 00:28:27 +09:00
Pierre Imai
07c53a35ae Silence the obnoxious MTU 0 error message that occur when no MTU is
specified for a given network.

Bug: 10705136
Change-Id: I637d3b62ca6bb3de217d1eb03cdb1668622d06f1
2016-02-09 10:07:36 +09:00
Jeremy Klein
ae9a289559 Remove several TetherUtil functions which are no longer needed.
Slowly chipping away at TetherUtil to clean up this code.
This CL also adds an admin check to
ConnectivityService.isTetheringSupported to get parity with the
TetherUtil function before removing it.

Change-Id: Ibe7c5c9fb420d57e5458f77dad30e8a1e751a3e2
2016-02-04 19:06:59 -08:00
Felipe Leme
e6303009b0 Merge "Created a ACTION_RESTRICT_BACKGROUND_CHANGED intent." 2016-02-02 23:59:30 +00:00
Jeff Davidson
f73c15c090 Notify NetworkStatsService of roaming status changes.
When the roaming status of the cell network changes, it is handled as
follows:

-DcActiveState gets an event (either EVENT_DATA_CONNECTION_ROAM_ON or
 EVENT_DATA_CONNECTION_ROAM_OFF) and calls
 NetworkAgent#sendNetworkInfo with updated NetworkInfo.
-ConnectivityService then gets an EVENT_NETWORK_INFO_CHANGED and calls
 updateNetworkInfo with the new info.

With the previous code, the NetworkAgent's NetworkInfo object would be
updated internally, but because the state of the connection had not
changed from CONNECTED, the change would be considered a duplicate and
otherwise ignored.

With the new code, we call notifyIfacesChanged() when the state is the
same but the roaming status has changed. That should be all that is
necessary, as roaming is not exposed as a link property or network
capability today.

Bug: 26545456
Change-Id: I33d32d1fa84ce41dbe01542e5b498eda4b744b74
2016-01-29 10:13:18 -08:00
Felipe Leme
d34c9af3e2 Created a ACTION_RESTRICT_BACKGROUND_CHANGED intent.
This intent will be broadcasted when:

- Global restrict background setting is changed (sent to all packages)
- An individual uid is added to or removed from the whitelist (sent just
  to the packages belonging to that uid).

This intent is only sent to registered receivers.

BUG: 26451391
Change-Id: Ic0a5771f88baa52076ad04764f29098a386463cc
2016-01-28 13:28:11 -08:00
Etan Cohen
e2131c4d88 Merge "Allow NetworkFactories to match any network specifier on a request" into mm-wireless-dev
am: 9c28a90451

* commit '9c28a90451edaf8e90d2d87f8142dc7a7ff1eb9d':
  Allow NetworkFactories to match any network specifier on a request
2016-01-28 18:24:23 +00:00
Etan Cohen
9c28a90451 Merge "Allow NetworkFactories to match any network specifier on a request" into mm-wireless-dev 2016-01-28 18:20:09 +00:00
Erik Kline
c2f41cdb10 Merge "Add the network handle to the NetworkAgentInfo#toString() output." 2016-01-28 06:44:59 +00:00
Erik Kline
3ff08372ec Add the network handle to the NetworkAgentInfo#toString() output.
This will make it possible to find nethandles via, e.g.
 "dumpsys connectivity --short".

Without this, native multinetwork API debugging requires running
"dumpsys connectivity --diag" in order to see the nethandle values.

Bug: 19537384
Change-Id: Icdd2b112523d4ecf88d5339f229e714a56d248f8
2016-01-28 15:06:56 +09:00
Lifu Tang
4cbe078ac0 Merge changes from topic '2016 GPS Changes'
* changes:
  Framework support to read newly added fields
  Added an API to query GPS hardware version info
  GPS Measurement and Navigation APIs go public
  Supported GNSS multi-constellation in frameworks
2016-01-28 02:02:17 +00:00
Jeremy Klein
5dbfe74db6 Merge "Remove the unused Looper param from Tethering constructor." 2016-01-27 20:54:01 +00:00
Shishir Agrawal
35759f9151 Unhiding MSIM APIs.
1. Unhide MSIM APIs in TelephonyManager that already have non-MSIM equivalent
   APIs public.
2. Make MSIM API naming consistent (overloaded, no suffix).
3. Unhide APIs in SubscriptionManager that are necessary for MSIM.

Bug: 26772894
Change-Id: Ibebab7379ea79c8e4812bbd190342827048e30e2
2016-01-26 13:47:27 -08:00
Jeremy Klein
d180aa7e7d Remove the unused Looper param from Tethering constructor.
Tethering just constructs its own Looper right below where it
assigns the looper param to mLooper.

Change-Id: I2d522942eff2ad3439bb3961e78ab0625d3fa9df
2016-01-26 11:10:55 -08:00
Shishir Agrawal
5b07a89b42 Merge "DO NOT MERGE : Unhiding MSIM APIs." into mm-wireless-dev
am: 45836d13e5  -s ours

* commit '45836d13e5d06c787b5039894b6c0ac7c5eb7b7b':
  DO NOT MERGE : Unhiding MSIM APIs.
2016-01-26 18:04:39 +00:00
Shishir Agrawal
77d691763f DO NOT MERGE : Unhiding MSIM APIs.
1. Unhide MSIM APIs in TelephonyManager that already have non-MSIM equivalent
   APIs public.
2. Make MSIM API naming consistent (overloaded, no suffix).
3. Unhide APIs in SubscriptionManager that are necessary for MSIM.

Bug: 26772894
Change-Id: Ibebab7379ea79c8e4812bbd190342827048e30e2
2016-01-26 09:29:24 -08:00
Jeremy Klein
3dabcb9434 Expose a simple tethering API which includes provision checks.
This CL exposes startTethering and stopTethering functions which also
encapsulate all provisioning check logic. Right now, only silent checks
are implemented, but UI checks will come in a follow-up CL. GTS tests
and Settings changes are under the same topic ID.

BUG: 26247383
Change-Id: I65f61d899594cb3f9035d8496366af17a57a090f
2016-01-25 16:37:09 -08:00
Lifu Tang
0a922fd0db Supported GNSS multi-constellation in frameworks
Change-Id: I82574afd3697c47e806d2cfaedc33756d0353b73
2016-01-25 15:15:14 -08:00
Felipe Leme
7e4c185b15 Fixed RestrictBackgroundStatus signature by adding @hide.
BUG: 26082535
Change-Id: I2e4b63327a8f791db01ee0c1ab090557170857fa
2016-01-25 12:09:03 -08:00
Felipe Leme
2951d4608c Merge "Created new public API so applications can customize its metered network usage while running in background." 2016-01-22 19:26:06 +00:00
Lorenzo Colitti
5841917c74 Merge "Debug logging for when getActiveNetworkInfo returns BLOCKED." into mnc-dr1.5-dev am: a6855a1faa am: d841d71593
am: ca79d59509

* commit 'ca79d59509bad091458c71cf852ffd1e13d7b8e6':
  Debug logging for when getActiveNetworkInfo returns BLOCKED.
2016-01-22 18:50:49 +00:00