Commit Graph

824 Commits

Author SHA1 Message Date
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
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
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
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
Lorenzo Colitti
82217ba580 Merge "Framework changes for 464xlat." into jb-mr2-dev 2013-03-18 16:41:58 +00: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
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
Robert Greenwalt
26744a5f52 Improve ConnectivityManager docs
Also fix some permission problems.
bug:5738328

Change-Id: Ib32c223f425b1fc03b8cce528456bcb50b540fdf
2013-02-22 10:39:20 -08:00
Jeff Sharkey
6932ff654e Improve notification UI for lockdown VPN.
Bug: 7064111
Change-Id: I9554f6a426697b4abeb2ddd0827d314920e88ed6
2013-02-21 09:47:11 -08:00
The Android Automerger
be253713d5 merge in jb-mr2-release history after reset to master 2013-02-20 05:55:44 -08:00
Jeff Sharkey
c8a2687705 Migrate to using Mockito directly.
Change-Id: I1fcc5d1a780f5831bd6685f0735d4c0c6d245735
2013-02-19 15:28:19 -08:00
The Android Automerger
97b1a03c38 merge in jb-mr2-release history after reset to master 2013-02-19 09:51:20 -08:00
Kenny Root
9a51314973 am dc7b3e3b: am 79a80652: Merge "KeyStore: stop using state()"
# Via Android Git Automerger (1) and others
* commit 'dc7b3e3b6e1aa3f347c7d843ee453688c4d90e29':
  KeyStore: stop using state()
2013-02-14 12:50:34 -08:00
Kenny Root
79a806525a Merge "KeyStore: stop using state()" 2013-02-14 20:18:09 +00:00
Kenny Root
e3a37b21ca KeyStore: stop using state()
Change-Id: I721974fd95f8d1ab06a3fd1bbb4c9b4d9d1d7752
2013-02-14 12:06:51 -08:00
Russell Brenner
4774b0208e Adjust captive portal test for setup wizard
During setup wizard, perform captive portal test without the typical
delays.

Change-Id: If596948e732966817aae6201440e87e19be0c2f8
2013-02-14 11:02:10 -08:00
Robert Greenwalt
1790009c36 Fix a permissions probem in ConnectivityManager
stopUsingNetworkFeature fails because of new permissions checks in netd.

Change-Id: I04cb10d955c9dd9977c460c6c1db0d1910a863ce
2013-02-12 17:18:25 -08:00
The Android Automerger
a78d5678c8 merge in jb-mr2-release history after reset to master 2013-02-12 07:10:50 -08:00
Robert Greenwalt
306cd386ff Reintroduce the net.dns system properties <TEMP>
Removing these properties broke video playback as they used
a custom dns resolver.  We'll work together to resolve our
resolver issues in the future, but this was the easy fix to
get things working again.

bug:8173236
Change-Id: I687dae59eda4fc449efc34eed11c3dc88a110ad0
2013-02-11 16:22:37 -08:00
Robert Greenwalt
d44340d0ec Reintroduce the net.dns system properties <TEMP>
Removing these properties broke video playback as they used
a custom dns resolver.  We'll work together to resolve our
resolver issues in the future, but this was the easy fix to
get things working again.

bug:8173236
Change-Id: I687dae59eda4fc449efc34eed11c3dc88a110ad0
2013-02-11 15:25:10 -08:00
Robert Greenwalt
75c17e5f38 Merge "Second pass tying into dns cache per interface" 2013-02-07 19:02:47 +00:00
Mattias Falk
dc919017de Second pass tying into dns cache per interface
Set dns servers for secondary nets and attach the
processes (pids) that are using the secondary nets
to the secondary nets associated dns cache.

bug:5465296
Change-Id: I1eaf92d5c6b81d287e9fb2763b3d972d9de34395
2013-02-06 17:43:28 -08:00
Wink Saville
75ba50a4fa Merge "Revert "Clean up published network condition reporting."" 2013-01-31 00:32:36 +00:00