Commit Graph

506 Commits

Author SHA1 Message Date
Lorenzo Colitti
892331dc08 DO NOT MERGE - Support disconnecting while trying to connect.
Currently, once a NetworkAgent has decided to connect, there's
no way to disconnect without first connecting and having
ConnectivityService tear down the connection. This is suboptimal
because it causes the transport to keep retrying even if it knows
that it will not be able to connect.

Instead, allow the transport to abort a connection request that's
in progress, as long as the agent is not yet registered with
ConnectivityService.

Also add locking to evalScores. evalScores should already have
been taking a lock, because it accesses member variables that are
also accessed by the send*methods.

Bug: 15295359
Change-Id: I913c341bdfc50be9c23b632399f53168e754c1c0
(cherry picked from commit 081e99c3ac341734467b65458f94adc160f50d6c)
2014-05-28 09:29:07 +00:00
Robert Greenwalt
0c150c0082 Move dis/enable of mobile data to Telephony
ConnectivityService doesn't do this anymore.

bug:15077247
Change-Id: I3208c91b2c0369b594987f39ca29da7478435513
(cherry picked from commit 53013c87496980b534e447e717a32698fbd4bca0)
2014-05-27 20:28:50 +00:00
Jaewan Kim
6d8dcb76d8 Move IP config from WifiConfiguration to IpConfiguration.
This is so that Ethernet can use it in the future.

Bug: 7606609
Bug: 8687763

Change-Id: I5d1189682b13f1088848809604690648d8d9ecca
2014-05-20 15:24:10 -07:00
Robert Greenwalt
46dcbab0a2 Add NetworkFactory names and unregistration.
Some Factories come and go (Telephony) and so they need to be able to unregister.
Also, debugging is tough when the factories are anonymous, so add names for logging.

Lastly, only send single set of NetworkRequests to a newly registered NetworkFactory
and only send the requests.

Change-Id: I717d63363f25c446f8ecf38d933b1a35d744af6e
2014-05-20 09:03:57 -07:00
Jason Monk
42debe7dd6 Merge "Fix reference to ProxyInfo extra" 2014-05-20 12:59:52 +00:00
Robert Greenwalt
f3017f74a0 Add javadoc and unhide new API
Change-Id: I12e475bbf4000c7acec4ca27b1d3bf8f870cc2cf
2014-05-19 10:34:36 -07:00
Robert Greenwalt
eaa84d5dda Add docs for Linkproperties and unhide it.
Preperation for ConnectivityManager API reveal.

Change-Id: Id2addf424213e796c6077def0b7f30cac9a0f75f
2014-05-19 09:43:36 -07:00
Robert Greenwalt
eeab6a2bdb Merge "Apply Doc fixes to RouteInfo" 2014-05-19 15:53:15 +00:00
Robert Greenwalt
25bcb91c8d Merge "Add docs to Network" 2014-05-19 15:52:05 +00:00
Robert Greenwalt
0eb55c16c4 Add javadoc for NetworkRequest.
Also moved the requestId serial number out of this public class into CS.

Had to leave NetworkRequest hidden for now because the docs refer to things still hidden
in ConnectivityManager.

Change-Id: I14d1fe52d992adf5e4dc197b8f5433e40b0adfe6
2014-05-19 08:17:05 -07:00
Robert Greenwalt
783dc0fef8 Add docs to Network
Still must be hidden until we unhide the new API in ConnectivityManager.

Change-Id: I4749e56777199093cdba9223eb3d721c3174047d
2014-05-19 07:59:16 -07:00
Robert Greenwalt
223a6bd58d Apply Doc fixes to RouteInfo
Change-Id: Ib76df135d5514f7b8baafbbe91fa3d1cdd632f00
2014-05-19 07:27:46 -07:00
Robert Greenwalt
05d3bc2fd5 Update the docs for NetworkCapabilities
Preparing for ConnectivityService API update

Change-Id: I397e375b9254d4271183cf34c4a689deea1e198e
2014-05-18 16:40:16 -07:00
Robert Greenwalt
1aacd72db2 Update RouteInfo docs and make public.
Change-Id: I1a8fe04022ea8291076af166f09112d19114ee16
2014-05-18 12:43:14 -07:00
Robert Greenwalt
7d8949fc2d Update comments for LinkAddress
In preparation for CS api review.

Change-Id: Ib933e905846ebd039d96a523946dd8fdb10f3ff1
2014-05-18 09:39:18 -07:00
Robert Greenwalt
be2d0e890d Merge "Clean up when we switch networks." 2014-05-16 17:16:19 +00:00
Robert Greenwalt
09f5803344 Clean up when we switch networks.
Need to unhitch mNetworkForRequestId when a network is no longer
satisfying a request.

Change-Id: I3b3cde7dd92ec87a76ae7a0825ad22e892fa8fd5
2014-05-16 08:54:07 -07:00
Jason Monk
b1bc7c1874 Fix reference to ProxyInfo extra
Also remove unneeded null check.

Change-Id: Ic25d1087f93632a24755b284ede41d870492e25d
2014-05-15 12:07:29 -04:00
Robert Greenwalt
ef72c1b9dd Remove unneed clear in constructor.
Keeps all constructors on equal footing.

Change-Id: I316d2b058cc2230ff6aa25a6c8785b42b460438d
2014-05-15 08:53:37 -07:00
Sreeram Ramachandran
44a242a81d Fix reboot loop due to NPE.
All that's old is new again: http://ag/63748.

Change-Id: I83df48447dbcb7f6edf02bd07abf721b009afa49
2014-05-14 14:45:00 -07:00
Robert Greenwalt
00a2f34c9a Undeprecate funcs until we're ready for api-review
Fixing javadoc deprecated tags to fix a checkbuild error breaks the current/api.txt.
We're not ready for the api change yet, so back out the comments.

Change-Id: Ia95e394da7329c1b9e3876e589c3c2137ba18048
2014-05-14 08:55:13 -07:00
Robert Greenwalt
563d632040 Fix Javadoc
It's Deprecated for an annotation, but deprecated for
a javadoc and case is important.

Fix build

Change-Id: I355dc1660196c09530b58386f401a85a74d16476
2014-05-14 07:50:11 -07:00
Robert Greenwalt
235ffacbd1 Merge "Add networks and requests to CS.dump" 2014-05-14 13:44:26 +00:00
Robert Greenwalt
a6d85c8ea1 Add networks and requests to CS.dump
Adds debugging.

Change-Id: I352dfe970c990fd210f3d1598519e321bbdd6ed5
(cherry picked from commit 9bdf6bd99db56c652ba9a62d91f258d11d19ca9f)
2014-05-14 13:12:23 +00:00
Robert Greenwalt
f99b8393d6 Add Multinetwork API
Change-Id: I3a9cef0d416db96d05098dd989ee3fef3b1e9274
(cherry picked from commit cc5e6afa1ba0bef099bcb21a64a36bc2bf7951db)
2014-05-14 13:06:56 +00:00
Paul Jensen
bff73490ac Separate network and interface addition/removal netd APIs.
This should facilitate stacked interfaces (i.e. clatd).

Change-Id: Ib3e7a4d3847ef6ec4449451f6da42e75959baa4f
2014-05-14 03:56:34 -07:00
Robert Greenwalt
e20f7a2429 Enabling internal msg apis
NetworkFactory and NetworkAgent.  First trying with wifi and
getting rid of WifiStateTracker.

Conflicts:
	api/current.txt
	services/core/java/com/android/server/ConnectivityService.java

Change-Id: I7f0ec13d7d8988b32f3c6dc71f72012f3349fe02
2014-05-14 03:56:34 -07:00
Robert Greenwalt
b951069473 Merge "Add Network-specific host name resolution API." 2014-05-14 05:39:10 +00:00
Robert Greenwalt
7e45d1159f Add NetworkFactory support.
This is a protocol allowing transports to dynamically register with CS for
Handler to Handler communications.

bug:13885501
Change-Id: Ic7275e3724a15efc7e5f80981560c4cb3106007b
2014-05-13 21:21:49 -07:00
Paul Jensen
da1c1d4e6a Add Network-specific host name resolution API.
Change-Id: I932f73158a8f6e3ccc36c319d138180dff2aa070
2014-05-13 19:05:13 -04:00
Jason Monk
ab245682f8 Merge "Switch PacUrl storage from String to Uri" 2014-05-13 15:14:50 +00:00
Robert Greenwalt
44a58441ac Merge "Add has* utility functions to NetworkCapabilities" 2014-05-13 01:35:02 +00:00
Robert Greenwalt
c41962f220 Add has* utility functions to NetworkCapabilities
Change-Id: Icf735b778a3956812be522db39c29cf54c757a25
2014-05-12 18:32:22 -07:00
Lorenzo Colitti
6b4985d8fd Fix reboot loop.
The multinetwork branch is rebooting on startup with:

E/AndroidRuntime( 1024): *** FATAL EXCEPTION IN SYSTEM PROCESS: NetworkStats
[...]
E/AndroidRuntime( 1024): Caused by: java.lang.NullPointerException: Attempt to read from field 'long android.net.NetworkCapabilities.mNetworkCapabilities' on a null object reference
E/AndroidRuntime( 1024): 	at android.net.NetworkCapabilities.<init>(NetworkCapabilities.java:235)
E/AndroidRuntime( 1024): 	at android.net.BaseNetworkStateTracker.getNetworkCapabilities(BaseNetworkStateTracker.java:103)
E/AndroidRuntime( 1024): 	at com.android.server.ConnectivityService.getAllNetworkState(ConnectivityService.java:1134)
E/AndroidRuntime( 1024): 	at com.android.server.net.NetworkStatsService.updateIfacesLocked(NetworkStatsService.java:877)
E/AndroidRuntime( 1024): 	at com.android.server.net.NetworkStatsService.updateIfaces(NetworkStatsService.java:849)
E/AndroidRuntime( 1024): 	at com.android.server.net.NetworkStatsService.access$600(NetworkStatsService.java:139)
E/AndroidRuntime( 1024): 	at com.android.server.net.NetworkStatsService$2.onReceive(NetworkStatsService.java:717)
E/AndroidRuntime( 1024): 	at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:766)
E/AndroidRuntime( 1024): 	... 4 more

This seems to be due to NetworkCapabilities' copy constructor
not null-checking its argument.  Unbreak things by ignoring null.

Change-Id: Iff3c38e6d72390fa86e51bfce534ebd42a262e19
2014-05-12 18:06:47 -07:00
Robert Greenwalt
d6ee688546 Add NetworkRequest to the multinetwork API
bug:13885501
Change-Id: I7b9a01aadf26b6ff104d088b6e283c838ec4dfac
2014-05-12 17:52:48 -07:00
Robert Greenwalt
3e0c794056 Replace LinkCapabilities with NetworkCapabilities
Also remove unused LinkSocket and LinkSocketNotifier.
bug:13885501

Change-Id: Id426e31b201fa4f29109b5fea485d8efb34519d3
2014-05-12 16:52:56 -07:00
Jason Monk
19c6561c50 Switch PacUrl storage from String to Uri
Since the interface for creating/accessing PAC URLs through a
ProxyInfo is Uri based, so should the internal storage and
references.

Change-Id: Ibf15c350f4cc526f81aba3ec463070f26af8f535
2014-05-12 15:44:32 -04:00
Robert Greenwalt
52cd9bfc48 Add NetworkCapabilities part of API.
Merging to master, adding @hide until we're ready to reveal the API change.

bug:13885501
Change-Id: Ib40e28092e092630bfec557bde77f58eec8ae1c8
2014-05-12 12:12:57 -07:00
Robert Greenwalt
42a0e1ee84 First pass on multinetwork framework
Starting to switch netd to use NetId.
Adding the Network identifying class

bug:13550136
Change-Id: Ie0db4fb17c9300bfafb63329adfa02339911b33d
2014-05-12 10:59:44 -07:00
Jason Monk
0adf31f4b8 Fix Docs breakage
Change-Id: Idaa57d16165203ad38143e493552ddf8a1ff56e5
2014-05-07 18:41:13 -04:00
Jason Monk
4d5e20f870 Make proxy API public
Also exposed proxy-related functions that were on the
ConnectivityManager.

Change-Id: I9fb5f1bcc257a6198679ea1d56e18da2ec5a3b33
2014-05-07 14:23:53 -04:00
Elliott Hughes
d48bb67aac resolved conflicts for merge of e6ae3be8 to master
Change-Id: Id5c5997ad8f801b32e1dbd97413ea42e38c27210
2014-04-28 13:53:25 -07:00
Elliott Hughes
e6ae3be829 am 685a0a72: am bbd87eb9: Merge "Track libcore.os\' move to android.system."
* commit '685a0a72d445515167a2071330679cdf9b53a62d':
  Track libcore.os' move to android.system.
2014-04-28 18:36:53 +00:00
Elliott Hughes
8732b35f51 Track libcore.os' move to android.system.
(This is partial, but should cover everything in AOSP master except
for the zygote.)

Change-Id: I1042c99245765746a744c44e714095cb2c6cb75d
2014-04-28 11:11:32 -07:00
Jaewan Kim
273c161b68 Revert "Refactor IpConfiguration from WifiConfiguration"
This reverts commit e51d2c5ade.

Change-Id: Ibccea84e5dc44c1b8954779660e0721b27f762d4
2014-04-07 09:01:24 +00:00
Jaewan Kim
e51d2c5ade Refactor IpConfiguration from WifiConfiguration
Bug: 7606609, Bug: 8687763
Change-Id: I736eb3c73a8ffc8f137a04a5ea66ee564dc2b530
2014-04-07 11:35:35 +09:00
Ashish Sharma
29f7e0e8ca Include elapsed realtime (nanos) of the event in the radio state change notifications.
Bug: 13247811
Change-Id: I3454aa159a68b9087b4762df947b41965b5a3941
2014-03-18 21:42:02 +00:00
Chad Brubaker
7226f99898 am 1011960c: am decfd707: Merge "Add the calling package name to requestRouteToHost" into klp-dev
* commit '1011960c44a4f84d53d05199fe1ca09be9473822':
  Add the calling package name to requestRouteToHost
2014-03-13 18:18:36 +00:00
Chad Brubaker
edf0ac7298 Add the calling package name to requestRouteToHost
The calling package name will be used to check if an application is a
system application when deciding if a route should be exempt from VPN
routing rules.

Bug: 12937545
Change-Id: I2c09c875fe9bb9685871a0a801ddcbb32fc17405
2014-03-05 13:35:20 -08:00
Yuhao Zheng
dcac3aaf9f Merge "Return detailed reason of invalid proxy settings" 2014-03-04 17:43:47 +00:00