Commit Graph

840 Commits

Author SHA1 Message Date
The Android Automerger
ee21d8b57b merge in jb-mr2-release history after reset to jb-mr2-dev 2013-04-22 05:55:37 -07:00
Robert Greenwalt
a07f1f2d07 Remove STOPSHIP and defer removal.
bug:8657300
Change-Id: Ia855fdc0db7a33502838648ee002d4929b224960
2013-04-19 09:31:24 -07:00
The Android Automerger
382a281e32 merge in jb-mr2-release history after reset to jb-mr2-dev 2013-04-15 05:55:51 -07:00
Robert Greenwalt
24bc534c2e Add new route.hasGateway() api
Fixes issues brought in by change to isHostRoute.  isHostRoute
was technically correct, but the callers really wanted hasNextHop
behavior.

bug:8597268
Change-Id: I360761ccfa98b2ba34642f717a78fa71ec1bae4f
2013-04-12 11:22:52 -07:00
Robert Greenwalt
10572edbba Merge "Routing workaround." into jb-mr2-dev 2013-04-11 23:27:20 +00:00
Robert Greenwalt
aa4677cfa0 Use CONNECTIVITY_INTERNAL for global proxy
The Global http proxy shouldn't be used by apps, but can be useful in certain
conditions.

bug:8264794
bug:8557674
Change-Id: Ia3cbe542e448d9e74d0492626a13e9fd34ad797a
2013-04-10 15:32:18 -07:00
The Android Automerger
5ff0d2c0b2 merge in jb-mr2-release history after reset to jb-mr2-dev 2013-04-10 05:56:05 -07:00
Robert Greenwalt
921bf3867d Routing workaround.
Change our order of operations so that secondary route table
adds succeed.  Working to understand the why of this too.
bug:8361314

Change-Id: Ie25061eb38c62eaa5e60aa8a488496de49bdbd9d
2013-04-09 11:22:56 -07:00
Robert Greenwalt
da77cb16c8 Turn back on global proxy support.
This reverts 138626.

Bug:8557674
Change-Id: I7b117d313c424d75bdeeea507541a96342f256f0
2013-04-08 16:31:26 -07:00
The Android Automerger
0b2a7ca5ca merge in jb-mr2-release history after reset to jb-mr2-dev 2013-04-03 06:02:30 -07:00
Lorenzo Colitti
c3787faa2a Fix LinkProperties's equals() method.
LinkProperties's equals() method was broken by the addition of
stacked interfaces. The reason was that equals() was checking
the equality of mStackedInterfaces.keys(), which is just an
enumeration, instead of mStackedInterfaces.keySet(), which
actually contains the keys. The test was failing, but I didn't
notice.

Fix the bug and make the test check the objects more in depth
so it can give more detailed error messages when equals() fails.

Bug: 8276725
Change-Id: Ie990bd75f641c28e63e54d953dcd0f4de13f7c9f
2013-04-02 10:08:59 +09:00
The Android Automerger
ee22653b75 merge in jb-mr2-release history after reset to jb-mr2-dev 2013-04-01 05:55:49 -07:00
Lorenzo Colitti
d40130abbe Merge "Stop clat if it's no longer in use." into jb-mr2-dev 2013-03-29 01:17:45 +00:00
Robert Greenwalt
2e3f7f04fc Merge "Add BT - DataTracker connection" into jb-mr2-dev 2013-03-28 16:45:33 +00:00
Wink Saville
f98a515fd1 Merge "Cleanup some debug in LinkCapabilities and Properties." into jb-mr2-dev 2013-03-28 16:09:26 +00:00
The Android Automerger
0815173f4b merge in jb-mr2-release history after reset to jb-mr2-dev 2013-03-28 05:55:45 -07:00
Lorenzo Colitti
7e5624bb80 Stop clat if it's no longer in use.
Normally, clatd is stopped when a connection disconnects.
However, if the connection's LinkProperties change, or if the
disconnect somehow gets lost (e.g., because of bug 8486114),
then we need to stop it (and possibly restart it).

Bug: 8276725
Change-Id: Ib8ad0d653ed8d0cd70b7414bcaa8fdaef8ba5fcc
2013-03-28 14:45:36 +09:00
Wink Saville
2accd693ee Cleanup some debug in LinkCapabilities and Properties.
Change-Id: I5fe0124d0943f5e538e451645f32533a74c75a47
2013-03-27 16:21:43 -07:00
Robert Greenwalt
030e1d3e9b Add BT - DataTracker connection
Allows the external BT stack the means to communicate with
ConnectivityService during reverse tethering.

bug:8445208
Change-Id: Ice7dfb0b50c9481d359aed14a51372878185171c
2013-03-27 15:45:12 -07:00
Lorenzo Colitti
cdc56fea29 Make isHostRoute match only host routes
Currently, isHostRoute returns true iff the gateway address is
the unspecified address (0.0.0.0 or ::). Thus, it will return
true for any route that has no gateway (e.g., a route pointing at
a point-to-point interface), even if the route is not a host
route.

Fix this by checking the prefix length instead. This should be
safe because:

1. mDestination cannot be null, since it's created using new.
2. Host routes created using makeHostRoute (which is what
   ConnectivityService calls) always have the correct prefix
   lengths (/32 or /128) set.

Bug: 8276725
Change-Id: I14285398823fa6c312349128c7cc216cad4a84c9
2013-03-27 19:41:06 +09:00
The Android Automerger
a6e826832f merge in jb-mr2-release history after reset to jb-mr2-dev 2013-03-25 05:56:01 -07:00
Robert Greenwalt
e1b73b7953 Prevent NPE in new API.
bug:8455284
Change-Id: I26ecbd024d1fe001f3af792c4e66409b2968c7ec
2013-03-22 12:00:17 -07:00
Lorenzo Colitti
a546d7ef93 Reset connections on all stacked interfaces.
Bug: 8276725
Change-Id: I7fe99c6ea123037cef3e89e3c2c17ed43cc0b1ea
2013-03-20 19:22:58 +09:00
The Android Automerger
095035b66a merge in jb-mr2-release history after reset to jb-mr2-dev 2013-03-19 05:55:27 -07:00
Lorenzo Colitti
82217ba580 Merge "Framework changes for 464xlat." into jb-mr2-dev 2013-03-18 16:41:58 +00:00
The Android Automerger
7a6fb8e57a merge in jb-mr2-release history after reset to jb-mr2-dev 2013-03-18 05:55:55 -07:00
Robert Greenwalt
fa4e867061 Revert of Ifd0c4081a. Turning off logging.
Found our bug, so switching the logging back off.
bug:8377625

Change-Id: I254bd83c48f1dd8dd62db1fcb162d460328169c5
2013-03-15 20:20:11 +00:00
Robert Greenwalt
c4f5482874 Don't update routes if Dhcp fails.
bug:8377625
Change-Id: I11d2c29728078813bfb1245cc46e8cce2b307a2c
2013-03-15 12:55:24 -07:00
Robert Greenwalt
26ce4b57d5 Don't return an unmod collection.
It's not needed as people can mess with this, and people do, so this fixes the build.
bug:8398355

Change-Id: Iddd00af41009c88b67fb7f9a8789bb416c377922
2013-03-15 11:28:50 -07:00
Lorenzo Colitti
2d17281ca7 Merge "Don't update routes if Dhcp fails." into jb-mr2-dev 2013-03-15 18:06:20 +00:00
Robert Greenwalt
69d28dc2b3 Don't update routes if Dhcp fails.
bug:8377625
Change-Id: I11d2c29728078813bfb1245cc46e8cce2b307a2c
2013-03-15 10:48:46 -07:00
Lorenzo Colitti
50e2b43ce1 Fix build.
Change-Id: Iac84a5f35d7fcaebd096e605a4590f8c90fe97b0
2013-03-16 02:42:30 +09:00
Lorenzo Colitti
8c9e75757f Merge "Set routes from stacked links as well." into jb-mr2-dev 2013-03-15 17:14:43 +00:00
Lorenzo Colitti
79c3dfdf0e Merge "Add stacked interfaces to LinkProperties." into jb-mr2-dev 2013-03-15 17:09:00 +00:00
Lorenzo Colitti
5355abd565 Framework changes for 464xlat.
1. Add a Nat464Xlat service that ConnectivityService can use
   to start and stop clat. When clat is started, the service
   waits for the clat interface to come up and then calls
   ConnectivityService to add the appropriate routes.
2. Make ConnectivityService start clat when an IPv6-only mobile
   interface is connected. We only support clat on mobile for
   now.
3. Make tethering use the interface that has the IPv4 default
   route insted of using the base interface of the
   LinkProperties. This allows us to tether to a stacked
   interface, which is needed for tethering with 464xlat.

Bug: 8276725
Change-Id: I24480af69ee280f504399062638af0836a56268e
2013-03-15 14:41:55 +09:00
Lorenzo Colitti
f5a77d8373 Set routes from stacked links as well.
Currently, ConnectivityService adds and removes routes to/from
the routing table only based on the LinkProperties's routes.
Make it update routes based on the stacked links as well.

Bug: 8276725
Change-Id: I9a2adf537af5a04de0aaab3780afbcc3bb5c6acb
2013-03-15 14:35:38 +09:00
Lorenzo Colitti
66e01c9f7f Add stacked interfaces to LinkProperties.
Bug: 8276725
Change-Id: I2f592d4c690e9af0459ae742ab16107a10d89353
2013-03-15 14:35:32 +09:00
Wink Saville
4235ce5640 Revert "Fail fast if somebody is adding default routes"
This reverts commit f2f0430d40

Mako wouldn't boot for me, reverting for now.

Change-Id: Ie92d6bf77811e7257e86d65e1e15e1973c027cd7
2013-03-15 05:07:04 +00:00
Robert Greenwalt
f2f0430d40 Fail fast if somebody is adding default routes
bug:2655011
Change-Id: I25da940e024825bc6e1d1ac5fe7b0d951609c1c1
2013-03-14 13:16:04 -07:00
Robert Greenwalt
b9f53aa687 Add logging to track down bug
bug:8377625
Change-Id: Ifd0c4081a2f1238dbbc39c6904b993e2fb95455a
2013-03-13 16:38:46 -07:00
Lorenzo Colitti
90fbffb1e9 Merge "Unit test routes with interfaces in LinkProperties" into jb-mr2-dev 2013-03-12 22:04:52 +00:00
Lorenzo Colitti
aaacefbd89 Unit test routes with interfaces in LinkProperties
Change-Id: Ie41a56bc9863ee72f4d7a8f72e436fc57e57b1af
2013-03-12 15:01:05 -07:00
Lorenzo Colitti
f7020e29fe Remove redundant parameter to modifyRoute
modifyRoute takes both an interface name and a LinkProperties.
This is redundant because all callers get the interface name
from the LinkProperties. Make modifyRoute get the interface
name from the LinkProperties instead.

Change-Id: I41ba8e0a10241c2f1107204fcaca2be74556042b
2013-03-12 07:39:59 +09:00
Lorenzo Colitti
ab7ad3a458 Unbreak documentation build.
Change-Id: I1e904b111e23d221dcb5f917201d4c27f0c1c05b
2013-03-12 04:30:47 +09:00
Lorenzo Colitti
697e1c0748 Always specify an interface for host routes.
Change-Id: I05b4d87e7d7e8237c6f4a70f1fedae00f416f581
2013-03-08 16:41:25 -08:00
Lorenzo Colitti
0580598772 RouteInfo changes.
- Add the interface name.
- Fix a bug where a default route would match an address of
  another protocol (e.g., 0.0.0.0/0 would match 2001::).
- Tweak the hashCode method.
- Write a unit test.

Change-Id: Ida8266de440a9b1d9eaa132f182b9f1ce8978c44
2013-03-08 16:41:25 -08:00
Robert Greenwalt
ddf54416c5 Revert "Add default route constants to RouteInfo."
This reverts commit b00860f1ad

Change-Id: Ide6d7f3b935da41477b736ef0ef20ec9872563e1
2013-03-07 20:11:18 +00:00
Lorenzo Colitti
b00860f1ad Add default route constants to RouteInfo.
Bug: 8276725
Change-Id: I9c3ad7393430de9275f5b1c0189a94e5a27975fc
2013-03-07 11:08:08 -08:00
Jeff Sharkey
b103b2578b Allow loopback traffic in lockdown mode.
Bug: 8245184
Change-Id: If993e3d6f5c7ce5970bfe701074c85b9245aa2aa
2013-02-28 16:57:58 -08:00
Robert Greenwalt
dc55f48d64 Remove two new permission checks
These checks while technically reasonable are a hard to swallow API change
that may break existing apps and pragmatically serves no purpose:  the protected
data is available in publicly readable java VM properties.

Change-Id: I522c493c2604a33e28d99e2be31054326c9a8323
2013-02-22 15:36:33 -08:00