Commit Graph

1753 Commits

Author SHA1 Message Date
Maunik Shah
b22998939d Fix memory leak in Connectivity Service when phone app crashes
Upon crash of com.android.phone process, NetworkFactoryInfo is
not getting removed from HashMap and will get accumulated on
every start of the process.

Change-Id: Iafde28daddfc82728c03208522682b1efc85a121
2015-04-04 21:48:24 +05:30
Lorenzo Colitti
7bf2334945 Merge "Fix build, broken by https://android-review.googlesource.com/#/c/115890/" 2015-03-12 07:49:23 +00:00
Lorenzo Colitti
abd0acd039 Fix build, broken by https://android-review.googlesource.com/#/c/115890/
Change-Id: Ieafa2fb0a7f539d8f933ad9c98e3be80457da6e5
2015-03-12 16:48:12 +09:00
Paul Jensen
4c12c31336 Remove dead code, mostly DataStateTracker.
Change-Id: I1433937bffdb29bd42fb1adbfcf0a50ceffac7dd
2015-03-11 10:03:58 -04:00
Jeremy Joslin
861103ca17 am 1267462c: am f456d4dc: am 0fb710e4: Merge "Update Javadoc for EXTRA_NETWORK." into lmp-mr1-dev
* commit '1267462c0bf8ef5a0cfaca535847fc962b2cf32e':
  Update Javadoc for EXTRA_NETWORK.
2015-02-12 18:56:35 +00:00
Jeremy Joslin
0fb710e494 Merge "Update Javadoc for EXTRA_NETWORK." into lmp-mr1-dev 2015-02-12 18:34:03 +00:00
Lorenzo Colitti
a71787a1eb am b0dfaad8: am f99551d8: am c7ccc393: Merge "Make reportInetCondition revalidate if the report differs from our state" into lmp-mr1-dev
* commit 'b0dfaad8c2a02c33885e6a278c7901da69d8ab49':
  Make reportInetCondition revalidate if the report differs from our state
2015-02-12 03:09:57 +00:00
Jeremy Joslin
fe76e0e853 Update Javadoc for EXTRA_NETWORK.
Bug: 19352840
Change-Id: Ib668bee0fb2c6f5bcd01a7908ebd20b9ec8a40ef
2015-02-11 18:28:57 -08:00
Lorenzo Colitti
28707dd663 Merge "Make getNetworkInfo() take into account VPN underlying networks." into lmp-mr1-dev automerge: c38b90b
automerge: 00c8450

* commit '00c8450d2711de57ee45f66cae1050dbca98d1f5':
  Make getNetworkInfo() take into account VPN underlying networks.
2015-02-11 07:32:53 +00:00
Lorenzo Colitti
bdda6bf579 Make reportInetCondition revalidate if the report differs from our state
1. If reportInetCondition says the network is not working, and
   the network is already marked not validated, don't revalidate
   it. This was superfluous and should save battery.
2. If reportInetCondition says the network is working, and the
   network is not marked as validated, revalidated. This will
   allow us to get out of a validated state quickly based on app
   input (e.g., allowing GCM's exponential backoff timer to drive
   revalidation instead of our 10-minute timer).

Bug: 19258761
Bug: 19209043
Change-Id: Iaa4bac82d117ed1f4088dab106e6f6ce46b34bc3
2015-02-11 11:03:50 +09:00
Lorenzo Colitti
66d4ed04ca Make getNetworkInfo() take into account VPN underlying networks.
If a user is subject to a VPN, getActiveNetworkInfo() will return
the VPN's underlying network (e.g., TYPE_WIFI), so that apps that
call getActiveNetworkInfo to answer questions like "is the device
connected to wifi?" will continue to work. Make getNetworkInfo
do this as well: if the query is for a network type that is
underlying the current user's VPN, then return that network.

Bug: 19196545
Change-Id: Ic5a651735b927c758594a26d26a03fbd704b52e6
2015-02-11 10:21:01 +09:00
Lorenzo Colitti
2a93f1de47 am 12b26c12: am 21702263: Merge "Add a unit test for StaticIpConfiguration."
* commit '12b26c12483633f7a75d1f1c9ead73eaf6056811':
  Add a unit test for StaticIpConfiguration.
2015-02-05 02:31:40 +00:00
Lorenzo Colitti
e5c450b671 Add a unit test for StaticIpConfiguration.
Change-Id: I68c735def8a242da0c8f95b7c5ea680ed902dab7
2015-02-04 17:28:35 +09:00
Lorenzo Colitti
e142cde1b3 Merge "Also include the domain when parceling StaticIpConfiguration." automerge: 998c8f7
automerge: 5b392ee

* commit '5b392ee7584688d6929ca40760d0df2a12bd0b16':
  Also include the domain when parceling StaticIpConfiguration.
2015-01-30 15:56:00 +00:00
Lorenzo Colitti
c91a880e01 Merge "Fix DhcpResults.setDomain() and StaticIpConfiguration.toLinkProperties()" automerge: 3937646
automerge: 786deba

* commit '786deba636618fcf530e42340b0e5d683c5af74c':
  Fix DhcpResults.setDomain() and StaticIpConfiguration.toLinkProperties()
2015-01-30 15:54:45 +00:00
Lorenzo Colitti
998c8f7372 Merge "Also include the domain when parceling StaticIpConfiguration." 2015-01-30 07:07:49 +00:00
Lorenzo Colitti
39376468a4 Merge "Fix DhcpResults.setDomain() and StaticIpConfiguration.toLinkProperties()" 2015-01-30 07:00:38 +00:00
Lorenzo Colitti
67635d5982 Also include the domain when parceling StaticIpConfiguration.
StaticIpConfiguration objects are parceled at least as part of the
IpConfiguration objects that are passed to IEthernetManager when an
application sets static IP configuration on Ethernet.

Change-Id: I49991e2f591cc6cf01b503c18eb343b5929efe29
2015-01-29 12:20:55 +00:00
Lorenzo Colitti
acb4bbad2a Merge "Support connecting to networks with misconfigured subnet masks." automerge: 6eaba37
automerge: fb69689

* commit 'fb696894ee24ffee3135f4bc460afa84f23efaeb':
  Support connecting to networks with misconfigured subnet masks.
2015-01-29 08:42:18 +00:00
Lorenzo Colitti
6eaba37f45 Merge "Support connecting to networks with misconfigured subnet masks." 2015-01-29 08:35:36 +00:00
Paul Jensen
fe83f04c44 Fix DhcpResults.setDomain() and StaticIpConfiguration.toLinkProperties()
setDomain() and toLinkProperties() were not setting the domains.
The setDomain() bug affected Wifi and I believe the toLinkProperties()
bug affected Ethernet and Bluetooth reverse-tethering.

(cherry picked from commit f084aea4d7)

bug:18252947
Change-Id: I6235fcd6b875aee516efbb5f880db1a99380355b
2015-01-29 17:12:35 +09:00
Lorenzo Colitti
d5824b5d2b Support connecting to networks with misconfigured subnet masks.
In K and earlier, we would connect to a network where the gateway
was not covered by the subnet mask of the IP address. This is an
invalid configuration, but it used to work, and other OSes appear
to accept it too, so support it.

Bug: 19067207

(cherry picked from commit d2a878d730)

Change-Id: I80088f291466dbd5a47f360dcc1620acee5cf57e
2015-01-28 20:36:37 +09:00
Lorenzo Colitti
2ee310c9c1 am 50f9d93a: am 220f987b: Merge "Support connecting to networks with misconfigured subnet masks." into lmp-mr1-dev
* commit '50f9d93a1c6f3d9f28966dd61997b4b780f31fb2':
  Support connecting to networks with misconfigured subnet masks.
2015-01-23 13:01:42 +00:00
Lorenzo Colitti
220f987bde Merge "Support connecting to networks with misconfigured subnet masks." into lmp-mr1-dev 2015-01-23 12:50:32 +00:00
Lorenzo Colitti
d2a878d730 Support connecting to networks with misconfigured subnet masks.
In K and earlier, we would connect to a network where the gateway
was not covered by the subnet mask of the IP address. This is an
invalid configuration, but it used to work, and other OSes appear
to accept it too, so support it.

Bug: 19067207
Change-Id: I822e1d754b336691b675438eefa959a3d75fd07b
2015-01-23 21:10:34 +09:00
Erik Kline
0a30fd758a Merge "Log interface name and uid when filtering a blocked network." into lmp-mr1-dev automerge: 8640c5d
automerge: 4f36150

* commit '4f3615036db441c4a099dc789ebcdf641ac5a987':
  Log interface name and uid when filtering a blocked network.
2015-01-22 07:18:00 +00:00
Erik Kline
8640c5de6c Merge "Log interface name and uid when filtering a blocked network." into lmp-mr1-dev 2015-01-22 07:07:36 +00:00
Robert Greenwalt
ef9f564407 am ab42bbb9: Merge "Fix legacy request removal." into lmp-mr1-dev
automerge: 9e7cb40

* commit '9e7cb40ddf055ecf1033555bd9ed90922a3cfa9b':
  Fix legacy request removal.
2015-01-22 00:00:43 +00:00
Erik Kline
a0c6e4539a Log interface name and uid when filtering a blocked network.
Bug: 18707263
Change-Id: Ide9a1670a97eae787b785933de0c80750c2b5601
2015-01-21 12:02:11 +09:00
Neil Fuller
c526df987d resolved conflicts for merge of 7382c02d to lmp-mr1-dev-plus-aosp
Change-Id: Idfa2750230aa56e7ae34fcc33d62558df942abd0
2015-01-20 13:21:58 +00:00
Neil Fuller
61baa3a7ff Changes associated with an OkHttp upgrade
Change-Id: I2a4db602aa7ffdef886e0f1a955715a2551a87a5
2015-01-20 11:59:24 +00:00
Robert Greenwalt
b0491bb5a8 Fix legacy request removal.
Don't say we're disconnected from a legacy type until there are no outstanding requests for it.

bug:18946574
Change-Id: I8e45c4a7558f7ced0840b71c50081989ba13c1c7
2015-01-16 16:06:39 -08:00
Paul Jensen
3897079ce9 am be61ffa4: am a76959f5: Merge "Don\'t blindly teardown unvalidated networks when releasing NetworkRequests." into lmp-mr1-dev
* commit 'be61ffa4fe42b4e6fdb677c7b1aeefb43ad3ef9f':
  Don't blindly teardown unvalidated networks when releasing NetworkRequests.
2015-01-14 19:24:09 +00:00
Paul Jensen
a76959f5f9 Merge "Don't blindly teardown unvalidated networks when releasing NetworkRequests." into lmp-mr1-dev 2015-01-14 12:39:01 +00:00
Paul Jensen
203a744797 Don't blindly teardown unvalidated networks when releasing NetworkRequests.
These networks may be on their way to becoming validated at which point
they could satisfy the default NetworkRequest.  This change unifies the
is-this-network-needed code into a single function.

bug:18652378
Change-Id: Ia511d5c66be79b47dd7c9348ec02784ab30b960c
2015-01-13 09:05:38 -05:00
Paul Jensen
904cf8295d am 60944390: Merge "Remember to cancel lingering when a network again satsifies a NetworkRequest." into lmp-mr1-dev
automerge: 63e2b8e

* commit '63e2b8e058f379582d0325aa84b5de6bfa73e15b':
  Remember to cancel lingering when a network again satsifies a NetworkRequest.
2015-01-10 02:08:59 +00:00
Paul Jensen
1e5c6ab3ec Remember to cancel lingering when a network again satsifies a NetworkRequest.
When WiFi's score drops and then comes back up we would previously linger
WiFi but forget to cancel the linger timeout, so 30s later WiFi would
unexpectedly tear down.  This was not completely fixed in 935ceef.

bug:18826162
Change-Id: I7bb4b99ec969099e9815f46d4c09253be71a29be
2015-01-08 10:49:34 -05:00
Paul Jensen
69855a7b69 am 6c93739f: am 034dea3a: Clear process DNS NetID binding when expiring or releaseing legacy requests.
* commit '6c93739f2f25c8afb77997165fa86be537df67a9':
  Clear process DNS NetID binding when expiring or releaseing legacy requests.
2015-01-06 14:57:44 +00:00
Paul Jensen
034dea3a1b Clear process DNS NetID binding when expiring or releaseing legacy requests.
When requests made by ConnectivityManager.startUsingNetworkFeature() are
expired or are canceled via ConnectivityManager.stopUsingNetworkFeature(),
we must remember to clear the binding of DNS requests from the calling
process to the Network satisfying the request.

bug:18778725
Change-Id: I800c808ac6486000241b5d263aa79a1192a9fe9e
2015-01-06 09:43:04 -05:00
Narayan Kamath
6ebb2c743a am d3d95172: am 38c2dae5: Merge "Remove hardcoded include paths."
* commit 'd3d95172c3645a1d7a12e540638207ae4fb69cae':
  Remove hardcoded include paths.
2014-12-31 10:19:00 +00:00
Narayan Kamath
c247c36ea0 Remove hardcoded include paths.
ICU, zlib & openssl export them using LOCAL_EXPORT_C_INCLUDE_DIRS.
The dependency on libc/dns/include was bogus and can be removed
trivially.

bug: 18581021
Change-Id: I4b8047ff0df1050ab48b61c0c886888b3f2f0c18
2014-12-31 10:06:51 +00:00
Robert Greenwalt
81c5042ba0 am 33868dab: am 4dcacef5: Merge "Fix timing between bcast and net setup." into lmp-mr1-dev
* commit '33868dab9af09d61634f1f7ab3a8c704aacd0de0':
  Fix timing between bcast and net setup.
2014-12-26 20:30:32 +00:00
Robert Greenwalt
01cf982f9d Fix timing between bcast and net setup.
A legacy network type request would generate a bcast before the network
notification was sent - the legacy startUsingNetworkFeature API requires
the notification so it can bind your dns queries to the new network.
Fast-moving clients could try to use the network before it was ready.

bug:18792871
Change-Id: I24c46ef15c249c50bfc321f62756d1f66dc3a6a9
2014-12-19 11:54:27 -08:00
Lorenzo Colitti
95c793a23d am 7e81cdef: am af3f8553: Add a lastValidated bit and use it when reporting capabilities.
* commit '7e81cdef3625b52642969dd226a1446745e633e8':
  Add a lastValidated bit and use it when reporting capabilities.
2014-12-19 10:47:26 +00:00
Lorenzo Colitti
db0978147a am b069e434: am 80a0b535: Rename validated to everValidated.
* commit 'b069e434cba6dd8f949c3ebe44507da32aef3496':
  Rename validated to everValidated.
2014-12-19 10:47:20 +00:00
Lorenzo Colitti
af3f855333 Add a lastValidated bit and use it when reporting capabilities.
When we switched the way the status bar determines if a
connection is validated from using INET_CONDITION_ACTION
broadcasts to calling getDefaultNetworkCapabilitiesForUser(),
the statusbar stopped displaying ! when a network stopped having
working Internet connectivity. This is because the validated bit
is never set to false once a network is validated.

Fix this, hopefully temporarily, by introducing a new validated
bit that does go back to being false when a network no longer
has working connectivity, and use that bit in
getDefaultNetworkCapabilitiesForUser().

Bug: 18777225
Change-Id: I991c068be50252391d0e64c647fcf2e053dc82f9
2014-12-19 19:10:42 +09:00
Lorenzo Colitti
80a0b535a8 Rename validated to everValidated.
This is a straight rename and thus a complete no-op from a
functionality perspective.

Bug: 18777225
Change-Id: I140d7640f1460c869a311294873772819a7a7059
2014-12-19 19:10:42 +09:00
Paul Jensen
eeea8725dd am 24594794: am b0575a24: Merge "Fix race between CONNECTIVITY_ACTION and setting default network." into lmp-mr1-dev
* commit '24594794cbb9bf6bb9c8b57e4427c88efee82304':
  Fix race between CONNECTIVITY_ACTION and setting default network.
2014-12-17 13:05:39 +00:00
Paul Jensen
314f51e80d Fix race between CONNECTIVITY_ACTION and setting default network.
Now that the delay between connectivity changes and CONNECTIVITY_ACTION
has been removed (ag/599650) races between CONNECTIVITY_ACTION and
the setting of the default network become more evident.
In http://crbug.com/441818 Chrome is calling getaddrinfo()
immediately after a device goes from no connectivity to cellular
connectivity, and Chrome is erroneously getting back EAI_NODATA
because netd hasn't yet set the default network for DNS resolutions.

bug:18757162
Change-Id: Ib607dcb3697403272a8c838713a9cb602e9c6820
2014-12-15 15:20:30 -05:00
Paul Jensen
51d8af74a5 am 269d28ea: Merge "Fix several HTTP proxy issues with multinetworking." into lmp-mr1-dev
automerge: d9d48cc

* commit 'd9d48cc9c7ab0d1590918e199917968eafc48288':
  Fix several HTTP proxy issues with multinetworking.
2014-12-11 05:49:18 +00:00