• Home
  • History
  • Annotate
  • only in /frameworks/base/core/java/android/net/
History log of /frameworks/base/core/java/android/net/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
fcde58f155e8a188078885ec7529a9fe4a67f10e 12-Feb-2015 Jeremy Joslin <jjoslin@google.com> Update Javadoc for EXTRA_NETWORK.

Bug: 19352840
Change-Id: Ib668bee0fb2c6f5bcd01a7908ebd20b9ec8a40ef
onnectivityManager.java
ae38596bcf2a077753d170c0cad68f4dfde4277b 23-Jan-2015 Lorenzo Colitti <lorenzo@google.com> Merge "Support connecting to networks with misconfigured subnet masks." into lmp-mr1-dev
2dfb79a54adeb4bcf1f62332a9db467fce302ced 20-Jan-2015 Lorenzo Colitti <lorenzo@google.com> 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
taticIpConfiguration.java
78d51c2292b5a3b56be1b1e92bc67b70f4eebce4 23-Jan-2015 Lorenzo Colitti <lorenzo@google.com> Merge "Use the proper IpPrefix and LinkAddress constructors in VPN code." into lmp-mr1-dev
b2053114562830369a9d060e79f0c9eff4be27e7 20-Jan-2015 Lorenzo Colitti <lorenzo@google.com> Use the proper IpPrefix and LinkAddress constructors in VPN code.

This simplifies the code, and also makes it possible for
users to point multicast routes at the VPN. The LinkAddress
objects we were previously using to construct the RouteInfo do
not accept these, but IpPrefix objects do.

Bug: 18485968
Change-Id: Ie914a2eb359b78161810ee473df725059f944f4e
pnService.java
2ffe412b0eb8f53043356fe50dc4ceb04d267fa2 12-Dec-2014 Robert Greenwalt <rgreenwalt@google.com> Rerun entitlementcheck on sim change.

Only run if entitlement is needed and tethering is running.

bug:18356505
Change-Id: Ifc50189bf573e4575f747975edcce093c4870356
etworkFactory.java
9ffb53cb1131eeac5c246e7378455bb4b64293f5 17-Dec-2014 Paul Jensen <pauljensen@google.com> 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
onnectivityManager.java
bde00a2b5c8c506b79e0724021a0711bde207c25 11-Dec-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Add toString in NetworkFactory." into lmp-mr1-dev
2122e14cca3edc5099b90d8768b34d7a0e9fe148 11-Dec-2014 Paul Jensen <pauljensen@google.com> Merge "Fix several HTTP proxy issues with multinetworking." into lmp-mr1-dev
6b746b5e142a26629f8cbe3f6e637be1ab775e81 10-Dec-2014 Robert Greenwalt <rgreenwalt@google.com> Add toString in NetworkFactory.

Needed some additional logging to track down this bug
so add toString to capture the state.

bug:18569575
Change-Id: I4047b8f8797bac09bcff31e99d9cb117abb04df4
etworkFactory.java
e0bef71662d81caaaa0d7214fb0bef5d39996a69 10-Dec-2014 Paul Jensen <pauljensen@google.com> Fix several HTTP proxy issues with multinetworking.

1. Send PROXY_CHANGE_ACTION broadcast when any network's proxy changes,
not just the default network.
2. When a process is bound to a particular Network, update the proxy
system properties to those for the bound Network, and keep them
updated when PROXY_CHANGE_ACTION broadcasts are received.
3. Make Network.openConnection() use the proxy for the Network.

bug:17905627
bug:17420465
bug:18144582

(cherry-pick of https://android-review.googlesource.com/#/c/115170)

Change-Id: Ia2819985e6108a8c121e74c683a5646becfd0a97
onnectivityManager.java
ConnectivityManager.aidl
etwork.java
roxyInfo.java
33cd463bbbbe47010ed44815fbfd0ab5e8fbf825 10-Dec-2014 Erik Kline <ek@google.com> Merge "Re-remove CONNECTIVITY_CHANGE_DELAY and supporting functions." into lmp-mr1-dev
0aac16bbf1fd122302f8e58b7d4d5ee9d6afebc5 09-Dec-2014 Elliott Hughes <enh@google.com> am b034de7e: am 12f100de: am e8f6cb06: Merge "Fix typo." into lmp-docs

* commit 'b034de7eefc82a951bbf36a65b304f9475e1b44c':
Fix typo.
b034de7eefc82a951bbf36a65b304f9475e1b44c 09-Dec-2014 Elliott Hughes <enh@google.com> am 12f100de: am e8f6cb06: Merge "Fix typo." into lmp-docs

* commit '12f100def9e34a554df07f47badc259028ac4c68':
Fix typo.
547b0acae14981581d050c2c3d674cc06f1c3cf5 09-Dec-2014 Elliott Hughes <enh@google.com> Fix typo.

Bug: https://code.google.com/p/android/issues/detail?id=78422

(cherry picked from commit 0adcf15ad8b41559b50b3cbde6a103582f8c95b8)

Change-Id: I62746a0690e9845b20b23b91f2a50d85214e8aa1
ocalServerSocket.java
15b29ac7faf3b8b7845e6623f68ae7a7391dab78 09-Dec-2014 Wink Saville <wink@google.com> Merge "Add subId as parameter for get/setDataEnabled." into lmp-mr1-dev
6973634ce61ab7d4c1d51c70be6d51725b89e7b9 08-Dec-2014 Jeff Sharkey <jsharkey@android.com> Direct notification of network interface changes.

Connectivity broadcasts recently changed and are no longer sent for
certain types of network changes. For example, when stacked network
interfaces change for a mobile network. To ensure that we pick up
all these details, directly wire the two services together.

Also remove some unused code for split network types.

Bug: 18666753
Change-Id: I0467bd5b330c0e0cb51af2306d821b41ad16337a
NetworkStatsService.aidl
etworkIdentity.java
etworkTemplate.java
3256601f5e4d94713f59e97b9d4912875c1bdcaf 03-Dec-2014 Jeff Sharkey <jsharkey@android.com> Offer to "merge" subscribers for data usage.

There are some cases where multiple subscriber identities (IMSI)
should be treated as "merged together" from a data usage
perspective. This is done by extending the template used for
matching purposes to support multiple subscribers.

Then, when we query historical usage or set network policies, we
normalize the matching template to merge to any other identities
that should be included. When normalizing, the "lowest" identity
is always used for equality and storage purposes, which allows
identities to come and go over time.

This change also fixes data usage recording for multi-SIM devices
by passing along the concrete subscriber identity for each network
interface. Also correctly create default policies for multi-SIM
devices. This change also drops setPolicyDataEnable() until it can
be wired up to the right underlying NetworkAgent. (This means we
still bring up the network, and then rely on iptables rules to block
traffic when over the limit, instead of proactively disabling the
connection.)

Bug: 18012787
Change-Id: If6acf32009fdfea2b836f5aff8e2f3e5e0248b4a
ConnectivityManager.aidl
etworkIdentity.java
etworkMisc.java
etworkPolicy.java
etworkState.java
etworkTemplate.java
8f29dcfb53350cf687112ac79a806e4d34dfa22b 08-Dec-2014 Erik Kline <ek@google.com> Re-remove CONNECTIVITY_CHANGE_DELAY and supporting functions.

Since optimistic addresses are useable upon kernel notification
there is no need for this extra connectivity delay.

---

This functionality was originally submitted in ag/572619. Owing
to issues with bind()ing to optimistic addresses (see b/18609055)
this was reverted in ag/598673.

This reverts the revert. :-)

Bug: 17769720
Change-Id: Ibee490b2af72050693b6bd748193f51e312ca527
onnectivityManager.java
36ffb0494dd1045c164b7479b68165e206f8c759 05-Dec-2014 Wink Saville <wink@google.com> Add subId as parameter for get/setDataEnabled.

Bug: 18279333
Change-Id: I2496a2fd92b154e5e6981cbf6b5b5939cda59122
onnectivityManager.java
e660e27603e93579b645544ceb9606ded81cea82 05-Dec-2014 Erik Kline <ek@google.com> Revert "Merge "Remove CONNECTIVITY_CHANGE_DELAY and friends." into lmp-mr1-dev"

This is the revert of ag/572619.

This reverts commit 9261d9d64548f0221de50eb99f3675488a4176a4, reversing
changes made to 32b61ab28f54e5b00f472b2166f9b1100375e4ff.

Bug: 18609055
Bug: 17769720
Change-Id: I122eba200f2071d4e5777ec34c1d04fb567345a8
onnectivityManager.java
9261d9d64548f0221de50eb99f3675488a4176a4 04-Dec-2014 Erik Kline <ek@google.com> Merge "Remove CONNECTIVITY_CHANGE_DELAY and friends." into lmp-mr1-dev
9e956e9b9aefa3eb30dd2268f7fd347c42e43bce 03-Dec-2014 Sreeram Ramachandran <sreeram@google.com> Fix docs per API review.

Bug: 18573918
Change-Id: I639fe2ce40cdef57d904b9ad1ebb28db7d057144
pnService.java
403aa2684e0e93b4792aabc0bbe1f32ac5e417af 28-Nov-2014 Lorenzo Colitti <lorenzo@google.com> Make StatusBar display all default networks.

The basic principle is: if an app's traffic could possibly go
over a network without the app using the multinetwork APIs (hence
"by default"), then the status bar should show that network's
connectivity.

In the normal case, app traffic only goes over the system's default
network connection, so that's the only network returned.

With a VPN in force, some app traffic may go into the VPN, and thus over
whatever underlying networks the VPN specifies, while other app traffic
may go over the system default network (e.g.: a split-tunnel VPN, or an
app disallowed by the VPN), so the set of networks returned includes the
VPN's underlying networks and the system default.

Specifically:

1. Add a NETWORK_CAPABILITY_VALIDATED bit to NetworkCapabilities.
2. Add a hidden API to retrieve the NetworkCapabilities of
all default networks for a given macro-user.
3. Modify the status bar code that used getActiveNetworkInfo to
determine which network was active, and make it consider all
validated networks instead.
4. Because the set of active networks depends on which VPN app
the user is running, make the status bar re-evaluate the
networking situation when the active user changes.

Bug: 17460017
Change-Id: Ie4965f35fb5936b088e6060ee06e362c22297ab2
onnectivityManager.java
ConnectivityManager.aidl
etworkCapabilities.java
b567aa893851161f7bc87ba3472904e6d53e2bd2 25-Nov-2014 Erik Kline <ek@google.com> Revert some verbose logging from ag/489226

Bug: 18171889
Change-Id: I582a17b2272746e04717ac8da1d6984ff187ddf6
onnectivityManager.java
88d2a3c0e1b4a8c53a489db5d627beb80b1b9957 23-Nov-2014 Jeff Sharkey <jsharkey@android.com> Introduce revision codes for split APKs.

Apps delivered as multiple split APKs must have identical package
names, version code, and signatures. However, developers may want
to iterate quickly on a subset of splits without having to increment
the version code, which would require delivery of the entire app.

This change introduces "revision codes" which can vary between
split APKs belonging to the same app. An install is valid as long
as the normal version code is identical across all splits. Splits
can be added/removed to an app over time, but if a split is present
across an upgrade the revision code must not decrease.

Since system apps could have been updated with splits, only revert
to the built-in APKs if the version code is strictly greater than the
data version. Also fix bug to enable inheriting from system apps
when adding splits.

Bug: 18481866
Change-Id: I34d8e14c141a8eb95c33ffe24b4e52d6af5c8260
pnService.java
6d0e8711d0612cfc9d9db2def57541076c0f7a40 24-Nov-2014 Sreeram Ramachandran <sreeram@google.com> Merge "Delete unused/non-working code." into lmp-mr1-dev
45e27327178be9d5524cfcbdde9bb83502668e46 24-Nov-2014 Sreeram Ramachandran <sreeram@google.com> Merge "Allow VPNs to specify their underlying networks." into lmp-mr1-dev
aaea7e81141f4feb6cf5804b815567247b9c1f3a 24-Nov-2014 Sreeram Ramachandran <sreeram@google.com> Merge "Eliminate race conditions in UID-based network filtering." into lmp-mr1-dev
55a442e58262e253df965d652bd8219c8d1e72d3 19-Nov-2014 Jeff Sharkey <jsharkey@android.com> Lightweight checkin output for network stats.

Define and print a compact version of network statistics when dump
is requested with the "--checkin" flag. Defaults to last 24 hours,
but included data can be tweaked with various flags.

Groups together detailed network identities into larger umbrella
terms like "mobile" and "wifi."

Bug: 18415963
Change-Id: I70cf9c828ea5c6e5bb6884837d3608f66fbad2e6
etworkIdentity.java
etworkStats.java
etworkStatsHistory.java
etworkTemplate.java
c2c0beab79a907f63e109eefe2a5aabcf2e3fd8f 12-Nov-2014 Sreeram Ramachandran <sreeram@google.com> Allow VPNs to specify their underlying networks.

These are used when responding to getActiveNetworkInfo() (and cousins)
when an app is subject to the VPN.

Bug: 17460017
Change-Id: Ief7a840c760777a41d3358aa6b8e4cdd99c29f24
ConnectivityManager.aidl
pnService.java
75f018e6a7c2280c62e686440000a1dcdf5179cf 19-Nov-2014 Sreeram Ramachandran <sreeram@google.com> Delete unused/non-working code.

Change-Id: I2cba9ffdb4ed547cb922d0ac08abf81e49ffa66b
onnectivityManager.java
ConnectivityManager.aidl
21b5ee3f0e39be4a79bcfb2b79b0529f75f5cb58 13-Nov-2014 Sreeram Ramachandran <sreeram@google.com> Eliminate race conditions in UID-based network filtering.

The previous code retrieved information from the legacy tracker multiple
times for each user query, leading to race conditions where the info
could've changed between the calls.

Refactors the handling of legacy data types in ConnectivityService and
unifies call paths so that APIs that deal with legacy data types
(NetworkInfo and int/networkType) and newer types (such as Network) go
through common code paths, using NetworkState to hold all the necessary
data pieces. This enables follow-on bug fixes to getActiveNetworkInfo().

The changes are limited to public "query" APIs (those that retrieve some
network information or the other). More details about the specific
changes and their rationale can be found in the code review thread.

Bug: 17460017
Change-Id: I656ee7eddf2b8cace5627036452bb5748043406c
etworkState.java
4e9ea5e9aef8e35eaa5a876e726544277c80dec5 21-Nov-2014 Erik Kline <ek@google.com> Merge "Rename EXTRA_NETWORK ConnectivityManager constants." into lmp-mr1-dev
18ab5c216c62d90a4b86f37a4c993c1c8b56835d 21-Nov-2014 Jaewan Kim <jaewan@google.com> Merge "Add an API to check availability of Ethernet interface." into lmp-mr1-dev
90e9307e8fa713081aeccd8f5f212c0f1255bd07 18-Nov-2014 Erik Kline <ek@google.com> Rename EXTRA_NETWORK ConnectivityManager constants.

Per b/18414703:

s/\<EXTRA_NETWORK_REQUEST_NETWORK\>/EXTRA_NETWORK/g
s/\<EXTRA_NETWORK_REQUEST_NETWORK_REQUEST\>/EXTRA_NETWORK_REQUEST/g

Additionally, associated string values updated to:

android.net.extra.NETWORK
android.net.extra.NETWORK_REQUEST

Bug: 18414703
Change-Id: I7aeed2161829742affc666e835a97ce2c28356fe
onnectivityManager.java
d109a7cf695b1d208bd69ddb013b9fbdd5658255 19-Oct-2014 Jaewan Kim <jaewan@google.com> Add an API to check availability of Ethernet interface.

Bug: 18045481
Change-Id: I95358241b431cfe4435ce70c23c9a639b9dc4d58
thernetManager.java
EthernetManager.aidl
EthernetServiceListener.aidl
9a1da68bf7980449a5ee5d6fa9d9686b04d667ff 11-Nov-2014 Jeff Davidson <jpd@google.com> Expose a SystemApi method to prepare a VPN without consent.

This is NOT designed to be called normally. Most apps (even
system-privileged ones) should request user consent before launching a
VPN. However, it is needed to support flows where consent can be
obtained through other means external to the VPN flow itself.

The API requires a system-privileged permission, CONTROL_VPN.

Bug: 18327583
Change-Id: I1bcdcf0fb5707faeb861ec4535e7ccffea369ae7
pnService.java
451e338c51e8c45efc0d21536dfae6f78f6d5e06 10-Nov-2014 Ignacio Solla <igsolla@google.com> [WebView] Allow the WebView to be compiled against the system SDK.

BUG:18152150
Change-Id: Ifd6dcac17663631058d895c61bb6e8018c5aeecc
ebAddress.java
ea09c7da01c1cd61a2f6d84302fd510c3887db07 07-Nov-2014 Jeff Davidson <jpd@google.com> Merge "Let scorers fine-tune scoring heuristics." into lmp-mr1-dev
7f38664ea5cda3d5fcd12a50dd0b6b9f4b56050e 06-Nov-2014 Jeff Davidson <jpd@google.com> Let scorers fine-tune scoring heuristics.

Documents Byte#MIN_VALUE as being equivalent to a null score. This
enables scorers to pick a threshold below which a network won't be
used, by setting the score at any RSSI below that threshold to this
value.

Also adds an "RSSI boost" for the active network, so that we avoid
unnecessary switches between two closely-scored networks due to small
fluctuations in signal strength.

Bug: 15432594
Change-Id: I7a8f5f68ef074827d4b1cfbbed0841448498f179
ssiCurve.java
46e3ac8bbca54b56af1947f64294e2a4c35cfa3c 05-Nov-2014 Jeremy Joslin <jjoslin@google.com> Implemented requestNetwork with a PendingIntent.

ConnectivityManager.requestNetwork(NetworkRequest, PendingIntent)
was unhidden and implemented.

Added ConnectivityManager.removePendingIntentRequest(PendingIntent) as
the companion method.

Bug: 17356414
Change-Id: I656a1e149cc1292c443ebfe9e61ee3eb5a80f143
onnectivityManager.java
ConnectivityManager.aidl
24f535b87341b8729d6d4235acc51f0e87916d3a 06-Nov-2014 Jeff Davidson <jpd@google.com> Merge "Allow apps with SCORE_NETWORKS to set the active scorer." into lmp-mr1-dev
7efdb83ceeea3dc916f8a05f59f7b35cb8d13597 06-Nov-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Fix Legacy typing of net-specific requests." into lmp-mr1-dev
06314e4eab4b78d971ff878de3984f2dc673c2d3 29-Oct-2014 Robert Greenwalt <rgreenwalt@google.com> Fix Legacy typing of net-specific requests.

We're starting to get network requests for specific SIMs
and the Legacy Type Inference was broken because the incoming
request included a network specifier while the legacy requests
it was compared with did not. Only compare the things we care
about.

bug:18031008
Change-Id: If107042828c152ede51a2497a3859bc1a6c83694
onnectivityManager.java
etworkCapabilities.java
e56f2bb5ecae624e1b6573515f855a26f756aed5 05-Nov-2014 Jeff Davidson <jpd@google.com> Allow apps with SCORE_NETWORKS to set the active scorer.

This allows for a more streamlined UX in the current world, where
scorer apps are trusted (by virtue of being in /system/priv-app).
Trusted apps can continue to use the system dialog for consent, but
they may also set the scorer directly, under the assumption that they
are using their own consent UX to explain the feature to the user.

Bug: 16577529
Change-Id: I2a6edb7f1f688aaacf9b0152fa1da1a88636c3dc
etworkScoreManager.java
b42bdef51c5a4de44333ad268f25df1aac5ab880 05-Nov-2014 Jeff Davidson <jpd@google.com> Merge "Rename BROADCAST_SCORE_NETWORKS to BROADCAST_NETWORK_PRIVILEGED." into lmp-mr1-dev
021a95f761e1bc26cc215a9daedb04af818002f5 05-Nov-2014 Paul Jensen <pauljensen@google.com> Merge "Fix DhcpResults.setDomain() and StaticIpConfiguration.toLinkProperties()" into lmp-mr1-dev
c53113b37f33c7ed19660c8ec5bfd578e8bb5409 05-Nov-2014 Paul Jensen <pauljensen@google.com> 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.

bug:18252947
Change-Id: I8764cb944c293e01d99822bb52b55af7e9d77853
hcpResults.java
taticIpConfiguration.java
161977998feebf0a855ea56558464470877040cf 04-Nov-2014 Jeff Davidson <jpd@google.com> Rename BROADCAST_SCORE_NETWORKS to BROADCAST_NETWORK_PRIVILEGED.

This is necessary/desired for two reasons:

1. UX around network scoring shipped with L despite lacking underlying
platform support. We do not want network scoring applications to
trigger this UX on L devices, and therefore we must break the contract
of what defines a network scorer so that apps build against the new
contract don't trigger the old UX.

2. As a start towards generalizing the term "score" for a potentially
broader role in the future, though that role is very much undefined.

Bug: 18160480
Change-Id: If228977513e32e45bc44dbeda24aa18436fdfca6
etworkScoreManager.java
etworkScorerAppManager.java
2f1c76f074e2299b4d4327f160b5c83ed99e280a 01-Nov-2014 Alex Klyubin <klyubin@google.com> am dcf5af38: am 8129b8b4: am dd8accfe: Merge "Mention ECDHE_PSK bug in Javadoc of PskKeyManager." into lmp-docs

* commit 'dcf5af38bfd306af77613aa051393bf7d8e8fb44':
Mention ECDHE_PSK bug in Javadoc of PskKeyManager.
dcf5af38bfd306af77613aa051393bf7d8e8fb44 31-Oct-2014 Alex Klyubin <klyubin@google.com> am 8129b8b4: am dd8accfe: Merge "Mention ECDHE_PSK bug in Javadoc of PskKeyManager." into lmp-docs

* commit '8129b8b471e782708be945e40fa82d2c20ebceef':
Mention ECDHE_PSK bug in Javadoc of PskKeyManager.
8e3f4fbdf6e562f4f5731b98e327e8af33b75c4c 22-Oct-2014 Erik Kline <ek@google.com> Remove CONNECTIVITY_CHANGE_DELAY and friends.

Once optimistic addresses become useable upon kernel notification
there will be no need for a connectivity delay.

This change requires kernel changes like:
https://android-review.googlesource.com/#/c/109934

Bug: 17769720
Change-Id: I8510c540aa655aad6a82ee322d591331357ee272
onnectivityManager.java
8e93f0c3bc8497a7ca1ce97a3bd8948612d52c1e 30-Oct-2014 Alex Klyubin <klyubin@google.com> Mention ECDHE_PSK bug in Javadoc of PskKeyManager.

Bug: 18144779
Change-Id: I50e1bb18456295170ef288ad089a0edad7f00ecf
skKeyManager.java
befe778c73e48417942fc31c06509bac8e5ca0d2 20-Oct-2014 Erik Kline <ek@google.com> Treat optimistic addresses as global preferred.

If the kernel sends notification of an optimistic address then
treat is a useable address (isGlobalPreferred()).

Note that addresses flagged as IFA_F_OPTIMISTIC are
simultaneously flagged as IFA_F_TENTATIVE (when the tentative
state has cleared either DAD has succeeded or failed, and both
flags are cleared regardless).

Additionally: do not consider RFC 4193 ULA addresses sufficient
for "global preffered". They are, by definition, of global scope
but not sufficient for global reachability.

Bug: 17769720
Change-Id: I759623b28fd52758f2d4d76d167f3cafd9319d6a
inkAddress.java
dd91fb44743f15ee308a4cfedeca6338b6912fdc 28-Oct-2014 Erik Kline <ek@google.com> Merge "(re)define the definition of "provisioned"" into lmp-mr1-dev
111cc9f511dc65006fc2972c9ecbf295619e09b9 28-Oct-2014 Lorenzo Colitti <lorenzo@google.com> Merge "Change removeStackedLink to take an interface name." into lmp-mr1-dev
f3cab63ef2248aebf2c931cd1e84d5739791fa50 20-Oct-2014 Lorenzo Colitti <lorenzo@google.com> Change removeStackedLink to take an interface name.

This simplifies callers.

Also remove all "implementations" of addStackedLink and
removeStackedLink except the one in LinkProperties, because they
are unused.

Bug: 12111730
Change-Id: Ie294b855facba4b1436299dcb3211b72d9ba448e
aseNetworkStateTracker.java
inkProperties.java
obileDataStateTracker.java
etworkStateTracker.java
d3b9fd33c69fa4fb844238c90b1fd343052946d9 24-Oct-2014 Erik Kline <ek@google.com> (re)define the definition of "provisioned"

Specifically:

[1] provide a hasIPv4(), and
[2] a hasIPv6()

each of which requires an IP address, a default route, and
address-family-specific DNS servers to evaluate to true.

Additionally:

[3] redefine isProvisioned() to return the logical OR
of [1] and [2] above.

Any external caller can still use any of the has*() methods to
construct its own, different definition of "provisioned".

Bug: 17769720
Change-Id: Ia692fb8508484ff403d3920c94d0e1db4563f807
inkProperties.java
fa36b36c8b66fc89f446a9eb065c31a1b224e662 24-Oct-2014 Narayan Kamath <narayan@google.com> Merge "Deprecate more apache-http." into lmp-mr1-dev
823675fdbb7f974b8e2fa9fbb71774b32487582d 23-Oct-2014 Narayan Kamath <narayan@google.com> Deprecate more apache-http.

bug: 18067888

Change-Id: I50511d53dfc9ae236dfb1646c55a5dd7fa15d7b2
roxy.java
roxyInfo.java
SLCertificateSocketFactory.java
ttp/AndroidHttpClient.java
e15db7c23d9e99e6f788a69d07a8436c6039bb08 22-Oct-2014 Sreeram Ramachandran <sreeram@google.com> Add an API to select a network for a DatagramSocket.

Mirrors the API that does this for Sockets.

Bug: 18076907
Change-Id: Ifa27b39e23797558546aab751fbfb3aed3b7dbcb
etwork.java
3515ab8092719ea9f61c8c2859bf586aed0955e3 03-Oct-2014 Robert Greenwalt <rgreenwalt@google.com> am 24861eab: Merge "Send callbacks for Net property changes" into lmp-dev

* commit '24861eabe641d5a147f127c8e7f98fab949224ab':
Send callbacks for Net property changes
24861eabe641d5a147f127c8e7f98fab949224ab 03-Oct-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Send callbacks for Net property changes" into lmp-dev
a848c1cc0a7b72b192aef9de2d448b3e1d17619c 01-Oct-2014 Robert Greenwalt <rgreenwalt@google.com> Send callbacks for Net property changes

LinkProperties and NetworkCapabilities changes were not calling app callbacks.

bug:17681483
Change-Id: I67dac3c4dc1284f5c4bfb24de239da4ec776336f
onnectivityManager.java
c68aad9fd0f7937176ac6a8238e6236dd7ea3427 02-Oct-2014 Newton Allen <newt@google.com> am d84ce32b: Merge "Fix some documentation typos." into lmp-dev

* commit 'd84ce32bd2d7c3cebac15545504f4fec464a6956':
Fix some documentation typos.
8f8a11b7fa26e603519131001ab46596aa30ba1a 26-Nov-2013 Newton Allen <newt@google.com> Fix some documentation typos.

Change-Id: I747a0ade5c7b9c45d4465bf327952338bbc1cfaa
(cherry picked from commit 4465d1a03ee5fddc5987c19fc36b0bb79e19572f)
ri.java
a621a97f4a05891a514ba5343c9db04d125e1eb8 29-Sep-2014 Paul Jensen <pauljensen@google.com> am 89e0f093: Move mobile provisioning APN support into telephony.

* commit '89e0f0937a70d73b5ed188c9337b4d33860e5573':
Move mobile provisioning APN support into telephony.
89e0f0937a70d73b5ed188c9337b4d33860e5573 15-Sep-2014 Paul Jensen <pauljensen@google.com> Move mobile provisioning APN support into telephony.

Most of this logic is simply removed from ConnectivityService.
The captive portal detection is now done by the NetworkMonitor.
The notification logic is still left in ConnectivityService as
it's used by both the NetworkMonitor and telephony's mobile
provisioning logic.

bug:17324098

Change-Id: Ibd1c42b1a75795f90a6483d3d0a5a14f88b193d8
onnectivityManager.java
ConnectivityManager.aidl
34feaa0947dcfa0ff042d1ab8f4c5c577261a1b1 24-Sep-2014 Lorenzo Colitti <lorenzo@google.com> am 6974f6a9: Merge "Block address families with routes, not NetworkAgent side channel" into lmp-dev

* commit '6974f6a97028a42ce79b8e9e1869af0ebf5624f4':
Block address families with routes, not NetworkAgent side channel
633b7bb8ed36ef58339d8f0d8c2afd5d5f8a6ac5 23-Sep-2014 Lorenzo Colitti <lorenzo@google.com> am bb17a717: Merge changes I3ebf0cec,I8635472c into lmp-dev

* commit 'bb17a717750c558ece69344ecd93d96d4fbc4aca':
Add a throw route to the VPN endpoint.
Support non-unicast route types: unreachable and throw.
60446165d8bd44f72cec8d0c5583a688369fa660 19-Sep-2014 Lorenzo Colitti <lorenzo@google.com> Block address families with routes, not NetworkAgent side channel

Now that we support unreachable routes, use those to block
address families on VPNs. This is a much more elegant solution.
Also update LinkProperties when IP addresses are added and
removed, fixing a TODO.

Bug: 17462989
Change-Id: Ib749d84710dca70d672350b9f129bb91419ec77e
etworkAgent.java
4e2dea77dcaa0b7b940d881bbc25e13e35e2ea49 20-Sep-2014 Wink Saville <wink@google.com> Cleanup NetworkCapabilities.

Remove unused imports and variables.
Fix misspellings.
Added @Overrides.

Change-Id: I81f4adb0504e92d01c5465a0e14bc46d5ec3987e
etworkCapabilities.java
4b0f8e6fb707e19799011c1f4a5e4f54603e34b1 18-Sep-2014 Lorenzo Colitti <lorenzo@google.com> Support non-unicast route types: unreachable and throw.

Bug: 17462989
Change-Id: I8635472ca3e96ec2866af2de48e6260ab2da13fb
pPrefix.java
inkProperties.java
outeInfo.java
f3b47e95b14d040c4239b9188a10a4befb607459 18-Sep-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Use unified Tethering Permission Check" into lmp-dev
edb47668f072ba82ca389a1b78b1a2024ac31663 17-Sep-2014 Robert Greenwalt <rgreenwalt@google.com> Use unified Tethering Permission Check

The BT and Wifi mechanisms for enabling Tethering did their own
permission checks. This set of changes unifies the check into
a ConnectivityManager function so they can be kept in sync.

bug:17435527
Change-Id: I8c157a5acf56ffbddd349cb6a45160ae7be8541b
onnectivityManager.java
9d375ecbe6b5dd3a51067faa4f85963ef591172f 17-Sep-2014 Jeff Sharkey <jsharkey@android.com> Merge "NetworkStats always needs arrays." into lmp-dev
7a8f1a32dcbd93354ba5b8987be9a9d9d0d61519 17-Sep-2014 Jeff Sharkey <jsharkey@android.com> NetworkStats always needs arrays.

Internal logic relies on Arrays.copyOf(), so always give ourselves
valid arrays, using shared empty objects to save overhead.

Bug: 17502649
Change-Id: I5dbb00545bdfe45bbd48144ab505ea08cc92cbcd
etworkStats.java
e73cc4646bed3926024c9f54ca59e3a82a97b56c 08-Sep-2014 Robert Greenwalt <rgreenwalt@google.com> Add NetworkAgent event for ExplicitlySelected

Lets Wifi tell us when the user selected this AP vs auto-connected.

bug:17396168
Change-Id: I6e067ab62ed49040629aa31fe07ff880d3d542f0
etworkAgent.java
etworkMisc.java
b4f601cb840ddc03b6368328d4d0ffe1af339bea 17-Sep-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Report Network status to NetworkAgent." into lmp-dev
953b5625d5342cb20d44bfc67fb822d54abda927 15-Sep-2014 Ang Li <angli@google.com> Fix a typo in comment.

Change-Id: I23224b1adf946ebec0ec7a39686913189c9b8287
etworkInfo.java
49f63fbed4cd84f5da182c85e8b999037dc64f3b 13-Sep-2014 Robert Greenwalt <rgreenwalt@google.com> Report Network status to NetworkAgent.

Currently just valid/invalid based on NetworkMonitor findings.

Changed NetworkMonitor to start out in default state since starting in Offline causes
a spurious invalid report at creation time.

Added some logging.

bug:17395269
Change-Id: I9ae650b561834d8f8979033744d97df852e76df9
etworkAgent.java
8afddbe7e91b0c91620c54ccbe057c32ca5dd6bf 12-Sep-2014 Jeff Davidson <jpd@google.com> Merge "Update VpnService Javadoc to reflect new UX." into lmp-dev
6d6ea3b6be7c41e18a8f95499e2e31133465ae47 11-Sep-2014 Jeff Davidson <jpd@google.com> Update VpnService Javadoc to reflect new UX.

The major change is that consent is now "sticky" and lasts until the
user explicitly disables the VPN connection.

Bug: 17474362
Change-Id: Id4e7807e635bbfc7645741135209d46763e280f9
pnService.java
a1e06807eeb6587c3ea12778440226977d63b064 11-Sep-2014 Sreeram Ramachandran <sreeram@google.com> Hide mutable VpnService APIs to add/remove IP addresses dynamically.

These APIs were added because we thought we needed them to provide
seamless transition from one server backend to another using local IP
addresses to distinguish between the backends. I.e., connections whose
local IP address was old would be routed to the old backend; connections
whose local IP address was new would be routed to the new backend.

It turns out that's not needed. VpnService already supports seamless
re-establishment, so VPNs just need to call establish() again with a
different IP address. I've verified with a custom VPN app that this
works, and can distinguish traffic based on the old and new addresses.

Nobody is using these APIs at the moment, so we could even consider
removing them altogether, but I prefer just hiding them, just in case.

Bug: 15409819
Change-Id: I30949926a0f859c9d839981ccbc5d8e1e535a3a5
pnService.java
204dc65f37f67ffb00ee06681b0c2301767b4a08 11-Sep-2014 Paul Jensen <pauljensen@google.com> Merge "Flush HTTP socket pools and DNS cache when binding process to a Network." into lmp-dev
07ed07459a7266418b0105e2823effadd69a80d9 08-Sep-2014 Paul Jensen <pauljensen@google.com> Make Network.openConnection() share HttpHandlers not OkHttpClients.

HttpHandler and HttpsHandler classes have a lot of bug fixes baked into
them that the Network.openConnection() API should be using, for example
disabling SPDY support.

bug:17420465
Change-Id: I9f1472753a542d1dd6bffde3a60c37a9145098aa
etwork.java
c91b5348a56f79b4ff5f42a7689dd036ecfd7149 27-Aug-2014 Paul Jensen <pauljensen@google.com> Flush HTTP socket pools and DNS cache when binding process to a Network.

Future HTTP requests could use an old socket that's bound to a different Network
causing unexpected results. DNS results could also not be appropriate.

bug:17283566
bug:17432215
Change-Id: I88b40b723c7b442000cafe8ce8b9d989d8995991
onnectivityManager.java
35f7a94c846cfdaa75ed6bc58ec37bdef7a09be8 09-Sep-2014 Robert Greenwalt <rgreenwalt@google.com> Don't accept score below 0.

Network Factories are allowed to go below, but networks need to be
constrained. Allowing the network to go below 0 meant that -1 could
sometimes leak through and foul the logic.

The core of 17361330 will be fixed when we stop sending scores for
listens to NetworkFactories, but it exposed this issue too. Summary:

1 - add a network listener. This isn't a request so it's not sent
to networks.
2 - alter your score (ethernet sets score to -1 when the link goes
down) (16:07:39.782)
3 - a bug in ConnectivityService causes score changes to get sent for
all network requests and network listeners causing NetworkFactories
to no see 2 entities. This bug will be fixed by a pending change
(https://googleplex-android-review.googlesource.com/#/c/540840/).
This causes the ethernet NetworkFactory to see two entities, both
served by networks of score -1. (16:07:39.989)
4 - disconnect Ethernet - this only sends 0 scores for known
requests, not network listeners. Had it been sent for both entities
they both would have evaluated that the networkfactory score (-1)
was lower than the request score (0) and both released their
refcount. (16:08:03.147)
5 - this means the listener is tracked by the EthernetNetworkFactory
with a score of -1 while the factory itself has a score of -1 so the
network release isn't called.

bug:17361330
Change-Id: Ife34ca0f9c233dd3c3df80f6fea580af43afcdeb
etworkAgent.java
b2489879ee48efcd1b6c319e6d41ba0e081a4602 05-Sep-2014 Robert Greenwalt <rgreenwalt@google.com> Fix networking API per scripting checks.

bug:17389242
Change-Id: I6017f559788ee16a1721b387796e5bda5e07280d
onnectivityManager.java
inkAddress.java
d35d826fb50f71cf592a72d2dffd5dea75390da3 04-Sep-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Catch creation of NetworkRequest without NetCap" into lmp-dev
8236413ce0bce12b91fdf8e907f0a6163d6d83a5 04-Sep-2014 Jason Monk <jmonk@google.com> Proxy fixes from API review feedback

Bug: 17389383
Change-Id: Ib5e40f55d02687ee917ba30773123cf3e4c2a97d
roxyInfo.java
f5b74f981fb4e67f77a78b7038785fb3871acaa6 04-Sep-2014 Robert Greenwalt <rgreenwalt@google.com> Catch creation of NetworkRequest without NetCap

Using reflection you could do this and it would crash the system.
Thanks, ServiceFuzzer!

bug:17379629
Change-Id: I8b470bda78a69761ccd92496746f5d295b5d07f2
etworkRequest.java
17e7e9757d9fe304351dc566fd12b8c03196cee2 30-Aug-2014 Lorenzo Colitti <lorenzo@google.com> Kill the NetworkInfo(int type) constructor. IT'S A TRAP!

This constructor does nothing, including doing nothing with its
only argument. This causes it to return a NetworkInfo for
TYPE_MOBILE no matter what was passed in.

Bug: 16610051
Change-Id: I4ccd5ec050f7824fb06496c00fcd7901defeb7bd
etworkInfo.java
0ed0a28ad82a210d8d932aba207ad51b6c4fd0c4 29-Aug-2014 Lorenzo Colitti <lorenzo@google.com> Use per-Network connection pools for openConnection.

If we don't do this, per-network HTTP requests will go over the
wrong network if any previous HTTP request was made by the same
app on another network.

Bug: 17300006
Change-Id: I1854c16dee6adb9e81fb12b097577439d69a644e
etwork.java
b57edc5ae999abd9c7310833f4f10bbacbc469d7 23-Aug-2014 Lorenzo Colitti <lorenzo@google.com> Pass the socket mark for DNS queries to dnsmasq.

This makes tethered clients use the correct DNS servers when
tethering to non-default networks like the DUN APN.

Bug: 16357676
Change-Id: I8933b6de198a92c2aaf0291931ace8966ddba275
onnectivityManager.java
ConnectivityManager.aidl
32e520ed616f3b6443d62e652d9a7725e67713c7 29-Aug-2014 Lorenzo Colitti <lorenzo@google.com> Really remove NetworkBoundURLFactory.

The code using it was removed, but the file itself was not.

Bug: 17112978
Change-Id: I35bc254fd3a5e7b19297b959c7310e7054ab77e1
etworkBoundURLFactory.java
fc0c6890c675494b15cd847b20c5a5ede491fc3c 27-Aug-2014 Robert Greenwalt <rgreenwalt@google.com> Clean up Connectivity Logging.

bug:17285109
Change-Id: I61b98aa636996f8d4915fd954d49a22c20cfe9ab
etworkAgent.java
etworkFactory.java
5b62d263a70ad7dceba7a488b11478ad3eaf3f45 26-Aug-2014 Paul Jensen <pauljensen@google.com> Merge "Implement VpnConfig.addAllowedApplication()." into lmp-dev
ad3fc407377597a23dd97cd92c72abaad1acca6c 26-Aug-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Update VPN whitelist/blacklist api docs." into lmp-dev
fc4f721a87e58c2955628adddcb7dcd441d3196f 25-Aug-2014 Robert Greenwalt <rgreenwalt@google.com> Update VPN whitelist/blacklist api docs.

Addressing what happens to unwhitelisted or blacklisted apps.

bug:17206162
Change-Id: I0b863946de277e6528675cc5412267a03f7b6841
pnService.java
0784eeab28da094a87437ed454fe3dca01b1f9f2 19-Aug-2014 Paul Jensen <pauljensen@google.com> Implement VpnConfig.addAllowedApplication().

bug:17109588
bug:13651397
Change-Id: Ibb944794627117728373f0105e24f196f3eeb9e9
pnService.java
177cd38b00c7c61c13bad65c8a4e3fc859335162 25-Aug-2014 Paul Jensen <pauljensen@google.com> Merge "Remove captive portal sign-in actions." into lmp-dev
a68d21350266a6abc16aeb3fec84eafd85b77cc8 22-Aug-2014 Paul Jensen <pauljensen@google.com> Remove captive portal sign-in actions.

This reverts commit e0101cd and removes the related NetworkMonitor code.
The thinking is the broadcasts are not robust enough as they rely on apps
working together and are not sufficiently tested.

bug:17115050
Change-Id: I433032867cc4fea7191a1b13842b16825dc74df4
onnectivityManager.java
9f1274b7e43d14c7e3a42148ebfda3905fec8b06 21-Aug-2014 Lorenzo Colitti <lorenzo@google.com> Rework the per-network URL API.

This addresses API council comments.

Bug: 17112978
Change-Id: I698b243b2b685d1f25414cee72450be3ae0c2bf0
etwork.java
etworkUtils.java
e1bf163c1e6e997e30c0e89f68569d52d22b9c46 21-Aug-2014 Jason Monk <jmonk@google.com> Merge "Fix SOCKS proxies from being dropped from PAC" into lmp-dev
4385af32eff1b99802e6ce233a2b10d002bf4eb1 18-Aug-2014 Jason Monk <jmonk@google.com> Fix SOCKS proxies from being dropped from PAC

It seems that SOCKS isn't being handled explicitly by the
PacProxySelector, which results in them just being dropped
from the return list. This will sometimes end up switching
from SOCKS to DIRECT, which could be bad.

Bug: 17104885
Change-Id: Ic8a28230d3ae18c0abb000811a9100787c10c5e0
acProxySelector.java
05542603dd4f1e0ea47a3dca01de3999a9a329a9 11-Aug-2014 Jeff Davidson <jpd@google.com> Less intrusive VPN dialog and other UX tweaks.

-The ability to launch VPNs is now sticky; once approved by the user,
further approvals are not needed UNLESS the connection is revoked in
Quick Settings.

-The old persistent notification has been removed in favor of the new
Quick Settings UI.

-The name of the VPN app is now pulled from the label of the VPN
service rather than the app itself, if one is set.

Bug: 12878887
Bug: 16578022
Change-Id: I102a14c05db26ee3aef030cda971e5165f078a91
ConnectivityManager.aidl
0a82e80073e193725a9d4c84a93db8a04b2456b9 30-Jul-2014 Lorenzo Colitti <lorenzo@google.com> Stop using LinkProperties for static configuration.

LinkProperties can represent way more complicated configurations
than what we can actually apply to interfaces. This makes it
error-prone to use it to represent static configuration, both
when trying to apply configuration coming from LinkProperties
and when trying to save configuration from current
LinkProperties.

Instead, move static configuration (IPv4 only, since we don't
support static IPv6 configuration) into a separate
StaticIpConfiguration class.

Bug: 16114392
Bug: 16893413
Change-Id: Ib33f35c004e30b6067bb20235ffa43c247d174df
hcpResults.java
thernetManager.java
pConfiguration.java
etworkUtils.java
taticIpConfiguration.java
f6040e9c116e8723b3312499987c370d2e9ee7c7 18-Aug-2014 Kenny Root <kroot@google.com> Merge "Revert "Remove the warning if the caller gets the insecure variant and add hostname verification (SNI)"" into lmp-dev
3f05bf4d7838cb719e78f9d93b22d7ce777392c5 06-Aug-2014 Robert Greenwalt <rgreenwalt@google.com> Add tcp buffer size conduit to NetworkAgent.

bug: 16549611
Change-Id: I7d97dedea2c7c1aed2eccb185645889424508591
inkProperties.java
bd431ee5d302f46ac3cc846797fa7a5551f7b42e 16-Aug-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Configure MTU based on network MTU parameter" into lmp-dev
15afd8115869bf22534a1f26fe6e389c9e5ef413 06-Aug-2014 w19976 <w19976@motorola.com> Configure MTU based on network MTU parameter

Add logic to obtain the mtu from the network PCO parameter and set it to kernel
when the mobile data connection is established. When there is no PCO mtu configured
from the network, the mtu size defined in the corresponding APN will be used. In case
no mtu size is defined for an APN used for data connection, the MCC/MNC based MTU
defined in the framework overaly will be applied.

bug:17046179
Change-Id: I6465d4b8f2076aaa380ae3617fb3f24adbe136d4
inkProperties.java
e19ca078bf1778a344366672de020e63a80252a9 13-Aug-2014 Kenny Root <kroot@google.com> Revert "Remove the warning if the caller gets the insecure variant and add hostname verification (SNI)"

This reverts commit 007392a8a17df8b608f4ccd9129436cb570090d3.

Bug: 16660566
SLCertificateSocketFactory.java
9da2f1e007268a42248a1778aa9b560e3ce3b704 14-Aug-2014 Jeff Sharkey <jsharkey@android.com> Some networks may have null ifaces, I guess?

Seems like a bug further upstream, but guard ourselves against it
for now.

Bug: 17033841
Change-Id: Id0e5895c3389b63d4e34b1fb064efef8b72cd609
inkProperties.java
1806b1fc25bcffaa005e72a55042031a42b168b1 11-Aug-2014 Lorenzo Colitti <lorenzo@google.com> Switch RouteInfo to use IpPrefix instead of LinkAddress.

This addresses a TODO and also makes it possible to create
routes to destinations that are not valid LinkAddresses, such as
multicast addresses.

Bug: 16875580
Change-Id: Id4c77b00dc3064bf27d78cdcbbe035e645748cfe
outeInfo.java
328e679b210aae094dd1bb86f80550c58aefbe9c 12-Aug-2014 Jeff Davidson <jpd@google.com> Merge "Security-related cleanup for network scoring." into lmp-dev
ac7285dc1e13f30d59dad30fe2ad1116e5f676cb 09-Aug-2014 Jeff Davidson <jpd@google.com> Security-related cleanup for network scoring.

-Perform additional checks for the SCORE_NETWORKS permission when
broadcasting scoring requests to the active scorer and when accepting
score updates. In theory, these checks are unnecessary as we manually
check package manager when obtaining the list of valid scorers, but
they cannot hurt to add.

-Fix multi-user. Since the active scorer is a global setting, we
ensure that scoring can only be done by apps available to the primary
user / owner of the phone, and that the request scores broadcast is
sent to that user's profile. When the scorer is changed, we send that
to all user profiles as it's just informational, although it's
unlikely that apps outside the primary user's profile would need to
respond.

Bug: 14117916
Bug: 16399238
Change-Id: Iaf06bda244eec730b590a30a3f4ffab4965bde96
etworkScoreManager.java
etworkScorerAppManager.java
eb2c2c790c4b86c9c09245e0b87a38972713434a 12-Aug-2014 Jeff Sharkey <jsharkey@android.com> Hack and ship: NetworkStats edition.

Some devices use clatd for catching raw IPv4 traffic when running on
a pure-IPv6 carrier network. In those situations, the per-UID
stats are accounted against the clat iface, so framework users need
to combine both the "base" and "stacked" iface usage together.

This also means that policy rules (like restricting background data
or battery saver) need to apply to the stacked ifaces.

Finally, we need to massage stats data slightly:

-- Currently xt_qtaguid double-counts the clatd traffic *leaving*
the device; both against the original UID on the clat iface, and
against UID 0 on the final egress interface.

-- All clatd traffic *arriving* at the device is missing the extra
IPv6 packet header overhead when accounted against the final UID.

Bug: 12249687, 15459248, 16296564
Change-Id: I0ee59d96831f52782de7a980e4cce9b061902fff
inkProperties.java
a2496de37abda981ba80d74f529943374c9d6e3d 06-Aug-2014 Christopher Tate <ctate@google.com> Make TrafficStats uid attribution @SystemApi

Anything that runs as a singleton may need to attribute traffic to
various client apps; in particular, backup transports need to do this.
Apropos of which, introduce a @SystemApi method specifically for that
purpose, setThreadStatsTagBackup().

Bug 16661321

Change-Id: Id5d22e28bdc68edb53f2a1fdba80b144fcbc61d2
rafficStats.java
ab14df37ab9fcc63affb877833ee7869e1450bb2 04-Aug-2014 Paul Jensen <pauljensen@google.com> Remove dead CaptivePortalTracker.

Captive portals are now detected by the NetworkMonitor.

Change-Id: Ibfb04bf83b1028231397a577468f110d7ab1dc06
aptivePortalTracker.java
dc418e3365761c575247791229078b26212b8df9 31-Jul-2014 Dan Sandler <dsandler@android.com> Fix docs build.

Change-Id: I3be4c5b74e85d2491316986d8c3c0575cd01a8fc
etwork.java
5b37fa2ed574dbfaf2a2ef6adf5daccb9db941a8 29-Jul-2014 Lorenzo Colitti <lorenzo@google.com> Allow using third-party HTTP/... stacks for per-network URLs.

Also switch to double-checked locking for
mNetworkBoundSocketFactory and OkHttpClient.

Change-Id: Ic52776ee760036ad5623b7496156b8909dc282fa
etwork.java
etworkBoundURLFactory.java
f0382899c71a540103ba2dbcd0fe8aa8c926c4a8 30-Jul-2014 Lorenzo Colitti <lorenzo@google.com> Use a new socket for each of the host's IP addresses.

If Socket.connect() times out, the socket cannot be used any
more - any attempt to do so fails with EBADF. Use a new
socket for each IP address.

Bug: 16664129
Change-Id: If3616df86f7c2da0eabd30dca5db65d0da85cb17
etwork.java
acb5b7f0842c02267fa6c88255e5f2ccdb307c9c 30-Jul-2014 Jeff Davidson <jpd@google.com> Merge "Don't request network scores before boot completes." into lmp-dev
505c4a3093e57b91a0333ff09072395f534a06d9 30-Jul-2014 Jeff Davidson <jpd@google.com> Don't request network scores before boot completes.

Bug: 16655123
Change-Id: If6696635c59f6494e6232c3a75d283a2cbce2798
etworkScoreManager.java
26fd143326a11c9dd7942e31acca6df56288d194 29-Jul-2014 Jeff Davidson <jpd@google.com> Add NetworkScoreManager.disableScoring().

Allows the active scorer app to disable itself.

Change-Id: I7bcdc3aafb95af4ea0b110b01b08ab4daf7a137f
NetworkScoreService.aidl
etworkScoreManager.java
f4e0c0cb8ef22fdb20ae74b444c9f4b7d15ded8b 27-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Allow VPNs to add/remove link addresses dynamically.

Bug: 15409819
Change-Id: If91fc6891d7ce04060362c6cde8c57462394c4e8
ConnectivityManager.aidl
pnService.java
39ca3f5f698c4213bff5b1982463f6d2ddbc9653 28-Jul-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Remove dead code 1." into lmp-dev
42065ac64cba166dc0fe602957ea8fe80bf406e2 27-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Prohibit address families by default unless a VPN explicitly allows them.

Bug: 15972465
Change-Id: I3278d94536fefacc86390c1ba4231680f7be8589
etworkAgent.java
pnService.java
39fa65a3be4932ddadb5104fd0de9ef2121b3bc7 27-Jul-2014 Robert Greenwalt <rgreenwalt@google.com> Remove dead code 1.

Starting with startUsingNetworkFeature and stop.
Figure it's easier to code review incremental changes.

Change-Id: I19aee65e740858c3a9a2a1a785663f6fee094334
ConnectivityManager.aidl
c473dc4e4f090899f1d95a01669c02416cd27feb 17-Jul-2014 Lorenzo Colitti <lorenzo@google.com> Add a getBoundURL method that returns a network-specific URL.

Change-Id: I4b57e675bb87064ab75dcc36b00fdc7a2987b86e
etwork.java
8cd33ed84e94036a5e1201485af7603dc6fb0d9b 24-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Implement support for bypassable VPNs.

Bypassable VPNs grab all traffic by default (just like secure VPNs), but:
+ They allow all apps to choose other networks using the multinetwork APIs.
If these other networks are insecure ("untrusted"), they will enforce that the
app holds the necessary permissions, such as CHANGE_NETWORK_STATE.
+ They support consistent routing. If an app has an existing connection over
some other network when the bypassable VPN comes up, it's not interrupted.

Bug: 15347374
Change-Id: Iaee9c6f6fa8103215738570d2b65d3fcf10343f3
onnectivityManager.java
ConnectivityManager.aidl
etworkAgent.java
etworkMisc.aidl
etworkMisc.java
pnService.java
fab50167a88941b1088130b6b62b1200088764cc 23-Jul-2014 Robert Greenwalt <rgreenwalt@google.com> Fix DUN-based tethering.

It was calling into dead ConnectivityService code rather than using
the new ConnectivityManager shim code.

bug:15221541
Change-Id: I1e3eea8a658a162ce36673ed1cf7b1e7e4372c42
onnectivityManager.java
e5ebd4bc76f37e13d2cb6d9d10f3bdb257562a6f 23-Jul-2014 Ye Wen <ywen@google.com> Merge "Infer legacy network type for ConnectivityManager.requestNetwork" into lmp-dev
b87875eb88216a84c3870e574780921eb00d34c3 21-Jul-2014 Ye Wen <ywen@google.com> Infer legacy network type for ConnectivityManager.requestNetwork

ConnectivityManager.requestNetwork pass TYPE_NONE to
sendRequestForNetwork which prevents it from being used with legacy API
requestRouteToHostAddress. This CL infers the legacy network type
automatically from the network capabilities.

b/16324360

Change-Id: I591d38f875f42f56e8cfc157db2069c9eee0ee26
onnectivityManager.java
6bbf39cf6b81222f32d2b66b8fa85d562e0ad71c 23-Jul-2014 Jeff Davidson <jpd@google.com> Implement VpnService.setBlocking().

Bug: 12879610
Change-Id: I3a0ad9eae5f7dd9c01f75b9da71810bad38f9fec
pnService.java
03666c705ddabe0e7c5869ab69c2ca8b964164e9 20-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Cleanup: Delete dead code.

Bug: 15413389
Change-Id: I315468832ef18ffc84174e54774ab63b86d284dc
onnectivityManager.java
ConnectivityManager.aidl
etworkUtils.java
fcd8b20e09ca066da6d2564935d8dbfff2777547 21-Jul-2014 Alex Klyubin <klyubin@google.com> Align PSKKeyManager with framework API style.

This CL adjusts android.net.PSKKeyManager as follows:
* Renamed to PskKeyManager to follow naming conventions.
* Changed from interface to abstract class with default
implementations for all methods.

Bug: 16403305
Bug: 15073623
Change-Id: Iefce26b394d4a753412315dad554b5342f3f0b44
SKKeyManager.java
skKeyManager.java
cc26b4cc09720906d5b277fccc62c31714749816 19-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Allow VPN interfaces to be put into blocking mode.

New API with stub implementation to be filled out later.

Bug: 12879610
Change-Id: Iff711994dec4598c74fe11447c8c670004c1188c
pnService.java
7be8e9725f4a60f0d1a6cb175a05a320968d7439 17-Jul-2014 Jeff Davidson <jpd@google.com> Expose network scoring APIs to /system apps.

Ideally, we'd only expose the methods that we intend unbundled apps to
call (e.g. not NetworkScoreManager#setActiveScorer, which should only
be called by Settings), but this isn't harmful in terms of permissions
as the APIs still check security appropriately.

Bug: 15833200
Change-Id: I2047515b41c8be0cf7cb51dd495fe72309c05f68
etworkKey.java
etworkScoreManager.java
ssiCurve.java
coredNetwork.java
ifiKey.java
b56f21270af1d091fa7db988c57e2170bd53f683 15-Jul-2014 Alex Klyubin <klyubin@google.com> No need to explicitly enable TLS-PSK cipher suites.

This CL adjusts the example code in android.net.PSKKeyManager Javadoc
to no longer explicitly enable TLS-PSK cipher suites. These are now
enabled automatically if SSLContext is initialized with a
PSKKeyManager.

Bug: 15073623
Change-Id: I7f7f713478171491347cdfb9651fd9a095dc60ee
SKKeyManager.java
06b6cdaed5c68816faac9d2354c6caf61e65e19d 12-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Remove unnecessary code and APIs.

This stuff has been replaced by setNetworkForUser() in NetdClient.

Change-Id: If525ee259b74314191d1913f7c2a3e828e05c38f
ConnectivityManager.aidl
etworkUtils.java
5d59e785e12b229a860b1d75f9e88cc74d7f61ff 11-Jul-2014 Paul Jensen <pauljensen@google.com> Readjust location of NETID_UNSET definition.

This is a tweak to my 8ec11bb change I a-little-too-hastily committed.

Change-Id: Ibeee9382109994c66227d1c42aac749e2a274ed7
onnectivityManager.java
bcc76d345cdad2eff0f64d1dca9f92f94c8b9f07 11-Jul-2014 Paul Jensen <pauljensen@google.com> Define NETID_UNSET in ConnectivityManager.

This allows some cleanup and removal of dead code.

bug:15489928
Change-Id: Iaf0507bc2e8ec6dcc253f01f61c5b221d46581f9
aseNetworkStateTracker.java
onnectivityManager.java
etworkUtils.java
94badcc8cea8f428501e9ca819a2fe7a45af8b59 10-Jul-2014 Robert Greenwalt <rgreenwalt@google.com> Missed an entry in the copy constructor.

bug:15755597
Change-Id: Iee17ca88404a6a50258d204a12cd0c04cd15e34e
etworkCapabilities.java
a9294eb1c9c090f5c896c0212efed0234678d970 10-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Allow a VPN to be declared bypassable.

A VPN declared bypassable allows apps to use the new multinetwork APIs to
send/receive traffic directly over the underlying network, whereas without it,
traffic from those apps would be forced to go via the VPN.

Apps still need the right permissions to access the underlying network. For
example, if the underlying network is "untrusted", only apps with
CHANGE_NETWORK_STATE (or such permission) can actually use it directly.

New API with stub implementation to be filled out later.

Bug: 15347374
Change-Id: I8794715e024e08380a43f7a090613c5897611c5b
pnService.java
633f0e875dd6bda31f575fe4bc0187e9f245403f 10-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Let VpnService specify a white/black list of apps that are allowed access.

New API with stub implementation to be filled out later.

Bug: 13651397
Change-Id: Ibabd6c22495ce58dc88142bb958c1ef12adcf78e
pnService.java
1384605a89775dcaae48e8d5f0081143f896a8cb 10-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Update VpnService API documentation.

The goal of blocking an address family by default is to prevent unintended
security holes. For example, a VPN that only deals with IPv4 doesn't know or
care about IPv6 at all, so it doesn't do anything for IPv6. An app shouldn't be
able to get around (bypass) the VPN by using IPv6.

Therefore, it is not necessary to block an address family in removeAddress().
The VPN was clearly aware of the address family (since it had configured such an
address before), so if it wants to block that family, it should add a default
route for that family and explicitly drop/block/reject those packets.

Bug: 15972465
Bug: 15409819
Change-Id: I845426fa90dc2358d3e11bc601db0b4bd5d3b7ac
pnService.java
5f90bccd96397f23b988c5e668b13f5344fd104b 10-Jul-2014 Robert Greenwalt <rgreenwalt@google.com> Add networkSpecifier string to NetworkCapabilties.

Allows transport specific network selectivity where multi-sim or sta+sta
is supported.

bug:1575597
Change-Id: I9c60fe7710e988c17d63236788b492a3ddd264a1
etworkCapabilities.java
etworkRequest.java
6bc2c2c34f2b23eae79ad733c97a691734055c4f 07-May-2014 Paul Jensen <pauljensen@google.com> Convert Vpn from NetworkStateTracker to NetworkAgent.

This eliminates the need for the ConnectivityService.VpnCallback class.
This requires shifting VPNs to the new "network" netd API.
VpnService.protect() is modified to no longer go through ConnectivityService.
NetworkCapabilities is extended to add a transport type for VPNs and a
capability requiring a non-VPN (so the default NetworkRequest isn't satisfied
by a VPN).

bug:15409918
Change-Id: Ic4498f1961582208add6f375ad16ce376ee9eb95
ConnectivityManager.aidl
etworkAgent.java
etworkCapabilities.java
etworkUtils.java
idRange.aidl
idRange.java
pnService.java
7237965c0d6f86a5f6e71d23645c37022edc4175 10-Jul-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Refactor wifi p2p's startDhcpServer function"
9c7e2c2cb491268db0322ad78856faf0582e61d1 23-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Refactor wifi p2p's startDhcpServer function

Add getTetheredDhcpRanges() interface and call it before calling
mNwService.startTethering to update dhcp ranges. This will allow
p2p apps to run well concurently with other tethering apps.

Manual import of AOSP change 81546 by jianzheng.zhou@freescale.com

Change-Id: Iebc62f95bdcedde80e2c1d3e9580d3f625c3b50b
onnectivityManager.java
ConnectivityManager.aidl
d7e71641f6ae7e372795c22fe293d63373a898d2 10-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Block address families by default in VpnService.

If a VpnService only configures IPv4 addresses, routes and DNS servers, block
IPv6 by default, and vice versa. Also add an API to unblock a family without
needing to add an address, route or DNS server.

New API with stub implementation to be filled out later.

Bug: 15972465
Change-Id: I70d4d5c30ee71802610f6e16f100db6cbccef42c
pnService.java
81c295e1c843612408d0de26fe383cebc0a80313 10-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Allow VPNs to dynamically add/remove IP addresses on their tun interface.

New API with stub implementation to be filled out later.

Bug: 15409819
Change-Id: Ic0d2d459953eac86832905115a0d413b9b0b2660
pnService.java
d706933527d592e7ecf93c78bec775790b73c123 10-Jul-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Add Network inspection API."
73b6cbae0cf6ca71453c526895a735130e72c9c0 23-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Add Network inspection API.

Adds getNetworksNetworkInfo.
Adds getAllNetworks.

Cleans up some synchronization issues.

Change-Id: I82c7a4b554e3c6c1adfe6027cc54b028ed6dbac9
onnectivityManager.java
ConnectivityManager.aidl
16e12abbef5b84b75e3180b3d1ba5244b7e2557d 09-Jul-2014 Robert Greenwalt <rgreenwalt@google.com> Add Trust to NetworkCapabilities.

Indicates the user has indicated implicit trust of a network. This
generally means it's a sim-selected carrier, a plugged in ethernet,
a paired BT device or a wifi they've asked to connect to. Untrusted
networks are probably limited to unknown wifi AP.

Change-Id: I89490bdaa3c2d63d33f876c72d8b088dc155fa3d
etworkCapabilities.java
4bb015d90ae2aa3ce30778f3f584e0b7124f7505 05-Jul-2014 Joe LaPenna <jlapenna@google.com> CW on Master: Disable CaptivePortalTracker, EthernetService

BUG: 15143878

Change-Id: I6c534a28c1fcd475982ae70e7f3af69f3a219e24
thernetManager.java
9eb38a6ffa8c4f113a274ce6b390e5d138018a25 08-Jul-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Remove dead code."
8283f8802d7e4d78c7eb031ddac07a4cfdc30771 08-Jul-2014 Robert Greenwalt <rgreenwalt@google.com> Remove dead code.

Also adds a TYPE_VPN so the VPN can be strongly typed.

Change-Id: Ibf39450c480f16ce5ab4c25b47965691b844fb92
onnectivityManager.java
ummyDataStateTracker.java
620a5466ce5f401aafa6a438383016640ec51d1a 07-Jul-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Remove unused api."
118f04bd9ae8e5e55b114228b4ceee34c85fde1e 05-Jul-2014 Nick Kralevich <nnk@google.com> Fix "Clone" override

The function should be named "clone", not "Clone".

Also add @Override so that this error can be detected at
compile time.

Change-Id: I976723978a5e3eafbfbc599bac95b8646d18d5ca
roxyDataTracker.java
17c3e0fbfcd404fb253288b386d7b39368d5852a 02-Jul-2014 Robert Greenwalt <rgreenwalt@google.com> Remove unused api.

bug:15595155
Change-Id: Ifd79365bd45f20f531782244f471a4cfc32a4135
onnectivityManager.java
ConnectivityManager.aidl
e2dd396cef8c3b1c22b799ac931e207fdc729154 17-Jun-2014 Brian Carlstrom <bdc@google.com> Remove

Change-Id: Ia2fa4ebae090838c2bf7bc96edc38a85fe3059dd
ttp/CertificateChainValidator.java
ttp/DelegatingSSLSession.java
ttp/DelegatingSocketWrapper.java
ttp/X509TrustManagerExtensions.java
30d5195fc1bb6f13e1b294cc3cbec9ef5837ed8d 07-Jul-2014 Glenn Kasten <gkasten@google.com> Fix build

Change-Id: I7d0787e4a1f778008c979c4174ef445a950c4250
onnectivityManager.java
e76e4323ccafd174840b97186809722c74305c60 19-May-2014 Paul Jensen <pauljensen@google.com> Add captive portal sign-in actions.

Change-Id: I70a6c2efc4f3fa48d5b65e8d630682fe74abfe2c
onnectivityManager.java
7221cc3bf3d27dc10c7855f1bef2fa6cf6cfe9de 27-Jun-2014 Paul Jensen <pauljensen@google.com> Make sure callback handler is in place before callbacks handled.

When making Network requests in ConnectivityManager, make sure we install the
callback prior to a response from ConnectivityService arriving causing us to
search for the callback and inadvertently not find it.

bug:15928097
Change-Id: Ie5feb9cc8f5effc19870f54dba07218b2e11d82a
onnectivityManager.java
b096bdceaf2a4becffd2d930a870ccb57bfbe99c 01-Jul-2014 Jeff Davidson <jpd@google.com> Add a SCORER_CHANGED broadcast.

Sent whenever the active network scorer is changed.

Bug: 16007033
Change-Id: Ib71e89e2cc98fa424db7e489445ec03edefb6880
etworkScoreManager.java
be7c50e0a14e91330ce13161bc14a33d34ff6aca 30-Jun-2014 Dianne Hackborn <hackbod@google.com> Add network access blocking when in battery save mode.

The network policy manager now monitors battery save mode and,
when in battery save, uses its facility to block access to metered
networks to block access to all networks. That is, it tells the
network management service that all networks have an (infinite)
quota, and puts various app uids to be restricted under quota
interfaces as appropriate.

This new network blocking needs a new facility to be able to white
list apps, such as GmsCore. To do this, I refactored the package
manager's permission configuration stuff into a separate SystemConfig
class that can be used by others, and it now has a new tag to
specify package names that should be white-listed for power save
mode. These are retrieved by the network policy manager and used
to build a whitelist of uids.

The new general config files can now go in system/etc/config,
though currently everything still remains in the permissions dir.

Still left to be done is changing the semantics of what uids are
allowed in this mode, to include all perceptable uids. (So that we
can still do things like background music playback.) This will be
done in a follow-on CL.

Change-Id: I9bb7029f61dae62e6236da5ca60765439f8d76d2
NetworkPolicyManager.aidl
etworkPolicyManager.java
3e0e3bc617c4fd0e03b88ae04a618381b20a383c 26-Jun-2014 Ram <ram.pl@samsung.com> MS: Adding Support for Emergency APN in Telephony Framework
(base/telephony)

Replacement for https://partner-android-review.googlesource.com/#/c/171175/

Change-Id: I16fc37f5c00ed79f2370bc46554fc7a24c52c4cb
Conflicts:
core/java/android/net/ConnectivityManager.java
onnectivityManager.java
obileDataStateTracker.java
b6646a8987a8ce6abd34cc05d9ca0193a6d7bea9 28-Jun-2014 Jeff Davidson <jpd@google.com> Allow network scorers to provide an opt-in activity.

A candidate scorer may have an activity registered to listen for the
ACTION_CUSTOM_ENABLE intent action. If so, when the user attempts to
select this scorer as the active one, this custom activity will be
launched and will be responsible for requesting that the framework
activate the scorer. This is to enable more complex opt-in flows prior
to becoming the active scorer.

Scorers which do not specify this activity will default to using the
framework switcher (currently ActiveNetworkScorerDialog, though this
may change).

Note that all switches must still go through the framework switcher;
the opt-in activity simply allows scorers to first show another screen
and perform the framework switch on their own terms.

Bug: 15775314
Change-Id: I3847e5d3161a8fcc9622abc03218795697c32778
etworkScoreManager.java
etworkScorerAppManager.java
d5d80801d2300fd6849ad2ef0fda9a34e7762fce 26-Jun-2014 Paul Jensen <pauljensen@google.com> Merge "Use return values from JNI functions binding sockets and processes to networks."
32a58f00d388584f5f47c0d5d4c74ce7c8457d78 20-Jun-2014 Paul Jensen <pauljensen@google.com> Use return values from JNI functions binding sockets and processes to networks.

bug:15757549
Change-Id: If23b14febc923b9a0348f0cf9029fd4bf6e8d725
onnectivityManager.java
etwork.java
etworkUtils.java
a3b9ca5adead683eb30492f038e4e72452b6fa5a 26-Jun-2014 Jeff Davidson <jpd@google.com> Merge "Use/expose the receiver's label as the scorer name."
c741553644f8b19c63938ab9e36af1721c2cfa34 24-Jun-2014 Jeff Davidson <jpd@google.com> Use/expose the receiver's label as the scorer name.

Allows scorer apps to set a custom name for the scoring functionality,
even if the app has other non-scoring responsibilities, in which case
the application's label would be too generic.

Bug: 15775300
Change-Id: I61a7d1966742d463508e6801b7845ced8392db84
etworkScoreManager.java
etworkScorerAppManager.java
309a75dbc3a96471f66967379b0e6b043244ae42 23-Jun-2014 Lorenzo Colitti <lorenzo@google.com> Modify DNS server update methods.

1. Make addDnsServer not add duplicate servers and return a
boolean value incating whether it changed anything. This is
consistent with what we do for LinkAddresses and routes.
2. Add a setDnsServers method that sets all the DNS servers to
the specified collection. This is consistent with what we do
for LinkAddress.

Bug: 9180552
Change-Id: I5baed09253261b66ea42ae2ea82398118e3ab0ac
inkProperties.java
76ea6c68d3222441970ef98079ba30710ac8c595 23-Jun-2014 Lorenzo Colitti <lorenzo@google.com> Teach LinkProperties whether it's provisioned or not.

In IPv4, a link is provisioned when DHCP succeeds. In IPv6, a
there is no such signal, because addresses and DNS servers can
be notified by the kernel at different times.

Add an isProvisioned method that returns true if we believe that
enough information has configured to use a network. For IPv6,
this requires an IP address, default route, and DNS server. For
IPv4, this requires only an IPv4 address, because we support
static configuration that doesn't have a default route or DNS
server.

To do this we use the existing hasIPv4Address method, rename the
all-but unused hasIPv6Address method to hasGlobalIPv6Address
(which is what we want anyway) and add new hasIPv[46]DefaultRoute
and hasIPv[46]DnsServer methods.

Bug: 9180552
Change-Id: Ib2f5ff8af920f7b6f1edf0e2afaaa0edce9bc72d
inkProperties.java
64c43b1948a2b2fcd692cd4a48f031efbf7f7336 23-Jun-2014 Lorenzo Colitti <lorenzo@google.com> Minor changes to RouteInfo.

1. Realize that mDestination can never be null and update the
code accordingly.
2. Simplify isDefaultRoute.
3. Provide two new hidden utility methods, isIPv4Default() and
isIPv6Default(), that can be used by LinkProperties to
to determine if the system has connectivity.
4. Update tests.

Bug: 9180552
Change-Id: I85028d50556c888261d250925962bdedfe08e0c6
outeInfo.java
2c7bf2cb46024eb87aec4b5ac0fa15477cc14f7a 24-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Clean up and add some Network logging.

Dumps the netid for the Network and adds that to the NetworkAgentInfo.

Change-Id: Id9fbcc55ca55bf1a020f747f0c44902efb1b5f87
etwork.java
33b825cd1a7f27579b76888e84157af14861a135 24-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Add logging to track down weird ConnectivityManager issue."
257ee5fa6f22d356d1783808d42e30b9d81851c6 20-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Add logging to track down weird ConnectivityManager issue.

bug:15771399
Change-Id: I0a7150286f94262414005298e6f038f278347a7c
onnectivityManager.java
19f01ebe90722487d72e4ef16375c661004b3087 18-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Remove Obsolete enable/disableApn functions."
e356825e4a92e045a51d09b63e31dd9ce8e83d5a 17-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Remove Obsolete enable/disableApn functions.

ConnectivityService now uses NetworkAgents instead and apps should use
ConnectivityManager.

Change-Id: Ifc5c8f5be802183e70a5d92b224c819815de00e6
obileDataStateTracker.java
fd445e0336021b4a19b590026d179181e52d7527 17-Jun-2014 Alex Klyubin <klyubin@google.com> Merge "Add PSKKeyManager to enable the use of TLS-PSK."
c18cbfdf8d40e7a526a088225cb32341e1ea0920 13-Jun-2014 Lorenzo Colitti <lorenzo@google.com> Notify network observers of route changes.

Bug: 9180552
Change-Id: If8432bc74335676320b815784b21f404d3479c35
NetworkManagementEventObserver.aidl
c17a1b9ee4e2e72d640b97ef174d9a78a8ef9a8a 12-Jun-2014 Lorenzo Colitti <lorenzo@google.com> Modify LinkProperties add/remove route functions.

This will allow us to dynamically track routes being added and
removed, similar to what we do for IP addresses.

1. Support removing routes. Since this is a new function, we
don't need to jump through hoops to support callers passing
in routes that have no interface, we just fail to match them.
2. Make the addRoute method return a boolean value indicating
whether anything changed. This is consistent with what we do
for addresses and is used to decide whether to update the
rest of the system when an update comes in.

Bug: 9180552
Change-Id: I50648b5f81ec55c88501a7640e119cda2bb540f2
inkProperties.java
8c6c2c3c929acad783b9a56b8d9efa597d0ae609 12-Jun-2014 Lorenzo Colitti <lorenzo@google.com> IpPrefix improvements.

1. Allow IpPrefixes to be created from strings. In order to do
this, factor out the code from LinkAddress which already does
this to a small utility class in NetworkUtils.
2. Truncate prefixes on creation, fixing a TODO.
3. Add a toString method.
4. Write a unit test.

While I'm at it, make RouteInfoTest pass again, and convert it
to use IpPrefix instead of LinkAddress.

Change-Id: I5f68f8af8f4aedb25afaee00e05369f01e82a70b
pPrefix.java
inkAddress.java
etworkUtils.java
b0d1d914073256db05aa33feb6b2d6018802635e 10-Jun-2014 Alex Klyubin <klyubin@google.com> Add PSKKeyManager to enable the use of TLS-PSK.

TLS-PSK is supported by the underlying TLS/SSL stack (based on
Conscrypt). This CL simply exposes this support in the Android
framework.

TLS-PSK is a set of TLS/SSL cipher suites which rely on a symmetric
pre-shared key (PSK) to secure the TLS/SSL connection and mutually
authenticate its peers. These cipher suites may be a more natural fit
compared to conventional public key based cipher suites in some
scenarios where communication between peers is bootstrapped via a
separate step (for example, a pairing step) and requires both peers
to authenticate each other. In such scenarios a symmetric key (PSK)
can be exchanged during the bootstrapping step, removing the need to
generate and exchange public key pairs and X.509 certificates.

Bug: 15073623
Change-Id: Idf2a773db3021de3d2ad144c5cc63d2415eb8e91
SKKeyManager.java
65599da8612b72973f0334286d10bf5f1219da0f 13-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Fix build"
e595b97ff470a5e92151350e4d7b4173032fde23 13-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Fix build

Re-finalizing some classes. The api/current.txt was updated separately but the change
that made them final got skipped. Also had same issue for some @hide's that were removed.

Change-Id: I423bb7b3029ee03425a3c446bda51ab8191887c1
inkProperties.java
outeInfo.java
0cbe94a349616442672fad3751ac81f4f7f394f3 12-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Make IpPrefix final.

Couldn't resolve a merge conflict, so skipped and make the change this way.

Change-Id: Ib043f660fca2090f0d12a5a707e5e1ad28f76adb
pPrefix.java
7c9f5529ea07fda43a68f9b5de204cf2b90d1b61 12-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> am 558aeb90: Merge "Make NetworkCapabilities publicly immutable." into lmp-preview-dev

* commit '558aeb901144fac460575402e38fc8baa2da83eb':
Make NetworkCapabilities publicly immutable.
7569f1811f6061b2a6605c69bca1bb7af72ae1a0 09-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Make NetworkCapabilities publicly immutable.

Applying API council comments.

bug: 15142362

(cherry picked from commit Ie0bde68b72656a676d90c0343b9756fe9268d8d6)
Change-Id: Ie0bde68b72656a676d90c0343b9756fe9268d8d6
onnectivityManager.java
etworkCapabilities.java
etworkRequest.java
52a327263d1cdbab53f9d9087b67bcfea087407e 13-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> am 2d0ab42b: Merge "Apply API Council comments to ConnectivityManager" into lmp-preview-dev

* commit '2d0ab42b1420db884d26fd2ef22710b5a887e9a6':
Apply API Council comments to ConnectivityManager
6078b50b017fbcf8d6cbf9f83226ed5667d5729e 12-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Apply API Council comments to ConnectivityManager

rename isNetworkActive -> isDefaultNetworkActive
rename registerNetworkActiveListener -> registerDefaultNetworkActiveListener
make listenForNetwork/requestNetwork take a NetworkRequest
rename NetworkCallbackListener -> NetworkCallback
rename listenForNetwork -> registerNetworkCallback
rename releaseNetworkRequest -> unregisterNetworkCallback
remove NetworkRequest param from NetworkCallback functions
rename onNetworkCapabilitiesChagned to onCapabilitiesChanged
remove onReleased
change time units in onLosing from Sec -> ms

bug: 15142362
Change-Id: Ibc96e3f461706efe1eafa0d85605249cfd6e9fdd
onnectivityManager.java
etwork.java
etworkRequest.java
f09d128517959ef56e89690386a37605eb66bbb8 12-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Fix wifi connectivity issues." into lmp-preview-dev
fb7690d4e18b69c645922f6ad4110498cc52cd0b 12-Jun-2014 Sreeram Ramachandran <sreeram@google.com> Fix wifi connectivity issues.

http://ag/480881 changed RouteInfo.getDestination() to return an IpPrefix
instead of a LinkAddress. This makes the equals() comparison always fail.

So, when ConnectivityService.updateRoutes() is given identical routes, instead
of realizing that there's no diff, it would consider them different, and thus
add and remove the same route. The add would fail, since the route already
existed in netd, but the remove would succeed, leaving the system with no routes
and thus no connectivity.

Bug: 15564210
Change-Id: I2003b0fcb809cc20837dc489c58af37891ca4556
outeInfo.java
594b456b6e2aa4142fa31394cdd39bd4cc7a1d3a 12-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Minor changes to the LinkAddress API docs." into lmp-preview-dev
55213c80229cc9cbec328f0ec9a842f5d66c35c2 12-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Add a new IpPrefix class and use it in RouteInfo." into lmp-preview-dev
6307b35e1d3a8d577877be0b4c9cea1a909b6329 04-Jun-2014 Sreeram Ramachandran <sreeram@google.com> Add a new IpPrefix class and use it in RouteInfo.

This change uses IpPrefix only in the public API and continues
to use LinkAddress for everything else. It does not change the
callers to use the new APIs, with the exception of changing
all current uses of getDestination to getDestinationLinkAddress
to make room for the new getDestination method that returns an
IpPrefix.

Based on Sreeram's earlier change:
https://googleplex-android-review.git.corp.google.com/#/c/477874/
but a bit simplified and with a bit more documentation.

Bug: 15142362
Bug: 13885501
Change-Id: Ib4cd96b22cbff4ea31bb26a7853989f50da8de4e
(cherry picked from commit 7d3b4b9a3d4de9673119632da0ebd583e50126f7)
pPrefix.aidl
pPrefix.java
inkProperties.java
outeInfo.java
00a0fd650b7a31dffb88c229242bb04fa0b487a4 09-Jun-2014 Lorenzo Colitti <lorenzo@google.com> Minor changes to the LinkAddress API docs.

1. Rename getNetworkPrefixLength to getPrefixLength. Update all
callers in frameworks/base and add a shim method and a TODO
for the rest.
2. @hide isSameAddressAs. It doesn't add much, and it's just
one-liner that callers can implement if they want.
3. Fix the alignment of the initial paragraph (<ul> should have
been </ul>).
4. Remove the documentation that talks about creating
LinkAddresses, since there's no public API for creating them.

With these changes I think LinkAddress is fine as a public API.

Bug: 15142362
Change-Id: Iaf3b1db577745bb68a9e1dd7f96d666dd3f3ec7c
(cherry picked from commit 9ab53650cfcd91a2a151b44b3fd1381841f76269)
inkAddress.java
outeInfo.java
8fe0d0c84c1a09ee2dc5050919890409dc1dc2f8 11-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Fix public API of LinkProperties." into lmp-preview-dev
25702b39675c51dd4963eb71b66b20126a55cc05 06-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Fix public API of LinkProperties.

bug:15142362
(cherry picked from commit 51d898fd0223a4b7c728980ab987dd985c02df5f)
Change-Id: I1457111da7d3bd09998f7e010febb8bb4c45c8bc
hcpResults.java
nsPinger.java
inkProperties.java
roxyDataTracker.java
211c06eb811c2a24b2317da1db17ba54ae45dc7b 12-Jun-2014 Sreeram Ramachandran <sreeram@google.com> Fix wifi connectivity issues.

http://ag/480881 changed RouteInfo.getDestination() to return an IpPrefix
instead of a LinkAddress. This makes the equals() comparison always fail.

So, when ConnectivityService.updateRoutes() is given identical routes, instead
of realizing that there's no diff, it would consider them different, and thus
add and remove the same route. The add would fail, since the route already
existed in netd, but the remove would succeed, leaving the system with no routes
and thus no connectivity.

Bug: 15564210
Change-Id: I2003b0fcb809cc20837dc489c58af37891ca4556
outeInfo.java
7dc78cf3af9fd11a4f1e2e981ce584a23755ea9e 09-Jun-2014 Lorenzo Colitti <lorenzo@google.com> Minor changes to the LinkAddress API docs.

1. Rename getNetworkPrefixLength to getPrefixLength. Update all
callers in frameworks/base and add a shim method and a TODO
for the rest.
2. @hide isSameAddressAs. It doesn't add much, and it's just
one-liner that callers can implement if they want.
3. Fix the alignment of the initial paragraph (<ul> should have
been </ul>).
4. Remove the documentation that talks about creating
LinkAddresses, since there's no public API for creating them.

With these changes I think LinkAddress is fine as a public API.

Bug: 15142362
Change-Id: Iaf3b1db577745bb68a9e1dd7f96d666dd3f3ec7c
inkAddress.java
outeInfo.java
cc91c7b804a079f7b20404827277c61dd403805f 04-Jun-2014 Sreeram Ramachandran <sreeram@google.com> Add a new IpPrefix class and use it in RouteInfo.

This change uses IpPrefix only in the public API and continues
to use LinkAddress for everything else. It does not change the
callers to use the new APIs, with the exception of changing
all current uses of getDestination to getDestinationLinkAddress
to make room for the new getDestination method that returns an
IpPrefix.

Based on Sreeram's earlier change:
https://googleplex-android-review.git.corp.google.com/#/c/477874/
but a bit simplified and with a bit more documentation.

Bug: 15142362
Bug: 13885501
Change-Id: Ib4cd96b22cbff4ea31bb26a7853989f50da8de4e
pPrefix.aidl
pPrefix.java
inkProperties.java
outeInfo.java
0a363a319ff6e7b83c4c37b3406f4b0bd2dbf273 29-May-2014 Paul Jensen <pauljensen@google.com> Apply API review to android.net.Network:

- socketFactory() renamed to getSocketFactory()
- Make sure bindProcess() documentation points developers to getSocketFactory() as the preferred approach
- Move bindProcess() and unbindProcess() to ConnectivityManager.setProcessBoundNetwork() -- passing null clears it.
- Move getProcessBoundNetwork() to ConnectivityManager.getProcessBoundNetwork().

Bug:15142362
Bug:13885501

Change-Id: Ia55c59d52e1ec8bf10dd0d9d037bd04c0998bc71
(cherry picked from commit 5ca1e6675bf4182b6e9ca76a7696bf2e38e96c4f)
onnectivityManager.java
etwork.java
etworkUtils.java
6123315ad41b268bb2de52b2008885bf00408b5e 10-Jun-2014 vandwalle <vandwalle@google.com> Merge "remember and report network score"
2ab9089dfa0c0526e8bf0aaade8a09dec021dc90 03-Jun-2014 vandwalle <vandwalle@google.com> remember and report network score

Change-Id: Iccb2ec603bc9c0d3cf1976d0cc3f343cb1096494
etworkAgent.java
cc62d9ad6bb84f2d5ccf8c4b64f581990bf43751 09-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Apply API review to android.net.Network:"
df2b878ff4e7b4a258588d3a93574c399db78a07 06-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Fix public API of LinkProperties.

bug:15142362
Change-Id: I1457111da7d3bd09998f7e010febb8bb4c45c8bc
hcpResults.java
nsPinger.java
inkProperties.java
roxyDataTracker.java
6d3ff9ea3a542a18ca5da055418a7b9eff130d93 29-May-2014 Paul Jensen <pauljensen@google.com> Apply API review to android.net.Network:

- socketFactory() renamed to getSocketFactory()
- Make sure bindProcess() documentation points developers to getSocketFactory() as the preferred approach
- Move bindProcess() and unbindProcess() to ConnectivityManager.setProcessBoundNetwork() -- passing null clears it.
- Move getProcessBoundNetwork() to ConnectivityManager.getProcessBoundNetwork().

Bug:15142362
Bug:13885501

Change-Id: Ia55c59d52e1ec8bf10dd0d9d037bd04c0998bc71
onnectivityManager.java
etwork.java
etworkUtils.java
9ac3dbe1ce68fba1af012112894d54c3024195f8 06-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Fix the marking of restricted network requests

Need to realized that the NOT_RESTRICTED bit is set by
default, so if looking at what bits are set to decide if
we want NOT_RESTRICTED cleared, we need to ignore the
bit itself.

bug:15456019

Change-Id: Iecae598f47ec7306d475e2262bb1c452ddf0fc75
onnectivityManager.java
1ce7f79ddd55a1559b1e10dd6b4221a2cc2c6454 05-Jun-2014 Hui Lu <huilu@google.com> am 26f40cc3: am 61c0f547: Merge "Add interface name for proxy network type." into klp-modular-dev

* commit '26f40cc36dc869fc8de3bf4c97de57aae0d626ca':
Add interface name for proxy network type.
26f40cc36dc869fc8de3bf4c97de57aae0d626ca 05-Jun-2014 Hui Lu <huilu@google.com> am 61c0f547: Merge "Add interface name for proxy network type." into klp-modular-dev

* commit '61c0f547339ec870d42b15e84f9628631308f22f':
Add interface name for proxy network type.
c80fa71e88bdf932bdde0cea057c3feade73ebd8 03-Jun-2014 Hui Lu <huilu@google.com> Add interface name for proxy network type.

This will make test
android.net.cts.ConnectivityManagerTest#testRequestRouteToHost pass.
Change-Id: I5a14b6d705e87018e1e2c031aaacee533536a50b

Bug: 15320910
roxyDataTracker.java
ea1984fd3bda53c85c5f789e3e36641145803704 04-Jun-2014 Lorenzo Colitti <lorenzo@google.com> Call a network restricted only if all capabilities are restricted

When guessing whether a network is restricted or not (e.g., when
constructing a NetworkCapabilities object from an APN type, or
when constructing a request using startUsingNetworkFeature),
only assume the network is restricted if all the capabilities it
provides are typically provided by restricted networks (e.g.,
IMS, FOTA, etc.).

Previous code would conclude a network was restricted even if it
supported one "restricted" capability, so for example an APN
that provides both Internet connectivity and FOTA was marked as
restricted. This caused it to become ineligible to provide the
default Internet connection, because that must be unrestricted.

Also expand the list of restricted APN types a bit.

Bug: 15417453
Change-Id: I8c385f2cc83c695449dc8cf943d918321716fe58
onnectivityManager.java
4077acbeccd2483e78e83abff874757302388fbe 03-Jun-2014 Lorenzo Colitti <lorenzo@google.com> Make requests for restricted networks not require unrestricted access.

Currently, calling startUsingNetworkFeature for a restricted APN
type (e.g., IMS or FOTA) will create a request that requires
NET_CAPABILITY_NOT_RESTRICTED. Because these APNs are restricted,
when we bring them up we conclude that it does not match the
unrestricted requirement, and we tear them down.

1. Clear the NET_CAPABILITY_NOT_RESTRICTED capability when
creating requests in startUsingNetworkFeature.
2. Refactor the code to a common function so this cannot happen
again.

Bug: 15191336
Change-Id: Id1ec79c58ff79b1a83457ffaecc57d50b61ed4e4
onnectivityManager.java
32aa65a11207e1fb7d346a68fdf3299f87a20db4 03-Jun-2014 Robert Greenwalt <rgreenwalt@google.com> Fix Legacy NetworkInfo API

Make the connectivity changed broadcasts send correct NetworkInfos.
Also update the results of getNetwork.

bug:15290306
bug:15191336
bug:14993207
Change-Id: Ie99ad25f3ebb90d18348e7013761b139e7481866
(cherry picked from commit 16fe1c18289de200d2249e51db8c0986619f487b)
onnectivityManager.java
ConnectivityManager.aidl
etworkInfo.java
etworkRequest.java
55691b8cc725297e0d36799e234cba3c8c3410f6 27-May-2014 Robert Greenwalt <rgreenwalt@google.com> Refactor NetworkFactory.

Make NetworkFactory a concrete class and divide responsibilites between it and NetworkAgent.
Factory will track requests and by default give a single connect/disconnect api for ease
of use. Then NetworkAgent is created and destroyed as needed with very simple logic.

Change-Id: I401c14a6e5466f2fc63b04219b97ff85bb9af291
(cherry picked from commit 9a17b9c5a256cb4bb14821c5ee89b03b99c045e8)
onnectivityServiceProtocol.java
etworkAgent.java
etworkFactory.java
etworkInfo.java
562cc54536f1e75d80855de4d1eccaeefd689a32 16-May-2014 Robert Greenwalt <rgreenwalt@google.com> Rewrite startUsingNetworkFeature for new API

bug:14993207
Change-Id: I041a80faa07bf3094af13a6c606f3b15aa03f789
(cherry picked from commit 09fe5e618b09965183cf53fba87c39025a19e8d1)
onnectivityManager.java
ConnectivityManager.aidl
8ef3401d2ae613ff0f14d75be860f5c833019494 27-May-2014 Paul Jensen <pauljensen@google.com> Adjust Network's SocketFactory to restrict host name resolution to that Network

bug: 13885501

Change-Id: Iab9a5a2e060fe261f4be9ba974c1a55fb6b9c98b
(cherry picked from commit 92064edf55ee11967d9cc7529125236ee8e469b2)
etwork.java
2d6f265d00db883616989788595ead4f3af902a0 20-May-2014 Paul Jensen <pauljensen@google.com> Implement bind-to-network functionality of android.net.Network.

This is implemented by calling through to netd_client.
Included are functions to bind-to-network-for-process strictly for DNS to
facilitate startUsingNetworkFeature() reimplementation.

bug: 13885501

Change-Id: Ib22c7d02ea81d251bdfeeb0f64a47ce32eefcb1b
(cherry picked from commit dbf76f898f1f57eb74722358087c926d2f529bda)
etwork.java
etworkUtils.java
38fe3984531b5a8ae5f41a5212f1b6a66adc61de 23-May-2014 Lorenzo Colitti <lorenzo@google.com> 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)
etworkAgent.java
afa05c0b43cbc065181d5c2d6ee368a08bb00c3b 22-May-2014 Robert Greenwalt <rgreenwalt@google.com> Move dis/enable of mobile data to Telephony

ConnectivityService doesn't do this anymore.

bug:15077247
Change-Id: I3208c91b2c0369b594987f39ca29da7478435513
(cherry picked from commit 53013c87496980b534e447e717a32698fbd4bca0)
onnectivityManager.java
ConnectivityManager.aidl
bd8a374016cd83c70fe2297770fbe13a5d460148 22-May-2014 Lorenzo Colitti <lorenzo@google.com> Fix Ethernet documentation.

1. Remove incorrect @return tag for void function.
2. Fix build breakage by removing the reference to
#ETHERNET_SERVICE, which is hidden.

Change-Id: Ia893464bafc8257e48e0bd710d27954b535fcece
(cherry picked from commit ff7e406df8a46256e47fff70abc9116ad3f94c23)
thernetManager.java
e2c7a764644424311930b6f7c3681d40b4f2417c 22-May-2014 Lorenzo Colitti <lorenzo@google.com> Merge "Add an EthernetManager."
f1cc12950c52ba7669fe1edfd8900aab1c40b78b 22-May-2014 Lorenzo Colitti <lorenzo@google.com> Merge "Delete the EthernetDataTracker."
4440705d57537f8a6a50f64a745fa3d867bf8cc9 22-May-2014 Lorenzo Colitti <lorenzo@google.com> Merge "Add an AIDL file for IpConfiguration."
4e5aa2cee69f6791f8001aeb1fc12389863fab8f 22-May-2014 Lorenzo Colitti <lorenzo@google.com> Add an EthernetManager.

The implementation will live in frameworks/opt/net/ethernet.

Bug: 7606609
Bug: 8687763
Bug: 14993642
Bug: 14981801
Change-Id: Ic771e268b0c78f0fc32f46af6fe0dd7c634a426e
thernetManager.java
EthernetManager.aidl
3c44c99af500601fbb8ba6b8f71e5d930ca5e269 22-May-2014 Lorenzo Colitti <lorenzo@google.com> Delete the EthernetDataTracker.

Code search says these are the only two files that use it. The
tracker will be resurrected in a slightly different form in
frameworks/opt/net/ethernet.

Bug: 14993642
Bug: 14981801
Change-Id: I2477668ca78dfe46661dda1d97c7f786fd7eba35
thernetDataTracker.java
94595fde94e97a5aec81a1779b7b7812e498360f 22-May-2014 Lorenzo Colitti <lorenzo@google.com> Add an AIDL file for IpConfiguration.

Change-Id: I7eb5568185b3facf00627f7d2385c42f247d0acd
pConfiguration.aidl
b01cb2c0c2eedf4ed6055eab15c7991c4321044f 21-May-2014 Jeff Sharkey <jsharkey@android.com> am fce708d2: am 9ef2117f: am bc06158a: Merge "Check for null in LocalSocketImpl.SocketInputStream.available()"

* commit 'fce708d285506f65eb51a3256b2a04111e4054cc':
Check for null in LocalSocketImpl.SocketInputStream.available()
fce708d285506f65eb51a3256b2a04111e4054cc 21-May-2014 Jeff Sharkey <jsharkey@android.com> am 9ef2117f: am bc06158a: Merge "Check for null in LocalSocketImpl.SocketInputStream.available()"

* commit '9ef2117f0e65db60cb3f9708174bcaca4db813b2':
Check for null in LocalSocketImpl.SocketInputStream.available()
9ef2117f0e65db60cb3f9708174bcaca4db813b2 21-May-2014 Jeff Sharkey <jsharkey@android.com> am bc06158a: Merge "Check for null in LocalSocketImpl.SocketInputStream.available()"

* commit 'bc06158a78297747605981702c8e41956ea1aa2d':
Check for null in LocalSocketImpl.SocketInputStream.available()
bc06158a78297747605981702c8e41956ea1aa2d 21-May-2014 Jeff Sharkey <jsharkey@android.com> Merge "Check for null in LocalSocketImpl.SocketInputStream.available()"
6346155c5a48495944041e65ec279c88b0fa1391 10-Mar-2014 Jaewan Kim <jaewan@google.com> 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
pConfiguration.java
a67be03f9e2734c0a6c03af20e17f963daaed257 17-May-2014 Robert Greenwalt <rgreenwalt@google.com> 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
onnectivityManager.java
ConnectivityManager.aidl
87be9ba1eaa396c95c5f335c8ba51123d304a7bb 20-May-2014 Jason Monk <jmonk@google.com> Merge "Fix reference to ProxyInfo extra"
d19c41c0bbd2de637eb6a52a49e0ebcd420cf2ba 19-May-2014 Robert Greenwalt <rgreenwalt@google.com> Add javadoc and unhide new API

Change-Id: I12e475bbf4000c7acec4ca27b1d3bf8f870cc2cf
onnectivityManager.java
etwork.java
etworkRequest.java
4f05d5529625fd2f0ad13ff9974c338d2f847934 19-May-2014 Robert Greenwalt <rgreenwalt@google.com> Add docs for Linkproperties and unhide it.

Preperation for ConnectivityManager API reveal.

Change-Id: Id2addf424213e796c6077def0b7f30cac9a0f75f
inkProperties.java
f16f5788fa2c3a42abd3cdfb0a6e0b4562c0feeb 19-May-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Apply Doc fixes to RouteInfo"
b26e44416ab9313504be82568ab92e5d89dd012d 19-May-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Add docs to Network"
34524f06fb77607884c69f891471725f4ac0889a 19-May-2014 Robert Greenwalt <rgreenwalt@google.com> 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
etworkRequest.java
85956263c1a7451df14720b0ae9430227f594856 19-May-2014 Robert Greenwalt <rgreenwalt@google.com> Add docs to Network

Still must be hidden until we unhide the new API in ConnectivityManager.

Change-Id: I4749e56777199093cdba9223eb3d721c3174047d
etwork.java
386aba8bd1c83bb8c088b8dd7b2024ba77c9c36c 19-May-2014 Robert Greenwalt <rgreenwalt@google.com> Apply Doc fixes to RouteInfo

Change-Id: Ib76df135d5514f7b8baafbbe91fa3d1cdd632f00
outeInfo.java
01d004ef427c89fd04ab8a6d99cfb7ed81c6c962 19-May-2014 Robert Greenwalt <rgreenwalt@google.com> Update the docs for NetworkCapabilities

Preparing for ConnectivityService API update

Change-Id: I397e375b9254d4271183cf34c4a689deea1e198e
etworkCapabilities.java
4095bd5a8811d4d8c2bb0efc28d9610629e27c89 18-May-2014 Robert Greenwalt <rgreenwalt@google.com> Update RouteInfo docs and make public.

Change-Id: I1a8fe04022ea8291076af166f09112d19114ee16
outeInfo.java
fd202e6f84ab0ee6a64aa81f94c3039eb10f8e17 18-May-2014 Robert Greenwalt <rgreenwalt@google.com> Update comments for LinkAddress

In preparation for CS api review.

Change-Id: Ib933e905846ebd039d96a523946dd8fdb10f3ff1
inkAddress.java
fcfef283d8707f8e695645fe10dba531b7673c14 16-May-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Clean up when we switch networks."
4064af844ca6e58dc2908525634c13c4be277eac 16-May-2014 Robert Greenwalt <rgreenwalt@google.com> Clean up when we switch networks.

Need to unhitch mNetworkForRequestId when a network is no longer
satisfying a request.

Change-Id: I3b3cde7dd92ec87a76ae7a0825ad22e892fa8fd5
etworkAgent.java
7dab61455c32c0a93711ae977d197202dacb6bb6 15-May-2014 Jason Monk <jmonk@google.com> Fix reference to ProxyInfo extra

Also remove unneeded null check.

Change-Id: Ic25d1087f93632a24755b284ede41d870492e25d
roxyInfo.java
b07d81ac5fe9b21f08f29fcc49d0392cd22277da 15-May-2014 Robert Greenwalt <rgreenwalt@google.com> Remove unneed clear in constructor.

Keeps all constructors on equal footing.

Change-Id: I316d2b058cc2230ff6aa25a6c8785b42b460438d
inkProperties.java
4696ee488b07785e723d13f78a2ea90b50669e02 14-May-2014 Sreeram Ramachandran <sreeram@google.com> Fix reboot loop due to NPE.

All that's old is new again: http://ag/63748.

Change-Id: I83df48447dbcb7f6edf02bd07abf721b009afa49
roxyInfo.java
7a91a7434af6542486466b88ad0bc8860fd1c594 14-May-2014 Robert Greenwalt <rgreenwalt@google.com> 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
onnectivityManager.java
8ac546eaa36e6f7c6a89bdbb38f3886bdf5b4fb7 14-May-2014 Robert Greenwalt <rgreenwalt@google.com> Fix Javadoc

It's Deprecated for an annotation, but deprecated for
a javadoc and case is important.

Fix build

Change-Id: I355dc1660196c09530b58386f401a85a74d16476
onnectivityManager.java
54b6fd0cbe48fc0980da0617352785c973c60c86 14-May-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Add networks and requests to CS.dump"
c9c90c771c9cd1381a49b714df9a2bc392959fcc 14-May-2014 Robert Greenwalt <rgreenwalt@google.com> Add networks and requests to CS.dump

Adds debugging.

Change-Id: I352dfe970c990fd210f3d1598519e321bbdd6ed5
(cherry picked from commit 9bdf6bd99db56c652ba9a62d91f258d11d19ca9f)
etworkCapabilities.java
etworkInfo.java
9258c64bef1a01fe89bc7c1fa402c44c0e6a1255 27-Mar-2014 Robert Greenwalt <rgreenwalt@google.com> Add Multinetwork API

Change-Id: I3a9cef0d416db96d05098dd989ee3fef3b1e9274
(cherry picked from commit cc5e6afa1ba0bef099bcb21a64a36bc2bf7951db)
onnectivityManager.java
ConnectivityManager.aidl
ca8f16ad14819ba17f5ff3d2e2bf6fbc9bbaa9f7 09-May-2014 Paul Jensen <pauljensen@google.com> Add NetworkMonitor.
At present the network evaluation / captive portal detection
is disabled pending addition of API to bind socket to network.

Change-Id: I5d1f5dc86d4dd9481d52dd45d6da0732054c8315
onnectivityServiceProtocol.java
992f25257938ecc0378514f21c6e6e6375272976 28-Apr-2014 Paul Jensen <pauljensen@google.com> Separate network and interface addition/removal netd APIs.
This should facilitate stacked interfaces (i.e. clatd).

Change-Id: Ib3e7a4d3847ef6ec4449451f6da42e75959baa4f
inkProperties.java
7b81602f3c18df8a4ca0342c514af8f7e394c0d7 19-Apr-2014 Robert Greenwalt <rgreenwalt@google.com> 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
onnectivityManager.java
onnectivityServiceProtocol.java
ConnectivityManager.aidl
etworkAgent.java
etworkRequest.java
2491c3a0e8d30c6f24c922760c3334ff0e609982 14-May-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Add Network-specific host name resolution API."
e049c23980409be6576da3d30538a6cdc43854dd 12-Apr-2014 Robert Greenwalt <rgreenwalt@google.com> Add NetworkFactory support.

This is a protocol allowing transports to dynamically register with CS for
Handler to Handler communications.

bug:13885501
Change-Id: Ic7275e3724a15efc7e5f80981560c4cb3106007b
onnectivityManager.java
onnectivityServiceProtocol.java
ConnectivityManager.aidl
3e32a4b667f54bb25157ad25d2a026057d642000 14-May-2014 Paul Jensen <pauljensen@google.com> Add Network-specific host name resolution API.

Change-Id: I932f73158a8f6e3ccc36c319d138180dff2aa070
etwork.java
b01c6855c08a25636806eff56c7acabfabed3f9f 13-May-2014 Jason Monk <jmonk@google.com> Merge "Switch PacUrl storage from String to Uri"
5152c0987db69dad24259a8316fb819755bfda77 13-May-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Add has* utility functions to NetworkCapabilities"
5c55e3335caf5200669e961aef557238282f59d7 08-May-2014 Robert Greenwalt <rgreenwalt@google.com> Add has* utility functions to NetworkCapabilities

Change-Id: Icf735b778a3956812be522db39c29cf54c757a25
etworkCapabilities.java
0b38f08ede62cbfead15639c29d7f3ef0265dc0e 21-Apr-2014 Lorenzo Colitti <lorenzo@google.com> 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
etworkCapabilities.java
3c0bf5e536ea6ee59385065d1d4830d3647cffaf 12-Apr-2014 Robert Greenwalt <rgreenwalt@google.com> Add NetworkRequest to the multinetwork API

bug:13885501
Change-Id: I7b9a01aadf26b6ff104d088b6e283c838ec4dfac
etworkRequest.aidl
etworkRequest.java
f9cb86aebe9647e0fe0137fc198ba16c017445c6 09-Apr-2014 Robert Greenwalt <rgreenwalt@google.com> Replace LinkCapabilities with NetworkCapabilities

Also remove unused LinkSocket and LinkSocketNotifier.
bug:13885501

Change-Id: Id426e31b201fa4f29109b5fea485d8efb34519d3
aseNetworkStateTracker.java
ummyDataStateTracker.java
thernetDataTracker.java
inkCapabilities.aidl
inkCapabilities.java
inkSocket.java
inkSocketNotifier.java
obileDataStateTracker.java
etworkState.java
etworkStateTracker.java
roxyDataTracker.java
83520b95124e0fcaaf3154a7a267f6be0205bc74 09-May-2014 Jason Monk <jmonk@google.com> 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
roxy.java
roxyInfo.java
1448f0540ba3898080aaf599dcebe51c4fd6287d 08-Apr-2014 Robert Greenwalt <rgreenwalt@google.com> Add NetworkCapabilities part of API.

Merging to master, adding @hide until we're ready to reveal the API change.

bug:13885501
Change-Id: Ib40e28092e092630bfec557bde77f58eec8ae1c8
etworkCapabilities.aidl
etworkCapabilities.java
9ba9c58e4a249456794fbfb9989f27bd846d067e 20-Mar-2014 Robert Greenwalt <rgreenwalt@google.com> First pass on multinetwork framework

Starting to switch netd to use NetId.
Adding the Network identifying class

bug:13550136
Change-Id: Ie0db4fb17c9300bfafb63329adfa02339911b33d
aseNetworkStateTracker.java
onnectivityManager.java
etwork.aidl
etwork.java
etworkStateTracker.java
5df281a570555ee132a12a4aac9aec96e8618270 09-May-2014 Jason Monk <jmonk@google.com> Fix badness from proxy refactoring.

When no PAC file getPacFileUrl() can return null now, which you
cannot call toString() on.

Change-Id: Ife00f641c2c17fbc1bde17017d9af59d23cb9182
roxy.java
fab01261366485924d7b969c86a498c0521c0d62 08-May-2014 Jason Monk <jmonk@google.com> Merge "Fix Docs breakage"
faf3fd59d5b36458cd2385639d79b0b25117c730 08-May-2014 Jason Monk <jmonk@google.com> Fix Docs breakage

Change-Id: Idaa57d16165203ad38143e493552ddf8a1ff56e5
onnectivityManager.java
9d75ccb6a1b3b300c33ce3ceab5eaece0ad55d42 07-May-2014 Jason Monk <jmonk@google.com> Merge "Make proxy API public"
207900c23b26d0df9ab28c709db4a1007d7d7904 25-Apr-2014 Jason Monk <jmonk@google.com> Make proxy API public

Also exposed proxy-related functions that were on the
ConnectivityManager.

Change-Id: I9fb5f1bcc257a6198679ea1d56e18da2ec5a3b33
onnectivityManager.java
ConnectivityManager.aidl
inkProperties.java
roxy.java
roxyInfo.aidl
roxyInfo.java
roxyProperties.aidl
roxyProperties.java
68ca14648c88d84080cafae02c9bc5cf3448096a 06-May-2014 Justin Koh <justinkoh@google.com> am ed23c5bc: Hide NsdServiceInfo additions for KKWT DO NOT MERGE

* commit 'ed23c5bc12b4110435b1e6f5fb9b82716109136e':
Hide NsdServiceInfo additions for KKWT DO NOT MERGE
ed23c5bc12b4110435b1e6f5fb9b82716109136e 06-May-2014 Justin Koh <justinkoh@google.com> Hide NsdServiceInfo additions for KKWT DO NOT MERGE

Hide NsdServiceInfo additions for KKWT.
Bug: 14116162

Change-Id: I98755a2524168be5e833a634192fd49ff3c32346
sd/NsdServiceInfo.java
4cd4110f20c2fcf8feaf04414e60b15f5801af4f 02-May-2014 Jeff Davidson <jpd@google.com> Merge "API for network cache subsystems."
99013a24a51260f8f276c58916728c241e3add63 01-May-2014 Jason Monk <jmonk@google.com> Merge "Remove unused AndroidProxySelectorRoutePlanner"
80d1f2890cf48ae95ad70f6003a7026945731225 01-May-2014 Jason Monk <jmonk@google.com> Remove unused AndroidProxySelectorRoutePlanner

Change-Id: Ib970e1d78c3f990fcf24b953f442dcaa94b68903
roxy.java
14f1ec05b2add5ee051c0d2e7c7c3b36a6e77b92 29-Apr-2014 Jeff Davidson <jpd@google.com> API for network cache subsystems.

A network subsystem (e.g. Wi-Fi) will be responsible for implementing
INetworkScoreCache. NetworkScoreService will load caches for each
configured network subsystem. When it receives a call to update
scores, it will separate the networks by type and call updateScores on
the appropriate INetworkScoreCache.

Each subsystem will also be responsible for requesting scores for new
networks by calling NetworkScoreManager#requestScores.

Bug: 14408144
Bug: 14137255
Change-Id: I76e5e5205bc359c39d6b9c1782126fb7f465cd96
NetworkScoreCache.aidl
NetworkScoreService.aidl
etworkScoreManager.java
ssiCurve.java
016db948961e9ec72395a27e3b311b445780d259 30-Apr-2014 Joe Onorato <joeo@google.com> Merge "Turn off this very verbose log."
8dc2e5a01a78b0143a068a9486454e05ea6b5ede 30-Apr-2014 Joe Onorato <joeo@google.com> Turn off this very verbose log.

adb shell dumpsys activity broadcasts

has the last 100 broadcasts, so it can be used for debugging
instead of spamming the main logs.

Change-Id: I19c3ac72eb783999e615261da7f00b527d2bc06f
obileDataStateTracker.java
293513a59d36cd96a3e474dde5981380d372d8c9 30-Apr-2014 Bill Yi <byi@google.com> Merge commit '0b62467b142b61ee1e449ba958ba37dfd961ef56' into HEAD
10596fbcce710a76ffc7e917400df13af5c2ebcb 28-Apr-2014 Elliott Hughes <enh@google.com> resolved conflicts for merge of 3ce4f3d0 to master

Change-Id: Id5c5997ad8f801b32e1dbd97413ea42e38c27210
3ce4f3d0af8b20f915631ab927aafa76a6105135 28-Apr-2014 Elliott Hughes <enh@google.com> am 685a0a72: am bbd87eb9: Merge "Track libcore.os\' move to android.system."

* commit '685a0a72d445515167a2071330679cdf9b53a62d':
Track libcore.os' move to android.system.
34385d352da19805ae948215e2edbeedd16b7941 28-Apr-2014 Elliott Hughes <enh@google.com> Track libcore.os' move to android.system.

(This is partial, but should cover everything in AOSP master except
for the zygote.)

Change-Id: I1042c99245765746a744c44e714095cb2c6cb75d
inkAddress.java
ocalSocketImpl.java
ee2a1219d3c59d88c83fca65289166fa9d7e53e9 17-Apr-2014 Jeff Davidson <jpd@google.com> API tweaks for network score settings.

Expose "isAppValidScorer" so Settings can call it.

Also rename ACTION_CHANGE_DEFAULT to ACTION_CHANGE_ACTIVE for
consistency with other naming.

Change-Id: I6c2d0099622958f06c2916ca76090e14d5273c86
etworkScoreManager.java
etworkScorerAppManager.java
846318a3250fa95f47a9decfbffb05a31dbd0006 04-Apr-2014 Jeff Sharkey <jsharkey@android.com> Allow prefix-based Uri permission grants.

Define new FLAG_GRANT_PREFIX_URI_PERMISSION which indicates that a
Uri permission grant should also apply to any other Uris that have
matching scheme, authority, and path segments. For example, a prefix
grant for /foo/ would allow /foo/bar/ but not /foo2/.

Allow persistable and prefix grants to be issued directly through
grantUriPermission(). Relaxing persistable is fine, since it still
requires the receiver to actively take the permission.

Since exact- and prefix-match grants for the same Uri can coexist,
we track them separately using a new UriGrant key. (Consider the
case where an app separately extends READ|PREFIX and WRITE for
the same Uri: we can't let that become READ|WRITE|PREFIX.)

Fix revoke to always take away persisted permissions. Move prefix
matching logic to Uri and add tests. Add new flags to "am" tool, and
various internal uses around Intent and Context. Switch some lagging
users to ArraySet.

Bug: 10607375
Change-Id: Ia8ce2b88421ff9f2fe5a979a27a026fc445d46f1
ri.java
6a4b220f1263d95fdefe6361c2bc87bbb04bbed0 17-Apr-2014 Jeff Davidson <jpd@google.com> Initial implementation of NetworkScoreManager's backing service.

This service will ultimately be responsible for propagating scores
down to lower-level network subsystems. For now, it just keeps scores
in memory and exposes these for debugging purposes via "adb shell
dumpsys network_score".

This change also adds provisioning of a default scorer. When
NetworkScoreService is first initialized, it checks to see if it has
ever set a default scorer; if not, it reads a package name from a
build config property and attempts to set it as the default.

Also add autogenerated equals/hashCode methods to all parcelables.

Bug: 14111427
Bug: 13786258
Change-Id: I02271171653d42e12acd240b73b9e23950744f6b
NetworkScoreService.aidl
etworkKey.java
etworkScoreManager.java
etworkScorerAppManager.java
etworkScorerApplication.java
ssiCurve.java
coredNetwork.java
ifiKey.java
dd6fd1e62b1792d1f96824b2fefb16d894b43197 15-Apr-2014 Jeff Davidson <jpd@google.com> Class for managing the active scorer application.

Allows listing all possible scorer apps, getting the active scorer
app, setting the active scorer app, and determining whether a given
UID is for the active scorer.

Note that setting a default scorer with a system image will be handled
separately - the plan here is to add a read-only build property
containing a package name to use as the scorer out of the box.
When NetworkScorerService is initialized, it will check a provisioning
bit; if that bit isn't set, it will set the current scorer to the
package specified in this build property (if any) and set the
provisioning bit to true.

Bug: 13769362
Change-Id: I18c0b2ba2aceccc88b70c3611a49149e0bf17ecf
etworkScorerApplication.java
b51e0a6c4b249e0d6f404fafef007645221be0d3 09-Apr-2014 Jeff Davidson <jpd@google.com> Stub APIs for network scoring.

NetworkScoreManager defines all interactions between the framework and
the scorer app. An ACTION_SCORE_NETWORKS broadcast is sent to the
default scorer with any unscored networks, which responds by calling
updateScores() with scores for those networks. An app may also check
whether they are currently the default scorer with
getDefaultScorerPackage() and request to become the default via the
ACTION_CHANGE_DEFAULT broadcast.

Bug: 13786258
Change-Id: Id3dc0f7c1109f0e3afd73356e2475b7f34167419
etworkScoreManager.java
dc960e21ef1005fab5ef145773ddd6f40c802217 08-Apr-2014 Jeff Davidson <jpd@google.com> Data structures for communication with network scorer apps.

NetworkKey represents the necessary information to identify a network
to be scored. ScoredNetwork contains the key to identify a network as
well as a score to be used when evaluating that network (as a curve
based on RSSI).

Bug: 13767776
Change-Id: I6bfebd105c9381e615513167b4332b767b43a23a
etworkKey.aidl
etworkKey.java
ssiCurve.java
coredNetwork.aidl
coredNetwork.java
ifiKey.java
111db01a2668b7a1ec256a4166c322db061d1ddd 15-Apr-2014 Christopher Lane <lanechr@google.com> resolved conflicts for merge of 381ac080 to master

Change-Id: I779c49c48980ba7737ee4e7b04a9e4c3e02fca21
381ac080547ef8294edd871c5bb0b29d15f7158b 14-Apr-2014 Christopher Lane <lanechr@google.com> am 62538940: Merge "Add support for custom TXT records in NSD" into klp-modular-dev

* commit '62538940de1755c71c56b0e5d81e12397e5de58a':
Add support for custom TXT records in NSD
b72d8b4091ab31948c91b0382a9b46afdc7ef7da 18-Mar-2014 Christopher Lane <lanechr@google.com> Add support for custom TXT records in NSD

Change-Id: I8e6dc9852ad4d273c71ad6a63a7fbd28a206806d
sd/NsdServiceInfo.java
54d50089ee526110e42e0f8399660a012d9c6c1b 12-Apr-2014 Ian McKellar <ianloic@google.com> Check for null in LocalSocketImpl.SocketInputStream.available()

Calling available() on a local socket after close() will cause a native
crash. Other methods that pass LocalSocketImpl.fd to native code copy
the fd and check for null.

Change-Id: I2d0b573f34ae47a23009760bbb1c02933ab0a20e
ocalSocketImpl.java
baa00cc350572c34718d770a31ebe2f76ffc9607 07-Apr-2014 Jaewan Kim <jaewan@google.com> Merge "Revert "Refactor IpConfiguration from WifiConfiguration""
678979748585c5903125a404e448ad6c111dedad 07-Apr-2014 Jaewan Kim <jaewan@google.com> Revert "Refactor IpConfiguration from WifiConfiguration"

This reverts commit 1284767ceb1affa6d5af77fd26ccf7322df48a6d.

Change-Id: Ibccea84e5dc44c1b8954779660e0721b27f762d4
pConfigStore.java
pConfiguration.java
e277433ed718be7651ab893f85d87f1ab4da896c 07-Apr-2014 Jaewan Kim <jaewan@google.com> Revert "Hide IpConfiguration"

This reverts commit d07372e2e96ed6d2012db8518e05018c9710cafb.

Change-Id: I5728114dbd9ef37509e8ab3c942648ec92ef0c1a
pConfiguration.java
d07372e2e96ed6d2012db8518e05018c9710cafb 07-Apr-2014 Jaewan Kim <jaewan@google.com> Hide IpConfiguration

Bug: 7606609, Bug: 8687763
Change-Id: I2970bf79ef14cb993878c1dc10c7022a716f46c5
pConfiguration.java
ce245e1c6546ef05a8645d2d54bfa3e2e4178046 07-Apr-2014 Jaewan Kim <jaewan@google.com> Merge "Refactor IpConfiguration from WifiConfiguration"
1284767ceb1affa6d5af77fd26ccf7322df48a6d 10-Mar-2014 Jaewan Kim <jaewan@google.com> Refactor IpConfiguration from WifiConfiguration

Bug: 7606609, Bug: 8687763
Change-Id: I736eb3c73a8ffc8f137a04a5ea66ee564dc2b530
pConfigStore.java
pConfiguration.java
db89fe2a2b7932f013f7a2dd136324c3daeee253 02-Apr-2014 Dave Platt <dplatt@google.com> Merge "Document and enforce "one request per Listener" rule"
e7369bd4dfa4fb3fdced5b52160a5d0209132292 28-Mar-2014 Dave Platt <dplatt@google.com> Document and enforce "one request per Listener" rule

The API and implementation of NsdManager imply that a separate
Listener is to be used for each active registration or discovery
request. This isn't formally documented or properly enforced, and
weird and unpredictable things happen if an application uses a
Listener for more than one request at a time.

Update documentation to make this an explicit requirement.

Enforce the restriction when a new request is submitted for
processing; if the Listener is already being used to track an active
request, throw an exception.

Document the fact that apps should unregister services and cancel
service discoveries when the app is stopped (in KitKat and prior
releases, they'll leak if this isn't done.)

Re-order "release the Listener" operation to occur before the Listener
callback, so that the Listener can be reused by the application once
the callback has been entered - this eliminates a race condition.
Document this.

Pass 2: typos, added documentation about API level, changed to using
an explicitly defined return value for "busy listener".

Bug: 13512512
Change-Id: Ic164110759204b27d8a14376777b593ebe1865fa
sd/NsdManager.java
ed99dc89c32830cffe7a3912b2026942910c4c8f 31-Mar-2014 Brian Carlstrom <bdc@google.com> am 7156b7c6: am b11952d6: am e3434fc4: Merge "Improve detail message for X509TrustManagerExtensions argument validation"

* commit '7156b7c65d6f158c4898a93f8e2cea0bf94791d1':
Improve detail message for X509TrustManagerExtensions argument validation
7156b7c65d6f158c4898a93f8e2cea0bf94791d1 31-Mar-2014 Brian Carlstrom <bdc@google.com> am b11952d6: am e3434fc4: Merge "Improve detail message for X509TrustManagerExtensions argument validation"

* commit 'b11952d6f6851dbd1da447da967f6e07984942fe':
Improve detail message for X509TrustManagerExtensions argument validation
ff9ca781d0db5f81c3e703641fc7b9a34936a328 31-Mar-2014 Brian Carlstrom <bdc@google.com> Improve detail message for X509TrustManagerExtensions argument validation

Bug: 13728564
Change-Id: I03d08babcdc0d11baff5e76a339b4285e92edee8
ttp/X509TrustManagerExtensions.java
0072a417f1672098f3abb6a4b7203463ccea4dd3 27-Mar-2014 Kenny Root <kroot@google.com> am 1dc1d6b2: am 5b93685a: am 57f2764b: Merge "CertificateChainValidator: initialize TrustManagerFactory"

* commit '1dc1d6b22deb38d78960f3ce89f94e536610492e':
CertificateChainValidator: initialize TrustManagerFactory
1dc1d6b22deb38d78960f3ce89f94e536610492e 27-Mar-2014 Kenny Root <kroot@google.com> am 5b93685a: am 57f2764b: Merge "CertificateChainValidator: initialize TrustManagerFactory"

* commit '5b93685af37d840e7ef6d415bcfe8a8a4c004032':
CertificateChainValidator: initialize TrustManagerFactory
587a9455ded22165127e1a91cba5057f7c59a6fc 26-Mar-2014 Kenny Root <kroot@google.com> CertificateChainValidator: initialize TrustManagerFactory

Need to call TrustManagerFactory#init before use. I suspect this class
isn't used anywhere since this hasn't caused a problem yet.

Change-Id: I17425d0bba4795d71960062361a755830abba7de
ttp/CertificateChainValidator.java
6ab41d71eb9acbe07257c6cf208d662de82cc22e 25-Mar-2014 Kenny Root <kroot@google.com> am 266de3ef: am dd3e6399: am c1d863e7: am 77ceb5e8: Merge "Use X509ExtendedTrustManager and not Conscrypt"

* commit '266de3efcd4b57ba3b301d87ff0fb692090d9a95':
Use X509ExtendedTrustManager and not Conscrypt
dd3e6399098c46e0d38c810213fd956bed305c62 25-Mar-2014 Kenny Root <kroot@google.com> am c1d863e7: am 77ceb5e8: Merge "Use X509ExtendedTrustManager and not Conscrypt"

* commit 'c1d863e7a4b55f8e583067eebaffc6686723d7ab':
Use X509ExtendedTrustManager and not Conscrypt
11b29e4e1b4913fb719e4fb090315d7b5499302b 25-Mar-2014 Kenny Root <kroot@google.com> am c1d863e7: am 77ceb5e8: Merge "Use X509ExtendedTrustManager and not Conscrypt"

* commit 'c1d863e7a4b55f8e583067eebaffc6686723d7ab':
Use X509ExtendedTrustManager and not Conscrypt
da776c872e8880b48dfac4a9e9a2d90e398e4608 24-Mar-2014 Kenny Root <kroot@google.com> Use X509ExtendedTrustManager and not Conscrypt

This allows the new X509ExtendedTrustManager to be used instead of
Conscrypt directly.

Bug: 13103812
Change-Id: I736f475342395f26657f2371828a6d3a0065a50a
ttp/CertificateChainValidator.java
ttp/DelegatingSSLSession.java
ttp/DelegatingSocketWrapper.java
ttp/X509TrustManagerExtensions.java
f96bfe86a68bfd0491a76cf6dfa515dc58f027bb 24-Mar-2014 Alex Klyubin <klyubin@google.com> am 7ae93b1d: am 92ec0a0c: am d8c32164: am 88517170: Merge "Adjust to the change in the private SSLParameterImpl API."

* commit '7ae93b1d0cd1eb43b5fc8248dfc2703608a461f3':
Adjust to the change in the private SSLParameterImpl API.
92ec0a0c7a568a77696964c16f4e44292c633ef1 21-Mar-2014 Alex Klyubin <klyubin@google.com> am d8c32164: am 88517170: Merge "Adjust to the change in the private SSLParameterImpl API."

* commit 'd8c32164e19d16cf7d66b9aee368369ae16a4f0d':
Adjust to the change in the private SSLParameterImpl API.
8e0787f3082f1b66e17c035e876683e42eaee896 21-Mar-2014 Alex Klyubin <klyubin@google.com> am d8c32164: am 88517170: Merge "Adjust to the change in the private SSLParameterImpl API."

* commit 'd8c32164e19d16cf7d66b9aee368369ae16a4f0d':
Adjust to the change in the private SSLParameterImpl API.
a2507e876421ce5276c63a7437a2a668da124563 21-Mar-2014 Alex Klyubin <klyubin@google.com> Adjust to the change in the private SSLParameterImpl API.

Conscrypt's SSLParameterImpl getDefaultTrustManager was renamed to
getDefaultX509TrustManager.

Bug: 13563574
Change-Id: I601c651d631f5a2e4a04d21941186553988e5286
ttp/CertificateChainValidator.java
34e2799c612c348c5f728e5ae3deae7bbbfa8c60 20-Mar-2014 Jaewan Kim <jaewan@google.com> Merge "EthernetDataTracker: Set more detailed status"
1b98e90db063da97c6bb9d47aa9798c8c32a58b5 19-Mar-2014 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of 0bff77d6 to master

Change-Id: Ia4c86126079740978658a05579b56d59d41a7b01
42b746e4d8baa6141598ddaae7148baea2ddf366 19-Mar-2014 Robert Greenwalt <rgreenwalt@google.com> am bd84f01c: am 5d3d4ee3: Merge "Handle provisioning APN by turning off/on data." into klp-dev

* commit 'bd84f01c6ce122ab58fc7c5b687dc8bfb0fb03e6':
Handle provisioning APN by turning off/on data.
2ba56b4f026cb57ecc184359df7573e0ff285f6b 19-Mar-2014 Robert Greenwalt <rgreenwalt@google.com> am bd84f01c: am 5d3d4ee3: Merge "Handle provisioning APN by turning off/on data." into klp-dev

* commit 'bd84f01c6ce122ab58fc7c5b687dc8bfb0fb03e6':
Handle provisioning APN by turning off/on data.
5d3d4ee3005e910dce780074d3f68d594aa12070 19-Mar-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Handle provisioning APN by turning off/on data." into klp-dev
c76bccd6ea993eb6e71baff9f5ed2f9fe67af947 19-Mar-2014 Dave Platt <dplatt@google.com> am 17e7c407: am 98a027a5: Merge "Harden NsdManager against null-dereference crashes" into klp-dev

* commit '17e7c4076b8f1617ed397dae570e9d5240cd9c1b':
Harden NsdManager against null-dereference crashes
0535a9f7aa5d0f875b06845e9af5f6dbfc5c8a19 13-Mar-2014 Ashish Sharma <ashishsharma@google.com> Include elapsed realtime (nanos) of the event in the radio state change notifications.

Bug: 13247811
Change-Id: I3454aa159a68b9087b4762df947b41965b5a3941
onnectivityManager.java
NetworkManagementEventObserver.aidl
c8e8e3eba631ab2528fc91ef66f150b7eebddeae 13-Mar-2014 Wink Saville <wink@google.com> Handle provisioning APN by turning off/on data.

This is a start and two tests succeed:

Tested expired AT&T SIM and waiting 15min for alarm to fire.
Tested a provisioned Verizon SIM and works normally.

I've NOT tested AT&T where I've properly completed the provisioning.
I've NOT tested T-Mobile SIM either provisioned or not-provisioned.
I've NOT tested provisioning over WiFi.
I've NOT tested that WiFi <-> Mobile works
I've NOT tested voice calls, SMS, MMS
...

The current bug is below, but it is poorly named either it should be
renamed or a new bug created.

Bug: 13190133
Change-Id: I0a09f642614cd27a8655e9dae764b8999ce485b8
obileDataStateTracker.java
3f4733b77b12bc17fecb8183145c225684d03772 25-Jul-2013 Jaewan Kim <jaewan@google.com> EthernetDataTracker: Set more detailed status

Change-Id: If2a5c8bda2cb24c044903df64705bf7b3587fee1
thernetDataTracker.java
7c2b1625d66d3c80c313160f78c8bccd9499539e 14-Mar-2014 Chad Brubaker <cbrubaker@google.com> am 78f204ae: am 8e240af5: Merge "Remove SO_BINDTODEVICE from VPN protect" into klp-dev

* commit '78f204aed8c0f3c8174616801d66f96a9a00a5fd':
Remove SO_BINDTODEVICE from VPN protect
e0627cf869a4f137b1181572605fcc372be6c7f9 14-Mar-2014 Chad Brubaker <cbrubaker@google.com> am 78f204ae: am 8e240af5: Merge "Remove SO_BINDTODEVICE from VPN protect" into klp-dev

* commit '78f204aed8c0f3c8174616801d66f96a9a00a5fd':
Remove SO_BINDTODEVICE from VPN protect
97121c923c5b093925a507cac159309d89a1a0c8 14-Mar-2014 Dave Platt <dplatt@google.com> Harden NsdManager against null-dereference crashes

Due to race conditions or programming errors, the NsdManager
can attempt to process an asynchronous status message (and issue
a callback to the listener) after the listener has already been
removed from the NsdManager state. This causes dereferencing of
null objects, and a crash.

Split out the three async-queue message cases: these are ones
in which message.arg2 does not hold an NsdManager array index
and the code should not interpret this field as if it were.

Add an explicit check for "null listener" (the array index in the
message has already been released), log a warning, and exit early.

Safeguard accesses to the "NSD service type" string from a possibly
null) NsdServiceInfo object... return a constant "?" string rather
than crashing.

Bug: 9016259

Manual cherrypick of commit b1fbb14122a99c62363a949dd634294f5e887ef,
change-ID I7a6ff6842cf035cefbafe2a023ae1fd43734081e in master.

Change-Id: I8d9b7a1763d47d061a0f46b3cb453de4bdb8c2ed
sd/NsdManager.java
f5729a6a1573ba27f69a5c5dc144be3f8f60b026 13-Mar-2014 Chad Brubaker <cbrubaker@google.com> am 1011960c: am decfd707: Merge "Add the calling package name to requestRouteToHost" into klp-dev

* commit '1011960c44a4f84d53d05199fe1ca09be9473822':
Add the calling package name to requestRouteToHost
6a5becac37aa78c775fd52b2a1b7da4d88451b55 10-Mar-2014 Jaewan Kim <jaewan@google.com> EthernetDataTracker: Update hardware address when interface is changed

Change-Id: I154f151ca676e1e4137eb8210fd377659cfc7867
thernetDataTracker.java
68c9d2592cf492a37194522aa21ae01d6d7e1f4b 13-Mar-2014 Jaewan Kim <jaewan@google.com> Merge "EthernetDataTracker: Return proper interface name"
95441201338285b666da4bae206b48c1ba20ed56 13-Mar-2014 Chad Brubaker <cbrubaker@google.com> am 1011960c: am decfd707: Merge "Add the calling package name to requestRouteToHost" into klp-dev

* commit '1011960c44a4f84d53d05199fe1ca09be9473822':
Add the calling package name to requestRouteToHost
a1d7c7444990f4eabf712db8cceb6d3ab1508dde 11-Feb-2014 Chad Brubaker <cbrubaker@google.com> Remove SO_BINDTODEVICE from VPN protect

SO_BINDTODEVICE is not needed with policy routing.
SO_BINDTODEVICE was also used on the default iface which causes problems
when the default iface is IPv6 only and the socket tries to connect to a
IPv4 address.

Bug: 12940882
Change-Id: I5b2bde0ac5459433fc5749f509072a548532f730
pnService.java
5df87942b91916b965981521811230c276184aa0 10-Mar-2014 Jaewan Kim <jaewan@google.com> EthernetDataTracker: Return proper interface name

Change-Id: Ib01333894cc4dfbe223ef26e6eb815812d32092d
thernetDataTracker.java
16340670aff0ec980fff4354d785a38b11c33d3b 06-Mar-2014 Jeff Davidson <jpd@google.com> Merge "Add a warning about the SSID format in CaptivePortalTracker."
18dd015e6edfb5f46e364f89f84e43d356d58c4a 14-Feb-2014 Chad Brubaker <cbrubaker@google.com> 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
onnectivityManager.java
ConnectivityManager.aidl
63761a2d79d1ba751bf35a0a78d68337a64cac9c 05-Mar-2014 Dave Platt <dplatt@google.com> am bf588bda: am f08cd8c6: am 7d8262cb: am 22f66b76: Merge "Harden NsdManager against null-dereference crashes"

* commit 'bf588bda2c4dc98919439946e905e98ad4d352dd':
Harden NsdManager against null-dereference crashes
f08cd8c656c4ea6a8c7bf8bafa3f8de72578ebca 04-Mar-2014 Dave Platt <dplatt@google.com> am 7d8262cb: am 22f66b76: Merge "Harden NsdManager against null-dereference crashes"

* commit '7d8262cb554c41892794f23b92e01b52458288bb':
Harden NsdManager against null-dereference crashes
3fc376b7336cfbddbb10ce3f93a853a927f6513a 28-Feb-2014 Dave Platt <dplatt@google.com> Harden NsdManager against null-dereference crashes

Due to race conditions or programming errors, the NsdManager
can attempt to process an asynchronous status message (and issue
a callback to the listener) after the listener has already been
removed from the NsdManager state. This causes dereferencing of
null objects, and a crash.

Split out the three async-queue message cases: these are ones
in which message.arg2 does not hold an NsdManager array index
and the code should not interpret this field as if it were.

Add an explicit check for "null listener" (the array index in the
message has already been released), log a warning, and exit early.

Safeguard accesses to the "NSD service type" string from a (possibly
null) NsdServiceInfo object... return a constant "?" string rather
than crashing.

Bug: 9016259

Change-Id: I40aabdfc65d86fdd0eaac7a1e7e56e6ff69796cf
sd/NsdManager.java
d5273da95b333b018c0d13bd6917a1e8a769f064 04-Mar-2014 Yuhao Zheng <yuhaozheng@google.com> Merge "Allow more proxy bypass patterns"
5c43d4e451a1480d82014a1e1c403a5c764e758c 04-Mar-2014 Yuhao Zheng <yuhaozheng@google.com> Merge "Return detailed reason of invalid proxy settings"
3dce5af6abc9c8d41d24d9499410b33ec76b1f08 04-Mar-2014 Yuhao Zheng <yuhaozheng@google.com> Allow more proxy bypass patterns

The current restriction on proxy bypass pattern is harsh. For instance,
"*google.com" is allowed, but "*.google.com" is not. We loosen the validity
check to allow patterns like "*.cnn.com", "*.google*.com", "10.20.*.*".

bug: 13287210
Change-Id: I7551150f785cd087c963f3a8f4c9d05f0002ff04
roxy.java
9070484e179b2215ea595c8f3f1f69dbc0dc149d 01-Mar-2014 Yuhao Zheng <yuhaozheng@google.com> Return detailed reason of invalid proxy settings

Make Proxy.validate() return valid/invalid int code, instead of throwing
exceptions. If invalid, detailed reason code is returned (currently for
Settings UI use).

bug: 13248097
Change-Id: Ic68d03f666f1cd63667afc311de7dc370d233901
roxy.java
roxyProperties.java
77b987f1a1bb6028a871de01065b94c4cfff0b5c 27-Feb-2014 Dianne Hackborn <hackbod@google.com> Hold a wake lock while dispatching network activity events.

Also add new API for determining whether the current data network
is active, and thus better scheduling network operations. This
API is designed to not be tied to a mobile network -- regardless
of the network, apps can use it to determine whether they should
initiate activity or wait. On non-mobile networks, it simply always
reports as the network being active.

This changed involved reworking how the idle timers are done so
that we only register an idle timer with the current default
network. This way, we can know whether we currently expect to
get callbacks about the network being active, or should just always
report that it is active. (Ultimately we need to be getting this
radio active data from the radio itself.)

Change-Id: Iaf6cc91a960d7542a70b72f87a7db26d12c4ea8e
onnectivityManager.java
d75932b521bc23fee304c3bf9e023762cf3fbb82 06-Dec-2013 Dave Platt <dplatt@google.com> Fix descriptor leak after accepting connections

After accepting a connection on a listening socket and
storing the resulting FileDescriptor into a newly created
LocalSocketImpl, the new impl's "descriptor was created
locally and should be closed normally" flag should be set.

(cherrypicked from 3e7305c6bf6062b5cb1e2ddcec6c6d30b4a8bc0d)

Bug: 11805817
Change-Id: I0a1a7c62ec3fbcf647a44a22110ddc778d14e5f4
ocalSocketImpl.java
f87b2248497223a18ee0e5403967a5de55d8cbb5 28-Feb-2014 Chad Brubaker <cbrubaker@google.com> Merge "Remove SO_BINDTODEVICE from VPN protect"
d45665bf0b26fddf5716a0fd43036848d9301960 26-Feb-2014 Dianne Hackborn <hackbod@google.com> Collect per-uid mobile radio usage.

We now compute radio active time per application, by distributing
the active time across all applications each time the radio goes
down, weighting it by the number of packets transferred.

Per-app radio power use is now computed using this radio active
time.

This also gives us a new metric "ms per packet", which give an
idea of how effectively an application is using the radio. This
is collected and reported as a new set of stats in the human-
readable checkin. (It can be computed from the raw checkin data).

Also improve sync reporting to include the sync source as used
in wake locks, not just the component name.

Change-Id: I0b0185fadd1e47ae749090ed36728ab78ac24c5e
etworkStats.java
d22f23b2d6edec664263fa7f99101cfde555ff61 25-Feb-2014 Hui Lu <huilu@google.com> am fcf7d3a6: am eeb291b7: am 95e3cba1: Merge "Reconnect/teardown proxy network connectivity." into klp-modular-dev

* commit 'fcf7d3a64947a8a0f05ee9e0669abe4a0727f926':
Reconnect/teardown proxy network connectivity.
d0c5b9abed60b7bc056d026bf0f2b2235410fb70 22-Feb-2014 Dianne Hackborn <hackbod@google.com> Improve how battery stats collects network stats.

This optimizes the path for battery stats to collect
per-uid network usage. It now collects wifi and mobile
usage separately, with a path that allows it to recycle
all data structures and filter out stats it isn't
interested in before they come back to java.

This is setting us up for the actual goal, to collect
mobile stats independently each time the mobile radio
goes down, allowing us to distribute mobile radio usage
across uids based on the number of packets they transferred
during a session.

Change-Id: I21a0f517cf087ea5aa8b8dd535e20b46e361a52b
etworkStats.java
f81daa986e3a2d75c6f2398a59b965790484e0a2 14-Feb-2014 Chad Brubaker <cbrubaker@google.com> 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
onnectivityManager.java
ConnectivityManager.aidl
a24bec32bdce3d8de6f722c91ba2a75628f5ba8c 06-Feb-2014 Hui Lu <huilu@google.com> Reconnect/teardown proxy network connectivity.

Change-Id: I9bf6f96883a2151fceef788e65d9a767d0f52c69
roxyDataTracker.java
bcf12b302cd2715de54493808b2503de05c53757 11-Feb-2014 Chad Brubaker <cbrubaker@google.com> Remove SO_BINDTODEVICE from VPN protect

SO_BINDTODEVICE is not needed with policy routing.
SO_BINDTODEVICE was also used on the default iface which causes problems
when the default iface is IPv6 only and the socket tries to connect to a
IPv4 address.

Bug: 12940882
Change-Id: I5b2bde0ac5459433fc5749f509072a548532f730
pnService.java
efec33e710a9e320e3cd5f6b9b3176586e8680b7 08-Feb-2014 Jeff Davidson <jpd@google.com> Add a warning about the SSID format in CaptivePortalTracker.

WifiInfo#getSSID()'s behavior around surrounding the SSID with double
quotes changed in API 17. Since clients of CaptivePortalTracker may
have already taken this into account, we should make sure not to add
logic which changes the format of the SSID included in latency
broadcasts, soas not to break such logic.

Bug: 12934066
Change-Id: I8800da42c09f429c90409083af1b31c9f720d7d4
aptivePortalTracker.java
8f9b33e77686de8e917ba61c5e2f2e31a1e0e49b 15-Jan-2014 Jake Hamby <jhamby@google.com> Add new RIL commands to read/write NV items and reset NV config.

Add new RIL commands and generic code cleanups.

The only changes required for OMA DM support are the
addition of five new methods in ITelephony.aidl for
reading/writing NV items and performing NV config and
radio resets (requires MODIFY_PHONE_STATE), along with
the new RIL request IDs in RILConstants.java.

Bug: 12864208
Change-Id: I958d2571580d98a49936ef2e6822e5ac086acbe2
onnectivityManager.java
obileDataStateTracker.java
945d69d7b843ed319ec98986b033ea7b86383e69 31-Jan-2014 Hui Lu <huilu@google.com> am 3cab7fc1: Merge "Add proxy as another network." into klp-modular-dev

* commit '3cab7fc1b8f06166df3a58cf10d4a0db36bde788':
Add proxy as another network.
1c5624a0128397fa6fd6484e6a473bad10547a34 15-Jan-2014 Hui Lu <huilu@google.com> Add proxy as another network.

Change-Id: I70cb6ac5604c4f0d6a752a291c40de2445ae98bb
onnectivityManager.java
roxyDataTracker.java
3bbf7e6aa5a9eda1cc4b1c57da832ebee3bb5dd8 07-Jan-2014 Dave Platt <dplatt@google.com> am 62bac75d: am 76e5ca81: Fix descriptor leak after accepting connections

* commit '62bac75d677de5398b48487e758dcbdf7bc9d834':
Fix descriptor leak after accepting connections
76e5ca81b3ba5a4f52126f2ec8907679b4356292 06-Dec-2013 Dave Platt <dplatt@google.com> Fix descriptor leak after accepting connections

After accepting a connection on a listening socket and
storing the resulting FileDescriptor into a newly created
LocalSocketImpl, the new impl's "descriptor was created
locally and should be closed normally" flag should be set.

Bug: 11805817

(cherry picked from commit 3e7305c6bf6062b5cb1e2ddcec6c6d30b4a8bc0d)

Change-Id: I723d7c5544ee4b6858894c215716cbc32a958df1
ocalSocketImpl.java
6a0db5990187a71427029fb0fd64394e849aa057 14-Dec-2013 Kenny Root <kroot@google.com> resolved conflicts for merge of e0b14ea7 to master

Change-Id: Ie018d3e2eba1eb2d655c153880e1951b68c2bd51
e6585b32ea586743258a5457e2184ffc087f2d2f 13-Dec-2013 Kenny Root <kroot@google.com> Use java.util.Objects instead on internal API

Not needed since java.util.Objects implements all the needed
functionality.

Change-Id: Icd31d49a9801d1705427f028e9ac927d58e7d34c
etworkIdentity.java
etworkPolicy.java
etworkStats.java
etworkTemplate.java
3554740951b91b1487e72c2d2208302c29d43613 11-Dec-2013 William Luh <williamluh@google.com> Merge "Expose new API for querying whether a certificate was user added."
4598ea4e5e6b2accce5165a76f5e2d04ce46c74c 09-Dec-2013 Lorenzo Colitti <lorenzo@google.com> am 263c4788: am 30253d7a: am 2daa0c93: Merge "Add address flags and scope to LinkAddress."

* commit '263c4788dcf45f104f8668fd6621d1a7c39689b9':
Add address flags and scope to LinkAddress.
2daa0c93c4a0a9d18f4ef4486369fb8c90cd1ea2 07-Dec-2013 Lorenzo Colitti <lorenzo@google.com> Merge "Add address flags and scope to LinkAddress."
3e7305c6bf6062b5cb1e2ddcec6c6d30b4a8bc0d 06-Dec-2013 Dave Platt <dplatt@google.com> Fix descriptor leak after accepting connections

After accepting a connection on a listening socket and
storing the resulting FileDescriptor into a newly created
LocalSocketImpl, the new impl's "descriptor was created
locally and should be closed normally" flag should be set.

Bug: 11805817
Change-Id: I0a1a7c62ec3fbcf647a44a22110ddc778d14e5f4
ocalSocketImpl.java
64483947fdb03bf838e317ac0a4af5e0f53a5bbf 15-Nov-2013 Lorenzo Colitti <lorenzo@google.com> Add address flags and scope to LinkAddress.

This is necessary so that the framework can know whether an IPv6
address is likely to be usable (i.e., if it's global scope and
preferred). Also, it will simplify the address notification
methods in INetworkManagementEventObserver, which currently take
the address, the flags, and the scope as separate arguments.

1. Add flags and scope to the class and update the unit test.
Use the IFA_F_* and RT_SCOPE_* constants defined by libcore.
Since most callers don't know about flags and scope, provide
constructors that default the flags to zero and determine the
scope from the address. Addresses notified by the kernel will
have these properly set. Make multicast addresses invalid.
Update the class documentation.
2. Provide an isSameAddressAs() method that compares only the
address and prefix information between two LinkAddress
objects. This is necessary because an interface can't have
two addresses with the same address/prefix but different
flags.
3. Update LinkProperties's addLinkAddress and removeLinkAddress
to identify existing addresses to add/remove using
isSameAddressAs instead of implicit equals(). Specifically:
- If addLinkAddress is called with an address that is already
present, the existing address's flags and scope are updated.
This allows, for example, an address on an interface to go
from preferred to deprecated when it expires, without it
having to be removed and re-added.
- If removeLinkAddress is called with an address that is
present but with different flags, it deletes that address
instead of failing to find a match.
4. Update the INetworkManagementEventObserver address
notification methods to take just a LinkAddress instead of
LinkAddress, flags, and scope. While I'm at it, change the
order of the arguments for consistency with the other
functions in the interface.

Change-Id: Id8fe0f09a7e8f6bee1ea3b52102178b689a9336e
NetworkManagementEventObserver.aidl
inkAddress.java
inkProperties.java
ebcb32f58a6220802ca129ea33f47b4b69931a10 05-Dec-2013 The Android Open Source Project <initial-contribution@android.com> Merge commit 'bac61807d3bcfff957b358cb9ad77850bd373689' into HEAD

Change-Id: I29374270c8e0c2f2859efaf1d55af9f73da0f8d7
66c621496fb2b4381e7dcf33ee3272ca3eed8da7 04-Dec-2013 Lorenzo Colitti <lorenzo@google.com> am 13d9dfb4: am 86570409: am 453a5233: Merge "Minor changes to LinkAddress."

* commit '13d9dfb495db1431623c712b36cac1fe2f3c2fc0':
Minor changes to LinkAddress.
86570409a28ff359acbf56cc11bc1ad4d5f57630 04-Dec-2013 Lorenzo Colitti <lorenzo@google.com> am 453a5233: Merge "Minor changes to LinkAddress."

* commit '453a5233086b216f2a95d0879954a2af39279095':
Minor changes to LinkAddress.
e1ad1849f3a65c1ff06919351ef1d73e9bc8854e 27-Nov-2013 Lorenzo Colitti <lorenzo@google.com> Minor changes to LinkAddress.

1. Simplify the parceling code. Since the InetAddress inside a
LinkAddress can never be null, we don't need to special-case
the case where it is.
2. Add / update method documentation.
3. Write a unit test.

Change-Id: Iba0a8cecc683d55d736419965e72ee33dd66dc22
inkAddress.java
317d15c15531b353aa3e8cb1a3ba03d98b71efb6 02-Dec-2013 Lorenzo Colitti <lorenzo@google.com> am 4806fdfb: am f226bc60: Merge "Use LinkAddress in address notifications."

* commit '4806fdfbd0fecf91584396fc0f620c97a05ab837':
Use LinkAddress in address notifications.
4806fdfbd0fecf91584396fc0f620c97a05ab837 27-Nov-2013 Lorenzo Colitti <lorenzo@google.com> am f226bc60: Merge "Use LinkAddress in address notifications."

* commit 'f226bc606af9ce5aceff6b05fc4b0200c94cb248':
Use LinkAddress in address notifications.
c1c23780339c35ab2d88c905d91e290050b35435 26-Nov-2013 Lorenzo Colitti <lorenzo@google.com> am 9d4ac970: Merge "Pass DNS server info notifications to observers."

* commit '9d4ac9703657142b190d3c256de7c3329e5a4b29':
Pass DNS server info notifications to observers.
5ad421a3d00c92c155d57af9d1a05d81cc2fa88f 17-Nov-2013 Lorenzo Colitti <lorenzo@google.com> Use LinkAddress in address notifications.

Currently address{Updated,Removed} pass in the address as a
string such as "fe80::1/64". Use LinkAddresses instead, since
that's what it is.

This makes the code more robust in the unlikely case that netd
passes in an invalid string. In the future we can move flags and
scope into the LinkAddress itself and simplify the code further.

Bug: 9180552
Change-Id: I66599f9529cf421caa7676fdd0141bb110b8589e
NetworkManagementEventObserver.aidl
5ae4a531cc31be2868f65c40e8636658f1ae2f06 31-Oct-2013 Lorenzo Colitti <lorenzo@google.com> Pass DNS server info notifications to observers.

These are sent if the device receives IPv6 Router Advertisements
with DNS server configuration options. Currently, nothing listens
to them; in a future change we will use them as IPv6 DNS servers.

[Cherry-pick of 416740ad4d9132005a71dc0883334e852235a18a]

Bug: 9180552
Change-Id: I05000c0cd3867a68ab390102e8470b6912a9d3aa
NetworkManagementEventObserver.aidl
dbccd44a638ae8705a5b14bff8b2dd74abc26045 22-Nov-2013 The Android Open Source Project <initial-contribution@android.com> Merge commit 'b873a17ce7be0a9771c24999adca6964431728f6' into HEAD

Change-Id: I938755073e70602cc8f51ce9bd420fdcf870cecd
816fe75304f683e044b46aaf135159c0c2e11e21 22-Nov-2013 Robert Greenwalt <rgreenwalt@google.com> am 15b3efc9: am ecfae4f8: am a4c8fabf: Merge "fix ethernet and wifi can\'t be tuned seperately issue"

* commit '15b3efc9620662d83b66d75c663bb893ca0bc6e9':
fix ethernet and wifi can't be tuned seperately issue
15b3efc9620662d83b66d75c663bb893ca0bc6e9 22-Nov-2013 Robert Greenwalt <rgreenwalt@google.com> am ecfae4f8: am a4c8fabf: Merge "fix ethernet and wifi can\'t be tuned seperately issue"

* commit 'ecfae4f899873f224e1aeed076dc8a41f8884487':
fix ethernet and wifi can't be tuned seperately issue
ecfae4f899873f224e1aeed076dc8a41f8884487 22-Nov-2013 Robert Greenwalt <rgreenwalt@google.com> am a4c8fabf: Merge "fix ethernet and wifi can\'t be tuned seperately issue"

* commit 'a4c8fabfbb0bf5bf9da5267c13230c5169b5943d':
fix ethernet and wifi can't be tuned seperately issue
ec9830e769971f410fff406e2a565b4b3c99af56 22-Nov-2013 Lorenzo Colitti <lorenzo@google.com> Merge "Pass DNS server info notifications to observers."
6090995951c6e2e4dcf38102f01793f8a94166e1 19-Nov-2013 John Spurlock <jspurlock@google.com> Remove unused imports from frameworks/base.

Change-Id: Ia1f99bd2c1105b0b0f70aa614f1f4a67b2840906
aptivePortalTracker.java
onnectivityManager.java
hcpInfo.java
hcpResults.java
inkSocketNotifier.java
ailTo.java
etworkConfig.java
roxyProperties.java
ntpClient.java
hcp/DhcpAckPacket.java
hcp/DhcpOfferPacket.java
hcp/DhcpPacket.java
hcp/DhcpStateMachine.java
ttp/AndroidHttpClientConnection.java
ttp/Connection.java
ttp/ConnectionThread.java
ttp/HttpConnection.java
ttp/HttpResponseCache.java
ttp/HttpsConnection.java
ttp/Request.java
ttp/RequestQueue.java
sd/NsdManager.java
d96371521299627c8be59e0d9d5b42a61d0720be 19-Nov-2013 William Luh <williamluh@google.com> Expose new API for querying whether a certificate was user added.

Bug: 11257762
Change-Id: I0087048189f71b76761e7e95f98261c02bf73967
ttp/X509TrustManagerExtensions.java
6f1459a57343ce7b8045297c8cee733b6f2ab41a 19-Nov-2013 William Luh <williamluh@google.com> Merge "Revert "Expose new API for querying whether a certificate was user added.""
635011173ebaa6cc35d1fca82276197cad866ba2 19-Nov-2013 William Luh <williamluh@google.com> Revert "Expose new API for querying whether a certificate was user added."

This reverts commit 60b96502b39d221afb43ff7e8a49a19a2fb3c2e0.

Change-Id: Ie1c2ee4c983c4d6b0c086f252a191b3c60e50b9c
ttp/X509TrustManagerExtensions.java
1680392e1e4450f3801990ada97714d278ccc897 19-Nov-2013 William Luh <williamluh@google.com> Merge "Expose new API for querying whether a certificate was user added."
416740ad4d9132005a71dc0883334e852235a18a 31-Oct-2013 Lorenzo Colitti <lorenzo@google.com> Pass DNS server info notifications to observers.

These are sent if the device receives IPv6 Router Advertisements
with DNS server configuration options. Currently, nothing listens
to them; in a future change we will use them as IPv6 DNS servers.

Bug: 9180552
Change-Id: I05000c0cd3867a68ab390102e8470b6912a9d3aa
NetworkManagementEventObserver.aidl
a363a10ca2c58cdce83ee2bade97626d256b124d 15-Nov-2013 Jianzheng Zhou <jianzheng.zhou@freescale.com> fix ethernet and wifi can't be tuned seperately issue

ethernet especially Gigabit enet use the same tune data with wifi
won't reach best performance.

Change-Id: Iac50ba47904c76ff7b5b8ad226e83451359ec534
Signed-off-by: Jianzheng Zhou <jianzheng.zhou@freescale.com>
thernetDataTracker.java
8bf47a36b63c76ca726dbf8852a18b4403383823 14-Nov-2013 Robert Greenwalt <rgreenwalt@google.com> am 7fdfe28c: am 4c514f2a: am 594eeb08: Merge "Fix for the invalid Global Proxy Setting" into klp-dev

* commit '7fdfe28c75e103b8a66b559dcb813576fbbf2eb5':
Fix for the invalid Global Proxy Setting
7fdfe28c75e103b8a66b559dcb813576fbbf2eb5 14-Nov-2013 Robert Greenwalt <rgreenwalt@google.com> am 4c514f2a: am 594eeb08: Merge "Fix for the invalid Global Proxy Setting" into klp-dev

* commit '4c514f2a688bdae319c919987092ccfee690f390':
Fix for the invalid Global Proxy Setting
ec9e8933effe1dcb6887f7dca1cc0d78e6107e38 14-Nov-2013 Robert Greenwalt <rgreenwalt@google.com> am 3b9244b4: Merge "Fix for the invalid Global Proxy Setting"

* commit '3b9244b4b4d5008daa9763a169a751975c75cc54':
Fix for the invalid Global Proxy Setting
92d02491aded7ca233fd52d586cc0b0bda4521cf 11-Nov-2013 Raj Mamadgi <rmamadgi@sta.samsung.com> Fix for the invalid Global Proxy Setting

Adding validation for Global Proxy setting before it is
being set.

Proxy is validated at the boot time also to make sure
the value set is valid.

Signed-off-by: Raj Mamadgi <rmamadgi@sta.samsung.com>
bug:11598568

Change-Id: Idff5ae81119d8143da096b5291ecbfbc5875cbd4
roxyProperties.java
f89fade0cd23764167e31eecaf4173c340189cb9 11-Nov-2013 Raj Mamadgi <rmamadgi@sta.samsung.com> Fix for the invalid Global Proxy Setting

b/11598568

Adding validation for Global Proxy setting before it is
being set.

Proxy is validated at the boot time also to make sure
the value set is valid.

Change-Id: Ib93d24a80af1a329694f07c47bd81dfcc1e1b874
Signed-off-by: Raj Mamadgi <rmamadgi@sta.samsung.com>
roxyProperties.java
60b96502b39d221afb43ff7e8a49a19a2fb3c2e0 05-Nov-2013 William Luh <williamluh@google.com> Expose new API for querying whether a certificate was user added.

Bug: 11257762
Change-Id: Icb23ac4f452528751988db708f7588ef45d23c26
ttp/X509TrustManagerExtensions.java
c761f3b6d041379c9b5537601972774536835d20 31-Oct-2013 Jason Monk <jmonk@google.com> am 7c053a2f: am cb134203: am 86f5a149: Merge "Change PacProxySelector to return unresolved addr" into klp-dev

* commit '7c053a2fa5b9f280faa03fff63ed2d11d6cf5211':
Change PacProxySelector to return unresolved addr
7c053a2fa5b9f280faa03fff63ed2d11d6cf5211 31-Oct-2013 Jason Monk <jmonk@google.com> am cb134203: am 86f5a149: Merge "Change PacProxySelector to return unresolved addr" into klp-dev

* commit 'cb1342032283d1a415eb4f916a79039aa8ed0cbf':
Change PacProxySelector to return unresolved addr
179d6e8e2067c380d3c1f7a1a26877b81a9240cb 30-Oct-2013 Jason Monk <jmonk@google.com> Change PacProxySelector to return unresolved addr

This was found by a bug in Firefox where it expects the addresses from a
ProxySelector to be unresolved. Since ProxySelectorImpl returns unresolved
addresses the PAC version should as well to avoid breaking apps.

The ProxyServer also needed to be updated to reflect this change as it was
expecting a resolved InetSocketAddress.

Bug: 11443853
Change-Id: I3a4e9e248d22d7808603c147660df708e01cdf82
acProxySelector.java
be7f22b7a8fefbabda7f6eb051e6009342e95d41 29-Oct-2013 Alex Klyubin <klyubin@google.com> am 07873e3a: am 56922039: am b4cae4a9: Merge "Fix SSLCertificateSocketFactory.getDefaultCipherSuites."

* commit '07873e3a72da254bcdf965f6fa76bdcc800ef511':
Fix SSLCertificateSocketFactory.getDefaultCipherSuites.
07873e3a72da254bcdf965f6fa76bdcc800ef511 29-Oct-2013 Alex Klyubin <klyubin@google.com> am 56922039: am b4cae4a9: Merge "Fix SSLCertificateSocketFactory.getDefaultCipherSuites."

* commit '569220399841ae1a3fd62a1b77fa087bca2ee0f3':
Fix SSLCertificateSocketFactory.getDefaultCipherSuites.
569220399841ae1a3fd62a1b77fa087bca2ee0f3 29-Oct-2013 Alex Klyubin <klyubin@google.com> am b4cae4a9: Merge "Fix SSLCertificateSocketFactory.getDefaultCipherSuites."

* commit 'b4cae4a955ebd91cf35aaeb00ab12ce6f1d5fc48':
Fix SSLCertificateSocketFactory.getDefaultCipherSuites.
019118af67c60448030540deca37d972c8839d38 29-Oct-2013 Alex Klyubin <klyubin@google.com> Fix SSLCertificateSocketFactory.getDefaultCipherSuites.

The method was returning all supported cipher suites instead of the
default ones only. The default list of cipher suites actually used by
sockets created by this factory is not affected by this issue.

Change-Id: I2e4d7c6547fcb29ff7a0943bc8791706cc8d22bc
SLCertificateSocketFactory.java
ec1bd6e5b254b7718fe6f707d9e884d54716efa3 22-Oct-2013 Costin Manolache <costin@google.com> Merge "Remove the warning if the caller gets the insecure variant and add hostname verification (SNI)"
98e1797367ca8cd8b8476f6befdb55f81cd13e19 29-Aug-2013 Narayan Kamath <narayan@google.com> Remove captive portal code that has no effect.

Note that this CL does not change any behaviour.

At the center of this change is
CaptivePortalTracker#detectCaptivePortal(), which does nothing
except call back into ConnectivityService. Removing it allows us to
simplify code in ConnectivityService. It also allows us to remove
ConnectivityService#captivePortalCheckComplete which was only ever
called in response to this method.

While this does not change any behaviour, it preserves existing
bad behaviour, i.e, that the CAPTIVE_PORTAL_CHECK NetworkInfo
state does not correspond to actual captive portal detection.
We transition into that state and immediately (and unconditionally)
out of it and into CONNECTED.

Change-Id: Ib3797f956d2db5e3cacaaa53e899d81aa8e958af
aseNetworkStateTracker.java
aptivePortalTracker.java
onnectivityManager.java
ummyDataStateTracker.java
thernetDataTracker.java
ConnectivityManager.aidl
obileDataStateTracker.java
etworkStateTracker.java
007392a8a17df8b608f4ccd9129436cb570090d3 11-Oct-2013 Costin Manolache <costin@google.com> Remove the warning if the caller gets the insecure variant and add hostname verification (SNI)

For insecure - not doing verifiaction is normal and documented behavior, no need for extra warnings.
When upgrading the socket - we need to set SNI before the handshake, with the other options.

Change-Id: I494ca8e783deb1387dc11e21422d2141a6d5a617
SLCertificateSocketFactory.java
12b28ce4e82fcd3ed46ffac77fb866bb5aee4408 11-Oct-2013 Narayan Kamath <narayan@google.com> Fix minor thread corectness issue in NetworkInfo

Hold the right lock while copying info from another
NetworkInfo object to prevent changes being made to it
while the copy is in progress.

Change-Id: I1aa2c29e81e045b0359f957352c438e79e692823
etworkInfo.java
1b2d586e2d2baac542a233e9d1303077590b3805 11-Oct-2013 Jason Monk <jmonk@google.com> am 193ad53d: am 6b57033b: am 8b81a638: Merge "getProxy in ConnectivityService returns port w/PAC" into klp-dev

* commit '193ad53ddd22a8fe8035246ec55e81fc7a7b2fe1':
getProxy in ConnectivityService returns port w/PAC
193ad53ddd22a8fe8035246ec55e81fc7a7b2fe1 11-Oct-2013 Jason Monk <jmonk@google.com> am 6b57033b: am 8b81a638: Merge "getProxy in ConnectivityService returns port w/PAC" into klp-dev

* commit '6b57033b022890242d6833b494040c360af691d0':
getProxy in ConnectivityService returns port w/PAC
decd295b1371238c97c170226c6145948492eda1 10-Oct-2013 Jason Monk <jmonk@google.com> getProxy in ConnectivityService returns port w/PAC

Changes the PacManager to report message back to ConnectivityService
to send a broadcast once the download has completed. This allows the
ConnectivityService to store the correct proxy info for getProxy().

This made the problem arise that ProxyProperties was not handling port
while it had PAC. Added small fix for equals() and parcelization.

The combination of these fixes seems to resolve Bug: 11028616.

Bug: 11168706
Change-Id: I92d1343a8e804391ab77596b8167a2ef8d76b378
roxyProperties.java
16f3c140cbe3a80fff04be7c281e435ae2daa007 04-Oct-2013 Robert Greenwalt <rgreenwalt@google.com> am 1db7024c: am 2e23484e: am f3f1a370: Merge "Un-deprecate getDhcpInfo" into klp-dev

* commit '1db7024c50abe49d8881d458b3317ccff3de1832':
Un-deprecate getDhcpInfo
1db7024c50abe49d8881d458b3317ccff3de1832 04-Oct-2013 Robert Greenwalt <rgreenwalt@google.com> am 2e23484e: am f3f1a370: Merge "Un-deprecate getDhcpInfo" into klp-dev

* commit '2e23484eec2321537e843168f76cba4c18b56f95':
Un-deprecate getDhcpInfo
0cbc781134af18e04937d34415c9a0b817c06639 04-Oct-2013 Wink Saville <wink@google.com> am e7329140: am fe587dba: am a48ccdd6: Merge "Use networkType to display wifi and mobile notification separately." into klp-dev

* commit 'e7329140c0ff846acf5bc8749f525b18880177ef':
Use networkType to display wifi and mobile notification separately.
cb2fe96f2c2b754bb2377acd3be46d62216251fa 04-Oct-2013 Robert Greenwalt <rgreenwalt@google.com> Un-deprecate getDhcpInfo

Replacement api isn't available.

bug:10003785
Change-Id: Ibe981ae90e1c6c2f1b65fa225443ae4cc92c2a3a
hcpInfo.java
e7329140c0ff846acf5bc8749f525b18880177ef 04-Oct-2013 Wink Saville <wink@google.com> am fe587dba: am a48ccdd6: Merge "Use networkType to display wifi and mobile notification separately." into klp-dev

* commit 'fe587dba3a70c658140eac1b13996b7d8e6eeda2':
Use networkType to display wifi and mobile notification separately.
3ec8e7fb79f2e662c2b06cfec118a0eeaefd9370 03-Oct-2013 Wink Saville <wink@google.com> Use networkType to display wifi and mobile notification separately.

There are two bugs one is I was clearing the notification in
CaptivePortalTracker when entering the ActivateState. (double check
according to bug 5021626 we should be calling enter)

Second is we could have the need to display both icons but can't
because we only allow one.

The solution I'm proposing here is to allow two notifications and
have then controlled separately.

Bug: 10886908
Change-Id: I30e7130bc542535492d175640a4990c592f32806
aptivePortalTracker.java
4d154af68ffd58a229b98e2d0e5a0a51845e96ec 21-Sep-2013 Wink Saville <wink@google.com> am 86ad8e68: am 56065891: Merge commit \'53221120\' into fix-merge-conflict

* commit '86ad8e6871e778e1ee47d4f723bbd1d5f8fc00bf':
Do not always call setIsConnectedToProvisioningNetwork(false)
86ad8e6871e778e1ee47d4f723bbd1d5f8fc00bf 21-Sep-2013 Wink Saville <wink@google.com> am 56065891: Merge commit \'53221120\' into fix-merge-conflict

* commit '56065891abf383b0409ae595437dcb0ea132e32b':
Do not always call setIsConnectedToProvisioningNetwork(false)
56065891abf383b0409ae595437dcb0ea132e32b 21-Sep-2013 Wink Saville <wink@google.com> Merge commit '53221120' into fix-merge-conflict

* commit '53221120':
Do not always call setIsConnectedToProvisioningNetwork(false)

Conflicts:
core/java/android/net/MobileDataStateTracker.java

Change-Id: I497b57cb96d0f3b3bce4f4e1cbc5febcc6421597
53221120049c2fea27158864f2e615c08d410780 21-Sep-2013 Wink Saville <wink@google.com> am ab8cabf1: am 1e4f4618: Do not always call setIsConnectedToProvisioningNetwork(false)

* commit 'ab8cabf1d3e5d5fd1fff17816fbc4ab19e8f1a8e':
Do not always call setIsConnectedToProvisioningNetwork(false)
1e4f461839ebd3c9d3dc62232c2eac7d8cbdc467 21-Sep-2013 Wink Saville <wink@google.com> Do not always call setIsConnectedToProvisioningNetwork(false)

Previously I was calling setIsConnectedToProvisioningNetwork(false) always,
but all MDST's receive every broadcast. Thus we could over write an MDST's
mNetworkInfo.mIsConnectedToProvisioningNetwork to false, unless the MDST
that was set to true was last, i.e the code was order dependent.

If the provisioning networks value was false instead of true
when handleMobileProvisioningAction was called we wouldn't invoke
mdst.enableMobileProvisioning because network info would be null.

Thus the provisioning network would never transition to CONNECTED and
a default route wouldn't get setup and the browser couldn't access the
website.

Now setIsConnectedToProvisioningNetwork is only set to false when the
apnType matches and we won't indiscriminately change it and are not
order dependent.

Bug: 10853805
Change-Id: I68a4f9bdf5dc18d90f4cdef7a60811f57be67261
obileDataStateTracker.java
103a02453b397e68a8befffb908f0985624a4f1c 14-Sep-2013 Jason Monk <jmonk@google.com> am f9464838: am 312c495f: Merge "Guarantee that PAC Local Proxy owns Port" into klp-dev

* commit 'f9464838fe141aac1c677e2f4ec0133381fbb5af':
Guarantee that PAC Local Proxy owns Port
f9464838fe141aac1c677e2f4ec0133381fbb5af 14-Sep-2013 Jason Monk <jmonk@google.com> am 312c495f: Merge "Guarantee that PAC Local Proxy owns Port" into klp-dev

* commit '312c495f4b8d002264772f61fe1fa3ef87bf3e52':
Guarantee that PAC Local Proxy owns Port
312c495f4b8d002264772f61fe1fa3ef87bf3e52 13-Sep-2013 Jason Monk <jmonk@google.com> Merge "Guarantee that PAC Local Proxy owns Port" into klp-dev
6f8a68f49a7e8cf86104e721a1e8be7568b5f730 24-Aug-2013 Jason Monk <jmonk@google.com> Guarantee that PAC Local Proxy owns Port

This changes the PAC support to not broadcast the Proxy information until
the Local Proxy has started up and successfully bound to a port so that
the local proxy information can be guaranteed to be owned by the proxy.

Bug: 10459877
Change-Id: I175cd3388c758c55e341115e4a8241884b90d633
roxyProperties.java
16a584096abc6f0509dfef863c0a369046103519 12-Sep-2013 Elliott Hughes <enh@google.com> am 2df0f9ed: am 442a8753: am c3415a91: Merge "Remove ArpPeer; dead code from Google TV."

* commit '2df0f9ed82f9dab253d2359df12b119ed36af522':
Remove ArpPeer; dead code from Google TV.
123eeea6d62a80fb9660ad623fd378d2f2f0c904 12-Sep-2013 Jeff Sharkey <jsharkey@android.com> am e2d76fa8: am cecccecc: Merge changes Ib1274847,I2eb2a1bf into klp-dev

* commit 'e2d76fa8c6d0f5c3d1a73a3ec9756c4bc545806d':
Fix SDK build.
Request all tethering interfaces, fix corruption.
2df0f9ed82f9dab253d2359df12b119ed36af522 12-Sep-2013 Elliott Hughes <enh@google.com> am 442a8753: am c3415a91: Merge "Remove ArpPeer; dead code from Google TV."

* commit '442a8753a0f312439e2ef233c041d9d584768749':
Remove ArpPeer; dead code from Google TV.
442a8753a0f312439e2ef233c041d9d584768749 12-Sep-2013 Elliott Hughes <enh@google.com> am c3415a91: Merge "Remove ArpPeer; dead code from Google TV."

* commit 'c3415a918df78715db756f02d8c55a1e7ab94244':
Remove ArpPeer; dead code from Google TV.
c3415a918df78715db756f02d8c55a1e7ab94244 12-Sep-2013 Elliott Hughes <enh@google.com> Merge "Remove ArpPeer; dead code from Google TV."
62d7bf2ab3fea140e5fb5316e686ebf8d0505eda 12-Sep-2013 Elliott Hughes <enh@google.com> Remove ArpPeer; dead code from Google TV.

Change-Id: I595a6b6f52ab513a008e0fd861e98bc4488a1999
rp/ArpPeer.java
ceccceccffbd2668b98e21487f2323f80d2c7b98 11-Sep-2013 Jeff Sharkey <jsharkey@android.com> Merge changes Ib1274847,I2eb2a1bf into klp-dev

* changes:
Fix SDK build.
Request all tethering interfaces, fix corruption.
d6b37fdf6c24321a87566ad4053dad5daa3a844a 09-Sep-2013 Narayan Kamath <narayan@google.com> Allow SSL caches to be installed directly on SSLContexts.

This allows clients to enable ssl session caching without
having to use SSLCertificateSocketFactory.

Change-Id: Id63b8b31f51c96e73beefe9ecc5fd0cf0a1852c6
SLSessionCache.java
e4984bea95a07dea0ef0259fefa1e52f0bbb1533 11-Sep-2013 Jeff Sharkey <jsharkey@android.com> Request all tethering interfaces, fix corruption.

netd now tracks statistics for tethered interfaces across tethering
sessions, so switch to asking for all tethering stats. (Currently
we're double-counting all tethering data, ever since it started
tracking across sessions.)

Also catch OOME to handle corrupt stats files, which we then dump to
DropBox and then start over.

Bug: 5868832, 9796109
Change-Id: I2eb2a1bf01b993dd198597d770fe0e022466c6b9
ConnectivityManager.aidl
0611f47721e32e5386884881b055fde6eec5e3c0 10-Sep-2013 Kenny Root <kroot@google.com> am 90e42717: Merge changes I5d2be3c5,I9017256b

* commit '90e42717e590e2f7d2fb7270daae589a97271c63':
Add argument to binder call to check key types
Use hostname verifier directly instead of instance
4a406787c7dc745ccf82b9f160cc95aea6c81fdf 24-Jul-2013 Kenny Root <kroot@google.com> Use hostname verifier directly instead of instance

Instead of local instance of the default HostnameVerifier, use it
directly from HttpsURLConnection. This avoids class preloading creating
an instance of it before it's necessary.

(cherry picked from commit 928ee1e48fa89302d02fdf8a8a2c7315d7195e7c)

Bug: 9984058
Change-Id: I9017256b3b5d137aeb5a6f455868af7bdfec7885
SLCertificateSocketFactory.java
5cd1a0e8d77972ad6cee2625a7e21082932042c2 10-Sep-2013 Yuhao Zheng <yuhaozheng@google.com> Add a hidden API to toggle airplane mode.

Added a hidden API under ConnectivityManager to toggle airplane mode.
This may be a temp solution for b/10653570.
bug:10653570

Change-Id: I0b2b42230073289eb8dc6891317d62b84e26c133
onnectivityManager.java
ConnectivityManager.aidl
d57de6afb8981dc1663d41a842ab7cdae93427a1 07-Sep-2013 Ying Wang <wangying@google.com> Fix docs build.

Change-Id: I6fd0d711b2cc7726fdaa9119ee467ed6fab82de1
inkProperties.java
9d9b74a900696191048aa97cc3c854072640428b 01-Sep-2013 sy.yun <sy.yun@lge.com> Setting MTU size for specific network.

Able to config network specific MTU size. Normally, the default size of MTU is 1500.
US - ATT 1410, TMUS 1440, SPRINT 1422
KR - SKT 1440, KT 1450, LGU+ 1428
JP - KDDI 1420, SoftBank 1340
CA - RGS 1430, FIDO 1430, MTS 1430, BELL 1358, SaskTel 1358
AU - TEL 1400

Bug: 10195070
Change-Id: Ie18650b37a3d44af944f2dae4aa97c04fb12cd5e
inkProperties.java
obileDataStateTracker.java
a1d6a9b474ba095860838c6ed3e72f8d9f5058cd 06-Sep-2013 Wink Saville <wink@google.com> am fc7a146b: am 50f86448: am 59a9884b: Merge "Do not change NetworkInfo.DetailedState." into jb-mr2-dev

* commit 'fc7a146b82774514bad4bc307489ece7ac27ee50':
Do not change NetworkInfo.DetailedState.
fc7a146b82774514bad4bc307489ece7ac27ee50 06-Sep-2013 Wink Saville <wink@google.com> am 50f86448: am 59a9884b: Merge "Do not change NetworkInfo.DetailedState." into jb-mr2-dev

* commit '50f864480d6e9cf9e4d83b4533e3764753b4d408':
Do not change NetworkInfo.DetailedState.
a7597d17714e8aa975a4692cd7e9656d8bfa2e2c 06-Sep-2013 Lorenzo Colitti <lorenzo@google.com> Merge "Add a function to replace all the link addresses." into klp-dev
67c382192614dfab821666c4f35f1e2c8b97271b 05-Sep-2013 Wink Saville <wink@google.com> Do not change NetworkInfo.DetailedState.

I'd changed DetailedState to force ConnectivityService to treat
provisioning apn's specially. In particular so that they wouldn't
be identified they were fully connected until the provisioning
actually started. The problem is that DetailedState is a public enum
that has a CTS test and just changing the CTS to allow for the new
state (CONNECTED_TO_PROVISIONING_NETWORK) was inappropriate.

Instead I've added a new mIsConnectedToProvisioningNetwork variable
and used the DetailedState.SUSPENDED as the intermediate state.

Bug: 10620248
Change-Id: Id4a842398cad67455541ce629959351c27d83639
obileDataStateTracker.java
etworkInfo.java
b402fb2fddbee48ef3b518358dc5c86db63f7780 05-Sep-2013 Vinit Deshapnde <vinitd@google.com> Merge "Rename LinkInfo to LinkQualityInfo" into klp-dev
22f407b11e11cfdb336e06e8c0d4a7ef1eafc783 23-Aug-2013 Lorenzo Colitti <lorenzo@google.com> Add a function to replace all the link addresses.

Bug: 10232006
Change-Id: I689ce4735999dac2ab5e1fae09d80b1f734292a1
inkProperties.java
6a2d32597a3f158f4ff5b07ad61c7d892d08f3bf 04-Sep-2013 Vinit Deshapnde <vinitd@google.com> Rename LinkInfo to LinkQualityInfo

This change renames the LinkInfo objects to LinkQuailtyInfo. The API is
still hidden; but it can be accessed via reflection.

Bug: 10342372

Change-Id: Ieccea87c467ceae5d7f76298b137573f67396cd6
aseNetworkStateTracker.java
onnectivityManager.java
ConnectivityManager.aidl
inkInfo.aidl
inkInfo.java
inkQualityInfo.aidl
inkQualityInfo.java
obileDataStateTracker.java
obileLinkInfo.java
obileLinkQualityInfo.java
etworkStateTracker.java
amplingDataTracker.java
ifiLinkInfo.java
ifiLinkQualityInfo.java
9d4204d6257bf69885cf0718aa3adaa17457c318 30-Aug-2013 Wink Saville <wink@google.com> Add debug and remove SocketTimeoutException.

Bad merge from jb-mr2 to klp, the SocketTimeoutException
in isCaptivePortal should not be present. Also add debug
for bug 9972012. The SocketTimeoutException is a possible
cause of 9972012 but the logs from post #24 it was not
caused by a timeout, so this is not a fix.

Bug: 9972012
Change-Id: I290518832f8258d4682821815834f5621245b643
aptivePortalTracker.java
7788c61af5927a0fac612ea94d5205eeec2f507f 29-Aug-2013 Wink Saville <wink@google.com> Merge commit '270226b0' into manualmerge

* commit '270226b0':
Add support for handling mobile provisioning networks.

Conflicts:
core/java/android/net/CaptivePortalTracker.java
core/java/android/net/ConnectivityManager.java
core/java/android/net/IConnectivityManager.aidl
core/java/android/net/MobileDataStateTracker.java
core/res/AndroidManifest.xml
services/java/com/android/server/ConnectivityService.java

Change-Id: I3925004011bb1243793c4c1b963d923dc2b00cb5
270226b0dddcf3ccb9a4c13cd3dd0427ebc7a4aa 29-Aug-2013 Wink Saville <wink@google.com> am 8cb2f42e: am 948282b0: Add support for handling mobile provisioning networks.

* commit '8cb2f42eea2ef3b249528aa7913fc7a6dfc6b741':
Add support for handling mobile provisioning networks.
948282b0e6cf5310f09db97a4ae939db7c1cef72 29-Aug-2013 Wink Saville <wink@google.com> Add support for handling mobile provisioning networks.

When a sim is new or it has expired it needs to be provisioned
with the carrier. Basically provisioning is associating a sim with
a user account. When a sim isn't provisioned then operators will
restrict access to the network and only allow certain addresses
or services to be used.

This set of changes allows two types of provisioning networks to be
recognized. The first is a network that causes all DNS lookups to be
redirected to a different address than was intended. This is exemplified
by how T-Mobile works.

The second technique uses a special apn for provisioning. An example is
AT&T where lwaactivate is the provisioning apn and broadband is the
normal apn. We first try broadband and if we are unable to connect we
try lwaactivate. When we see the activate we identify it as special and
the ApnContext.isProvisioningApn will return true.

In the future our plan is to create a new network type that can be added
to the apn list, but for now it identified by name.

Here is a list of significant changes:

- CaptivePortalTracker now only test WiFi networks instead of all networks
- checkMobileProvisioning checks for provisioning networks and doesn't
try to ping.
- IConnectivityManager.aidl changes:
* getProvisioningOrActiveNetworkInfo was added to and used by Manage
mobile plan in WirelessSettings so even when there is no active
network it will still allow provisioning. Otherwise it would report
no internet connection.
* setSignInErrorNotificationVisible is used by both
CaptiviePortalTracker and checkMobileProvisioning so they use the
same code for the notifications.
* checkMobileProvisioning was simplified to have only a timeout as
returning the result is now harder as we abort simultaneous call
otherwise we'd could get into loops because we now check every time
we connect to mobile.
- Enhanced MDST to handle the provisioning network.
- Added CONNECTED_TO_PROVISIONING_NETWORK to NetworkInfo to make a new
state so we don't announce to the world we're connected.
- TelephonyIntents.ACTION_DATA_CONNECTION_CONNECTED_TO_PROVISIONING_APN
is sent by the low level data connection code to notify Connectivity
Service that a provisioning apn has connected. This allows CS to
handle the connection differently than a normal connection.

Bug: 10328264
Change-Id: I3925004011bb1243793c4c1b963d923dc2b00cb5
aptivePortalTracker.java
onnectivityManager.java
ConnectivityManager.aidl
obileDataStateTracker.java
etworkInfo.java
d0fec8c8857387bf009049011ca4b15260978173 27-Aug-2013 Vinit Deshapnde <vinitd@google.com> Increase sampling data size limits

Integer doesn't seem to like number > 2 Gig; so converting all bits of
samples to long; and handling exceptions that may crash the service

Bug: 10459447
Change-Id: I1291e97ba6d0ab7304dc6a6e8ef819d17491e017
inkInfo.java
amplingDataTracker.java
ifiLinkInfo.java
59adfca65dc35274684831577ec41046b418a688 26-Aug-2013 Wink Saville <wink@google.com> am 33283a97: am dce52cdb: DO NOT MERGE: MDST is not ready until connected to DcTracker.

* commit '33283a9726a29b5a79d7885fe194d52c0ebe7450':
DO NOT MERGE: MDST is not ready until connected to DcTracker.
e2a6d3df1257c1c04b1a14777bb7ee65f634bdc3 22-Aug-2013 Vinit Deshapnde <vinitd@google.com> Merge "Introduce network link quality statistics" into klp-dev
1f12cb52a494a3eaefc62d03a8d2fdf47a5535e9 21-Aug-2013 Vinit Deshapnde <vinitd@google.com> Introduce network link quality statistics

This change starts tracking traffic quality data for WiFi and mobile
networks. The quality is tracked based on incidental traffic, and not
on specific measurements. Theoretical bandwidths are hard-coded, as
well as sampling interval; although sampling interval can be changed
by setting a system policy.

Bugs filed to remove shortcomings of this change -

10342372 Change LinkInfo name to something better
10342318 Move hardcoded values of MobileLinkInfo to resources
so they can be updated without changing code

Bug: 10006249

Change-Id: I83d8c7594da20fe53abbd5e1f909b1f606b035bb
aseNetworkStateTracker.java
onnectivityManager.java
ummyDataStateTracker.java
thernetDataTracker.java
ConnectivityManager.aidl
inkInfo.aidl
inkInfo.java
inkProperties.aidl
obileDataStateTracker.java
obileLinkInfo.java
etworkStateTracker.java
amplingDataTracker.java
ifiLinkInfo.java
fd589c1d946ca7633da43ae8e1b4989cb0a73043 21-Aug-2013 Lorenzo Colitti <lorenzo@google.com> Merge "Notify IP address changes to interface observers." into klp-dev
10fa8c0626dbc0a875fe2543bf3c14d617dee9fb 21-Aug-2013 Lorenzo Colitti <lorenzo@google.com> Merge "Make BaseNetworkObserver available to core code" into klp-dev
4d3d5f1f9e2ccf680660086338f7b9b02c2eb648 21-Aug-2013 Lorenzo Colitti <lorenzo@google.com> Merge "Modify LinkProperties address update methods." into klp-dev
b8aa06c783bd315d04df3fe375682040ba619543 21-Aug-2013 Lorenzo Colitti <lorenzo@google.com> Merge "Add a string constructor to LinkAddress." into klp-dev
9ced3cd9d6ea414523051ec872fffc68f5fdbf08 12-Aug-2013 Jason Monk <jmonk@google.com> Change PacProcessor to Android Service

This switches the PacProcessor over to an Android Service. The service
is bound and unbound by the PacManager, which also adds it to the
ServiceManager, allowing for Context-Free access by the PacProxySelector
in all DVMs.

bug:10182711
Change-Id: Id1ff7660be56e8976cdcccd76e041feb47a17a61
acProxySelector.java
roxy.java
5c7daac2e3d9020185699ba554d763b825ab1778 05-Aug-2013 Lorenzo Colitti <lorenzo@google.com> Notify IP address changes to interface observers.

1. Add addressUpdated and addressRemoved methods to
INetworkManagementEventObserver. (The -Updated method is not
called -Added because it gets called for both adds and
changes.) Update all its callers in the tree.
2. Make NetworkManagementService parse IP address notifications
from NetlinkHandler and call the address{Removed,Updated} on
its observers.

Bug: 10232006
Change-Id: Ieb185dbba052bdbff03caafc0cf5397a7f04dc6d
NetworkManagementEventObserver.aidl
df86a9f2e92d077386b146fe483b2cf14850737d 20-Aug-2013 Lorenzo Colitti <lorenzo@google.com> Make BaseNetworkObserver available to core code

Currently BaseNetworkObserver is in frameworks/base/services, but
there is code in frameworks/base/core that could use it. This
code typically extends INetworkManagementEventObserver.stub
because BaseNetworkObserver is not available.

Move BaseNetworkObserver to frameworks/base/core without changing
its package name, and use it to simplify two callers. The third
caller, Tethering, is much larger, and I'm not sure it's
appropriate to change it.

Bug: 10232006
Change-Id: Ifc0f2e619e3424e27e35730c048a1cc523df345e
thernetDataTracker.java
4faa027df03c241c92a12a437f20767ab4d6ee64 08-Aug-2013 Lorenzo Colitti <lorenzo@google.com> Modify LinkProperties address update methods.

1. Make addLinkAddress a no-op if the address already exists.
2. Make addLinkAddress, addStackedLink and removeStackedLink
return a boolean indicating whether something changed.
3. Add a removeLinkAddress method (currently there is no way of
removing an address).
3. Move hasIPv6Address from ConnectivityService to
LinkProperties, where it belongs.

Bug: 9625448
Bug: 10232006
Change-Id: If641d0198432a7a505e358c059171f25bc9f13d5
inkProperties.java
6eb8a62a26f35ed1c2938945bb86a65f486a8052 08-Aug-2013 Lorenzo Colitti <lorenzo@google.com> Add a string constructor to LinkAddress.

This will allow us to do new LinkAddress("2001:db8::1/64").

Bug: 10232006
Change-Id: If479bdbab16826afe9d82732215141841c282299
inkAddress.java
dce52cdbf1eab8bd979bf4676973699c39f7b32e 17-Aug-2013 Wink Saville <wink@google.com> DO NOT MERGE: MDST is not ready until connected to DcTracker.

When the system becomes loaded the PhoneApp can be delayed
significantly and a call to setEnableFailFastMobileData may not
occur because the channel between the MobileDataStateTracker (MDST)
and DcTracker (DCT) is not connected.

Solution: Add a isReady to MDST and isMobileDataStateTrackerReady to
ConnectivityService and call it from isMobileOk.

Bug: 10351868
Change-Id: I92f9d58121b88186b636cd71c2fd2ef9a28f7cf6
obileDataStateTracker.java
1adbf6b900a621675cd1928307bb88bb2c6501e5 13-Aug-2013 Kenny Root <kroot@google.com> am 61768c97: am 3870c570: Use hostname verifier directly instead of instance DO NOT MERGE

* commit '61768c97d6e066d633afe61a790a24473f59572c':
Use hostname verifier directly instead of instance DO NOT MERGE
3870c570bbd438cefd09a061b9481314a15dd659 24-Jul-2013 Kenny Root <kroot@google.com> Use hostname verifier directly instead of instance DO NOT MERGE

Instead of local instance of the default HostnameVerifier, use it
directly from HttpsURLConnection. This avoids class preloading creating
an instance of it before it's necessary.

(cherry picked from commit 928ee1e48fa89302d02fdf8a8a2c7315d7195e7c)

Bug: 9984058
Change-Id: I79d8a934bfc390e4cd503fd592e21bc4e5446a7d
SLCertificateSocketFactory.java
a48ad8bd858d6ffe77838a282dbf71e01967957c 10-Aug-2013 Wink Saville <wink@google.com> PROXY_SERVICE may be missing and its reference null.

Protect ourselves from when PROXY_SERVICE is missing
and mProxyService is null.

Bug: 10267814
Change-Id: Ia329376218e246cdde3d70b578c18466d48a6383
acProxySelector.java
89d16f7597d9e03bf3cf9eb1ba91b590ab1ac892 09-Aug-2013 Wink Saville <wink@google.com> am 9b7b4450: am 02eab434: am 4d87d91d: Merge "If in a mobile captive portal is detected enable fail fast." into jb-mr2-dev

* commit '9b7b4450185e723dc7021f7e8bae4a12d4dd5606':
If in a mobile captive portal is detected enable fail fast.
292a92e337f0a1b28b83f990459393f0d368c164 09-Aug-2013 Wink Saville <wink@google.com> am 7c00be48: am 55adb390: am 35152f13: Merge "Have CaptivePortalTracker use gservices updateable provisioning urls." into jb-mr2-dev

* commit '7c00be48fcb1986db14915beef549e925b5670d2':
Have CaptivePortalTracker use gservices updateable provisioning urls.
f35f3201db321c501ea3cdeeae36e88480bbe835 09-Aug-2013 Wink Saville <wink@google.com> Merge commit '81132d51' into fix-merge-conflict

* commit '81132d51':
In CaptiviePortalTracker a socket timeout is probably a captive portal.

Change-Id: I624732a5c29427bc22a156ccd46e6ff727af09c5
9b7b4450185e723dc7021f7e8bae4a12d4dd5606 09-Aug-2013 Wink Saville <wink@google.com> am 02eab434: am 4d87d91d: Merge "If in a mobile captive portal is detected enable fail fast." into jb-mr2-dev

* commit '02eab434ad9faa25291e63023b7e66698ca457a8':
If in a mobile captive portal is detected enable fail fast.
7c00be48fcb1986db14915beef549e925b5670d2 09-Aug-2013 Wink Saville <wink@google.com> am 55adb390: am 35152f13: Merge "Have CaptivePortalTracker use gservices updateable provisioning urls." into jb-mr2-dev

* commit '55adb390bb96175db9abee3ead349a98b4dc4262':
Have CaptivePortalTracker use gservices updateable provisioning urls.
81132d5197fd2eb022a5a5587fc2fb5354ec8b22 09-Aug-2013 Wink Saville <wink@google.com> am b9b4321b: am 5191b859: Merge "In CaptiviePortalTracker a socket timeout is probably a captive portal." into jb-mr2-dev

* commit 'b9b4321b756ac6e44650031ebfe0134508f60eaa':
In CaptiviePortalTracker a socket timeout is probably a captive portal.
4d87d91dfe886713df96abd3c0d1c9e20cf385e5 09-Aug-2013 Wink Saville <wink@google.com> Merge "If in a mobile captive portal is detected enable fail fast." into jb-mr2-dev
35152f13b3302dbcb43345458dd5b8b092e37320 09-Aug-2013 Wink Saville <wink@google.com> Merge "Have CaptivePortalTracker use gservices updateable provisioning urls." into jb-mr2-dev
602b232a06ede86999aa362a12eb28cbc782dc1d 03-Jul-2013 Jason Monk <jmonk@google.com> Add PAC File support for proxy configuration

PAC (Proxy auto-config) files contain a single javascript function,
FindProxyForURL(url, host). It gets called to determine what proxy should be
used for a specific request.

This adds PAC support to the system. The ProxyProperties has been modified
to hold the PAC file when one is present. The Proxy method
setHttpProxySystemProperty has been modified to insert a PacProxySelector
as the default ProxySelector when it is required. This new ProxySelector
makes calls to the ConnectivityService to parse the PAC file.

The ConnectivityService and the WifiConfigStore have been modified to support
saving the extra PAC file data.

The ConnectivityService now has a class attached (PacProxyNative) that
interfaces to the native calls for PAC files. The parsing of the PAC file
is handled by libpac (which is being added to external/) which utilizes
libv8 to parse the javascript.

As a fallback to applications that don't use the java ProxySelector, the proxy
is setup to point to a local proxy server that will handle the pac parsing.

bug:10182711
Change-Id: I5eb8df893c632fd3e1b732385cb7720ad646f401
acProxySelector.java
roxy.java
roxyProperties.java
d747cbc898ef44e59c3fbf74a8327b6a12aad397 08-Aug-2013 Wink Saville <wink@google.com> If in a mobile captive portal is detected enable fail fast.

When captive portal checking completes pass back the result.
This is used to enable/disable failing fast for mobile. When
failing fast is enabled we don't check for data stalls and thus
won't be continually trying to do recovery operations, such as
restarting the radio.

Bug: 9462512
Change-Id: I0dea0eee519f8ee7f94e79d40e82c18f30d7fe2e
aseNetworkStateTracker.java
aptivePortalTracker.java
onnectivityManager.java
ummyDataStateTracker.java
thernetDataTracker.java
ConnectivityManager.aidl
obileDataStateTracker.java
etworkStateTracker.java
1ed51627d94b140e8893b8e1dcde9bf37e2adca7 01-Aug-2013 Brian Williammee <bwill@google.com> Track latency of captive portal checks

When captive portal check occurs, track its latency, whether or not
we received a response, and whether or not the response was a captive
portal. Pair with information identifying the access point / base
station, and broadcast it (with a system|signature-protected
permission).

Broadcast only occurs if user has consented to
Settings.Global.WIFI_SCAN_ALWAYS_AVAILABLE.

Change-Id: I6fd59954a7ee2cc7acedf064a1465882653b2173
aptivePortalTracker.java
bf34122a96ef3d02e9b7935e07eb4f9b04034828 02-Aug-2013 Wink Saville <wink@google.com> In CaptiviePortalTracker a socket timeout is probably a captive portal.

On a AT&T warm SIM a socket is not possible so a timeout occurs.
In CheckMp a timing out on a socket is declared as a "warm" sim,
make CaptivePortalTracker the same.

Bug: 10038362
Change-Id: Icb9fb0a1b67704dc9adf6a6348a3781fb9582a89
aptivePortalTracker.java
42d4f08db2c15e1829c1fc5d1942cf029ab0895b 21-Jul-2013 Wink Saville <wink@google.com> Have CaptivePortalTracker use gservices updateable provisioning urls.

After detecting there is a captive portal the url used in the
notification for mobile networks should be updateable via gservices.
These urls will be the same as used by CheckMp and is needed for
carriers that have specific provisioning urls such as AT&T and Verizon.

Bug: 9622647
Change-Id: Idcf4dabc72ece1dbbe1d5e5a21e550dd06fe16c7
aptivePortalTracker.java
onnectivityManager.java
ConnectivityManager.aidl
89a8250e242ee1d0b5b853154723b448d732b356 03-Aug-2013 Elliott Hughes <enh@google.com> am 710f3e2c: am 60ae2617: Merge "If frameworks wants ASCII casing, it should explicity ask for it."

* commit '710f3e2cc6bc2cdc2f2cddb2190823ea31efd52a':
If frameworks wants ASCII casing, it should explicity ask for it.
710f3e2cc6bc2cdc2f2cddb2190823ea31efd52a 03-Aug-2013 Elliott Hughes <enh@google.com> am 60ae2617: Merge "If frameworks wants ASCII casing, it should explicity ask for it."

* commit '60ae2617b4b304fc3e45a441f87d1765714477ba':
If frameworks wants ASCII casing, it should explicity ask for it.
cb64d430627b71221c588ef5f23599dd34a89ee9 02-Aug-2013 Elliott Hughes <enh@google.com> If frameworks wants ASCII casing, it should explicity ask for it.

http://elliotth.blogspot.com/2012/01/beware-convenience-methods.html

Bug: https://code.google.com/p/android/issues/detail?id=58359
Change-Id: Iaab02e718a7be7bda22e626dca05d79bfd2a8fc4
ailTo.java
etworkConfig.java
roxyProperties.java
ri.java
rlQuerySanitizer.java
ebAddress.java
ttp/HttpAuthHeader.java
ttp/HttpsConnection.java
e1cd2931512566232f0306c60d3895b459919098 01-Aug-2013 Lorenzo Colitti <lorenzo@google.com> Merge "Add accessors for all addresses and clarify compare* methods"
1aef7fc81a959d9d34d92e3cb018848e0a79b2b7 01-Aug-2013 Wink Saville <wink@google.com> Fix excessive log spew.

Bug: 10115060
Change-Id: I61fd83071da1224f38757b8d90f58c8d6c41d36b
obileDataStateTracker.java
d1e0fae2bc5c98b1f00b185d7be7219dc7e1d0f7 31-Jul-2013 Lorenzo Colitti <lorenzo@google.com> Add accessors for all addresses and clarify compare* methods

1. Add a method to return all addresses and all LinkAddresses on
all links (both base links and stacked links). We already had
one for routes, but did not yet have any for addresses.
2. Rename compareRoutes to compareAllRoutes, because unlike the
other compare* methods, it looks at all interfaces. Update
what appears to be its only caller.
3. Update the documentation of the compare* methods to match
reality (they don't return lists) and clarify whether they
look at all links or only the base link.

Change-Id: Ie22e6c7f163d5de8e407248b45171dc28382d2d3
inkProperties.java
5e56bc543743c089635ef899f77404efe38ef055 30-Jul-2013 Wink Saville <wink@google.com> Add network type TYPE_MOBILE_IA.

Add a network type for establishing connections to the apn used for
the initial connection.

Enable some debug for now.

Bug: 8733613
Change-Id: Ia627ac0cf5715660b6d02bb13a83d46ec1727b87
onnectivityManager.java
obileDataStateTracker.java
118c85156a552440d41aaa396d42f5e938f6c38b 25-Jul-2013 Zhihai Xu <zhihaixu@google.com> Bluetooth stopped working in master - "bad file descriptor"

only close file descriptor which is created internally for LocalSocketImpl

bug:9960585
Change-Id: I79492a05cc7c81ae6e134058840d5ca0b7663795
ocalSocketImpl.java
e79b9280f0f20eefdbe4b76a6777abbdd346bac9 24-Jul-2013 Kenny Root <kroot@google.com> Merge "Use hostname verifier directly instead of instance"
928ee1e48fa89302d02fdf8a8a2c7315d7195e7c 24-Jul-2013 Kenny Root <kroot@google.com> Use hostname verifier directly instead of instance

Instead of local instance of the default HostnameVerifier, use it
directly from HttpsURLConnection. This avoids class preloading creating
an instance of it before it's necessary.

Bug: 9984058
Change-Id: I780249dbd3c7bb346e1b275dcb68e4e2be7ebbbb
SLCertificateSocketFactory.java
5830e0752121c5565da184727888de6567b50e3a 23-Jul-2013 Geremy Condra <gcondra@google.com> Merge "Fix supplimentary network connections with VPNs"
1b6868cc4b8455e8660ba35ccdcc34abbaa43ffa 23-Jul-2013 Geremy Condra <gcondra@google.com> Merge "Support multiple Vpn ManageDialogs"
f336d722c773855402d91a227fc290eafca23335 16-Jul-2013 Chad Brubaker <cbrubaker@google.com> Fix supplimentary network connections with VPNs

Enables the use of supplimentary mobile networks like MMS, and HIPRI
while VPNs are running.

Change-Id: I313f57a905b4e16bd4322c68687cbff1cfbe9d3e
onnectivityManager.java
538cdb98ef06a1768c582df28e8cc0e4335dd216 19-Jul-2013 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of 85b5e4c4 to master

Change-Id: Idd0ad9b1504fddf68c4c4cc04731de1eddd204b3
85b5e4c48f8e81f420286e0c5ebfb5617dd8f6b9 19-Jul-2013 Robert Greenwalt <rgreenwalt@google.com> am b5bf655c: am e874bd35: Merge "Add gservices updater for carrier provisioning url" into jb-mr2-dev

* commit 'b5bf655cc6cc9128aec99958cce3b054348c9273':
Add gservices updater for carrier provisioning url
757ec7837db85eae675cda5cfaf94040268327fd 19-Jul-2013 Mike Lockwood <lockwood@google.com> Merge "LocalSocket: Add support for SOCK_DGRAM and SOCK_SEQPACKET"
3e07a89b2c7fd8ac67a83b08b583682840f8fa5c 19-Jul-2013 Christopher Tate <ctate@google.com> Fix build & preserve DHCP scheduling as-is

Change-Id: I4063b18532c476280f343658bf3641495e526ed4
hcpStateMachine.java
5bc32b347f83099772fe5596615d88e4d0a7d813 18-Jul-2013 Elliott Hughes <enh@google.com> am 03a152d7: am 15cb526e: Merge "Fix import after okhttp update."

* commit '03a152d7e72f05456a463f2709ce787119e86f03':
Fix import after okhttp update.
03a152d7e72f05456a463f2709ce787119e86f03 18-Jul-2013 Elliott Hughes <enh@google.com> am 15cb526e: Merge "Fix import after okhttp update."

* commit '15cb526ece1420b1ae2061e20fd0982d82b41aae':
Fix import after okhttp update.
c0bb16673e697f76ee987648ceb828e15ae0ca06 18-Jul-2013 Narayan Kamath <narayan@google.com> Fix import after okhttp update.

OkResponseCache moved packages in change
62321.

Change-Id: I2c08c4586405e767d1931ebc5f185c7916850fa1
ttp/HttpResponseCache.java
e182bfe398a132236f723a76522bacd4d6d4c0a4 16-Jul-2013 Robert Greenwalt <rgreenwalt@google.com> Add gservices updater for carrier provisioning url

bug:9623159
Change-Id: I36697ed341353b7a3dbec5afe20241102e76f6f1
onnectivityManager.java
ConnectivityManager.aidl
bf6ff2c025405a3af496fe558dfc4468a9b45cc8 17-Jul-2013 Chad Brubaker <cbrubaker@google.com> Support multiple Vpn ManageDialogs

Move away from storing the configs in the Intent to prevent issues with
PendingIntents and multiple configs.

The Dialog now queries ConnectivityService for the configuration to
display in the management dialog.

Change-Id: I0e0ef52db840152914d117a24f776d8106e836ff
ConnectivityManager.aidl
e7d309a929bf87a5752cd1fb2d48c72e47a671a2 16-Jul-2013 Mike Lockwood <lockwood@google.com> LocalSocket: Add support for SOCK_DGRAM and SOCK_SEQPACKET

Also replaced some JNI code with libcore IO support

Change-Id: I091e2b6b8dd1fec554936c1ffab29e50f0979e4a
ocalServerSocket.java
ocalSocket.java
ocalSocketImpl.java
d1c87546b37658fbc38cb33504cc726a07e0c4ea 16-Jul-2013 Chad Brubaker <cbrubaker@google.com> Move markSocketAsUser to the top of IConnectivityManager.aidl

Move markSocketAsUser to the top of IConnectivityManager.aidl to make
calls from
framework/native/services/connectivitymanager less fragile

Change-Id: Iba92c21dfef175b570521f34e7ee2732e5a0a9c9
ConnectivityManager.aidl
d475c7042408a82b848a551ac453f59f96c20bf4 11-Jul-2013 Chad Brubaker <cbrubaker@google.com> Support routing sockets as another user

Add support for routing sockets as if they were another user's.
This is for services that handle delegated network tasks like MediaServer and DownloadManager.

Change-Id: Id20efc1f5c2cce6f8838d777762f6c0a703a9437
ConnectivityManager.aidl
4ca19e8377f33e8a80684fb4ee67f5a4bdc9ea76 14-Jun-2013 Chad Brubaker <cbrubaker@google.com> Add per user VPN support

VPNs are now per user instead of global. A VPN set by user A routes only
user A's traffic and no other user can access it.

Change-Id: Ia66463637b6bd088b05768076a1db897fe95c46c
pnService.java
12324b46049f9bcba9aa3d5fe7ae540d49a03076 11-Jul-2013 Chad Brubaker <cbrubaker@google.com> Add NetworkUtil function for marking sockets

Add NetworkUtil function for setting the SO_MARK field of sockets

Change-Id: I94389b64296d87ee928293f24a26f8dd08c3bf37
etworkUtils.java
84b2dd8927ae6ceb3594a3796926db6c3e9acc9c 11-Jul-2013 Jeff Sharkey <jsharkey@android.com> am df04f644: am f8b69275: am 1f99a483: Recover from corrupt network stats.

* commit 'df04f64434f3310d3eb71d332935616fcdc497a2':
Recover from corrupt network stats.
df04f64434f3310d3eb71d332935616fcdc497a2 11-Jul-2013 Jeff Sharkey <jsharkey@android.com> am f8b69275: am 1f99a483: Recover from corrupt network stats.

* commit 'f8b692754f7739e11c8438ab59c0760194cfacc5':
Recover from corrupt network stats.
1f99a483e410811473b12d8efedd79c738df7af3 11-Jul-2013 Jeff Sharkey <jsharkey@android.com> Recover from corrupt network stats.

When encountering corrupt stats, throw as IOException to allow
recovery at a higher level.

Bug: 9794832
Change-Id: I38d000b3bd8a4c99389c40a87ee0699efb6e9049
etworkStatsHistory.java
9f6a7f424fad614fdb991bd978009eb1321c70a6 02-Jul-2013 Wink Saville <wink@google.com> Merge commit '3b5d686e' into fix-merge-conflict

* commit '3b5d686e':
Add checkMobileProvisioning to ConnectivityService.

Conflicts:
services/java/com/android/server/ConnectivityService.java

Change-Id: Ieceb9c8f4aa4fa99258e56a720b4c74512369458
3b5d686e683b1811ca90e056065dcf3805bb256a 02-Jul-2013 Wink Saville <wink@google.com> am c45f2e05: am 59046f40: Merge "Add checkMobileProvisioning to ConnectivityService." into jb-mr2-dev

* commit 'c45f2e05e3b9d261009c66346ef2257ec105f05c':
Add checkMobileProvisioning to ConnectivityService.
ab9321d13de29cf314e8a1774b592d1f1d7e94d8 30-Jun-2013 Wink Saville <wink@google.com> Add checkMobileProvisioning to ConnectivityService.

Bug: 9279964
Change-Id: I42c326a21e05aa301e9d974ed9ac1d59472780ec
onnectivityManager.java
ConnectivityManager.aidl
obileDataStateTracker.java
6e7affeb3d0d026db20690072d8a661847888a42 29-Jun-2013 Elliott Hughes <enh@google.com> am b8292830: resolved conflicts for merge of a920f25f to jb-mr2-dev-plus-aosp

* commit 'b8292830f79fc76ffb9a1be5cd316212ac494d03':
Switch frameworks/base over from @hidden Charsets to public StandardCharsets.
a920f25fe55fc9afc7640902a200f19ce278588b 29-Jun-2013 Elliott Hughes <enh@google.com> resolved conflicts for merge of fca0f92e to stage-aosp-master

Change-Id: I4791f0ffa324a313b8390fbde6d8f82f716ecf74
d396a448b2e36e29598c954b64bfddef73f3fae0 29-Jun-2013 Elliott Hughes <enh@google.com> Switch frameworks/base over from @hidden Charsets to public StandardCharsets.

Bug: 3484927
Change-Id: I5d136d2ee629588538602766a182ae14ce5fc63c
ri.java
hcp/DhcpPacket.java
b3933b979ddff8ff90ee7ac9ab2bbf33df1e1ec9 27-Jun-2013 Kenny Root <kroot@google.com> am 67f7d8fb: am 6c042b6d: am a5a2de55: Merge "Add ALPN support to SSL socket factory"

* commit '67f7d8fbd5ad84681fbdfea184ce538c6834896a':
Add ALPN support to SSL socket factory
6c042b6d678edea0f936da994f85ba62f9a1950e 27-Jun-2013 Kenny Root <kroot@google.com> am a5a2de55: Merge "Add ALPN support to SSL socket factory"

* commit 'a5a2de55082b1f2a9ec0b99962a88063ac6d1bbf':
Add ALPN support to SSL socket factory
100d7290264338c6536739abd59879aaaa812537 25-Jun-2013 Kenny Root <kroot@google.com> Add ALPN support to SSL socket factory

This adds the ability to use Application-Layer Protocol Negotiation
(ALPN) through the SSLCertificateSocketFactory. ALPN is essentially
like Next Protocol Negotiation (NPN) but negotiation is done in the
clear. This allows the use of other protocols on the same port (e.g.,
SPDY instead of HTTP on port 80).

Change-Id: Ie62926b455e252c4c98670bbbecc1eb5c6f13990
SLCertificateSocketFactory.java
4b9a4d16872bbb50712e007b419ac0b35ff1582d 12-Jun-2013 Svetoslav Ganov <svetoslavganov@google.com> Print - platform APIs

Related changes:
Skia (inlcude PDF APIs): https://googleplex-android-review.googlesource.com/#/c/305814/
Canvas to PDF: https://googleplex-android-review.googlesource.com/#/c/319367/
Settings (initial version): https://googleplex-android-review.googlesource.com/#/c/306077/
Build: https://googleplex-android-review.googlesource.com/#/c/292437/
Sample print services: https://googleplex-android-review.googlesource.com/#/c/281785/

Change-Id: I104d12efd12577f05c7b9b2a5e5e49125c0f09da
ri.java
6db1054692495be7413d0fcc49a0f26c179d6fed 13-Jun-2013 Narayan Kamath <narayan@google.com> am 7d1fd557: am 372d21ad: am 6706ca96: Merge "Update HttpResponseCache to use the new cache API."

* commit '7d1fd557a3fd96365565531e5e45ac5e93dd8315':
Update HttpResponseCache to use the new cache API.
372d21ad69a43e3d0a26b23f45351511ed88e9e6 13-Jun-2013 Narayan Kamath <narayan@google.com> am 6706ca96: Merge "Update HttpResponseCache to use the new cache API."

* commit '6706ca96b21ebbd620fb597a23e8180f76bb37cf':
Update HttpResponseCache to use the new cache API.
68a3cd7955479d3f77fe3facd20c5ded7dafc68e 06-Jun-2013 Narayan Kamath <narayan@google.com> Update HttpResponseCache to use the new cache API.

The new API was introduced in

https://android-review.googlesource.com/#/c/59985/

Change-Id: Ie64de7fc64b818bebf1077dff407813865769387
ttp/HttpResponseCache.java
fea17de7aaa5729d3111102b2734b158403d2780 11-Jun-2013 Jeff Sharkey <jsharkey@android.com> Explicit locale when formatting machine strings.

Bug: 9390451
Change-Id: I3581c53407554a1dffd541fb42b06d68f20a7be0
etworkUtils.java
pnService.java
7a1c3fce478122b9f03464117dc94d44f7c1995e 04-Jun-2013 Jeff Sharkey <jsharkey@android.com> Accumulate network statistics based on deltas.

Network stats are now read out of the kernel in one sweep, instead of
reading per-UID. We now accumulate the delta traffic between each
stats snapshot using the well-tested SamplingCounter pattern.

Since Wi-Fi and mobile traffic have different costs, track each
separately. Avoids counting misc interfaces like loopback and
ethernet under total.

Bug: 5543387
Change-Id: I642004dc530113c27ef79f2abbae51d8af30117f
onnectivityManager.java
777e2e8545e37dfaf27f0f0ccd835f64fab7b746 15-May-2013 Robert Greenwalt <rgreenwalt@google.com> am a34b531b: Merge "EthernetDataTracker: Set network available on connected"

* commit 'a34b531bb6d2f2923f474b8c0a0c09149303e5d3':
EthernetDataTracker: Set network available on connected
a34b531bb6d2f2923f474b8c0a0c09149303e5d3 15-May-2013 Robert Greenwalt <rgreenwalt@google.com> Merge "EthernetDataTracker: Set network available on connected"
389bf4b3319734ac5c529a62d49084594702e614 14-May-2013 Matthew Xie <mattx@google.com> am 4f88ff48: Merge "Use the right fd for flush call" into jb-mr2-dev

* commit '4f88ff48ee99b5e7078f7a6b774d21a3f3434bb9':
Use the right fd for flush call
d073bfdb3a44f07ef5338306f9b9377532962290 04-May-2013 Matthew Xie <mattx@google.com> Use the right fd for flush call

bug 8498784
Change-Id: I03d3a588b01825b868d4b0229c60b7bb3b24a5f6
ocalSocketImpl.java
8c04cd041dfc96ef4af662d50aad63d998314d27 06-May-2013 Robert Greenwalt <rgreenwalt@google.com> am 341666c4: Merge "Fix sync problem in NsdManager" into jb-mr2-dev

* commit '341666c40d222145f7dfd44bdbed48590c4dc5da':
Fix sync problem in NsdManager
af2eefb70146a94dc4ae1d85ffe2b0e5e8f35a69 03-May-2013 Robert Greenwalt <rgreenwalt@google.com> Fix sync problem in NsdManager

The NsdManager init was thinking it was done before the AsyncChannel
was fully setup and if the setup were slow and the app fast, the app
could make calls to the NsdManager that it wasn't ready for.

bug:8545006
Change-Id: I2cb2a7c0a1c7f3d2b81ac0f66d37346e6d2d720d
sd/NsdManager.java
e9ae6822a80cb1f3bd13c785f1727c03d35da52e 30-Apr-2013 Kenny Root <kroot@google.com> resolved conflicts for merge of 1f6e789b to jb-mr2-dev-plus-aosp

Change-Id: I06c05d637613215b6d83df3e29cd495f6a5a0176
12e752225aa96888358294be0d725d499a1c9f03 24-Apr-2013 Kenny Root <kroot@google.com> Track change to JSSE provider

Change-Id: I35e824e47ad758ab6408e91e2ba5dcda053a82f5
SLCertificateSocketFactory.java
SLSessionCache.java
ttp/CertificateChainValidator.java
ttp/HttpsConnection.java
ttp/X509TrustManagerExtensions.java
d334cb13d694a4f1c6b885070ec48033366a4b37 29-Apr-2013 Kenny Root <kroot@google.com> am d152f7ec: Merge "Don\'t use X509CertImpl directly"

* commit 'd152f7ec1ae43d77ff8e2206724ce71da3da9913':
Don't use X509CertImpl directly
28b1f0ee02e14241ffb81f431fc54053771c1c90 24-Apr-2013 Kenny Root <kroot@google.com> Don't use X509CertImpl directly

Change-Id: Ibabee35c90c2636c6f362e4d778d6795a0cef6c2
ttp/CertificateChainValidator.java
7a21c4cdb172f6353cd4166e80910893dc981196 26-Apr-2013 Matthew Xie <mattx@google.com> am 7f3c5d16: Merge "Added flush() for bluetooth output stream" into jb-mr2-dev

* commit '7f3c5d164fd34e77b783e8c09b65645a1b143f6a':
Added flush() for bluetooth output stream
71bfafc84af4b820748b12e1a1010b0dfa7bdea6 17-Apr-2013 zzy <zhenye@broadcom.com> Added flush() for bluetooth output stream

Bug 8498784

Zebra QL420 Plus Bluetooth printer fails on Android 4.2.2
ocalSocketImpl.java
f12afa9913ac75af724d9700ff85dc68b1e0cd45 23-Apr-2013 Robert Greenwalt <rgreenwalt@google.com> am d0202945: Merge "Listen for network disconnect." into jb-mr2-dev

* commit 'd020294572f591007de1fe0aa9e4927dae72c0c9':
Listen for network disconnect.
d020294572f591007de1fe0aa9e4927dae72c0c9 22-Apr-2013 Robert Greenwalt <rgreenwalt@google.com> Merge "Listen for network disconnect." into jb-mr2-dev
1b0ca9dace3fb3b84f8a87e539c0179e6093b423 22-Apr-2013 Robert Greenwalt <rgreenwalt@google.com> Listen for network disconnect.

VPN used to just watch the interface, but that is insufficient. There
is no promise that the interface will go down when we're done with it.
Now that wifi stays on in scan-only mode despite user turning it off
it seems that the interface is left up, even in AP mode.

Now listening for ConnectivityService broadcast that the network we were on
has disconnected and tearing down the VPN then or when the interface
goes away.

bug:8550083
Change-Id: Icf414497bc55bead69de04e91f39f90ac2e6578a
ConnectivityManager.aidl
0460cb9ed68bbd612c46c52b5f17e58d31cc5125 19-Apr-2013 Robert Greenwalt <rgreenwalt@google.com> am 88cec86e: Remove STOPSHIP and defer removal.

* commit '88cec86e882e27a9e35315553cc05fdf7f281a4e':
Remove STOPSHIP and defer removal.
88cec86e882e27a9e35315553cc05fdf7f281a4e 19-Apr-2013 Robert Greenwalt <rgreenwalt@google.com> Remove STOPSHIP and defer removal.

bug:8657300
Change-Id: Ia855fdc0db7a33502838648ee002d4929b224960
hcpInfo.java
2d28d6229f8cb5e158998de421ee0a0d1ff865fe 12-Apr-2013 Robert Greenwalt <rgreenwalt@google.com> am 3016244f: Merge "Add new route.hasGateway() api" into jb-mr2-dev

* commit '3016244ffb0ee59a191b294839468a81b45a01f1':
Add new route.hasGateway() api
ca441ee2f0d53c3d3a00b2a9aa96c064378fd535 11-Apr-2013 Robert Greenwalt <rgreenwalt@google.com> 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
outeInfo.java
63582a790e891780f391a1f8c6ee30837455421f 11-Apr-2013 Robert Greenwalt <rgreenwalt@google.com> am ccbe7e6f: Merge "Use CONNECTIVITY_INTERNAL for global proxy" into jb-mr2-dev

* commit 'ccbe7e6ff16fe1afc08f0b8601d83481ba5aee3a':
Use CONNECTIVITY_INTERNAL for global proxy
a9bebc221108dd679da0557963605cd704d05743 11-Apr-2013 Robert Greenwalt <rgreenwalt@google.com> 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
onnectivityManager.java
04e740a65e2399c4a4b211408bd84f2d545d9f4a 04-Apr-2013 Jeff Sharkey <jsharkey@android.com> am 0f8e8b03: Merge "Warn when exposing file:// Uris beyond a process." into jb-mr2-dev

* commit '0f8e8b03ebb35040c299079adc1c351f37ce4885':
Warn when exposing file:// Uris beyond a process.
0f8e8b03ebb35040c299079adc1c351f37ce4885 04-Apr-2013 Jeff Sharkey <jsharkey@android.com> Merge "Warn when exposing file:// Uris beyond a process." into jb-mr2-dev
3c7df09d4dd00fb23da888726182f00788957cd9 03-Apr-2013 Brian Carlstrom <bdc@google.com> am 6fdcb168: Merge "Adjust the HttpResponseCache for OkHttp."

* commit '6fdcb168a7a0a4f508063019ca4d2ec35458f892':
Adjust the HttpResponseCache for OkHttp.
dea64ad715c121bfc5cd1881abc51fac9b1d04d6 30-Mar-2013 jwilson <jwilson@squareup.com> Adjust the HttpResponseCache for OkHttp.

Change-Id: I2a80f3c3f30a3d15673d797fa3d1211286f75030
ttp/HttpResponseCache.java
a14acd20b8d563319ea1a5974dca0e9a29f0aaef 03-Apr-2013 Jeff Sharkey <jsharkey@android.com> Warn when exposing file:// Uris beyond a process.

Check for file:// Uris inside Intents, ClipData, Notifications and
RemoteViews when StrictMode option is enabled.

Also introduces Intent.prepareToLeaveProcess() to uniformly handle
Intents about to leave an app process.

Bug: 8529070
Change-Id: I8efb43877cbc5f21eb029fc6492b3ee1415059ef
ri.java
213f98b6fe81c73f0d182fb5af312d4ce4a08041 01-Apr-2013 Lorenzo Colitti <lorenzo@google.com> 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
inkProperties.java
5acc8632a76da2b91af549c0cee938ed938a3f16 28-Mar-2013 Robert Greenwalt <rgreenwalt@google.com> Merge "Add BT - DataTracker connection" into jb-mr2-dev
224100f7055ae9caae03a94252dc2d952cbfc0ab 28-Mar-2013 Wink Saville <wink@google.com> Merge "Cleanup some debug in LinkCapabilities and Properties." into jb-mr2-dev
15bc62fe205b755582845829821373985efc60af 28-Mar-2013 Wink Saville <wink@google.com> Cleanup some debug in LinkCapabilities and Properties.

Change-Id: I5fe0124d0943f5e538e451645f32533a74c75a47
inkCapabilities.java
inkProperties.java
665e1aed5e99af1e66af56c0d73e32fd86f57273 22-Aug-2012 Robert Greenwalt <rgreenwalt@google.com> Add BT - DataTracker connection

Allows the external BT stack the means to communicate with
ConnectivityService during reverse tethering.

bug:8445208
Change-Id: Ice7dfb0b50c9481d359aed14a51372878185171c
aseNetworkStateTracker.java
onnectivityManager.java
ummyDataStateTracker.java
thernetDataTracker.java
ConnectivityManager.aidl
obileDataStateTracker.java
etworkStateTracker.java
fdadc4e242d987c09007df274e01fe678a82331f 27-Mar-2013 Lorenzo Colitti <lorenzo@google.com> 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
outeInfo.java
dddace758239a5c531f1cb9387eba0fd27b93e08 26-Mar-2013 Jeff Sharkey <jsharkey@android.com> Update TrafficStats docs to reflect behavior.

Bug: 8399623
Change-Id: If9ccd305e8a077f318a09ac1bb160b8efbf903aa
rafficStats.java
55187f18505aad67f824094061af1b6d0a0ebb38 22-Mar-2013 Robert Greenwalt <rgreenwalt@google.com> Prevent NPE in new API.

bug:8455284
Change-Id: I26ecbd024d1fe001f3af792c4e66409b2968c7ec
inkProperties.java
4aa9bcf414282e4bdd10900832baaeaa349bda50 20-Mar-2013 Lorenzo Colitti <lorenzo@google.com> Reset connections on all stacked interfaces.

Bug: 8276725
Change-Id: I7fe99c6ea123037cef3e89e3c2c17ed43cc0b1ea
inkProperties.java
1afb71377ce0743b5f36c348ddf4ee68fb7eb604 15-Mar-2013 Robert Greenwalt <rgreenwalt@google.com> Revert of Ifd0c4081a. Turning off logging.

Found our bug, so switching the logging back off.
bug:8377625

Change-Id: I254bd83c48f1dd8dd62db1fcb162d460328169c5
hcpStateMachine.java
inkProperties.java
1b36449830ef20473aac336f9b2585b6ad5987a5 15-Mar-2013 Robert Greenwalt <rgreenwalt@google.com> Merge "Revert "Turn on more logging to find this bug."" into jb-mr2-dev
15dd5be47e2cb4a5d0c25bb3a4dfdd6651333392 15-Mar-2013 Robert Greenwalt <rgreenwalt@google.com> Revert "Turn on more logging to find this bug."

This reverts commit bb5bcaaaed37e6215f5f253d968afcb10c1b2f3d
bug:8377625
Change-Id: I9663a4646f7581c86b2303aec2655cbf3742fd80
hcpStateMachine.java
6629bcd6608cccbd5997ac99bf4474c00def0431 15-Mar-2013 Robert Greenwalt <rgreenwalt@google.com> 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
inkProperties.java
28cdf1dc222e27b11902bfb15a49331fd800cd87 15-Mar-2013 Robert Greenwalt <rgreenwalt@google.com> Don't update routes if Dhcp fails.

bug:8377625
Change-Id: I11d2c29728078813bfb1245cc46e8cce2b307a2c
hcpStateMachine.java
69edd64d9bf839428ce0a7723cd0f1deda98dc0d 07-Mar-2013 Lorenzo Colitti <lorenzo@google.com> Add stacking to the NetworkStateTrackers.

Bug: 8276725
Change-Id: I55a107fea78f9cc84f15bd6c75292138fb35a1b6
aseNetworkStateTracker.java
ummyDataStateTracker.java
thernetDataTracker.java
obileDataStateTracker.java
etworkStateTracker.java
419a4ce9e461177d75eca5fd71fc8c275969e479 07-Mar-2013 Lorenzo Colitti <lorenzo@google.com> Add stacked interfaces to LinkProperties.

Bug: 8276725
Change-Id: I2f592d4c690e9af0459ae742ab16107a10d89353
inkProperties.java
bb5bcaaaed37e6215f5f253d968afcb10c1b2f3d 14-Mar-2013 Robert Greenwalt <rgreenwalt@google.com> Turn on more logging to find this bug.

bug:8377625
Change-Id: I0c086402122d45fc409d237a3b96d96146f1f74c
hcpStateMachine.java
5ddeb9ed70fdec87d2ee7d404d7a968064255478 14-Mar-2013 Robert Greenwalt <rgreenwalt@google.com> Add logging to track down bug

bug:8377625
Change-Id: Ifd0c4081a2f1238dbbc39c6904b993e2fb95455a
hcpStateMachine.java
inkProperties.java
1994bc14ab9fd3a3c5dca8851cfc0042bcb25d46 09-Mar-2013 Lorenzo Colitti <lorenzo@google.com> Unit test routes with interfaces in LinkProperties

Change-Id: Ie41a56bc9863ee72f4d7a8f72e436fc57e57b1af
inkProperties.java
ae19d2cac826e6b3ac17bc7849e2095c3c2ff27e 12-Mar-2013 Kenny Root <kroot@android.com> am f3e3a7fd: am 7ad51409: Merge "Switch TLS Channel ID API from ECPrivateKey to PrivateKey."

* commit 'f3e3a7fd3cc386b69ae3275b829ddd0d137fcac5':
Switch TLS Channel ID API from ECPrivateKey to PrivateKey.
ac5eb03a7c317e21573155b88641f4f1daef2eb9 12-Mar-2013 Alex Klyubin <klyubin@google.com> Switch TLS Channel ID API from ECPrivateKey to PrivateKey.

This is to accept both the "transparent" and "opaque" ECC private
keys. "Transparent" keys provide structured access to their key
material -- these are instances of ECPrivateKey. "Opaque" private
keys are not required to provide structured (or even any) access to
their key material -- these are instances of PrivateKey.

Change-Id: Ib22e18b45b638b429f994ed965416c753226c4ee
SLCertificateSocketFactory.java
574b00a3621d1e6db560ea2f4593a0ae7a90e145 11-Mar-2013 Lorenzo Colitti <lorenzo@google.com> Unbreak documentation build.

Change-Id: I1e904b111e23d221dcb5f917201d4c27f0c1c05b
outeInfo.java
0c0f95321f05b13cb69c13e5d9140539f32ce16a 11-Mar-2013 Peter YOON <hyundongy@google.com> EthernetDataTracker: Set network available on connected

This change fixes state mismatch found in the bugs below,
and makes the code look consistent with disconnect().

In startMonitoring(), reconnect() is called before mNMService.registerObserver().
Then dhcpThread.run() could finish without getting interfaceLinkStateChanged() callback.
In such a case, mNetworkInfo has connected but not-available state - which is contradictory.

Bug: 8113933, 8291000, 8291039
Change-Id: I29d74f8d09dcffb97d6c9f8198811bca046fef0c
thernetDataTracker.java
e16713597661c326d2bb6586a8b13e27520c4227 08-Mar-2013 Lorenzo Colitti <lorenzo@google.com> Always specify an interface for host routes.

Change-Id: I05b4d87e7d7e8237c6f4a70f1fedae00f416f581
outeInfo.java
45b9a5bb93569ca49bbd44f7a518091371687f96 08-Mar-2013 Lorenzo Colitti <lorenzo@google.com> 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
inkProperties.java
outeInfo.java
7316cd83db95871db14e395222581f8e5f902fa2 07-Mar-2013 Robert Greenwalt <rgreenwalt@google.com> Revert "Add default route constants to RouteInfo."

This reverts commit 642eb63a65b58fb31635f264fc8ffe44fdf075c5

Change-Id: Ide6d7f3b935da41477b736ef0ef20ec9872563e1
outeInfo.java
642eb63a65b58fb31635f264fc8ffe44fdf075c5 07-Mar-2013 Lorenzo Colitti <lorenzo@google.com> Add default route constants to RouteInfo.

Bug: 8276725
Change-Id: I9c3ad7393430de9275f5b1c0189a94e5a27975fc
outeInfo.java
45e9ede55f3c5049fed1fc5002bd5084d1cd7eac 26-Feb-2013 Dianne Hackborn <hackbod@google.com> Add version code constant for JB MR2.

Change-Id: I60fc76bbeb3c5e85d716179e9e3ea5758bafaf69
rafficStats.java
5a6bdc46e2fdc8cfd930396773dd89efd19fa1f1 15-Feb-2013 Robert Greenwalt <rgreenwalt@google.com> Improve ConnectivityManager docs

Also fix some permission problems.
bug:5738328

Change-Id: Ib32c223f425b1fc03b8cce528456bcb50b540fdf
onnectivityManager.java
4fa63b2d5e3b2e2a85bf17a9bf056cbdfb7046f0 21-Feb-2013 Jeff Sharkey <jsharkey@android.com> Improve notification UI for lockdown VPN.

Bug: 7064111
Change-Id: I9554f6a426697b4abeb2ddd0827d314920e88ed6
onnectivityManager.java
108da0cfa4a2f59cc953a4ec61314e69b61d6777 12-Feb-2013 Russell Brenner <russellbrenner@google.com> Adjust captive portal test for setup wizard

During setup wizard, perform captive portal test without the typical
delays.

Change-Id: If596948e732966817aae6201440e87e19be0c2f8
aptivePortalTracker.java
onnectivityManager.java
9a2c2a6da90abbcc9a064c20e93ed885651f4ae1 15-Jan-2013 Jeff Sharkey <jsharkey@android.com> Parse network stats using native code.

Switch to parsing detailed network stats with native code, which
is 71% faster than ProcFileReader.

Change-Id: I2525aaee74d227ce187ba3a74dd08a2b06514deb
etworkStats.java
92be93a94edafb5906e8bc48e6fee9dd07f5049e 16-Jan-2013 Jeff Sharkey <jsharkey@android.com> Improve TrafficStats UID APIs.

Deprecate transport layer statistics, leaving only the summarized
network layer statistics.

Improve documentation to be clear about layers where measurements
occur, and their behavior since boot. Under the hood, move to using
xt_qtaguid UID statistics.

Bug: 6818637, 7013662
Change-Id: I9f26992e5fcdebd88c671e5765bd91229e7b0016
rafficStats.java
4b17a1321db24b1a59c29b580aed7482a43febee 06-Feb-2013 Jeff Sharkey <jsharkey@android.com> Offer parsed TCP interface statistics.

Also switch to newer iface_stat_fmt numbers, which are measured at
XT level instead of dev.

Bug: 7903145, 6569689
Change-Id: Ibeb742966b8c89916ea31a49388a5dbe25a5f67f
rafficStats.java
2602030a007d902ace3fc573b2820cee31eefc95 28-Jan-2013 Wink Saville <wink@google.com> Merge "Add protected log methods to StateMachine"
58c73c3f76c231cf128041aefadd4b6a6bcefac2 28-Jan-2013 Wink Saville <wink@google.com> Add protected log methods to StateMachine

This allow child classes to Override the logging and
have consistent behavior across StateMachines.

Change-Id: I7e23a44d08ca304ade2d7830fd0e307f63f1879e
aptivePortalTracker.java
e7e0a072704a5dec3d709fce60762e515382ee42 26-Jan-2013 Kenny Root <kroot@android.com> am 4dca3946: am df1498dc: am bf043b50: Merge "Add TLS Channel ID support to SSLCertificateSocketFactory."

# By Alex Klyubin
# Via Android Git Automerger (2) and others
* commit '4dca3946177aaea54d78d39273324caacf74a7bb':
Add TLS Channel ID support to SSLCertificateSocketFactory.
df1498dcbac86018b719cda8bf2e9ff3a6dedec8 25-Jan-2013 Kenny Root <kroot@android.com> am bf043b50: Merge "Add TLS Channel ID support to SSLCertificateSocketFactory."

# By Alex Klyubin
# Via Alex Klyubin (1) and Gerrit Code Review (1)
* commit 'bf043b505c945403752227d89b74bacd7fbcd608':
Add TLS Channel ID support to SSLCertificateSocketFactory.
4ef6c9b6a16c9b65699705aaa64977fc60dd3331 18-Jan-2013 Alex Klyubin <klyubin@google.com> Add TLS Channel ID support to SSLCertificateSocketFactory.

This adds a new method setChannelIdPrivateKey as a hidden API.

See http://tools.ietf.org/html/draft-balfanz-tls-channelid-00 for
more information about the TLS Channel ID extension.

Change-Id: I73c1905afdce01d4831de7faa55ea4496575b5a5
SLCertificateSocketFactory.java
ca6486e7f579fa885b6213513f26ce2ca49f873b 15-Jan-2013 Sasha Levitskiy <sanek@google.com> Removed Throttle Manager as obsolete

Change-Id: I63e8514f34c880d0badaab33a347f54a80c84da6
ThrottleManager.aidl
hrottleManager.java
a268ba51f77527585363e48aec1be45b9ec97061 12-Jan-2013 Robert Greenwalt <rgreenwalt@google.com> Merge "Up our DNS server support from 2 > 4"
3c97f944eb08a2720b43382d94a56383c2cd6b9b 10-Jan-2013 Robert Greenwalt <rgreenwalt@google.com> Up our DNS server support from 2 > 4

bug:5958524
Change-Id: I81a9d9293049bcfc16c15ee856887aa7ed076638
hcpResults.java
0ada5d656de4c1ac76bc06221a1f5e561e50e258 05-Jan-2013 Jeff Sharkey <jsharkey@android.com> Merge "Expose roaming flag for testing."
305efe23a326d0f886d3cf66ea05dfbd30e714e2 05-Jan-2013 Brian Carlstrom <bdc@google.com> am 498eaf58: am bc7d5a55: am 537fb0af: Merge "Use most specific attributes for distinguished name display"

* commit '498eaf58ad399e42cf7b3aca020b828c35023288':
Use most specific attributes for distinguished name display
bc7d5a55b22ce30af250cc7468b6c5987cd25dfd 05-Jan-2013 Brian Carlstrom <bdc@google.com> am 537fb0af: Merge "Use most specific attributes for distinguished name display"

* commit '537fb0afe24a520e7b9a2442786b6fb4fe194392':
Use most specific attributes for distinguished name display
91154ce658483488a1390e3da58cc2950fb02acb 22-Dec-2012 Brian Carlstrom <bdc@google.com> Use most specific attributes for distinguished name display

Bug: 7894348
Bug: http://code.google.com/p/android/issues/detail?id=41662
Change-Id: I8048a53b8a9a17b384f12b6a4f40071bb3dd3e04
ttp/SslCertificate.java
836ecb539f32bcb5b404fb74897f23574f272bb8 03-Jan-2013 Jeff Sharkey <jsharkey@android.com> Expose roaming flag for testing.

Change-Id: I29ef6fc59926a97f4e97c561387ac9bc0e4e4769
etworkInfo.java
2e4dce0dd24aa89ca6adf6559f13d3e342ff8558 19-Dec-2012 Jeff Sharkey <jsharkey@android.com> Fix metered SSID matching regression.

WifiInfo changed to return SSIDs with quotes included, so relax our
identity matching to accept matches regardless of quotedness.

Bug: 7695807
Change-Id: Ib5d06666035e06b2d4b2f7cb498767d63b1b1828
etworkTemplate.java
4c8b7481cf8f2e571a160d086079e2f65a6afb05 07-Dec-2012 Robert Greenwalt <rgreenwalt@google.com> Fix javadoc break

Change-Id: Ia69a5cbead61747537269e267dcd8da320d61ba3
onnectivityManager.java
37b8dfbadee31a4be4c6ac3939cd5e358428001c 07-Dec-2012 Robert Greenwalt <rgreenwalt@google.com> Merge "Refactor getPersistedNetworkPreference"
002221d34a67f37b886cbff2e01ffeac43ccbeec 07-Dec-2012 Adam Hampson <ahampson@google.com> am fd0b2587: am 6a9d5761: EthernetDataTracker: Start DHCP on Link Up

* commit 'fd0b25875c3fe005329d412a2500da1951ff6a7b':
EthernetDataTracker: Start DHCP on Link Up
fd0b25875c3fe005329d412a2500da1951ff6a7b 07-Dec-2012 Adam Hampson <ahampson@google.com> am 6a9d5761: EthernetDataTracker: Start DHCP on Link Up

* commit '6a9d57617a9b502c65d62f053ad8bd0309afdc24':
EthernetDataTracker: Start DHCP on Link Up
dcf03f39725deec68f644f6162fdfcc884dc9964 16-Nov-2012 Jianzheng Zhou <jianzheng.zhou@freescale.com> Refactor getPersistedNetworkPreference

Optimize for updating mNetworkPreference according to device's networkAttributes
setting from overlay config.xml when connectivityservice start.

Change-Id: I90286332d4f453038f1ddac7dd9d1265d96b4859
Signed-off-by: Jianzheng Zhou <jianzheng.zhou@freescale.com>
onnectivityManager.java
6a9d57617a9b502c65d62f053ad8bd0309afdc24 05-Dec-2012 Adam Hampson <ahampson@google.com> EthernetDataTracker: Start DHCP on Link Up

The behavior of mLinkUp has previously changed so that it only
represents the link state. This changes fixes
interfaceLinkStateChanged() so that it triggers a reconnect based
only on the present link state.

Change-Id: I950e04e1f5b5019d59d3b9530f369f8b8f13134a
Signed-off-by: Adam Hampson <ahampson@google.com>
thernetDataTracker.java
7905db94add8bab7709fe5426f383e12b1b47fe9 29-Nov-2012 Elliott Hughes <enh@google.com> am 878da653: am 9ed4abd8: Merge "Fix AndroidHttpClient documentation error."

* commit '878da6532836ec09f6d27e8f5af79444c79e78b6':
Fix AndroidHttpClient documentation error.
878da6532836ec09f6d27e8f5af79444c79e78b6 29-Nov-2012 Elliott Hughes <enh@google.com> am 9ed4abd8: Merge "Fix AndroidHttpClient documentation error."

* commit '9ed4abd875852524c5dd366f30b5b7bda93f0da3':
Fix AndroidHttpClient documentation error.
d2dcd7ada3e864de879dd64fbebd3a857b1bc181 29-Nov-2012 Elliott Hughes <enh@google.com> Fix AndroidHttpClient documentation error.

AndroidHttpClient doesn't let the user add HttpRequestInterceptor classes.

Bug: http://code.google.com/p/android/issues/detail?id=37294
Change-Id: I66f6581fa321dc16ddfe35c8f4242bc31f79bdfa
ttp/AndroidHttpClient.java
60bfacd8ef765f7f8ee43224a9d85960dea2b1c8 16-Nov-2012 Robert Greenwalt <rgreenwalt@google.com> Merge "Support for dns domain."
8058f621891b41c6864b6004c1c47647436a0ac1 09-Nov-2012 Robert Greenwalt <rgreenwalt@google.com> Support for dns domain.

bug:6799630
Change-Id: I10070eddb65b7b60f0bc2b3e1e320e1aa4ec6e98
hcpResults.java
inkProperties.java
8e2ffc76a9363bd7a7d61c8ba432ab537eab7467 16-Nov-2012 Jeff Sharkey <jsharkey@android.com> am 9634e970: am bfea4f04: am f5377a72: Merge "Useful annotations for code documentation." into jb-mr1.1-dev

* commit '9634e970679c687572e2da84250adc8baf91a8c3':
Useful annotations for code documentation.
9634e970679c687572e2da84250adc8baf91a8c3 15-Nov-2012 Jeff Sharkey <jsharkey@android.com> am bfea4f04: am f5377a72: Merge "Useful annotations for code documentation." into jb-mr1.1-dev

* commit 'bfea4f04f226f1adf374412628d5945c380382a7':
Useful annotations for code documentation.
77c2655adb1cfd017f1f41aad2974620c2f02903 14-Nov-2012 Maurice Chu <mochu@google.com> Add method name to curl output

Backporting change made to AndroidHttpClient.java from
CL I0f3819e84542023fca65ec4a29534ef32e877570.

Bug: 7499444
Change-Id: Ie67d2917fa378afb00ec4bd7c3de238f48f7c6af
ttp/AndroidHttpClient.java
8b2c3a14603d163d7564e6f60286995079687690 12-Nov-2012 Jeff Sharkey <jsharkey@android.com> Useful annotations for code documentation.

Bug: 6537978
Change-Id: I806c3c09e3255f8789455f13bf37c1dde2a93f1f
etworkStats.java
etworkTemplate.java
321020b7e08215b813f15caaad1c59ac215831c6 09-Nov-2012 Robert Greenwalt <rgreenwalt@google.com> Merge "Remove DhcpInfoInternal"
4717c261b2c670d5c0925e3527a864aa52db6ac0 31-Oct-2012 Robert Greenwalt <rgreenwalt@google.com> Remove DhcpInfoInternal

First step in accepting a set of patches.
bug:6799630

Change-Id: I6c894c60aeb3022960c2aaa45451bb1dde2b493b
hcpInfo.java
hcpInfoInternal.java
hcpResults.aidl
hcpResults.java
hcpStateMachine.java
thernetDataTracker.java
inkProperties.java
etworkUtils.java
outeInfo.java
37794c200fa24e622d842d420b49a2a2a87a38bb 08-Nov-2012 Irfan Sheriff <isheriff@google.com> am f264e8e3: am 567a2919: Merge "Stop supplicant and dhcp before start" into jb-mr1.1-dev

* commit 'f264e8e34e32bfb8e7e75b61b9da9b6f219690b0':
Stop supplicant and dhcp before start
58ed5d748c0b9b64845975ef5844ad313de7c3f6 07-Nov-2012 Kenny Root <kroot@google.com> am 768d9e1a: Merge "Correct executable bit for source files"

* commit '768d9e1a72ceee7d4a5f608776b87b62d6ce4a04':
Correct executable bit for source files
3a084af2e90849aaa8beb3a610189e3399c63ea0 07-Nov-2012 Kenny Root <kroot@google.com> Correct executable bit for source files

Many media files and source code files were marked as executable in Git.
Remove those.

Also a shell script and python script were not marked as executable.

Change-Id: Ieb51bafb46c895a21d2e83696f5a901ba752b2c5
ri.aidl
ttp/package.html
ackage.html
511d5346ced4b37e4ba68e0bd089d4dad8b3bff7 04-Nov-2012 Irfan Sheriff <isheriff@google.com> Stop supplicant and dhcp before start

Bug: 7227463
Change-Id: Iaa0df7522edc38d25fae2bbda8d24490e997e733
hcpStateMachine.java
b0a579f83369ca2daa885222a35f1cd3c054ab11 02-Nov-2012 Jeff Sharkey <jsharkey@android.com> Sanity check network stats coming from disk.

Throw early when structure is unstable, which allows the normal
recoverFromWtf() path to recover automatically.

Bug: 7440485
Change-Id: Ic150d17daac4de7c9ff3489025403a9b485b4620
etworkStatsHistory.java
ebb8f413e63dee6d96904a49a3508b97671e5fe8 03-Oct-2012 Irfan Sheriff <isheriff@google.com> Add icon for mobile notification

Bug: 7087564
Change-Id: If856bdfa28c024fb775fd3f8231bd5a16fef59e6
aptivePortalTracker.java
b8aad91f059527e04abaf8a83ed1ce6b5f09c55d 02-Oct-2012 Irfan Sheriff <isheriff@google.com> Add operator name to network notification

Bug: 7087564
Change-Id: Ibe7a09fc6858dfea5f65092777bbd6ca82177043
aptivePortalTracker.java
625239a05401bbf18b04d9874cea3f82da7c29a1 27-Sep-2012 Jeff Sharkey <jsharkey@android.com> Migrate more Secure settings to Global.

Migrate networking, storage, battery, DropBox, and PackageManager
related Secure settings to Global table.

Bug: 7232014, 7231331, 7231198
Change-Id: I772c2a9586a2f708c9db95622477f235064b8f4d
aptivePortalTracker.java
onnectivityManager.java
nsPinger.java
13987fb43255ccb3802d415e32b1c5caf14291bb 27-Sep-2012 Brian Carlstrom <bdc@google.com> Merge "Reverting public setSoWriteTimeout" into jb-mr1-dev
992f238d13fff7c21b60ef6958784a4ed2156784 26-Sep-2012 Brian Carlstrom <bdc@google.com> Reverting public setSoWriteTimeout

This reverts fd901f735c858af8ec8884b2e7ab71a46a9639e6 and 5e21bf934b2a71b595deb9856a2044eea4dbce86

Bug: 7237764
Bug: 6693087
Change-Id: I7cc9657e4df219481eb33de803081a01b13ee0f2
SLCertificateSocketFactory.java
ttp/AndroidHttpClient.java
1951db86f527ff4e8c2ddf4306779ce956cd372d 26-Sep-2012 Jeff Sharkey <jsharkey@android.com> Merge "Multi-user ringtone playback." into jb-mr1-dev
65c4a2b26cd8776b0927e9b0e07ecf53bd31b627 26-Sep-2012 Jeff Sharkey <jsharkey@android.com> Multi-user ringtone playback.

Change RingtonePlayer to open content:// Uris based on requesting
UserHandle. Grant SystemUI visibility to all emulated storage so
it can play ringtones for apps without READ_EXTERNAL_STORAGE.

Resolve canonical file:// Uris before passing out of source app,
replacing any /emulated_legacy/-style paths with user-specific
variant so they can be opened by SystemUI. Calling for RemoteViews,
Ringtones, and Notifications.

Bug: 7202982
Change-Id: Ibf0eca8df80c1486711144a7b648f464aadfe099
ri.java
fd901f735c858af8ec8884b2e7ab71a46a9639e6 26-Sep-2012 Alon Albert <aalbert@google.com> Add a static generator that takes a Socket Write Timeout Argumanet

Use it from AndroidHttpClient

Bug: 6693087
Change-Id: I08648e441a6431d0944caaec0db516a26671f2a5
SLCertificateSocketFactory.java
ttp/AndroidHttpClient.java
5e21bf934b2a71b595deb9856a2044eea4dbce86 23-Sep-2012 Brian Carlstrom <bdc@google.com> Unhide SSLCertificateSocketFactory.setSoWriteTimeout

Bug: 6693087
Change-Id: I585c2a61226da58077fd7cd7826695ce17380248
SLCertificateSocketFactory.java
7ab7a8b582b29d34ec0fdbd0c727e225f350bb30 22-Sep-2012 Brian Carlstrom <bdc@google.com> Add SSLCertificateSocketFactory.setSoWriteTimeout to allow SO_SNDTIMEO to be specified

Bug: 6693087
Change-Id: Id7b07f033b5ff9f01da33d535e01aa909aace8a1
SLCertificateSocketFactory.java
9538bdd3c77968c7673719c580ae653ede4654d6 20-Sep-2012 Irfan Sheriff <isheriff@google.com> Captive check for both mobile and wifi

Bug: 7113195
Bug: 7102238
Bug: 7087564

Change-Id: Iac08db9de3935338ad498aa3983d2ca82057dda1
aptivePortalTracker.java
daa57e8d1866fe4579c280c41604f3660db7cd01 19-Sep-2012 Jeff Sharkey <jsharkey@android.com> Migrate network stats from removed users.

When a user is removed, migrate all network stats belonging to that
user into special UID_REMOVED bucket. Also removes those stats from
kernel to avoid double-counting if another user is created.

Bug: 7194784
Change-Id: I03f1d660fe3754566326b7749cae8068fc224ea9
etworkStats.java
5d1a870a25f7495755432a42cf8c81818dc369fa 19-Sep-2012 Narayan Kamath <narayan@google.com> Merge "Add APIs to enable SNI and session tickets on sockets." into jb-mr1-dev
5d4206a55c5336a163408422ba3302f5fd8463f7 19-Sep-2012 Irfan Sheriff <isheriff@google.com> Merge "Get strings in" into jb-mr1-dev
7f0aaac7f2a2bff6168467132c704fce2c7ca170 19-Sep-2012 Irfan Sheriff <isheriff@google.com> Get strings in

Bug: 65904101
Bug: 7087564
Change-Id: Ic4887a737a640010e12efd2a16b24af2215ba72a
aptivePortalTracker.java
8071124375e336b98de45b44b9884c92cdfd9bd8 19-Sep-2012 Andy Stadler <stadler@google.com> Move X509TrustManagerExtensions to correct directory

Also removed unused imports.

Original Change-Id: If117ffd2240a7bf3437115f3cf2f766c4e249600

Change-Id: I66886ee9792c23a1e421022fd1f675fdf35ea049
509TrustManagerExtensions.java
ttp/X509TrustManagerExtensions.java
cb4c5819758a7e2951bd4818383f7c5e10a5f016 18-Sep-2012 Geremy Condra <gcondra@google.com> Fix bad isinstance check in X509TrustManagerExtensions and add test.

Change-Id: I333957186655b2543a637dafa8c51b0bba9d4dfb
509TrustManagerExtensions.java
ed41a4e2d81fceafbddb1e9a4ca327535bb739ef 15-Sep-2012 Geremy Condra <gcondra@google.com> Initial commit for X509TrustManagerExtensions.

This provides a mechanism for exposing the bells
and whistles we've attached to trust managers to
third parties.

Change-Id: If117ffd2240a7bf3437115f3cf2f766c4e249600
509TrustManagerExtensions.java
b4db962da0fecd9a6f2714148bbdea023610842f 17-Sep-2012 Narayan Kamath <narayan@google.com> Add APIs to enable SNI and session tickets on sockets.

Change-Id: I34c546b22d31476a670c0e8f5724185e838903b0
SLCertificateSocketFactory.java
d0c6ccbafdebc73d03cf3cd47f02f9f6c78a69ff 15-Sep-2012 Jeff Sharkey <jsharkey@android.com> Move NetworkPolicy from apps to UID.

For multi-user devices, switch to storing policy per-user instead of
per-app. Also watch for user added/removed broadcasts to clean up
policies and apply global restrictions.

Bug: 7121279
Change-Id: Ia7326bd0ebe0586fa4ec6d3a62f6313dc8814007
NetworkPolicyManager.aidl
etworkPolicyManager.java
f743e54f2d761c742d99ac868705818616dcf74f 15-Sep-2012 Geremy Condra <gcondra@google.com> Change verifyServerDomainAndCertificates to pass in a hostname.

This is required for cert pinning.

Change-Id: I16041f17e97d9ae592a2b809f6a8164268338d1b
ttp/CertificateChainValidator.java
f008ab727e46926bff018ef970ea8265ccc0f45d 12-Sep-2012 Robert Greenwalt <rgreenwalt@google.com> am 5d33e76c: am 65208857: am 2415841c: Merge "EthernetDataTracker: indicate link up based on flags"

* commit '5d33e76cff65245d03f592a3dbcbf2e17a2f1581':
EthernetDataTracker: indicate link up based on flags
65208857d35efe39c1dbc1da23f2caf7257232fc 12-Sep-2012 Robert Greenwalt <rgreenwalt@google.com> am 2415841c: Merge "EthernetDataTracker: indicate link up based on flags"

* commit '2415841c370d855d7f3a3e6a537e641c69a57097':
EthernetDataTracker: indicate link up based on flags
b6b72f5411d02b928441543dc4c5e8545e48920a 11-Sep-2012 Vishal Mahaveer <vishalm@ti.com> EthernetDataTracker: indicate link up based on flags

Indicate link up state based on flags/interface up, and not on IP address.
This is for ethernet interfaces that already exists.

Change-Id: Ib342d519c483bbb2dfa08cfac2c0c1a288cee7c0
Signed-off-by: Vishal Mahaveer <vishalm@ti.com>
thernetDataTracker.java
a28c18fc618e4bf58da6417166b1ee249dc16ea9 30-Aug-2012 Irfan Sheriff <isheriff@google.com> Merge "Fix DHCP handling at disconnect/reconnect" into jb-mr1-dev
6bfc88876ab575913299b477528225a4d7bf8232 30-Aug-2012 Irfan Sheriff <isheriff@google.com> Fix DHCP handling at disconnect/reconnect

Wifi can have a quick disconnection followed by a reconnection. We used to
create a new DHCP state machine thread for every new connection and
never really waited until it quit after disconnect. This may have lead to
situations where repeated disconnect/reconnects resulted in multiple dhcp
start calls.

We now keep the statemachine after a disconnect and only shut it at supplicant
stop.

Bug: 6417686
Change-Id: Icf66efdc654be886e3eb46c81f09f8cce536f2f6
hcpStateMachine.java
69626dab17f9e059cfa2e8c3ce4ec9aaa5f9853e 29-Aug-2012 Jean-Baptiste Queru <jbq@google.com> am 4a4edbbf: am 7fecf5f4: Merge "Make addAddress locale safe"

* commit '4a4edbbfce2e1a8b34b5b9ff2793eace303dae5a':
Make addAddress locale safe
4a4edbbfce2e1a8b34b5b9ff2793eace303dae5a 29-Aug-2012 Jean-Baptiste Queru <jbq@google.com> am 7fecf5f4: Merge "Make addAddress locale safe"

* commit '7fecf5f4513a94adb71ba29b9918565b4b5e5e7b':
Make addAddress locale safe
3cd42dfd50adf8d78a9d4984957a96dec2ba13f4 28-Aug-2012 Johan Redestig <johan.redestig@sonymobile.com> Make addAddress locale safe

Using regular string concatenation to avoid unexpected
results in some locales.

Change-Id: I47dd5e174c4a2e88dc18e014002820cdbf63fcad
pnService.java
c5fd6e59db10bb0069cf64394dce3955234757c1 28-Aug-2012 Irfan Sheriff <isheriff@google.com> Fix build

Change-Id: Id17b70154b3f8a101457b20fb37db0a16159dff9
aseNetworkStateTracker.java
da6da0907b28d4704aabbdb1bbeb4300954670d1 16-Aug-2012 Irfan Sheriff <isheriff@google.com> Captive portal handling

We now notify the user of a captive portal before switching to the network as default.
This allows background applications to continue to work until the user confirms he
wants to sign in to the captive portal.

Also, moved out captive portal handling out of wifi as a seperate component.

Change-Id: I7c7507481967e33a1afad0b4961688bd192f0d31
aptivePortalTracker.java
onnectivityManager.java
ummyDataStateTracker.java
thernetDataTracker.java
ConnectivityManager.aidl
obileDataStateTracker.java
etworkInfo.java
etworkStateTracker.java
69ddab4575ff684c533c995e07ca15fe18543fc0 25-Aug-2012 Jeff Sharkey <jsharkey@android.com> Always-on VPN.

Adds support for always-on VPN profiles, also called "lockdown." When
enabled, LockdownVpnTracker manages the netd firewall to prevent
unencrypted traffic from leaving the device. It creates narrow rules
to only allow traffic to the selected VPN server. When an egress
network becomes available, LockdownVpnTracker will try bringing up
the VPN connection, and will reconnect if disconnected.

ConnectivityService augments any NetworkInfo based on the lockdown
VPN status to help apps wait until the VPN is connected.

This feature requires that VPN profiles use an IP address for both
VPN server and DNS. It also blocks non-default APN access when
enabled. Waits for USER_PRESENT after boot to check KeyStore status.

Bug: 5756357
Change-Id: If615f206b1634000d78a8350a17e88bfcac8e0d0
onnectivityManager.java
ConnectivityManager.aidl
82f8521d386f3109147c477d04e5e90e5c715fa0 24-Aug-2012 Jeff Sharkey <jsharkey@android.com> Migrate legacy VPN arguments to system_server.

Generate the racoon and mtpd daemon arguments in system_server,
instead of accepting them from Settings.

Bug: 5756357
Change-Id: I42c1a644f6add477fe4222342640d7db15982cb8
ConnectivityManager.aidl
899223b97c9b0ae56a8211a46600914c0ecfd854 05-Aug-2012 Jeff Sharkey <jsharkey@android.com> Begin moving VPN to NetworkStateTracker pattern.

Created base tracker that handles common bookkeeping, and move VPN
to become a tracker. VPN status is now reflected in NetworkInfo, and
is mapped to LegacyVpnInfo.

Legacy VPN now "babysits" any init services it starts, watching for
when they stop unexpectedly.

Bug: 5756357
Change-Id: Iba7ec79da69469f6bd9a970cc39cf6b885b4c9c4
aseNetworkStateTracker.java
dfe5578771080bf225225d3c903e186d92f5b274 22-Aug-2012 Irfan Sheriff <isheriff@android.com> am c584a24b: am 2140d1de: Merge "Avoid system_server crashing due to mac address is null"

* commit 'c584a24ba1af0c831adf46fe57b69af396fb925c':
Avoid system_server crashing due to mac address is null
c584a24ba1af0c831adf46fe57b69af396fb925c 22-Aug-2012 Irfan Sheriff <isheriff@android.com> am 2140d1de: Merge "Avoid system_server crashing due to mac address is null"

* commit '2140d1de47579db839b6a4ccc87394e80449d7a6':
Avoid system_server crashing due to mac address is null
21326d8b77cfd1567d87d5ebe3e327b744632e24 22-Aug-2012 Chih-Wei Huang <cwhuang@linux.org.tw> Avoid system_server crashing due to mac address is null

It's possible that the mac address is null (getMacAddress() of WifiNative.java).
In this case system_server will crash like:

E AndroidRuntime: *** FATAL EXCEPTION IN SYSTEM PROCESS: WifiWatchdogStateMachine
E AndroidRuntime: java.lang.NullPointerException
E AndroidRuntime: at android.net.arp.ArpPeer.<init>(ArpPeer.java:57)
E AndroidRuntime: at android.net.wifi.WifiWatchdogStateMachine.doArpTest(WifiWatchdogStateMachine.java:866)

Check the mac address before parsing to avoid crashing.

Change-Id: I5d4205c04d479a3a2837172c6382816ea4bf74d6
rp/ArpPeer.java
d14e17627266ff8cf804d1f8241a0a4bde7a0ab4 20-Aug-2012 Robert Greenwalt <rgreenwalt@google.com> Update TCP buffer size when switching network type

Import of non-merging change 41612 from AOSP

When PDP connects in GSM network, the TCP buffer window size is
set to max 8760. If the phone swicthes to UMTS, the TCP buffer
size is not updated to UMTS, i.e. GPRS buffer size is still
used with limited data transfer spead as a result.
This fix makes sure the TCP buffer size is updated when
switching network type.

Change-Id: Ic44a557677ffe629e83ce1f522a9f058bee6e7b2
obileDataStateTracker.java
etworkStateTracker.java
c48ee60426a741d0a8e7df7df8af2a9ac24cee85 17-Aug-2012 Robert Greenwalt <rgreenwalt@google.com> am 6626398a: Merge "Fix for updating TCP buffer size when switching network type"

* commit '6626398a72ae592e3a9184c9b0868df0fc1f1724':
Fix for updating TCP buffer size when switching network type
6626398a72ae592e3a9184c9b0868df0fc1f1724 17-Aug-2012 Robert Greenwalt <rgreenwalt@google.com> Merge "Fix for updating TCP buffer size when switching network type"
1968256926a13e8d809256f652073b0532199fd1 17-Aug-2012 Magnus Strandberg <magnus.strandberg@sonymobile.com> Fix for updating TCP buffer size when switching network type

When PDP connects in GSM network, the TCP buffer window size is
set to max 8760. If the phone swicthes to UMTS, the TCP buffer
size is not updated to UMTS, i.e. GPRS buffer size is still
used with limited data transfer spead as a result.
This fix makes sure the TCP buffer size is updated when
switching network type.

Change-Id: Iaa527c84f56cae108f4c7276bbed10552faaff6c
obileDataStateTracker.java
etworkStateTracker.java
4e4306ab14f1f2125035ed43fbb021db8bc99c3f 06-Aug-2012 Jeff Sharkey <jsharkey@android.com> Merge "Include network type that caused broadcast." into jb-mr1-dev
75fbb4bdfde9188081f000506845d852f31362f0 06-Aug-2012 Jeff Sharkey <jsharkey@android.com> Include network type that caused broadcast.

Network type can be obtained through EXTRA_NETWORK_INFO, but offer
it as first-class extra since the returned NetworkInfo is deprecated.

Bug: 6936247
Change-Id: Ief59577afd2bd930f0f4c5650b413feef86bfbc3
onnectivityManager.java
065b299df4159602327977dd007cb2cd6b64ab20 05-Aug-2012 Jeff Sharkey <jsharkey@android.com> Make LocalSocket Closeable.

Enables usage of IoUtils.closeQuietly().

Change-Id: I91126297c1f235ae9da09f82d8f4f22db46558eb
ocalSocket.java
6c5cec881a722b6cebfabbc1e332a7c92cd2ad5c 01-Aug-2012 Robert Greenwalt <rgreenwalt@google.com> am 6b6ce6bf: am a5637bac: Merge "Telephony: Add HSPAP to getTcpBufferSizesPropName"

* commit '6b6ce6bfce56c2f3ce007b33d3f834f8dd62b626':
Telephony: Add HSPAP to getTcpBufferSizesPropName
6b6ce6bfce56c2f3ce007b33d3f834f8dd62b626 01-Aug-2012 Robert Greenwalt <rgreenwalt@google.com> am a5637bac: Merge "Telephony: Add HSPAP to getTcpBufferSizesPropName"

* commit 'a5637bac23611a985696c92b49f93964f435ecb5':
Telephony: Add HSPAP to getTcpBufferSizesPropName
24d19fb6ab94cc5fd23f1c9a1d7916948a7fd571 01-Aug-2012 Jeff Sharkey <jsharkey@android.com> Revert "API to adjust network stats."
NetworkStatsService.aidl
rafficStats.java
e7ed1ce4c84fe92caafc97b1f9044c6647aa3f7f 28-Jul-2012 Jeff Sharkey <jsharkey@android.com> API to adjust network stats. DO NOT MERGE.

Enables system apps to correctly account network usage performed on
behalf of another application.

Bug: 6695246
Change-Id: I39e243afd57936b6b30157a6ca511a17b6c55c39
NetworkStatsService.aidl
rafficStats.java
4c628eba480d271d5547af5d4fafc01e0e53a5eb 23-Jul-2012 Jeff Sharkey <jsharkey@android.com> Split NST handler events away from CS internals.

Instead of sharing event space, use a different handler backed by
the same looper.

Change-Id: I11f1e4701c341665770ca640f3cba0c295bb7561
etworkStateTracker.java
897b311ccbcc3e6a21a03f36101e1fd804810ef8 31-Mar-2012 Naveen Kalla <nkalla@codeaurora.org> Telephony: Add HSPAP to getTcpBufferSizesPropName

When device is camped on HSPAP TCP Buffer sizes need to be configured
properly to support higher data rates. Without this change, default TCP
buffer sizes will be used and throughput will be low.

Change-Id: Ica5884b35851a32e57c82c63b148df5be580ae83
obileDataStateTracker.java
ddd88726a247e4100cb62b3dc9d0887ca2ae2ec4 26-Jul-2012 Jeff Smith <whydoubt@yahoo.com> am 71930dd7: am a45746ef: Fix several cases of broken droiddoc syntax external issue 35214

* commit '71930dd77e4dc6f6be5c648019d2ab0da5f0584c':
Fix several cases of broken droiddoc syntax external issue 35214
71930dd77e4dc6f6be5c648019d2ab0da5f0584c 25-Jul-2012 Jeff Smith <whydoubt@yahoo.com> am a45746ef: Fix several cases of broken droiddoc syntax external issue 35214

* commit 'a45746efadd11bb7dfab026fb3c81a25fae74ca4':
Fix several cases of broken droiddoc syntax external issue 35214
a45746efadd11bb7dfab026fb3c81a25fae74ca4 19-Jul-2012 Jeff Smith <whydoubt@yahoo.com> Fix several cases of broken droiddoc syntax
external issue 35214

patch contributed by Jeff Smith <whydoubt@yahoo.com>

Change-Id: I70dcee88a140699bf3e1ab369bed6dcd2fdd3d83
ummyDataStateTracker.java
obileDataStateTracker.java
db3c8678e5cbdfec011afaf25bde2091152c30ad 20-Jun-2012 Haoyu Bai <bhy@google.com> Network data activity change intent for network interfaces.

The activity notification is received from netd, an intent
DATA_ACTIVITY_CHANGE is then raised for other part of the system to
consume.

Change-Id: Idfcc4763c51c5b314c57f546c12557082f06bebf
onnectivityManager.java
thernetDataTracker.java
NetworkManagementEventObserver.aidl
33034b13cae1429d526722374bd39be3f9605ae4 10-Jul-2012 Wink Saville <wink@google.com> Create telephony-common and mms-common - DO NOT MERGE

These have been created to reduce the size and complexity
of frameworks/base.

mms-common was created by moving all of
frameworks/base/core/java/com/google/android/mms
to:
frameworks/opt/mms

telephony-common was created by moving some of
frameworks/base/telephony
to:
frameworks/opt/telephony

Change-Id: If6cb3c6ff952767fc10210f923dc0e4b343cd4ad
obileDataStateTracker.java
3b147b770269173d5d711d6c33f142dc5e723824 04-Apr-2012 zzy <zhenye@broadcom.com> Added new rfcomm multi accept code
ocalSocket.java
5362f17ff5e8e06601b172bd86c26027ced9780c 12-Jul-2012 Wink Saville <wink@google.com> Merge commit '1b003ef0' into mit

* commit '1b003ef0':
Create telephony-common and mms-common

Change-Id: Ie8876541dbe7f4c933cf7d69910dd204538bc975
a639b311e93ad14d9ee5c2b2c215ed2d86c32d2a 10-Jul-2012 Wink Saville <wink@google.com> Create telephony-common and mms-common

These have been created to reduce the size and complexity
of frameworks/base.

mms-common was created by moving all of
frameworks/base/core/java/com/google/android/mms
to:
frameworks/opt/mms

telephony-common was created by moving some of
frameworks/base/telephony
to:
frameworks/opt/telephony

Change-Id: If6cb3c6ff952767fc10210f923dc0e4b343cd4ad
obileDataStateTracker.java
0f7ae19fc9d543d42fe9bf9c2d8b6521595b0026 09-Jul-2012 Steve Block <steveblock@google.com> Public JavaDoc for ParseException should not mention WebAddress, as this is not public

Change-Id: Iab1e5ff64b6caaecfbd6beac0be02b3b660ff51e
arseException.java
095c58b73ac112cc7e00771430765434893d8bc5 29-May-2012 Wink Saville <wink@google.com> Enhance StateMachine Quitting and logging support. DO NOT MERGE

Make StateMachine#quit non-conditional and remove the need to
process the SM_QUIT_CMD it is now private.

Rename halting to onHalting.

Add onQuitting

Change the message specific logging to be more generic and change
the xxxProcessedMessagesYyy methods to xxxLogRecXyy names. Also add
addLogRec(String) and addLogRec(String, State) as the generic logging
methods.

bug: 5678189
Change-Id: I22f66d11828bfd70498db625fe1be728b90478b7

Conflicts:

services/java/com/android/server/NsdService.java
hcpStateMachine.java
55b9821dffe5991e554841bf871155a2c4024c56 22-Jun-2012 Irfan Sheriff <isheriff@google.com> Move ARP test functionality to ArpPeer

Change-Id: Iecd6037cf8e0faa626ba6c27cef014822a6bc61b
rp/ArpPeer.java
4d2bef3f850e75744ade93f95615c7cb4a7fefa0 19-Jun-2012 Nicolas Falliere <nicof@google.com> am 277c09f6: am 56bb344c: Merge "Added or fixed doctrings for required permissions." into jb-dev

* commit '277c09f6c16c4adfd50407e2fa4dbf61a0e06e55':
Added or fixed doctrings for required permissions.
9530e3a22d5ffa2019d1a5177b6a441d4d6d048b 19-Jun-2012 Nicolas Falliere <nicof@google.com> Added or fixed doctrings for required permissions.

Bug: 6591338
Change-Id: Ia2092f9994854701b5fa1425c371817367ae07ec
onnectivityManager.java
b25f48f2be76a99088426ca068dd80fbf3e6dc5f 14-Jun-2012 Jason Simmons <jsimmons@google.com> am 1d28fef9: Stop any running DHCP client before bringup up an Ethernet interface

* commit '1d28fef92e516b0144d7844413194ba9e953b317':
Stop any running DHCP client before bringup up an Ethernet interface
1d28fef92e516b0144d7844413194ba9e953b317 14-Jun-2012 Jason Simmons <jsimmons@google.com> Stop any running DHCP client before bringup up an Ethernet interface

If the system server is restarted, the dhcpcd_eth0 service may have already
been started by the previous system server, and the new system server's
attempts to start the dhcpcd will do nothing.

Change-Id: Icfd480a5369eb9c7dfe86b43190294871a915529
thernetDataTracker.java
bbf30dfd767f823f5f40d14b498e2a593454c5c9 29-May-2012 Wink Saville <wink@google.com> Enhance StateMachine Quitting and logging support.

Make StateMachine#quit non-conditional and remove the need to
process the SM_QUIT_CMD it is now private.

Rename halting to onHalting.

Add onQuitting

Change the message specific logging to be more generic and change
the xxxProcessedMessagesYyy methods to xxxLogRecXyy names. Also add
addLogRec(String) and addLogRec(String, State) as the generic logging
methods.


bug: 5678189
Change-Id: I22f66d11828bfd70498db625fe1be728b90478b7
hcpStateMachine.java
787c9ec558a06bb8ebcb5a77f5268cedd218fd1b 18-May-2012 Jeff Sharkey <jsharkey@android.com> Merge "Transition from DEV network stats to XT." into jb-dev
2108ead7f125536874d6de6ca1c0c4cffbf61b44 17-May-2012 Jesse Wilson <jessewilson@google.com> Change NPN to forbid empty lists of protocols.

Bug: http://b/6438423
Change-Id: Ie89220e5bc219396c15dbe1feaa2f74fa1b243eb
SLCertificateSocketFactory.java
70c70530bd6793869736ec894498e4ebf5dc9b20 16-May-2012 Jeff Sharkey <jsharkey@android.com> Transition from DEV network stats to XT.

When XT stats are available, transition to prefer them over DEV,
since they aren't subject to hardware driver bugs. Only switches at
the first atomic XT bucket, and adds a Settings.Secure flag to force
back to DEV if needed. Includes tests to cover transition.

Fix tests where device overlay would change which network types
reflected data usage. Test both history and summary APIs. Fixed
collection timestamps to reflect full buckets.

Bug: 6504744
Change-Id: Idd7f3b2fdb064c36547c85c51c214fd938c59b7e
etworkStats.java
etworkStatsHistory.java
etworkTemplate.java
822b72efd8795abe72b95d0ddd45873a5c4b77f8 10-May-2012 Jesse Wilson <jessewilson@google.com> Merge "Rename Uri.normalize() to Uri.normalizeScheme()." into jb-dev
abc43ddd8ae098de7a56afc55909f904cd933016 10-May-2012 Jesse Wilson <jessewilson@google.com> Rename Uri.normalize() to Uri.normalizeScheme().

Change-Id: I67839656c7c1c16a5376c9894d699d2bad3c7a5c
ri.java
527ba07b637cedf206fec0d3b0cf92141700a23c 09-May-2012 Irfan Sheriff <isheriff@google.com> Use Map for DnsSd TXT record

Bug: 6434844
Change-Id: I767077585f501b46026ed34ec3e778d3e53209cc
sd/DnsSdTxtRecord.java
9669a0ce574745ba0b0ebd32e8337811973fb7dc 09-May-2012 Irfan Sheriff <isheriff@google.com> Merge "API review fixes" into jb-dev
22af38c5261d2c03796b496e6edb125327cace16 04-May-2012 Irfan Sheriff <isheriff@google.com> API review fixes

- Remove the notion of channel from an application perspective
- Remove the use of DnsSd as part of API and add a protocol type to allow
future extensions
- Use the listener object as a handler for stop and unregister operations. Also,
we now allow multiple active discovery operations.
- Remove init/deinit operations in favour of setting up construction

Bug:6434844
Change-Id: Id15521d571aac9c4053d81184ad66dfc54f636de
sd/DnsSdServiceInfo.java
sd/NetworkServiceInfo.java
sd/NsdManager.java
sd/NsdServiceInfo.java
198bc11d099008531b7e445d9715698421d6e644 07-May-2012 Robert Greenwalt <rgreenwalt@google.com> Bring up the ethernet interface when detected

We don't get link status info if it's down. If the device has been configured
for ethernet and we see the interface appear, we should make it active.

bug:6444395
Change-Id: Ibc233ab12942b069d7db9c0671936798c5161659
thernetDataTracker.java
ac3fcb1590e1da21324c13ce237ec48f2bf488bf 03-May-2012 Jeff Sharkey <jsharkey@android.com> Reduce persist threshold for lower warning/limit.

Default is 2MB persist threshold, but even that can be substantial
for devices on 100MB/month plans. This change gradually reduces the
persist threshold up to 8x lower (256kb outstanding) based on lowest
active policy.

Bug: 5382676
Change-Id: Ief4e8cdb169bfb151a3d1b45722a8eaa01926508
NetworkStatsService.aidl
e8914c36276710de50b347c1e6aecfa45d6a56cd 02-May-2012 Jeff Sharkey <jsharkey@android.com> Begin collecting xtables iface counters.

Add method to parse new iface_stat_fmt proc stats, or return null
when kernel support is unavailable. Add test and remove older, unused
parsing code. Create new "xt" recorder to persist the new xtables
counters when available.

Add SSID support to NetworkIdentity to fix policy tests.

Bug: 6422414
Change-Id: I77f70e9acb79a559ab626f3af5c4f3599801ed43
etworkIdentity.java
etworkState.java
f166f480f0f29b310a27fe001ee26d7dfac84fdd 01-May-2012 Jeff Sharkey <jsharkey@android.com> Roaming always metered, relax DHCP metered check.

Always treat roaming connections as metered, and relax DHCP test to
match any substring for forward compatibility.

Bug: 6382737, 6375399
Change-Id: I9781a60f55fbe35da6f8bfc7a1d609608e8f0951
hcpInfoInternal.java
9f6e4ba50e7e73704c7fbd3ba65fe73bdf8ad73f 20-Apr-2012 Jeff Sharkey <jsharkey@android.com> Connect metered DHCP hint for Wi-Fi networks.

When DHCP lease includes vendor info indicating that remote Wi-Fi
network is metered, advise NetworkPolicy. Users can still manually
change the metered flag in Settings.

Also remove any policies belonging to removed Wi-Fi networks, and
teach isNetworkMetered() about ethernet networks.

Bug: 6344821, 6369307, 6365872
Change-Id: I108606c6fddf2d02828fcab011f3a1501415f1bc
hcpInfoInternal.java
1b965941713a395dc8003cf8ee29a40f92dd77aa 19-Apr-2012 Jeff Sharkey <jsharkey@android.com> Merge "Pipe DHCP vendor info towards framework."
54ac7a510245e5f00c16ff5595b6ae8d002c1c3b 19-Apr-2012 Irfan Sheriff <isheriff@google.com> Fix build

Change-Id: I1968e0d7d25f613fa6cf72f82d79f17224e3d5ab
sd/NsdManager.java
6c07ba8183edc593527335238a2c6083392df7bc 18-Apr-2012 Irfan Sheriff <isheriff@google.com> Add network service discovery broadcast

Allows apps to know if user has the feature turned off

Change-Id: I2d2fecb148eb4e48eb4aea51d1d7643a82df5c52
sd/NsdManager.java
3ef889bf561e59561ff2c6c4b2ffb586b9c5af5c 18-Apr-2012 Irfan Sheriff <isheriff@google.com> Add user control to turn on/off nsd

Change-Id: Ide3cc20adb21ac6dffaf6b9b9136d77a129afa3b
sd/INsdManager.aidl
sd/NsdManager.java
77b87ba0bc1c5de025976416b49e698ed9362814 19-Apr-2012 Jeff Sharkey <jsharkey@android.com> Pipe DHCP vendor info towards framework.

Bug: 6344821
Change-Id: Ifb9a93c995f4d70f4ae2aa03b7e21f13013ef3b6
hcpInfoInternal.java
120505424098538ed9dfb97bf29b1dd143715259 17-Apr-2012 Irfan Sheriff <isheriff@google.com> Merge "Open p2p pre-association service discovery API"
2e3dec5aebb2020a9107e847659af5aaf7215f66 17-Apr-2012 Irfan Sheriff <isheriff@google.com> Merge "Open network service discovery API"
123328778e99b5bbc68b80ab8efc43ca506a6a2c 16-Apr-2012 Jeff Sharkey <jsharkey@android.com> Merge "Move TrafficStats iface counters to xt_qtaguid."
7bf8fba6f0e0fe8072201a0b174727b905437990 16-Apr-2012 Jeff Sharkey <jsharkey@android.com> Merge "API to report if active network is metered."
9f7cbf0e50bcb7e9163b23524814003ba8784732 13-Apr-2012 Jeff Sharkey <jsharkey@android.com> API to report if active network is metered.

Report to developers if active network is "metered" and define it
as the user being sensitive to heavy data usage.

Bug: 3001465
Change-Id: I855ca3cd3eb1de3c4814148d70ccf24957af898a
onnectivityManager.java
ConnectivityManager.aidl
NetworkPolicyManager.aidl
92784670c48759c0db604ddb95c05a7b9bdebed8 13-Apr-2012 Irfan Sheriff <isheriff@google.com> Open network service discovery API

Add support for DNS based network service discovery API. This
allows applications to discover and resolve applications on a
local network such as Wi-Fi

Change-Id: Ie89895edd35d12b7f7a23fb5fed36cb2b2079f7a
sd/DnsSdServiceInfo.java
sd/NsdManager.java
8bf825f48fde77cb2feb8720aac17093581bb085 14-Apr-2012 Irfan Sheriff <isheriff@google.com> Open p2p pre-association service discovery API

This allows applications to filter out the devices by the
services supported for the purpose of establishing a
connection.

so, a game app can connect to devices that support the game,
and a media streaming app can filter and connect only to
the available media display devices

Change-Id: Ia792e292d2ca771beeb4ca3b007a047527c19229
sd/DnsSdTxtRecord.java
854b2b1670bda1eeb87a14b7ac3d222024f0aad6 14-Apr-2012 Jeff Sharkey <jsharkey@android.com> Surface list of apps with given network policy.

Bug: 6007276
Change-Id: I0f0e939ee6481496480c4afaa108c99eb158547c
NetworkPolicyManager.aidl
etworkPolicyManager.java
d4fecc2567ca54427b9c86900bccbc7103ea8fde 13-Apr-2012 Irfan Sheriff <isheriff@google.com> Merge "Pre-association service discovery support"
cbba37c6096486cbc8ce6f0c4eb7df9a352d54b1 13-Apr-2012 Irfan Sheriff <isheriff@google.com> Merge "Bonjour fixes"
21ba8153325e010224c6bc75a0acdc98b6ca82e8 05-Apr-2012 Irfan Sheriff <isheriff@google.com> Pre-association service discovery support

Add UPnp, Bonjour and vendor specific support for discovering services on
Wi-Fi direct before establishing a connection.

Change-Id: I1c1f3427180abdc80a4e682e713adc7f0326c5ef
Signed-off-by: Yoshihiko Ikenaga <yoshihiko.ikenaga@jp.sony.com>
sd/DnsSdTxtRecord.java
234766a36af6214644fa8205202287084ca9cf93 11-Apr-2012 Jeff Sharkey <jsharkey@android.com> Move TrafficStats iface counters to xt_qtaguid.

Use xt_qtaguid iface_stat_all counters, which are monotonic during
a single boot.

Track all ifaces associated with mobile networks since boot, and
move TrafficStats to using these ifaces. This will include usage of
networks omitted from config_data_usage_network_types, specifically
on devices that recycle network interfaces across APNs.

Split wildcard template matching, and move NetworkStatsService to
use mobile wildcard when logging stats.

Bug: 5324515
Change-Id: I2211c374c05d1b598cc647f2f873630538955ffe
NetworkStatsService.aidl
etworkTemplate.java
rafficStats.java
817388e056a5d1d0e7cd7de2c6b0c9c80617bc5f 11-Apr-2012 Irfan Sheriff <isheriff@google.com> Bonjour fixes

Change-Id: I1df1dc470bb42c84abc7e1a46bedf9f206910b65
sd/DnsSdServiceInfo.java
sd/NsdManager.java
bfdd680ab44da173a4a39fcd6feccdebb9d1f855 09-Apr-2012 Jeff Sharkey <jsharkey@android.com> Migrate to @Override to remove warnings.

Bug: 6303344
Change-Id: I0d33b2ed448467379d576ccd71fb5ae20c878852
etworkQuotaInfo.java
etworkState.java
etworkStats.java
etworkStatsHistory.java
21a547823de52806de48f70b8360353344a5ad88 09-Apr-2012 Jeff Sharkey <jsharkey@android.com> Splice operations before collapsing ifaces.

Bug: 6241038
Change-Id: Ide9058703f7305df8fb070af149ddce0653a0abf
etworkStats.java
b52e3e55098c4a6e3dbfe19885895411cfb38911 06-Apr-2012 Jeff Sharkey <jsharkey@android.com> INetworkStatsSession with lifecycle for caching.

Users outside system_server now explicitly communicate their
lifecycle, which keeps a strong-reference chain to any fully loaded
NetworkStatsCollection histories.

Bug: 6236498
Change-Id: I8e22739b6e89a626b676967a736d7117fd000778
NetworkStatsService.aidl
NetworkStatsSession.aidl
rafficStats.java
8fc27e8b87bd1def854a03d84009143b315d4176 05-Apr-2012 Jeff Sharkey <jsharkey@android.com> Support metered Wi-Fi NetworkPolicy.

Add networkId field to NetworkIdentity to identify Wi-Fi networks by
SSID. Add support for policies without usage cycles.

Only apply mobile policies when SIM state is ready, which is cleaner
than just checking for airplane mode. Also avoids creating no-op
default policies when subscriberId is null.

Bug: 3001465, 3291052
Change-Id: I1f8aaa49a5db306df022c402ea7f3f5d4bc0cfc7
onnectivityManager.java
etworkIdentity.java
etworkPolicy.java
etworkPolicyManager.java
etworkTemplate.java
fa291e66910c41f441df0b9ea8e6f7630c298637 04-Apr-2012 Irfan Sheriff <isheriff@google.com> Fix build

Add missing file

Change-Id: I5ed1827e1183c37741675ce4d198d3e200c5fb94
sd/DnsSdServiceInfo.java
7d024d372431effc87168afdc7cbe387680c4935 23-Mar-2012 Irfan Sheriff <isheriff@google.com> Add initial framework for DNS service discovery

Change-Id: I53c0b7ebfd75e520ebb7553612f1aa8413b6b79b
sd/DnsSdTxtRecord.java
sd/INsdManager.aidl
sd/NetworkServiceInfo.java
sd/NsdManager.java
26d4452a08813cdbb7280c475fe5527cdc9673a3 03-Apr-2012 Irfan Sheriff <isheriff@google.com> Original DnsSd TxtRecord file

Change-Id: I4aa308a3b417d6bdce50567fb66c7119b048140a
sd/DnsSdTxtRecord.java
f5fb5e80963abeabdf0ff10dcee068344235082e 23-Mar-2012 Jesse Wilson <jessewilson@google.com> Add an API to expose Next Protocol Negotiation (NPN).

Bug: http://b/4190756
Change-Id: If904f7ff440391a6adb2963eb2ecb990140ab7cc
SLCertificateSocketFactory.java
8a8b581e669f6187b397f856a567a76ed8aba2c2 22-Mar-2012 Jeff Sharkey <jsharkey@android.com> Move network policy to per-appId (instead of UID).

To support multi-user, store network policy per-appId and expand to
apply rules to all UserInfo on device.

Bug: 6140462
Change-Id: Ic0866b4d41c8c60cc1c0a597f0de927b92b65b1e
NetworkPolicyManager.aidl
etworkPolicyManager.java
948eef82546c15086d0b78ce18ee874aa5c634f7 21-Mar-2012 Jeff Sharkey <jsharkey@android.com> Remove unused android.net.Downloads.

It's another set of constants that can be confused with those in
android.provider.Downloads.

Change-Id: I78ac058fa264d59a81f7655ab101c3fb2c8c17ff
ownloads.java
837f9242ae2e8f5f380d0b30b8fffbc68494914f 21-Mar-2012 Jeff Sharkey <jsharkey@android.com> Remember when NetworkPolicy was inferred.

This helps future-proof NPMS if we need to correct default policies
after an upgrade.

Change-Id: I0ddfdeaf41757a46aeb867c91d495ccf981d544b
etworkPolicy.java
f9f1d066785a829c4906b0f31580b31b30892ad7 16-Mar-2012 Jeff Sharkey <jsharkey@android.com> Remove network subtype check when building template.

Change-Id: I069d82a77d27dae6bfffe3b7e65d73b63f258ad9
etworkTemplate.java
d4dd7716fb825f29a609c5c4cb31204eea78183a 16-Mar-2012 Jeff Sharkey <jsharkey@android.com> Combine network subtypes by default.

Subtype controls (3G-vs-4G) aren't exposed in the UI, so tracking
data with that granularity creates unnecessary overhead. For example,
some GSM networks can regularly flap between two subtypes.

Bug: 6118868
Change-Id: Id098891dba52336d00d0f96632a7924e228b4713
etworkIdentity.java
etworkTemplate.java
ce8668f809f8e25ddbc65217e7f08490c6165637 10-Mar-2012 Jeff Sharkey <jsharkey@android.com> Merge "Save timezone when setting data cycle reset date."
9bf3150cfae03421c9dd237b46657714859d871c 10-Mar-2012 Jeff Sharkey <jsharkey@android.com> Save timezone when setting data cycle reset date.

Instead of cycle reset at midnight UTC, use midnight of timezone
active when user last set cycle reset date. Tests to verify, and
also to test leap year behavior.

Bug: 5938567
Change-Id: Ie06f7f0fa242d23110f9586a3f4f7037af87b31b
etworkPolicy.java
etworkPolicyManager.java
f76a50ce8fdc6aea22cabc77b2977a1a15a79630 09-Mar-2012 Ken Wakasa <kwakasa@google.com> Fix obvious typos under frameworks/base/core

Change-Id: Ia5fc3db1bb51824e7523885553be926bcc42d736
ttp/SslError.java
866666071bc49bd0c4fcd1776c9d9036d4e29fec 08-Mar-2012 Brian Carlstrom <bdc@google.com> Tracking changes to SSLParametersImpl.getDefaultTrustManager()

Change-Id: I0bcf2bbcd2581f6b66e08d1c6f0de24bf8d34199
ttp/CertificateChainValidator.java
07573b32494acbabd21979d8b9584c1ed3f7a6ad 28-Jan-2012 Irfan Sheriff <isheriff@google.com> Improve Wi-Fi hand-off

When Wi-fi connects at L2 layer, the beacons reach and the device
can maintain a connection to the access point, but the application
connectivity can be flaky (due to bigger packet size exchange).

We now use Watchdog to monitor the quality of the last hop on
Wi-Fi using signal strength and ARP connectivity as indicators
to decide if the link is good enough to switch to Wi-Fi as the uplink.

ARP pings are useful for link validation but can still get through
when the application traffic fails to go through and thus not best indicator
real packet loss since they are tiny packets (28 bytes) and have
much low chance of packet corruption than the regular data
packets.

Signal strength and ARP used together ends up working well in tests.
The goal is to switch to Wi-Fi after validating ARP transfer
and RSSI and then switching out of Wi-Fi when we hit a low
signal strength threshold and waiting until the signal strength
improves and validating ARP transfer.

Change-Id: Ica593291ec7772da892f03cf45b649635b730c47
etworkInfo.java
rp/ArpPeer.java
93ba4fedebb78ba47c24e8472c8960ea8fdc933a 14-Feb-2012 Selim Gurun <sgurun@google.com> Act on credential storage updates.

Bug: 6009802

Cherry pick fcd93b72a3dde2b20fa0d8b04d3f47311b0856a1
Listen to credential storage updates and clean state when necessary.

Change-Id: I2c63e6771e9373da8b39781fdcf3d21583c4e3b2
ttp/CertificateChainValidator.java
d8d6afdc068e8aa31fddd06f5946311d2b961026 16-Feb-2012 Selim Gurun <sgurun@google.com> Merge "Revert "Act on credential storage updates.""
43e41580e4c700e970cc5e62180a767ab424da6d 16-Feb-2012 Selim Gurun <sgurun@google.com> Revert "Act on credential storage updates."

This reverts commit fcd93b72a3dde2b20fa0d8b04d3f47311b0856a1
ttp/CertificateChainValidator.java
e83b83fe20aa89f9bf730bb07006890f6c65e89c 16-Feb-2012 Selim Gurun <sgurun@google.com> Merge "Act on credential storage updates."
18c227ba72406c0b69ce9925a80113060d870256 15-Feb-2012 Jesse Wilson <jessewilson@google.com> Implement the (hidden) ExtendedResponseCache interface.

Bug: http://code.google.com/p/android/issues/detail?id=25418
Change-Id: I4b20d576bac7036f94e57db7124de44f5b8d75be
ttp/HttpResponseCache.java
fcd93b72a3dde2b20fa0d8b04d3f47311b0856a1 14-Feb-2012 Selim Gurun <sgurun@google.com> Act on credential storage updates.

Bug: 6009802

Listen to credential storage updates and clean state when necessary.

Change-Id: I48f2e7d6e036882c2b4a29fbd357ca018fd4e4c7
ttp/CertificateChainValidator.java
efeba018bde81e02e1255714e3d4eeeb43c055e7 15-Dec-2011 Mike Lockwood <lockwood@google.com> EthernetDataTracker: Don't run DHCP or set network available until link is up

Previously we were starting DHCP as soon as the interface was added,
which is at boot on devices with builtin ethernet.

Signed-off-by: Mike Lockwood <lockwood@google.com>
thernetDataTracker.java
d60ae7f6688ea83df536c2eb1101a74ae1914ac6 03-Nov-2011 Doug Zongker <dougz@android.com> store the hw addr in the extraInfo field of ethernet NetworkInfos
thernetDataTracker.java
etworkInfo.java
4bcbefdc5f24702dbbae485d016997e3efb5e5cc 01-Oct-2011 Mike J. Chen <mjchen@google.com> Fix disconnect from wired ethernet issues.

When a cable was unplugged, we were telling the driver to release the
ip address so if a cable on a different network was plugged in, it would
still try to use it's old ip address on the new network, which probably
didn't work.

Also, we didn't notify ConnectivityService about the state change in
the unplug case. Some of this was done in the interface removed case,
but we never remove the interface in Tungsten, just unplug. So refactor
the common disconnect code into a disconnect() function that's called
by both the link status change (unplug) and interface removal (only applies
to things like USB ethernet dongles) cases.

Signed-off-by: Mike J. Chen <mjchen@google.com>
thernetDataTracker.java
1f8ea2dcd1ed3cde4b84fbb27b5a55b3fea7ff2a 07-Feb-2012 Jeff Sharkey <jsharkey@android.com> Send broadcast when changing restrict background.

When changing global restrict background status, send connectivity
change broadcast, since it radically changes DISCONNECTED/BLOCKED
status system-wide.

Also reduce verbose stats logging.

Bug: 5854466
Change-Id: I3b612c520f50cc3000a3a569b7e0ab5f691cc2bd
NetworkPolicyListener.aidl
241dde2306202e7655fdf41d5381f2874e47e108 03-Feb-2012 Jeff Sharkey <jsharkey@android.com> Unify shorthand for byte-based units.

Change-Id: If990859dee3f0973e1d4c48f05312c84071b3328
rafficStats.java
0e2e5f8b564bebd5798c9fa387fbff96429ab5d2 03-Feb-2012 Jeff Sharkey <jsharkey@android.com> Support snoozing of data warning notification.

Introduce second snooze timestamp to support dismissal of data usage
warning notification. Also explicitly set notification "when" to
avoid fighting with other notifications, such as ongoing downloads.

Bug: 5443756, 5262414
Change-Id: I03342c25b0410b1b2db84de9a40884f04cb1d8ae
NetworkPolicyManager.aidl
etworkPolicy.java
54ee2adf1711ce34c309c65c17ed6fd4d8f0d632 31-Jan-2012 Jeff Sharkey <jsharkey@android.com> Deprecate ACTION_BACKGROUND_DATA_SETTING_CHANGED.

Broadcast is no longer sent, except during first boot after platform
upgrade.

Change-Id: I7a9c105b5783ca9f9c3aca2efff6fe5c13a4c1fd
onnectivityManager.java
dc828acd5fadb266b13cce459b1cacfad8ef7aef 25-Jan-2012 Nick Pelly <npelly@google.com> Merge "Add API's for normalizing MIME's and URI's."
ccae412deda8b0c165c86f395752c0667a3411a6 09-Jan-2012 Nick Pelly <npelly@google.com> Add API's for normalizing MIME's and URI's.

Helps developers create well-behaved intents:
- lower case MIME data type
- strip parameters from MIME content types
- lowercase URI scheme

The new API's are
normalizeAndSetType()
normalizeAndSetData()
normalizeAndSetDataAndType()
Uri.normalize()
normalizeMimeType()

Change-Id: Ib5c907897f39b1f705bcc4c9103ba1e6f316380b
ri.java
3ca7481439c9b65a137d7705d0f4a16766529e75 25-Jan-2012 Jeff Sharkey <jsharkey@android.com> Match WIFI_P2P data usage.

Bug: 5405891
Change-Id: I5b815d6fc25a2f26a86c39a43fde305fcc3fb65c
etworkTemplate.java
63abc37356728c0575d6a62a203102ae6d97953b 12-Jan-2012 Jeff Sharkey <jsharkey@android.com> Move network stats to FileRotator pattern.

Split existing network stats into two separate classes: a recorder
which generates historical data based on periodic counter snapshots,
and a collection of historical data with persistance logic.

Recorder keeps a pending history in memory until outstanding data
crosses a specific threshold. Persisting is handled through a given
FileRotator. This pattern significantly reduces disk churn and
memory overhead. Separate UID data from UID tag data, enabling a
shorter rotation cycle. Migrate existing stats into new structure.

Remove "xt" stats until iptables hooks are ready. Avoid consuming
Entry values when recording into NetworkStatsHistory. Assign
operation counts to default route interface.

Introduce "Rewriter" interface in FileRotator with methods to enable
rewriteAll(). Introduce IndentingPrintWriter to handle indenting in
dump() methods.

Bug: 5386531
Change-Id: Ibe086230a17999a197206ca62d45f266225fdff1
etworkStats.java
etworkStatsHistory.java
rafficStats.java
5a7bcf31a44d9875ca5fc010dc213aa2bd5b1168 11-Jan-2012 Jeff Sharkey <jsharkey@android.com> Move non-monotonic reporting to interface.

Report non-monotonic NetworkStats through an observer interface
instead of throwing, since those events are still recoverable.

Change-Id: Ic0749f4634b0ac05dbe90e95ca490957ec8b2f23
etworkStats.java
rafficStats.java
52cd299eef703030f8fcf7a92f413791301771cc 27-Dec-2011 Jesse Wilson <jessewilson@google.com> Move the frameworks/base hostname verifier into libcore. Part 2/2

Bug: http://b/5619726
Change-Id: I165eb3befcef104ff56ffb466c87c60b632f3194
ttp/CertificateChainValidator.java
931310f1d213dd29983d26e2fe9d7e5f73f21187 16-Dec-2011 Jeff Sharkey <jsharkey@android.com> Merge "Include roaming in NetworkIdentity.hashCode()."
f9a3a8d42b43adeadf41c8896f010d381f15f505 16-Dec-2011 Jeff Sharkey <jsharkey@android.com> Include roaming in NetworkIdentity.hashCode().

Change-Id: I148d95c8d08e3916a90fa78f7efee327d4b7de2a
etworkIdentity.java
4868dfa33b5d710b6f09aad05aa5e256da9cd45d 16-Dec-2011 Jesse Wilson <jessewilson@google.com> Merge "Give a reflection example for installing the HTTP response cache."
f60d0afd1ef08a24121d015bb016df05265b6d07 01-Dec-2011 Jeff Sharkey <jsharkey@android.com> Restrict app data on metered networks.

This separates the definition of "metered network" and "network with
limit." For now, all mobile networks are considered metered.

Bug: 5571454
Change-Id: I394cd385bd33add75e53bfc9cf2fefd06a00208a
etworkPolicy.java
8543b5480d9c261e72965f64a7bc918eb183ea25 15-Dec-2011 Jesse Wilson <jessewilson@google.com> Give a reflection example for installing the HTTP response cache.

From the Android developers blog,
http://android-developers.blogspot.com/2011/09/androids-http-clients.html

Change-Id: Iff0a06fb7b0b8c085b9f16e85b30db44c889235e
ttp/HttpResponseCache.java
e41df2c9d479928c8aa3f1b4a3b01ff447a87116 15-Dec-2011 Mike Lockwood <lockwood@google.com> EthernetDataTracker: Don't run DHCP or set network available until link is up

Previously we were starting DHCP as soon as the interface was added,
which is at boot on devices with builtin ethernet.

Change-Id: I726c2b139cbf91455d159d7cbcd08e24a336942b
Signed-off-by: Mike Lockwood <lockwood@google.com>
thernetDataTracker.java
7776da1b79851d7a794b1ecb5bf990a5161a68c1 08-Dec-2011 Robert Greenwalt <rgreenwalt@google.com> am 4741163c: am fbb09ea8: Merge "Fix NPE in trimV4AddrZeros." into ics-mr1

* commit '4741163cd719ce88eddf17ebb0a3ffd6a8044fbe':
Fix NPE in trimV4AddrZeros.
12bee3b3e272e0fa8cbb69304d210d869667110e 08-Dec-2011 Robert Greenwalt <rgreenwalt@google.com> am fbb09ea8: Merge "Fix NPE in trimV4AddrZeros." into ics-mr1

* commit 'fbb09ea84f7a9df94358f05f4e680cb363bae663':
Fix NPE in trimV4AddrZeros.
0faacf0658af00929481fa158f0c88289ba5145f 08-Dec-2011 Robert Greenwalt <rgreenwalt@google.com> Fix NPE in trimV4AddrZeros.

Change-Id: Id6ab91dabce4a2adba02f2601bc1157e87b782c3
etworkUtils.java
131746ba380c4c55b075e7aac00a395821526ccd 07-Dec-2011 Robert Greenwalt <rgreenwalt@google.com> am e55e5b84: am 3957b5fc: Fix the build.

* commit 'e55e5b84e53889791c0b6be8cad7cc134c9dfcba':
Fix the build.
bcf9deedc32d0b9e46e69b6195a79f5fae03213c 07-Dec-2011 Robert Greenwalt <rgreenwalt@google.com> am 3957b5fc: Fix the build.

* commit '3957b5fc49335f13b15080b8e7146580026c0479':
Fix the build.
3957b5fc49335f13b15080b8e7146580026c0479 07-Dec-2011 Robert Greenwalt <rgreenwalt@google.com> Fix the build.

Change-Id: I71d1d9958182966d2eff0d34fa05ac57f2cabc48
etworkUtils.java
86a943951b16b0da04ab64ef805d4a83da70a9b1 07-Dec-2011 Robert Greenwalt <rgreenwalt@google.com> am 2ebd3612: am f352491a: Merge "Trim leading zeros from ipv4 addrs." into ics-mr1

* commit '2ebd3612d82f728873f87cdbea9fa5513b5cfb39':
Trim leading zeros from ipv4 addrs.
b47f12d4a15aadbd8bb499a26218691d037dd93d 07-Dec-2011 Robert Greenwalt <rgreenwalt@google.com> am f352491a: Merge "Trim leading zeros from ipv4 addrs." into ics-mr1

* commit 'f352491aad71b5c0a30238707bdb83c9dc34fd9e':
Trim leading zeros from ipv4 addrs.
d4420ab2fbb85280d2f507072fe0bd820ac26a3f 07-Dec-2011 Robert Greenwalt <rgreenwalt@google.com> Trim leading zeros from ipv4 addrs.

Underlying libraries will interpret leading zeros as octal values and
fail.

bug:5262995
Change-Id: Iff949225bb6b941f7274ee81754e1f41ed719a6c
etworkUtils.java
ba2896e939f359e5857149f1a27212db71be012b 01-Dec-2011 Jeff Sharkey <jsharkey@android.com> Move native netd calls to varargs.

Uses argument escaping inside NativeDaemonConnector, using varargs
to separate boundaries. Also introduces Command object to help build
argument lists.

Bug: 5472606
Change-Id: I357979fc19bb0171a056e690064e01b5a7119501
nterfaceConfiguration.java
ddba10622dfd3122cf99c795706754e0d41858c3 30-Nov-2011 Jeff Sharkey <jsharkey@android.com> Clean up InterfaceConfiguration flags.

Offer modifier methods for interface flags instead of mutating
directly, and remove square brackets.

Change-Id: I4cce719dccedfb3f0e8448c111e65b93c0008cbb
nterfaceConfiguration.java
b9c955664bf300deb11e5aaf88e8ff4d11b26a73 21-Nov-2011 Irfan Sheriff <isheriff@google.com> Add support for infinite dhcp lease time

Bug: 5649076
Change-Id: I29e3b41d8bd1173b155f3173e65a3b45ad17a45c
hcpStateMachine.java
94ca29d461565e5d336a1fe9d2f68d5669ad2f96 11-Nov-2011 Jeff Sharkey <jsharkey@android.com> am 51c00a57: Merge "Clamp non-monotonic stats instead of dropping." into ics-mr1

* commit '51c00a57f4f956b4b0ce9562fa571b475ee6f6ae':
Clamp non-monotonic stats instead of dropping.
8b4e2ccf15e24dba6bc20067e776b3b9d931c4ca 11-Nov-2011 Scott Main <smain@google.com> Merge "docs: some helpful javadocs for network info"
8d7fad5e677109b7338d5d605ad9e1177952a22f 11-Nov-2011 Jesse Wilson <jessewilson@google.com> Merge "Warn about changed behavior around '+' characters."
41e0839b136cdeccd2f45de1d9c56240f3933a1e 11-Nov-2011 Jesse Wilson <jessewilson@google.com> Warn about changed behavior around '+' characters.

Bug: http://code.google.com/p/android/issues/detail?id=21064
Change-Id: I086c2c8433f05185a1496e2662734d239d8cbb74
ri.java
1333742bedc9b462024302f302e3a7f27053df66 11-Nov-2011 Akwasi Boateng <akwasi.boateng@ti.com> am cb0db030: Merge branch \'ics-mr1-plus-aosp\' of ssh://android-git:29418/platform/frameworks/base into ics-mr1-plus-aosp

* commit 'cb0db0306b5849a35d3d99eea1b34ce019c6f0d8':
Make the overridden ImageView#setVisibility remotable
Clamp non-monotonic stats instead of dropping.
DO NOT MERGE. Fix leak in LayoutTransition
Fix lastVisible/global rects
Fix Wimax-less build.
Fix leak in LayoutTransition
Deferring wallpaper update to improve workspace scrolling (issue 5506959)
Terminate EGL when an app goes in the background
boot animation is dithered and scaled
Fix NdefRecord byte-stream constructor.
PopupWindow dismiss() can get into a recursive loop.
Fold WiMAX state into the mobile RSSI.
Remove dedicated wimax icon to fix RSSI layout.
d4ef8c8fc9ea70448e5d8138bf8bc96f4e69903f 11-Nov-2011 Jeff Sharkey <jsharkey@android.com> Clamp non-monotonic stats instead of dropping.

When encountering non-monotonic stats rows, recover remaining data by
clamping to 0. In particular, this avoids edge-case where persisting
threshold checks would never trigger. Also recover when tethering
snapshots are missing.

Bug: 5600785, 5433871, 5600678
Change-Id: I1871954ce3955cc4ac8846f9841bae0066176ffe
etworkStats.java
5cc8b1f0fda91f43346ef1ac293c027421f369d5 09-Nov-2011 Jeff Sharkey <jsharkey@android.com> am 33e3710a: am 630a13bd: Merge "Bootstrap stats before registering listeners." into ics-mr1

* commit '33e3710aafb68125f05ab30d61e324c894f0a3bb':
Bootstrap stats before registering listeners.
c592a57f3ff4f4e051eef57c7fb50b8643a653e5 09-Nov-2011 Jeff Sharkey <jsharkey@android.com> am 489b4312: am 4c48d2ff: Merge "Make operation counts monotonically increase." into ics-mr1

* commit '489b431273500db81d35ed43440915187c238f92':
Make operation counts monotonically increase.
ba8352433889490a71b7b9deee645ce148dfa8fc 09-Nov-2011 Jeff Sharkey <jsharkey@android.com> am 630a13bd: Merge "Bootstrap stats before registering listeners." into ics-mr1

* commit '630a13bdd88723599a7617ca4df20ab923e7ffbb':
Bootstrap stats before registering listeners.
3c865c0a51c8536a64ae179ba2324108a74e4872 09-Nov-2011 Jeff Sharkey <jsharkey@android.com> am 4c48d2ff: Merge "Make operation counts monotonically increase." into ics-mr1

* commit '4c48d2ff6937e1e3a2fb93cc4cc29324b20542a5':
Make operation counts monotonically increase.
c1b3cbe1648cc606008522a667abe7fb766ff0c3 09-Nov-2011 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of ea54b760 to master

Change-Id: Ifcdfd6ffd82db1293936a8a3b5715dd767fb43f8
630a13bdd88723599a7617ca4df20ab923e7ffbb 09-Nov-2011 Jeff Sharkey <jsharkey@android.com> Merge "Bootstrap stats before registering listeners." into ics-mr1
3359aca7655a7d18615c1ada6cbabeff403947d1 09-Nov-2011 Jeff Sharkey <jsharkey@android.com> Bootstrap stats before registering listeners.

Also move ISE to handled NonMonotonicException.

Bug: 5570872
Change-Id: I793f349287ef5589185f117dfbec6f1fad73a661
etworkStats.java
4abb1b8ef64dc4cd71966b59dc5d72a15055bf13 09-Nov-2011 Jeff Sharkey <jsharkey@android.com> Make operation counts monotonically increase.

Bug: 5585704
Change-Id: I5247a68acdb209a4ef0f5aac18944595c295e6ca
etworkStats.java
b45a317b56fca32a3ae2adfca6e7803e945da581 08-Nov-2011 Robert Greenwalt <robdroid@android.com> am ea54b760: Merge "Wimax : wimax framework related open source." into ics-mr1

* commit 'ea54b7608584bc0535c9e89417778c3e95b50975':
Wimax : wimax framework related open source.
148c7d0de720a92632aa6ed10a39bfc38b427239 13-Oct-2011 tk.mun <tk.mun@samsung.com> Wimax : wimax framework related open source.

Integrate wimax network related changes into Android Framework.
- In Connectivity service, start wimax service.
- 4G icon display in StatusBarPolicy.
- DHCP renew add.
- Add radio for wiamx

Change-Id: I2d9012247edfdf49d71ca7e1414afd0006f330ca
Signed-off-by: tk.mun <tk.mun@samsung.com>
bug:5237167
imax/WimaxManagerConstants.java
d4ccc92018f2dda150c895c168ef37941559e750 03-Nov-2011 Doug Zongker <dougz@android.com> Merge "store the hw addr in the extraInfo field of ethernet NetworkInfos" into ics-aah
fe30a1ef600b52d00c9233d1757cb3c2e8ae7377 03-Nov-2011 Doug Zongker <dougz@android.com> store the hw addr in the extraInfo field of ethernet NetworkInfos

Change-Id: Ic645396e81d1481d84061945eb9721f0eeb151eb
thernetDataTracker.java
etworkInfo.java
4d81191dd377d30570d6c3294b0fb1f0ea681f46 03-Nov-2011 Jeff Sharkey <jsharkey@android.com> am 808ee95d: Merge "Correct proc file reader, optimizations." into ics-mr1

* commit '808ee95dd4244da6ae767d3ddd003ed7b48937d0':
Correct proc file reader, optimizations.
e5e0db8f3b7f90c920cb2dabb60270dc27a46457 03-Nov-2011 Jeff Sharkey <jsharkey@android.com> am 808ee95d: Merge "Correct proc file reader, optimizations." into ics-mr1

* commit '808ee95dd4244da6ae767d3ddd003ed7b48937d0':
Correct proc file reader, optimizations.
163e6443f27884a9bfcb9a48ef606dc635852c23 01-Nov-2011 Jeff Sharkey <jsharkey@android.com> Correct proc file reader, optimizations.

Moved away from BufferedReader, which only reads the first 8KB of
some proc files because it aggresively fills its buffer. Optimized
proc parsing, now double the speed. Tests to cover.

Log when NetworkStats counters roll backwards when subtracting, and
optimizations around findIndex(). When system removes UID, also
remove from last stats snapshot to avoid xt counters from rolling
backwards.

Bug: 5472949, 5458380
Change-Id: I07c08fe5233156fac2b84450f6291868bf9bfaf2
etworkStats.java
rafficStats.java
0f28af209ac877091f4a096f7553f02a0b401596 29-Oct-2011 Jesse Wilson <jessewilson@google.com> Interpret '+' as a space char in the URL query params.

This changes Uri.decode() to use libcore's implementation
of the same behavior.

Bug: http://code.google.com/p/android/issues/detail?id=21064
Change-Id: If81005492b12d3aaecc745471e0a28679544a391
ri.java
8f1667ac786538d34bfe94209d0e5942b141d29d 01-Oct-2011 Mike J. Chen <mjchen@google.com> Fix disconnect from wired ethernet issues.

When a cable was unplugged, we were telling the driver to release the
ip address so if a cable on a different network was plugged in, it would
still try to use it's old ip address on the new network, which probably
didn't work.

Also, we didn't notify ConnectivityService about the state change in
the unplug case. Some of this was done in the interface removed case,
but we never remove the interface in Tungsten, just unplug. So refactor
the common disconnect code into a disconnect() function that's called
by both the link status change (unplug) and interface removal (only applies
to things like USB ethernet dongles) cases.

Change-Id: I19d7ceb540d6a0e24df1b55314a13af78f1e593d
Signed-off-by: Mike J. Chen <mjchen@google.com>
thernetDataTracker.java
12e24ae7600f8297abcde0d7c29d6cfb64f59dfb 18-Oct-2011 Robert Greenwalt <rgreenwalt@google.com> Send availability info more reliably

We don't have a monolithic availability state, so the mAvailable variable
must go.

bug:5453318
Change-Id: I82af90907cc7a0173b74d661912f9c28ddc7dcb0
obileDataStateTracker.java
etworkStateTracker.java
50e7e51d68e3b01c3362fe9ab7b3448132e48b43 11-Oct-2011 Jeff Sharkey <jsharkey@android.com> Over-limit within handful of MTU's, update assets.

Consider a network over-limit when it's measured usage is within a
handful of MTU's, since kernel completely drops packets that trigger
limit alert.

Update notification drawables.

Bug: 5433359, 5224629
Change-Id: I10b19cc34c34b47775904229829a25208cd85d25
etworkPolicy.java
1059c3c30ad96a15695c1a92ae8896e078a6309f 05-Oct-2011 Jeff Sharkey <jsharkey@android.com> Move battery stats to xt_qtaguid for data stats.

Replace TrafficStats calls by reading values from xt_qtaguid kernel
module. To keep BatteryStatsImpl changes lightweight, cache recently
parsed stats. Tracks mobile ifaces from ConnectivityService.

Refactor xt_qtaguid parsing into factory outside of NMS. Add stats
grouping based on UID, and total based on limiting filters like iface
prefix and UID.

Bug: 4902271
Change-Id: I533f116c434b77f93355bf95b839e7478528505b
etworkStats.java
671644c3ef92a9153ea5bd495e132d5fe6674234 07-Oct-2011 Scott Main <smain@google.com> docs: some helpful javadocs for network info

Change-Id: I8f1879bf10acd6371a76f11a8e5ec08643c3f943
onnectivityManager.java
etworkInfo.java
4cc5333539f57b54663b0a6e398a11a0aaefc8bb 07-Oct-2011 Scott Main <smain@google.com> docs: deprecate thingy

Change-Id: I579824680f3b5110d56981becaaf81f917989e7e
onnectivityManager.java
ad9c5718daa556fb6907c3f600ea505c1ec3aca0 06-Oct-2011 Jeff Sharkey <jsharkey@android.com> am a50d0f89: Merge "Hide quota APIs until finalized." into ics-factoryrom

* commit 'a50d0f8985d811a6a2f49aa65e31892048e96ccf':
Hide quota APIs until finalized.
44a3e0d497f19fad1de4b73eb0eb6d3b6132c405 06-Oct-2011 Jeff Sharkey <jsharkey@android.com> Hide quota APIs until finalized.

Bug: 5383656
Change-Id: Ia2a978a6ff2ee642b0ea4d7d6b8857b7efffd612
onnectivityManager.java
etworkQuotaInfo.java
3475ebfab28fbecc22841c692dbd0cbdba48417d 06-Oct-2011 Steve Block <steveblock@google.com> Merge "Fix SslError.getPrimaryError() to return -1 if the set of errors is empty"
293779f9c63cbae0dde564449f0270b595593b0d 06-Oct-2011 Jeff Sharkey <jsharkey@android.com> Refine random stats generation.

Offer parameters to pick out specific list of packages, and to change
duration and total data.

Bug: 5416742
Change-Id: I6970a5e76f3198ef23a400c079037212b000ca6b
etworkStatsHistory.java
518f72ca38f4a5e1dfcfade6b40e4fd082dd9fd8 05-Oct-2011 Steve Block <steveblock@google.com> Fix SslError.getPrimaryError() to return -1 if the set of errors is empty

Also fix a couple of buggy asserts.

Bug: 5416594
Change-Id: I0e7e2548886af5fc0b8c20f70a3040d2c5bc68ea
ttp/SslError.java
fa03f9a3460a695337231df3195271060a1b4a06 05-Oct-2011 Steve Block <steveblock@google.com> Fix BrowserFrame to construct SslError using the full URL, rather than the host

https://android-git.corp.google.com/g/#/c/133348 changed BrowserFrame to
construct the SslError using only the host. This was done so that we match on
just the host component of the URL when re-using previous decisions in case of
an SSL error. It also means that the browser displays only the host when it
shows the SSL error dialog.

This change fixes BrowserFrame to pass the full URL to SslError. We modify
SslCertLookupTable to keep the existing behaviour regarding matching on only the
host component. There's no need to change Browser to continue displaying only
the host as I think this change was an unintentional side-effect.

Also remove dead code-path in BrowserFrame.reportSslCertError(). This
method is used only with the Chromium HTTP stack. This code was added
in https://android-git.corp.google.com/g/#/c/121023.

No functional change.

Bug: 5410252
Change-Id: Ief2dbf4558095fb6fa7ab0caac7d37fa4f640b66
ttp/SslError.java
ea54b17038a6631f9e911a084c6138a57647915c 05-Oct-2011 Steve Block <steveblock@google.com> Merge "Clean up SslError"
c58111b307018da66bc227ed5ca019f7d8143b9a 04-Oct-2011 Jeff Sharkey <jsharkey@android.com> Merge "Track xtables summary, move tether stats, time."
7f8a12c75cf2b376fce58fc22b5ecb1b64acf110 04-Oct-2011 Irfan Sheriff <isheriff@google.com> Reduce/Fix system logging

Bug: 5410239
Change-Id: I2f91dfde0b701e8905a1235696591b3154693c7c
hcpStateMachine.java
nsPinger.java
9e334dbc308da119c7902a4badd2424adc5e9fb9 03-Oct-2011 Steve Block <steveblock@google.com> Clean up SslError

- Don't use runtime exceptions for programming errors
- Avoid code duplication
- Tweak JavaDoc for public API

Bug: 5248376
Change-Id: I5a88e5d444094efd44cce323e92f279840cf857f
ttp/SslError.java
905b5891d2aa802f447ac2ce5d77b6c5ba06277a 01-Oct-2011 Jeff Sharkey <jsharkey@android.com> Track xtables summary, move tether stats, time.

Begin tracking xtables summary of data usage to compare with values
reported from /proc/net/dev. Roll tethering directly into UID stats
to trigger UID stats persisting when crossing threshold.

Include xtables summary and authoritative time in samples.

Bug: 5373561, 5397882, 5381980
Change-Id: Ib7945522caadfbe0864fdf391582dc820f4f371e
etworkStats.java
630a1712168f402653039e368259cb9480454fa8 26-Sep-2011 Jeff Sharkey <jsharkey@android.com> Overlay to configure data usage network types.

Specify which network types should be counted when computing data
usage totals.

Bug: 5361005
Change-Id: I830caed1a29199892d209a692b50f8b3e144cafe
etworkTemplate.java
61c0818f2425691e67921ee41ca80e62d2cb9004 26-Sep-2011 Jeff Sharkey <jsharkey@android.com> Merge "Watch network subtype, tethering teardown, empty."
15bbaeb0753f5336a5e8ee07e6f796657ecefb73 24-Sep-2011 Irfan Sheriff <isheriff@google.com> am c21994bc: Merge "Fix watchdog to stop ping after wifi disconnects" into ics-factoryrom

* commit 'c21994bc26df959d1a7161e38b4402b7255ea321':
Fix watchdog to stop ping after wifi disconnects
c21994bc26df959d1a7161e38b4402b7255ea321 24-Sep-2011 Irfan Sheriff <isheriff@google.com> Merge "Fix watchdog to stop ping after wifi disconnects" into ics-factoryrom
32f04e9009046f72242932bf4e820802148e423a 23-Sep-2011 Irfan Sheriff <isheriff@google.com> Fix watchdog to stop ping after wifi disconnects

- The pings are delayed async messages that were getting handled
after a disconnect as well

- Increase poll time to 200 ms, so we block on a receive for 1ms every 200ms for a
sent packet

Bug: 5361564
Change-Id: I1931a1c4146e78a87407d541d8c3934ff8232604
nsPinger.java
90c52de28691ca0bbbf7c039ef20f85ce46882cc 23-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5173952: Opening a Notification From Lock Screen...

...Should Skip Unsecure Lockscreen (ICS)

Also while I am in there, clean up logging of intent objects to include
even less sensitive information, while showing the true Intent in dump
output (since apps can't get to that).

Change-Id: I35fed714645b21e4304ba38a11ebb9c4c963538e
ri.java
367d15ab1a33b6159447fa8542d4fa8ff148371c 22-Sep-2011 Jeff Sharkey <jsharkey@android.com> Watch network subtype, tethering teardown, empty.

Watch for changes to telephony network subtype, and update iface
mapping to persist stats under correct type. Update network stats
before removing tethering NAT rules.

Skip recording that would create empty historical buckets. Query UID
stats before iface stats to always skew positive when counters are
actively rolling forward.

Bug: 5360042, 5359860, 5335674, 5334448
Change-Id: I8aa37b568e8ffb70647218aa1aff5195d3e44d5a
etworkStatsHistory.java
d30f73725bf6f7b668244a0e51245a85005c3e9f 21-Sep-2011 Wink Saville <wink@google.com> am 4aa8d943: Merge "Reduce connectivity logging" into ics-factoryrom

* commit '4aa8d943a970008915b703758743b107927d96fa':
Reduce connectivity logging
c9acde9aa6cf21598640aeebb7d908f1926a48dd 21-Sep-2011 Wink Saville <wink@google.com> Reduce connectivity logging

Change-Id: I5d45b8fbcd01e42df7f2b1cf02fb5b226128abb8
obileDataStateTracker.java
roxyProperties.java
34c73acf88c8190b8cd51d8b8f2b9c22aa7f7941 18-Sep-2011 Jeff Sharkey <jsharkey@android.com> Sample atomic network stats buckets, full poll.

When sampling network stats, always use atomic buckets instead of
interpolating. Always poll iface and UID together so we distribute
into buckets equally. Move stale bucket trimming to just before
writing stats.

Bug: 5321340
Change-Id: I78a2226778a79c875f3668336e39ea24a7b4d5c4
etworkStatsHistory.java
1f0b13b9d64085dd8342ba942f39b6063b6d534d 18-Sep-2011 Jeff Sharkey <jsharkey@android.com> DO NOT MERGE: Sample atomic network stats buckets, full poll.

When sampling network stats, always use atomic buckets instead of
interpolating. Always poll iface and UID together so we distribute
into buckets equally. Move stale bucket trimming to just before
writing stats.

Bug: 5321340
Change-Id: I78a2226778a79c875f3668336e39ea24a7b4d5c4
etworkStatsHistory.java
ff2aff2ac18daa758e5d51a4fd58976ce5f66d46 19-Sep-2011 Jeff Sharkey <jsharkey@android.com> am 3d1d57dc: Merge "Collect and persist tethering stats." into ics-factoryrom

* commit '3d1d57dcdb02ace6af5810bd4ec3f8fad5fc1799':
Collect and persist tethering stats.
04e3bb6d32e73a5b7a74186e643458de467ac596 18-Sep-2011 Irfan Sheriff <isheriff@google.com> Merge "Retain DNS information from DHCP request"
2c08ede34ceb0f847cc9f996db9832f5358f8726 17-Sep-2011 Irfan Sheriff <isheriff@google.com> Retain DNS information from DHCP request

DHCP renewal can fail to fill DNS information. In such
a case retain info from DHCP request

Bug: 5314392
Change-Id: I2413f738be7c8c965ef9e7ffbc348e2738aa68b5
hcpInfoInternal.java
hcpStateMachine.java
cdd02c5d76d3dd4e21b5bb922d7fcfb86efec85f 16-Sep-2011 Jeff Sharkey <jsharkey@android.com> Collect and persist tethering stats.

Use new "gettetherstats" netd command to retrieve statistics for
active tethering connections. Keep tethering poll events separate
from UID poll, even though they end up same historical structures.

Bug: 5244846
Change-Id: Ia0c5165f6712c12b51586f86c331a2aad4ad6afb
ConnectivityManager.aidl
rafficStats.java
d18addb4e3d0cd4da798dd35ad676d98465ebed3 14-Sep-2011 Jeff Sharkey <jsharkey@android.com> Remove deprecated TrafficStats API.

Bug: 5314214
Change-Id: If7dc3ef012a0e998e83ab4fef27ff19398d3e14c
rafficStats.java
2367e75beebd44338d67c20270cecedd5ca3cb5c 13-Sep-2011 Robert Greenwalt <rgreenwalt@google.com> am 61db35da: am 2f835a61: Merge "Make copies of NetworkInfo to give out." into honeycomb-LTE

* commit '61db35da2b4501dde5646f86f21cf5054c41ea26':
Make copies of NetworkInfo to give out.
69b0f63af2e3babc2e9f048c4682032a0c17d9d0 12-Sep-2011 Jeff Sharkey <jsharkey@android.com> Data usage structure optimizations.

Driven by traceview hotspots found in Settings UI.

Change-Id: I614a049523c526b7fcd12fffdf53a3e4723623e4
etworkStatsHistory.java
61db35da2b4501dde5646f86f21cf5054c41ea26 10-Sep-2011 Robert Greenwalt <rgreenwalt@google.com> am 2f835a61: Merge "Make copies of NetworkInfo to give out." into honeycomb-LTE

* commit '2f835a6193c14e27cf761d85ac3ea4c9bd9296f8':
Make copies of NetworkInfo to give out.
6aecb98a627daa3f66c060ca5177a075e4e9bcca 09-Sep-2011 Robert Greenwalt <rgreenwalt@google.com> Make copies of NetworkInfo to give out.

Otherwise we'll change it out from under those we've given it too.
bug:5233462

Change-Id: Iffc886849edfa6ced3da1133f9d363e11b2733f8
obileDataStateTracker.java
etworkInfo.java
4ef6d2ea215169c2c0cbab14228e5073e986392b 09-Sep-2011 Robert Greenwalt <rgreenwalt@google.com> Merge "Pass roaming info to ConnectivityService."
a6d4248e21bd62a51ac4aaadaa67fdb55b666d98 03-Sep-2011 Robert Greenwalt <rgreenwalt@google.com> Pass roaming info to ConnectivityService.

bug:5215657
Change-Id: I77024141a7bbaa47eae021009e16b283699be53e
obileDataStateTracker.java
b3d5957604f8fcaafe72bd76052bc76b682bf443 08-Sep-2011 Jeff Sharkey <jsharkey@android.com> Poll UID stats during iface changes, enforce idx.

When ifaces change, poll UID stats without persisting, since they
depend on knowing active iface to store correctly. Log dropped UID
stats when iface is unknown. Switch to using flags when calling
performPoll().

Enforce that "idx" values are consistent from xt_qtaguid. Transition
to using Log.wtf() for important checks, mostly around file I/O,
kernel stats parsing, and kernel module control. Increase stats
persist threshold to 2MB to reduce churn.

Bug: 5269476, 5270106
Change-Id: I721215bfb65127f95775c71cf135e907cd567e92
etworkStats.java
9b69a04e24e70a8e82e1820c877c8f4df0c7a980 02-Sep-2011 Jeff Sharkey <jsharkey@android.com> Merge "Sample network statistics for sanity check."
07b0dd9a092273f0451cd9881312cb9b22a7af3f 01-Sep-2011 Jeff Sharkey <jsharkey@android.com> Sample network statistics for sanity check.

After detailed poll events, sample high-level network statistics to
sanity check iface totals against UID totals.

Bug: 5248382
Change-Id: I1c1fbb7c094c9ff0c9dde416467c563dda68f478
etworkStats.java
9b2886e24301e5d4e7052ec4a6eaff273d3f516c 31-Aug-2011 Robert Greenwalt <rgreenwalt@google.com> Create new isNetworkSupported API

Useful for checking if on a wifi-only device.
Similar to asking for NetworkInfo for a network type and checking for
null, though here the intent is explicit.

bug:5087537
Change-Id: Ia3ddd09b6b735b8b3ceb7a347891e015fd96b218
onnectivityManager.java
ConnectivityManager.aidl
961e30458319cfd50e1892ba7dd14a1d0ebe4cc7 30-Aug-2011 Jeff Sharkey <jsharkey@android.com> Introduce immediate CONNECTIVITY_ACTION variant.

New broadcast that is dispatched immediately after connectivity
changes have been handled by ConnectivityService, bypassing any
applicable CONNECTIVITY_CHANGE_DELAY.

Also protect CONNECTIVITY_CHANGE broadcasts, since they should only
be sent by system.

Bug: 5198167
Change-Id: I75f1fb44b21da1879f0ab960bcaa481126d70fde
onnectivityManager.java
47eb102b40cd1324d89816a7fb0fecd14fd7a408 26-Aug-2011 Jeff Sharkey <jsharkey@android.com> Always splice historical data stats, debug info.

When reading network counters, always splice in xt_qtaguid values
to avoid counting backwards. Test to verify.

Remove verbose logging around global alerts, and add dumpsys debug
info for NMS and MDST. Also fix subtle bug around stats persisting
and dumping.

Bug: 5212893, 5211028
Change-Id: I783e5286637a67ee2dd2b09878198711a926d0cb
obileDataStateTracker.java
etworkStats.java
etworkStatsHistory.java
ed191e1fae0f860323f6ed76ea982287c42ec83e 25-Aug-2011 Jeff Sharkey <jsharkey@android.com> Merge "Data usage buckets active time, parsing ISE."
235c47ff3edc9228609e82d2201275e70889921f 25-Aug-2011 Jeff Sharkey <jsharkey@android.com> Merge "Register for kernel global data usage alerts."
558a23200697d306b75750cf4612cf0717e73537 25-Aug-2011 Jeff Sharkey <jsharkey@android.com> Data usage buckets active time, parsing ISE.

When recording data usage, measure the actual active time, since
buckets can be quite long. Offer incrementOperationCount() version
that reads thread stats tag for caller. Rethrow any NPE as ISE
during stats parsing, which callers already handle.

Bug: 5171812, 5184508, 5180659
Change-Id: I6da80ccc0162be68bee279529e3a23b6f98ebd87
etworkStatsHistory.java
rafficStats.java
a407aef8985f8a7503438ca33f271edceb2e11dd 24-Aug-2011 Irfan Sheriff <isheriff@google.com> Merge "Added support for multiple DNS servers."
8e9992ae5053a3ac52d28a5a892aed0a0798c7ab 24-Aug-2011 Jeff Sharkey <jsharkey@android.com> Register for kernel global data usage alerts.

Instead of polling every 15 minutes, register for alerts that trigger
when system-wide traffic passes a threshold. Still mixed with polling
to persist UID stats, but relaxed to 30 minutes. Currently watches
for every 512kB.

Make persistence decision separately for network versus UID, and use
total delta bytes when making decision. Use light bootstrap during
systemReady() instead of heavy poll, which had been force-loading all
UID data unnecessarily.

Bug: 5023631
Change-Id: I04b723d6c4bf872fb1028071122dba66a8e1b576
etworkStats.java
8e28b7d78232f6cf08739ca0d129cc7f9e650801 19-Aug-2011 Jeff Sharkey <jsharkey@android.com> Proactively disable data when over policy limit.

Add policy controls to NetworkStateTracker which are combined with
other user preference and internal flags to decide if data connection
should be established. Better locking around enabled flags.

When data network would be over limit, proactively disable data on
that network. Enable when policy is snoozed or when cycle resets.

Track and dismiss notifications from now-stale policies.

Bug: 4587023, 5178147
Change-Id: Ibfcc9f73cda7c369209af701b46eddd3d1943f2d
ummyDataStateTracker.java
thernetDataTracker.java
ConnectivityManager.aidl
obileDataStateTracker.java
etworkStateTracker.java
79e43f679d6102066ee9eff862912806f53bb0e8 17-Aug-2011 Isaac Levy <ilevy@google.com> Added support for multiple DNS servers.

Also increased delay on repeat checks for WWSM.

Change-Id: Ic11b1f37a910c483f48e04dadb539b39fe50e622
nsPinger.java
9a20fa54c9ba4bd19f2afd6e8cc6e9954e7cb739 19-Aug-2011 Jeff Sharkey <jsharkey@android.com> Merge "Background data notification, API clean up."
3a844fcf5a0e70a19c38dc500306b9ebe4e1413b 16-Aug-2011 Jeff Sharkey <jsharkey@android.com> Background data notification, API clean up.

When restricting background data, show ongoing notification to give
easy access to re-enable. Deprecate getBackgroundDataSetting() API
to always return true, since NetworkInfo.isConnected() is new source
of truth. Handle upgrade path by reading from existing secure value,
and kick one last broadcast when changing value. Remove background
data code from ConnectivityService.

Remove warning alerts, since they push ifaces into restricted list;
should only happen when iface has limit.

Bug: 5163559, 5129421
Change-Id: I0064d9d643656a4d32aaae51d4a58bce49fe295f
onnectivityManager.java
ConnectivityManager.aidl
4a56c437b6fd02dce06fa8565953964b01d21b5d 16-Aug-2011 repo sync <isheriff@google.com> Merge "P2p enhancements"
b5d55e302d2253e4bfb233ea705caf258cdc4cb9 11-Aug-2011 Jeff Sharkey <jsharkey@android.com> Foreground/background network stats using sets.

Teach NetworkStats about "counter sets" coming from kernel, and use
them to track usage in foreground/background. Add AID_NET_BW_ACCT to
system_server so it can control counter sets.

Move to composite key of NetworkIdentitySet, UID, set, and tag when
recording historical usage. Persisting still clusters by identity,
since that is heaviest object.

Request async stats poll during systemReady() to bootstrap later
delta calculations. Reset kernel counters when UID removed. Update
various tests.

Bug: 5105592, 5146067
Change-Id: Idabec9e3ffcaf212879821515602ecde0a03de8c
NetworkStatsService.aidl
etworkStats.java
etworkStatsHistory.java
rafficStats.java
8e8d65ff5fdef12c6af3d003dfef19aadc39bea9 12-Aug-2011 Dianne Hackborn <hackbod@google.com> Fix some crashes that are happening in the system process.

- When shutting down, if the screen goes to sleep there is code
that tries to do a notifyAll without holding the lock:

java.lang.IllegalMonitorStateException: object not locked by thread before notifyAll()
at java.lang.Object.notifyAll(Native Method)
at com.android.server.am.ActivityStack.checkReadyForSleepLocked(ActivityStack.java:776)
at com.android.server.am.ActivityStack$1.handleMessage(ActivityStack.java:282)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at com.android.server.ServerThread.run(SystemServer.java:603)

- If an invalid Uri object is sent to the system process it can crash because
the Uri class throws an assertion while unmarshalling. Change this to an
IllegalArgumentException so it gets sent back to the caller:

java.lang.AssertionError
at android.net.Uri$PathPart.readFrom(Uri.java:2224)
at android.net.Uri$HierarchicalUri.readFrom(Uri.java:1106)
at android.net.Uri$1.createFromParcel(Uri.java:1689)
at android.net.Uri$1.createFromParcel(Uri.java:1681)
at android.content.IContentService$Stub.onTransact(IContentService.java:53)
at android.content.ContentService.onTransact(ContentService.java:120)
at android.os.Binder.execTransact(Binder.java:338)
at dalvik.system.NativeStart.run(Native Method)

- StrictMode can try to access the first index in the stack crawl of a stack crawl
array of length 0. Not sure why this happens, but make the code more robust:

java.lang.ArrayIndexOutOfBoundsException: length=0; index=0
at android.app.ApplicationErrorReport$CrashInfo.<init>(ApplicationErrorReport.java:341)
at android.os.StrictMode$ViolationInfo.<init>(StrictMode.java:1978)
at android.os.StrictMode$AndroidBlockGuardPolicy.startHandlingViolationException(StrictMode.java:1097)
at android.os.StrictMode$AndroidBlockGuardPolicy.onReadFromDisk(StrictMode.java:1068)
at libcore.io.BlockGuardOs.read(BlockGuardOs.java:137)
at libcore.io.IoBridge.read(IoBridge.java:426)
at java.io.FileInputStream.read(FileInputStream.java:179)
at java.io.InputStream.read(InputStream.java:148)
at com.android.internal.os.ProcessStats.readFile(ProcessStats.java:804)
at com.android.internal.os.ProcessStats.getCpuSpeedTimes(ProcessStats.java:564)
at com.android.internal.os.ProcessStats.getLastCpuSpeedTimes(ProcessStats.java:545)
at com.android.server.am.ActivityManagerService.updateCpuStatsNow(ActivityManagerService.java:1470)
at com.android.server.am.ActivityManagerService.batteryNeedsCpuUpdate(ActivityManagerService.java:1522)
at com.android.internal.os.BatteryStatsImpl$MyHandler.handleMessage(BatteryStatsImpl.java:110)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at com.android.server.am.ActivityManagerService$AThread.run(ActivityManagerService.java:1302)

(Also fix this code to not cause strict mode to trigger at all, because there is
no need, because this is just reading stuff from /proc.)

- The system seems to crash during boot if it thinks it needs to rotate
the screen, when it is trying to take the freeze snapshot way too early.
There is no need to freeze the screen during boot or if the screen is off:

java.lang.NullPointerException
at android.view.Surface.init(Native Method)
at android.view.Surface.<init>(Surface.java:256)
at com.android.server.wm.ScreenRotationAnimation.<init>(ScreenRotationAnimation.java:91)
at com.android.server.wm.WindowManagerService.startFreezingDisplayLocked(WindowManagerService.java:8758)
at com.android.server.wm.WindowManagerService.startAppFreezingScreenLocked(WindowManagerService.java:3971)
at com.android.server.wm.WindowManagerService.startAppFreezingScreen(WindowManagerService.java:4003)
at com.android.server.am.ActivityRecord.startFreezingScreenLocked(ActivityRecord.java:515)
at com.android.server.am.ActivityStack.ensureActivityConfigurationLocked(ActivityStack.java:3997)
at com.android.server.am.ActivityManagerService.updateConfigurationLocked(ActivityManagerService.java:12535)
at com.android.server.am.ActivityManagerService.updateConfiguration(ActivityManagerService.java:12439)
at com.android.server.wm.WindowManagerService.systemReady(WindowManagerService.java:6161)
at com.android.server.ServerThread.run(SystemServer.java:521)

Change-Id: I85062bb5f6b0909a0f52feedaa75e7611d9d7fbd
ri.java
ac0a0d06c2cf74215a8552250dcb3788b19becf7 11-Aug-2011 Chia-chi Yeh <chiachi@android.com> Merge "Unhide APIs for user space VPN."
aea743aaa43a833fd8ff3dc56205197583152d5f 30-Jul-2011 repo sync <isheriff@google.com> P2p enhancements

- ConnectivityService interaction and support for running dhcp server
and client

- State machine enhancements for connectivity interaction

Change-Id: Iba3beb8c87554ffd67a7b7e852bbb4dd8666a4f5
onnectivityManager.java
hcpInfoInternal.java
26a8d71413f107603ad68f4fa80cf2bf3da9dab1 10-Aug-2011 Isaac Levy <ilevy@google.com> DnsPinger -- log setup problems

Changed class to send a pings for 1.5 seconds to see if conn problems are
resolving after time. Turning RD flag on for now

Change-Id: I05bcf208bda3ea8fb98bd7aec8f0109523d64583
nsPinger.java
541d8ea32dbc9b2ca931fae98d2150d197d4b34c 09-Aug-2011 Jeff Sharkey <jsharkey@android.com> Merge "Fix random stats generation for debugging."
d0d85f26cb7287c63adf95bace098bc1af3fe4e8 09-Aug-2011 Chia-chi Yeh <chiachi@android.com> Unhide APIs for user space VPN.

Change-Id: I6f9ddb3fffe9e10cc2d34dda3ae8700b1af7e470
pnService.java
880f64ac1080ccec111de91a4af026cca3d1bb25 08-Aug-2011 Chia-chi Yeh <chiachi@android.com> Merge "VPN: introduce VpnService as the base class for user space VPN."
199ed6ef89bd356895534ba09ac43ed340cd9a1a 04-Aug-2011 Chia-chi Yeh <chiachi@android.com> VPN: introduce VpnService as the base class for user space VPN.

Change-Id: I4793a6eb51b33f669fc6d39e1a16cf5eb9e3d851
pnService.java
04cd0e47dbc1e9769ac6f258c923d5b17fa57986 05-Aug-2011 Jeff Sharkey <jsharkey@android.com> Fix random stats generation for debugging.

Change-Id: I53f0e9ea9b15fbf7b99886ea8604eda8d3958d8d
etworkStatsHistory.java
af82ea2abf53b6825fbbce23434419527d8e8b5c 05-Aug-2011 Jeff Sharkey <jsharkey@android.com> Data cycle ends on last second of month.

When data cycle resets on a day invalid in given month, snap the
cycle to last second of month. Previous behavior was to bump fully
into next month, but that causes cycle loops.

Includes tests to verify.

Bug: 4623124
Change-Id: I2f233091f6f1df33a2814284519cbc04532874e9
etworkPolicyManager.java
fe313490fb64746d4042934f77ac19d8d00d6a25 05-Aug-2011 Jeff Sharkey <jsharkey@android.com> Merge "Network stats with varint, omit parcel fields."
d6d0628051f259d03367fe4e71af7137f9184142 05-Aug-2011 Irfan Sheriff <isheriff@google.com> Merge "Rewrote DnsPinger - now is async and concurrant"
b234636105317942bdf2daf4f5581c2218847084 04-Aug-2011 Chia-chi Yeh <chiachi@android.com> Merge "VPN: move away from the VPN permission."
d2fe04b71a89a0608eb7c67065dead2a1f540122 22-Jul-2011 Isaac Levy <ilevy@google.com> Rewrote DnsPinger - now is async and concurrant

Change-Id: I93e1374ae857832935202614e34ce18f040fcfc7
onnectivityManager.java
nsPinger.java
63d27a9233fed934340231f438493746084a681d 04-Aug-2011 Jeff Sharkey <jsharkey@android.com> Network stats with varint, omit parcel fields.

Persist NetworkStatsHistory using variable-length encoding; since
most buckets have small numbers, we can encode them tighter. Initial
test showed 44% space savings. Also persist packet and operation
counters.

Let NetworkStatsHistory consumers request which fields they actually
need to reduce parcel overhead.

Tests for verify varint and history field requests, also verify end-
to-end by persisting history into byte[] and restoring. Expose
bandwidth control enabled state. Extend random generation to create
packet and operation counts. Moved operation counts to long.

Fix bug that miscalculated bytes since last persist, which would
cause partial stats loss when battery pulled.

Bug: 4581977, 5023706, 5023635, 5096903
Change-Id: If61e89f681ffa11fe5711471fd9f7c238d3d37b0
NetworkStatsService.aidl
etworkStats.java
etworkStatsHistory.java
a841e524013c4bff360f2280cb5d2fbb1895d043 04-Aug-2011 Jeff Sharkey <jsharkey@android.com> Merge "Expose quota status for active network."
fcc1b41b663c1a0cb551344c4a16a5ad9ce36d60 04-Aug-2011 Chia-chi Yeh <chiachi@android.com> VPN: move away from the VPN permission.

VpnBuilder will be replaced by VpnService in the next change.

Change-Id: I2dea67a1616b74d17b372f7b214d207f1617198e
pnBuilder.java
f0ceede8fff5df24e5c98701d81c2b71eb138aa9 03-Aug-2011 Jeff Sharkey <jsharkey@android.com> Expose quota status for active network.

Create API to expose quota status derived from underlying network
policy. This is designed to support applications making informed
decisions when performing network requests.

Fix bug with random stats generation, and write policy when changing
restrict background data flag. Deprecate EXTRA_NETWORK_INFO, since
it varies based on UID.

Bug: 4517283, 5088603
Change-Id: Ic6893a8967f69937e466be226ba7bb86ef5a5d2d
onnectivityManager.java
ConnectivityManager.aidl
NetworkPolicyManager.aidl
etworkQuotaInfo.aidl
etworkQuotaInfo.java
etworkStatsHistory.java
58d4c595818de0d1b7edf382fee6ed1a4bd70e7f 03-Aug-2011 Robert Greenwalt <rgreenwalt@google.com> Reduce ConnectivityService logging

bug:5106520
Change-Id: I4a7a5cac51c09e9e2275b30b7b2c053f94b9088d
obileDataStateTracker.java
5a8921fddac150601f4719d714e919e3a600f295 30-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> Stop creating threads for each MDST.

Response to email from the framework team.

Change-Id: I8fec9cfbc3364c2c2a16156afc2414d06c675de7
obileDataStateTracker.java
d20482de2f8fb0045c69c7065221923a72d13303 02-Aug-2011 Jeff Sharkey <jsharkey@android.com> Merge "Add operation counts to network statistics."
e1538f05587386bbba8dac0b4b4a6c1059947429 01-Aug-2011 Chia-chi Yeh <chiachi@android.com> Revert "Unhide APIs for user space VPN."

This reverts commit 3c2529c717cda3df321c1d0d6abe23ac1f298ac9.

Change-Id: I37d4ea6c1079d337ede7ac567d88414a41fc1e11
pnBuilder.java
a63ba59260cd1bb3f5c16e395ace45a61f1d4461 20-Jul-2011 Jeff Sharkey <jsharkey@android.com> Add operation counts to network statistics.

Provide API to increment "operation counts" for a UID and tag, used
to eventually derive bytes/operation stats. Internally is stored at
network layer, but should belong at data layer. Switch profiling
to use data layer stats, which are emulated by summarizing network
layer details.

Read packet counts from new /proc/ columns and collect them into
NetworkStatsHistory. Prevent double-counting by ignoring values from
first snapshot. Watch for duplicate /proc/ entries. Update tests
to verify packet and operation counters.

Bug: 5052136, 5097392
Change-Id: I1832f65a2b8a9188f8088f253474a667c21a2f09
NetworkStatsService.aidl
etworkStats.java
etworkStatsHistory.java
rafficStats.java
be591d736e396d6b80c3544dc47eb560c056a76d 29-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> am 86574d66: am 0d8acea9: Make copy-constructor make deep copy.

* commit '86574d66dacc09c9b5a0a0ab2623ec01704b6fc8':
Make copy-constructor make deep copy.
86574d66dacc09c9b5a0a0ab2623ec01704b6fc8 29-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> am 0d8acea9: Make copy-constructor make deep copy.

* commit '0d8acea9bb452d1fdbb3d811041f7bdb1b0ef8a3':
Make copy-constructor make deep copy.
0d8acea9bb452d1fdbb3d811041f7bdb1b0ef8a3 29-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> Make copy-constructor make deep copy.

Used to grab immutables but now will copy the data so the result
is mutable and we don't get crashes.

bug:5051667
Change-Id: I0878bf8c58069055f528121541d1911f404cbe49
inkProperties.java
77d739006a38e765e236eb0828b9560effef15d6 28-Jul-2011 Kristian Monsen <kristianm@google.com> Merge "Part of fix for bug 4997380: Some error types unknown to SslError"
2043b01b207aae3458da395bc6d501d76e59425c 28-Jul-2011 Jeff Sharkey <jsharkey@android.com> Merge "Maintain separate "restrict background data" flag."
4664500de0c1b270bce4991a400ab439ff2ef77b 28-Jul-2011 Jeff Sharkey <jsharkey@android.com> Maintain separate "restrict background data" flag.

Since "restrict background" depends on active networks, separate its
definition from setBackgroundDataSetting().

Bug: 4979025
Change-Id: I12bfe3a2e606375b39c67706270caa7a1bb0214e
NetworkPolicyManager.aidl
fcbb4924864976339d5ad8b7adb925d7a050df6a 28-Jul-2011 Chia-chi Yeh <chiachi@android.com> Merge "Unhide APIs for user space VPN."
41ff7ec82422a5b6d00892afdb3232bc0e53d851 26-Jul-2011 Jeff Sharkey <jsharkey@android.com> Revise data limit notifs, watch kernel alerts.

Teach NetworkPolicy limits to "snooze" when requested by user, and
notify with both dialog and notification. Register for network alerts
through NMS to trigger updates immediately instead of waiting for
next stats update.

Enforce that all NetworkPolicy are unique on a template basis, and
move SCREEN_ON/OFF broadcasts to background thread. Launch SystemUI
and Settings directly instead of using actions, and include full
NetworkTemplate in extras.

Tests to verify notification and snooze behavior.

Bug: 5057979, 5023579, 4723336, 5045721
Change-Id: I03724beff94a7c0547cb5220431ba8d4cd44d077
NetworkPolicyManager.aidl
etworkPolicy.java
etworkPolicyManager.java
41394a361020e9f58524f23d6831bb8e63063856 26-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> Merge "Use dns proxy a bit." into honeycomb-LTE
572b7048a6ed6cf6c5f6bc6c9d542dc377d601ff 26-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> Use dns proxy a bit.

Sets the current default interface and sets the dns per interface.
port of changes 23041 and 22098 from opensource.
bug:5060618

Change-Id: I80e7ef88727eeb8ff2b48059f69b270e5a6b5c16
etworkUtils.java
a10b7fd2239668a87be690a57ef7b3bc39b6bfd3 26-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of a7f68230 to master

Change-Id: I9e8faaa94f9b251a9c003dc6b9a3e2a97c4564a9
37e433fd1c4dc21a08a0c7091df97106b3aceac8 25-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> Fix build.

Add NetworkUtils function missed in manual merge.

Change-Id: Ifce8f2988bb581ddc9b971b8af07a32f46c91e14
etworkUtils.java
5db7af968a5b57ad9f8e5a61534cafe46c344b85 24-Jul-2011 Mike Lockwood <lockwood@android.com> Merge "Fix USB tethering"
6c2260b3af3a9243aa7f04cf03106f31817cb4c1 19-Jul-2011 Mike Lockwood <lockwood@android.com> Fix USB tethering

The previous approach no longer works with the new USB drivers, since the usb0
interface is no longer enabled by default.
This introduced a chicken & egg problem - usb0 will not be enabled until the
user tries to start tethering, but Settings will not enable the checkbox unless
usb0 is enabled.
To fix this we add an explicit call to start USB tethering in the connectivity manager.
This will enable RNDIS if necessary and then bring up tethering once usb0 is enabled.

Change-Id: Iae1f733366aa6b0dafa66d4c97207794173ef54b
Signed-off-by: Mike Lockwood <lockwood@android.com>
onnectivityManager.java
ConnectivityManager.aidl
6dcf2d77767f73608caa316db534a1df64a2b272 22-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> am 19933916: am ad55d351: Add better routes for secondary DNS

* commit '199339169476d0d6d0ecaa8ed3bff3a9e9a0f430':
Add better routes for secondary DNS
ad55d35114237071133eb28ded93a014185d4e35 22-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> Add better routes for secondary DNS

We'd been doing no-gateway hostroutes for dns servers on secondary nets, but on
some devices (multi-homed stingray) this is a problem. Add gateway-ed hostroutes
instead so the BP can do it's nonstandard "magical" demultiplexing.

bug:5011392
Change-Id: Ia48f69c8ddf2a37cfb8f014f078f96bf601d2ddb
inkProperties.java
b6055fe7472f16901f0d06f405ac512d5cdafec4 22-Jul-2011 JP Abgrall <jpa@google.com> Merge "NetworkManagementService: receive bandwidth controller events"
3c2529c717cda3df321c1d0d6abe23ac1f298ac9 22-Jul-2011 Chia-chi Yeh <chiachi@android.com> Unhide APIs for user space VPN.

Change-Id: I2d9e5a8a3ee8556626e373bfdc93c809dad40bff
pnBuilder.java
6abf39879a90dd004b8d2d26b7fac2d229ff47b6 22-Jul-2011 Chia-chi Yeh <chiachi@android.com> VPN: add VpnBuilder as the public API of user space VPN.

Change-Id: I5d30cf592bead315509038632647c88de5060e50
pnBuilder.java
eaef351afcd586d5a84e80455f12f72fd12213ef 19-Jul-2011 Alon Albert <aalbert@google.com> Add a getter for the active tag

Change-Id: I597e041867fba7efae41feea63fa196bc10e4aa2
rafficStats.java
02e21d6a5b5117d494777a36783909854854f751 18-Jul-2011 Jeff Sharkey <jsharkey@android.com> Data usage notifs, newly installed apps, defaults.

Only show warning/limit notifications for active networks, since they
aren't actionable for inactive IMSI. Include IMSI in debug output on
engineering builds.

Move default policy warning to be configured through overlay. Watch
for newly installed packages to enforce global policy.

Bug: 5038729, 5038541, 4979026, 5023634
Change-Id: I8fc8ab4c23c440a3091504ea16133ed6ababf58e
etworkIdentity.java
etworkTemplate.java
d9212d3088d2ecb794933c2f96392ea160b857eb 15-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of 8550f3b8 to master

Change-Id: If2881b8b7faea5139af83a37cba04ccac5904f81
4e814c348ce205fcc1a273427f95ef1d100ed60c 15-Jul-2011 Jeff Sharkey <jsharkey@android.com> Hide NetworkTemplate details, buffered stats I/O.

Move template matching to builder methods instead of exposing the
internal constants. Also rule to match Ethernet usage. Buffer
reading and writing of network stats, making operations 5x faster.

Change-Id: Iedb2d0ab3b26a976811c050f84a164e909eb74b6
etworkTemplate.java
0a46db5d88461d9a6c85bb2e95982ac4c511d57e 14-Jul-2011 Robert Greenwalt <rgreenwalt@google.com> Apply the dns and route diff which we get a change

bug:5008973
Change-Id: Ib99e43d9d852452cc1f2aea6bef07bbd194f28cc
inkProperties.java
outeInfo.java
12b933d0d9252decaae9fee2456bb1e1cd94c085 15-Jul-2011 JP Abgrall <jpa@google.com> NetworkManagementService: receive bandwidth controller events

This is a 1st pass at receiving events that indicate
some quota has been reached e.g. warning quota, data collection quota,
cutoff quota,...

It needs:
- new kernel with quota2 logging support
- new net:bandwidthcontroller that supports
. quota2,
. setting alerts.
- new NetlinkEvent/NetlinkManager/NetlinkHandler to process
NETLINK NFLOG messages.

Change-Id: Ibfbb13512c5350cdee0e544ec14caa6f59812409
thernetDataTracker.java
NetworkManagementEventObserver.aidl
5779c9c2d9f1f7a28279fe907aebbb43981286fd 15-Jul-2011 Chia-chi Yeh <chiachi@android.com> VPN: close the socket in protectVpn() to avoid leaking descriptors.

Change-Id: Idda0c2ea1770abc490566e894711bcb08f60b354
ConnectivityManager.aidl
76326a9d7da1e1726142be4e9c6b770aae7a90ca 14-Jul-2011 Wink Saville <wink@google.com> am 3810361e: am 6d1d16c3: Merge "Remove STOPSHIP but allow seamless Handoff when possible." into honeycomb-LTE

* commit '3810361e4a3e93d3c8a10aaeec54f65dfcc2d03d':
Remove STOPSHIP but allow seamless Handoff when possible.
1abd5b3e6f11ef9d7076685c56ef942fa0dd77e4 12-Jul-2011 Kristian Monsen <kristianm@google.com> Part of fix for bug 4997380: Some error types unknown to SslError

Mapping chromium error codes from net/base/net_error_list.h to
SslError codes.

Change-Id: Ie4f98974e23969c3b5ae1f8c4413772cf93603b9
ttp/SslError.java
e822225f7a01ef088ff01f7613f953d5d89945ed 13-Jul-2011 Wink Saville <wink@google.com> Remove STOPSHIP but allow seamless Handoff when possible.

If an address is removed we must reset the connection but
only for the connections associated with that address. For
now we're doing the "all" addresses for a type (IPv6 or IPv4)
in the future we only need to reset a particular addresses
connections.


Bug: 4981919
Change-Id: I97f8071a3ed6f827ed22f32216ca5011bfe6c1d9
inkProperties.java
3862096cbf4a9b6a3575fa6cc4060e02240d7fee 13-Jul-2011 Jeff Sharkey <jsharkey@android.com> Merge "Include full network history around current time."
434962e44ea93b1c4d216c55f636a435bf54aa54 13-Jul-2011 Jeff Sharkey <jsharkey@android.com> Include full network history around current time.

When requesting historical values with time ranges, always include
full values for buckets that span current time. (It doesn't make
sense to interpolate partial data.) Move getTotalData() to return
full Entry objects to prepare for packet counts.

Bug: 4691901
Change-Id: I717bd721be9f1d4a47c4121e46e07a56cb15bbf1
etworkStatsHistory.java
7b91b31e28097b468db4cc2c6ac1a8e4064d8027 13-Jul-2011 Elliott Hughes <enh@google.com> Fix typo in AndroidHttpClient JavaDoc.

Bug: http://code.google.com/p/android/issues/detail?id=14788
Change-Id: I7465c6c42e7b208efc9c954ac46c1b683676106e
ttp/AndroidHttpClient.java
d37948f6ed1667d077e0e3a38808f42f981ddcc2 12-Jul-2011 Jeff Sharkey <jsharkey@android.com> Hide NetworkStatsHistory internals.

Instead of exposing internal storage details, offer getValues()
accessor which populates values into a recycled structure.

Change-Id: I5228d7099a8f61b2018a435a813435a67dae49b4
etworkStats.java
etworkStatsHistory.java
fd8be3e5e7420f3cca591daeec8a44487f5f65aa 11-Jul-2011 Jeff Sharkey <jsharkey@android.com> Return stats from inactive ifaces, packet counts.

When an iface goes inactive, xt_qtaguid maintains historical counters
instead of discarding. Now reading and returning those values in
NetworkManagementService summary calls. Tests to verify stats are
returned.

Modify NetworkStats to include rxPackets and txPackets values, and
move to Entry to eventually hide internal storage details.

Bug: 4984539
Change-Id: I1ba0bb5580c62e946d9dff2cc2a6f64aff403efc
etworkStats.java
ae367419df6e5f55b081fa793b535cc84b55d6ed 08-Jul-2011 Wink Saville <wink@google.com> resolved conflicts for merge of e4a56a32 to master

Change-Id: I50f8fe61303efa78f5d450ddda1483e0ecb81d12
8171e6f690cca1bad354e7e352823d79d420daf3 08-Jul-2011 Wink Saville <wink@google.com> Use resetConnections with resetMask.

Bug: 4981919
Change-Id: I5dec2da0756d5083bc81494fd583672704537694
etworkUtils.java
6d815e9dd00a5cb36554acb7b2f76f47c03cd7cf 07-Jul-2011 Irfan Sheriff <isheriff@google.com> Merge "Moved WifiWatchdogService and DnsPinger"
a7bc1135c270fd4a84ab7ad45b7194e9b580300e 06-Jul-2011 Isaac Levy <ilevy@google.com> Moved WifiWatchdogService and DnsPinger

- Moved WWS and DnsPinger in prep for StateMachine rewrite
intent.

Change-Id: I912ca80d31ee2ded99eb345a2e5a55d01bd9910c
nsPinger.java
4a06281052e42c09062050abd7fa3de3249c088c 06-Jul-2011 Brian Carlstrom <bdc@google.com> Adding additional details to ssl_certificate view

Change-Id: I3da80988b749fe60174c3c8df856d714ede518ba
ttp/SslCertificate.java
2e46764a707bd14cad22bc179669eeecb2d7c647 04-Jul-2011 Chia-chi Yeh <chiachi@android.com> VPN: implement status report for legacy VPN.

Change-Id: I81c28dafd9588572df76cbc303b0d6a0f41f9bc6
ConnectivityManager.aidl
100155a310fbb5028fc48e359bdfb7c4d3531843 04-Jul-2011 Chia-chi Yeh <chiachi@android.com> VPN: convert prepare() into a form which helps solve race conditions.

When someone tries to revoke packageA, it is possible that packageA is
already revoked by packageB. In this case packageB should not be revoked,
and the new prepare() can help solve this problem.

Change-Id: Iee056a191dd99467b8ad1b5379a17b02d404bad1
ConnectivityManager.aidl
77fd485c2ff780d1e6ef0ba1e3e811370ecbc528 03-Jul-2011 Chia-chi Yeh <chiachi@android.com> VPN: export legacy VPN in IConnectivityManager.

Change-Id: I016fe056ceab39ffc36aa235d14b30a9f094a2e1
ConnectivityManager.aidl
350083e36b9db6062e165954403ef921ff3dfdad 29-Jun-2011 Jeff Sharkey <jsharkey@android.com> Migrate bandwidth control to NMS, omit history.

Both stats and policy make NMS calls that depend on bandwidth control
being enabled, so move enable/disable into NMS and drop calls when
disabled. This avoids throwing heavy ISE exceptions when disabled.

Only include recent data when writing NetworkStatsHistory as part of
dumpsys call. Introduce manual poll event for Settings UI.

Bug: 4982115, 4770435, 4515856
Change-Id: I257820b057af2f0f99c736fb4f61e55b9fdc3e66
NetworkStatsService.aidl
etworkStatsHistory.java
b3f19ca36c8c1301893c621d8f2150e06210722c 30-Jun-2011 Jeff Sharkey <jsharkey@android.com> Enforce background data flag, rules through netd.

Connect up netd penalty box through NMS, and enforce the existing
background data flag by putting all UIDs in penalty box. Allow
platform applications to have policy applied. Only dispatch unique
rules to netd, avoiding any repeats.

Bug: 4598463, 4965677
Change-Id: Ibf9beff998ba7a1ea92f5e2f7eeba7b483d4b918
etworkPolicyManager.java
8568db534118fc14cc28100306d51626464ff319 29-Jun-2011 Jesse Wilson <jessewilson@google.com> Move socket tagging from libcore.

Change-Id: I7515896936c5bbd212c88e2801b831914219a925
rafficStats.java
4414cea13908b8230640f84ef39603d68ff9c377 25-Jun-2011 Jeff Sharkey <jsharkey@android.com> Better network stats parsing, integer tags, async.

Change NMS parsing to handle extended /proc/ stats formats by pairing
values with header keys. Move TrafficStats to integer tags to match
kernel internals, and offer well-known tags for system services.

Async policy event dispatch from NPMS, and update tests to block for
event dispatch. Narrow app policy to exclude apps signed with system
key, which are usually critical.

Bug: 4948913, 4903489, 4585280

Change-Id: Idb357227ccaa617906411f309371cea18d7bc519
etworkPolicyManager.java
rafficStats.java
5bb9b19c5a3f3cf292f812ff5b9f9b8bcc88e5af 28-Jun-2011 Huahui Wu <hwu@google.com> 2nd try: Gets the URL that has a cert error and carrys it in SslError.

Identical to https://android-git.corp.google.com/g/#change,117828
which was reverted since its collaborative CL broke the build.

Change-Id: I5fa7d3e9b6026639bf72530ff5b449e36f802914
ttp/SslError.java
899639dd44a9bedc807be6b712c35e7300e01026 28-Jun-2011 Huahui Wu <hwu@google.com> Merge "Revert "Gets the URL that has a cert error and carrys it in SslError.""
2e029c67a8e893e91600df989bbb42272d82af21 28-Jun-2011 Huahui Wu <hwu@google.com> Revert "Gets the URL that has a cert error and carrys it in SslError."

This reverts commit 3015516a4611db23ce56ae057d281c9328cfdf24.
ttp/SslError.java
fa487ca830cb150be5822d8d73c3d832672f7108 28-Jun-2011 Huahui Wu <hwu@google.com> Merge "Gets the URL that has a cert error and carrys it in SslError."
3015516a4611db23ce56ae057d281c9328cfdf24 27-Jun-2011 Huahui Wu <hwu@google.com> Gets the URL that has a cert error and carrys it in SslError.

b/2689122 SSL error shows the wrong page when triggered by an image/javascript in the page.
This change receives the URL which has a cert error from webkit and carrys it in SslError.
so the Browser app can show the URL in the dialog boxes. Related CLs are:
webkit: https://android-git.corp.google.com/g/#change,117817
browser: https://android-git.corp.google.com/g/#change,117835

Change-Id: I65c3f038a48b6386fa93cb25a9ef70dbfb982c18
ttp/SslError.java
5106476bbf2a8e89b47e91d60e20fd38f7fa7e85 28-Jun-2011 Brian Carlstrom <bdc@google.com> Merge "Moving ssl_certificate layout, resources, and helper code to SslCertificate Add IKeyChainService.deleteCaCertificate"
6da00334478df64921b68fcbb45c9d1eef6f35bd 27-Jun-2011 Brian Carlstrom <bdc@google.com> Moving ssl_certificate layout, resources, and helper code to SslCertificate
Add IKeyChainService.deleteCaCertificate

Change-Id: If42341bc732efcfe4f958c00cdd6c0fec11a3c75
ttp/SslCertificate.java
f59c7d0f2ac8d489b6d8118543a57ea4a603eacf 24-Jun-2011 Mike J. Chen <mjchen@google.com> Hookup interface status to other clients

After unreverting the linkstate change patch, hook up notification handlers
that didn't exist when the first patch was created, like
EthernetDataTracker.java and Vpn.java.

For the observers that handle interfaceStatusChanged(), I made
interfaceLinkStatusChanged() call it so they both do the same thing.

Change-Id: I0077e5e5f48f3932ba98f5bf363243892f2de6cc
Signed-off-by: Mike J. Chen <mjchen@google.com>
thernetDataTracker.java
NetworkManagementEventObserver.aidl
6143f5f7392fb0d3e5702a46a2415bd0ecb6efb4 24-Jun-2011 Mike J. Chen <mjchen@google.com> Revert "Revert "Propagate new link-status-change message to any NetworkManagementService""

This reverts commit 1a7e67190228a8ff3b92e7e5496a8db8ff306cca.

Bring back the changes from Stan Chesnutt regarding link-status-change
notifications. The comment from the original patch was:

Propagate new link-status-change message to any NetworkManagementService
observers. Also fix the syntax of the "interface-status-change" message. Add
a null handler in the ThrottleService and Tethering classes (plus fix names).

Change-Id: I42cbed692024de32275cad234f42ff23ab7e9d8d
Signed-off-by: Mike J. Chen <mjchen@google.com>
NetworkManagementEventObserver.aidl
98e8b19c7bc422600a7a27819311d0059b5af2da 24-Jun-2011 Jesse Wilson <jessewilson@google.com> Warn about the lack of access controls for SD card HTTP caches.

Change-Id: I54adc2f9b57964e15a0fc26b719729e6087b1bda
http://b/4772280
ttp/HttpResponseCache.java
756f25fc61cee5eb90718e9871e7ec5ee216f8a2 23-Jun-2011 Irfan Sheriff <isheriff@google.com> am 1cc0fa41: am db45e0bd: am ecce539f: Merge "Release wakelock after use" into honeycomb-mr2

* commit '1cc0fa416f195732cc7c04cebfaabe7f3fe994c7':
Release wakelock after use
5ff886e5319c519a6b644a999680ea651e208981 22-Jun-2011 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of 7a652bc8 to master

Change-Id: Id0a41cae36f5a3b30f2fe8a202c934153b9cd03f
db45e0bdd02c2b9416b89999422561929feb5cc0 22-Jun-2011 Irfan Sheriff <isheriff@google.com> am ecce539f: Merge "Release wakelock after use" into honeycomb-mr2

* commit 'ecce539f3d739fbf4b395639a485fddf51f688d6':
Release wakelock after use
38053dad9f8b988a162fba89545f4f7b8a09d34c 22-Jun-2011 Irfan Sheriff <isheriff@google.com> am 41b35884: Revert "DO NOT MERGE Revert "Fix lease duration handling""

* commit '41b35884ff68a62f5fc8f65dcc26342d0889113d':
Revert "DO NOT MERGE Revert "Fix lease duration handling""
cf99765b6255d73aa4fbc61d5bd78ec65fbd0370 22-Jun-2011 Irfan Sheriff <isheriff@google.com> resolved conflicts for merge of 914ed90f to honeycomb-LTE

Change-Id: I616b7ba5c27d0cc4247f5cce4303effe14658e1e
c74eacde3028551864d8a9f8822803a835785c3a 22-Jun-2011 Irfan Sheriff <isheriff@google.com> resolved conflicts for merge of 267a6181 to honeycomb-LTE

Change-Id: I95d459c937f788ed15f178e85692e1c393bdaa04
cd672ebf2963e4c448115bac4c80a6659a5904be 21-Jun-2011 Irfan Sheriff <isheriff@google.com> Release wakelock after use

DHCP renewal can finish pretty quick most times and holding
a timed wakelock wastes battery.

Hold a non-reference counted lock and release it immediate
while having the safety of a 40s release

Bug: 4575773
Change-Id: I49d2e8c27b2723690aef26417c4b9a145843a401
hcpStateMachine.java
885c3c11cf1e20c456ddf681a06a4a878426a632 21-Jun-2011 Irfan Sheriff <isheriff@google.com> am bc4ddef4: Merge "DO NOT MERGE Revert "Fix lease duration handling"" into honeycomb-mr2

* commit 'bc4ddef479011e200d0273fe73c22922a85de1fe':
DO NOT MERGE Revert "Fix lease duration handling"
41b35884ff68a62f5fc8f65dcc26342d0889113d 21-Jun-2011 Irfan Sheriff <isheriff@google.com> Revert "DO NOT MERGE Revert "Fix lease duration handling""

This reverts commit 7dd120058972226158176b292c00841efecc259f.
hcpStateMachine.java
914ed90f2c02092474d2db36626734ca1b2cf315 21-Jun-2011 Irfan Sheriff <isheriff@google.com> Revert "DO NOT MERGE Revert "DO NOT MERGE Add DhcpStateMachine""

This reverts commit 58d1bb497e0d83e28a02fbcdc1f33f29a992db7e.
hcpStateMachine.java
etworkUtils.java
58d1bb497e0d83e28a02fbcdc1f33f29a992db7e 21-Jun-2011 Irfan Sheriff <isheriff@google.com> DO NOT MERGE Revert "DO NOT MERGE Add DhcpStateMachine"

This reverts commit fe3b33d4ead06c546202753e38188db5e2eaa7fa.

Change-Id: I3a9ae1f0d17e7a154d27d4f3f3eb1efa21a34f64
hcpStateMachine.java
etworkUtils.java
7dd120058972226158176b292c00841efecc259f 21-Jun-2011 Irfan Sheriff <isheriff@google.com> DO NOT MERGE Revert "Fix lease duration handling"

This reverts commit 56878760c3f0255dbcc8d78572f784b96ee36cb0.
hcpStateMachine.java
ccf83af1017b7b1eaf12f6ec3d2cb2137a7cdda9 03-Jun-2011 Robert Greenwalt <rgreenwalt@google.com> Fix tethering upstream determination.

Used to use iface names, but on mobile ifaces are multipurpose.
Refined to use ConnectivityService types.
bug:4530116

Change-Id: Iaa632d5f540d27ffff683bd7d94f8004bf422e71
onnectivityManager.java
5dc0c26cffbbc62ff84f9f4c8a451e68e2c05d2d 20-Jun-2011 Jeff Sharkey <jsharkey@android.com> Teach NetworkIdentity about roaming.

And correctly upgrade NetworkIdentitySet written to disk, assuming
that old values aren't roaming.

Bug: 4724762
Change-Id: Ic25897ebbaf43be2390174d8e5fd08386bc8a345
etworkIdentity.java
d03fd3f004e3ba8aaa1692ee0e92e8ae171d2a04 20-Jun-2011 Jeff Sharkey <jsharkey@android.com> Persist "tagged" network stats along with UIDs.

Now stores tags other than TAG_NONE (0x0), which are useful for app
debugging. Combine UID and tag together into single long key, and
expose tag data through AIDL when requested. Change NMS to track
TAG_NONE as total UID traffic, matching the kernel definition.

Added TAG_MAX_HISTORY to control how long tag-granularity statistics
are stored; overall UID usage is still kept for UID_MAX_HISTORY. Fix
bug to trim NetworkStatsHistory outside normal polling loops to catch
non-active networks and UIDs.

Test to verify UID and tag packing, and to verify that UID traffic on
two networks are combined to match MOBILE_ALL template.

Change-Id: If0e039416d9e7f63b1a39e04cddfb1133b5a78ee
NetworkStatsService.aidl
b09540f33a6cabe50edec0ef32d0b1d0b0d96fff 19-Jun-2011 Jeff Sharkey <jsharkey@android.com> Handle removed UIDs in network stats and policy.

When UID_REMOVED, clean up any existing UID network policy so it
doesn't linger for future apps. Also move any NetworkStatsHistory
to special UID_REMOVED tracking bucket.

Tests for new removal code. Also test detailed UID stats, including
network changes to verify template matching logic.

Bug: 4584212
Change-Id: I9faadf6b6f3830eb45d86c7f1980a27cdbcdb11e
etworkIdentity.java
etworkState.java
rafficStats.java
1b5a2a96f793211bfbd39aa29cc41031dfa23950 19-Jun-2011 Jeff Sharkey <jsharkey@android.com> Read "qtaguid" network stats, refactor templates.

Teach NMS to read qtaguid stats from kernel, but fall back to older
stats when kernel doesn't support. Add "tags" to NetworkStats entries
to support qtaguid. To work around double-reporting bug, subtract
tagged stats from TAG_NONE entry.

Flesh out stronger NetworkTemplate. All NetworkStatsService requests
now require a template, and moved matching logic into template.

Record UID stats keyed on complete NetworkIdentitySet definition,
similar to how interface stats are stored. Since previous UID stats
didn't have iface breakdown, discard during file format upgrade.

Change-Id: I0447b5e7d205d73d28e71c889c568e536e91b8e4
NetworkStatsService.aidl
etworkIdentity.java
etworkPolicy.java
etworkPolicyManager.java
etworkStats.java
etworkStatsHistory.java
etworkTemplate.aidl
etworkTemplate.java
rafficStats.java
fdfef57f498e3021a34342538aef9f1c7ccbae78 17-Jun-2011 Jeff Sharkey <jsharkey@android.com> Notify policy listeners about metered ifaces.

Currently, kernel definition of metered networks is applied at the
interface level. This change maintain list of those metered ifaces
and notifies policy listeners, like ConnectivityService. (This gives
us a consistent picture of when a network would be blocked.)

Bug: 4601393
Change-Id: I277d5ca96ab967a1c1c3f1da8f9587557cd6d74c
NetworkPolicyListener.aidl
etworkPolicyManager.java
ad4c9ed7de1c3c3b7781db9c46503263c5bf8464 16-Jun-2011 Jeff Sharkey <jsharkey@android.com> Merge "DownloadManager flags for network policy."
1a303953589fdddf21d88b8fa660136f5b060d0d 16-Jun-2011 Jeff Sharkey <jsharkey@android.com> DownloadManager flags for network policy.

Handful of DownloadManager flags to record when a download was paused
because of NetworkPolicyManager rules.

Change-Id: I99fc47f529cb6c8a42dbeca049e0cd0f1556eac4
etworkPolicyManager.java
4f1f7d3158b1576b72eabbb05f8ab8cfb25cd403 16-Jun-2011 Robert Greenwalt <rgreenwalt@google.com> am 241b65ac: am 5f350512: Merge "Reset connections AFTER we take down the network." into honeycomb-LTE

* commit '241b65aca93e263f0869c5bec4ad1dbda0dec6db':
Reset connections AFTER we take down the network.
5f3505121b761dbd3bba62d1603fbab49de139b9 16-Jun-2011 Robert Greenwalt <rgreenwalt@google.com> Merge "Reset connections AFTER we take down the network." into honeycomb-LTE
ec896c6a863b3cc0a55538a19879e2112b5b8658 15-Jun-2011 Robert Greenwalt <rgreenwalt@google.com> Reset connections AFTER we take down the network.

If you do it before you have a race condition and some apps will
manage to reconnect on the dieing network before it goes and then
get no notification when it goes.

bug: 3408025
Change-Id: I5386ff313c759b3f687bc38731454ab43dbe76b8
obileDataStateTracker.java
d6f69d0e5235a5adce5226d2144ef08d05b1889c 16-Jun-2011 Chia-chi Yeh <chiachi@android.com> Merge "VPN: migrate from generic Bundle to our own Parcelable VpnConfig."
04ba25c418bc4538e9dc0f047cfb9608d358f679 16-Jun-2011 Chia-chi Yeh <chiachi@android.com> VPN: migrate from generic Bundle to our own Parcelable VpnConfig.

Note that VpnConfig is for internal use only.
Also remove hidden methods from ConnectivityManager.

Change-Id: Ic298c4dc9a2c6c452bd8f4be6fa84e7ac489c0c4
onnectivityManager.java
ConnectivityManager.aidl
1e8b3e4e76ba1a5ba5281234a049702d4df7d926 15-Jun-2011 Irfan Sheriff <isheriff@google.com> am 11954872: am 5af3405f: am ecda5461: Merge "Fix lease duration handling" into honeycomb-mr2

* commit '1195487228e1eb6c8859368286168051bd505b2f':
Fix lease duration handling
5af3405f0d24c853bd10eb239c081e31972d3e1d 15-Jun-2011 Irfan Sheriff <isheriff@google.com> am ecda5461: Merge "Fix lease duration handling" into honeycomb-mr2

* commit 'ecda5461603b6de77beb045dfdf82dad7ae48d61':
Fix lease duration handling
56878760c3f0255dbcc8d78572f784b96ee36cb0 11-Jun-2011 Irfan Sheriff <isheriff@google.com> Fix lease duration handling

Convert lease time in seconds to long before alarm
set up and add sanity check

Change-Id: I99524c97d9a643ffa8234d016d0e819a284977a1
hcpStateMachine.java
14711eb5b6a45b587222ae71c57a381beb7b1a7e 15-Jun-2011 Jeff Sharkey <jsharkey@android.com> Include template in data warning/limit intents.

When launching warning/limit UI, include the template that triggered
the notification. Also move actions and extra into contract class.

Change-Id: Id2e63fd2d2e36a137a3fd8f889c7256038ca5f2e
etworkPolicyManager.java
497e4437af386930dff3bd55296d128bd4520959 15-Jun-2011 Jeff Sharkey <jsharkey@android.com> Data usage warning and limit notifications.

Watch for network statistics to cross NetworkPolicy warning or limit,
and show notifications to user as needed. Currently checks during
any statistics update, but will eventually move to event registration
through netd when kernel supports.

Fixed accounting bug in getSummaryForNetwork(). Only apply UID policy
to applications; applying to system processes could break critical
services like RIL.

Change-Id: Iac0f20e910e205f3cbc54ec96395ff268b1aa379
etworkPolicyManager.java
c96a667162fab44a250503caccb770109a9cb69a 13-Jun-2011 Mike J. Chen <mjchen@google.com> Handle always present wired ethernet interfaces at boot.

Devices with always present wired ethernet interfaces (as opposed
to usb ethernet dongles) don't have the interface added and removed.
Instead, it is present already at boot time. Change EthernetDataTracker
to support the already existing at boot time case.

Change-Id: I7b8e938f6b07aabd14f00ace55b35b7a05ea5a38
Signed-off-by: Mike J. Chen <mjchen@google.com>
thernetDataTracker.java
193bc6d6069e7f18ddeec2436af7a2842320b80d 09-Jun-2011 Ben Komalo <benkomalo@google.com> Open up setKeyManager/setTrustManager.

The improved keystore will allow clients (Email not the least of them)
to establish SSL connections using custom client certificates. In order
to do this properly, the socket factories they use to establish these
connections need to be able to customize their behavior.

Change-Id: I6e0fa04dd01bd6481dfdad5a71a63e0371d0ad8c
SLCertificateSocketFactory.java
22c055e6424e0e9579711545d8f4800c0f796db8 13-Jun-2011 Jeff Sharkey <jsharkey@android.com> External mutation of full NetworkPolicy set.

Instead of embedding complex template coexistence rules into policy
service, rely on external editors to enforce, and offer atomic
get/set operations for full policy sets.

Generate default mobile policy when none exists, using default of 4GB
warning and cycle reset of current day. Dispatch listener events
through Handler when holding internal lock, and catch CLASS_UNKNOWN
networks in 3G_LOWER template.

Change-Id: I063cf1eaf330e32b75d0697b89fc04488e6dfaea
NetworkPolicyManager.aidl
etworkPolicy.java
etworkPolicyManager.java
rafficStats.java
4a97122ebf4d92a3f94402041729d77905e6c0c0 12-Jun-2011 Jeff Sharkey <jsharkey@android.com> Growable NetworkStats object instead of builder.

NetworkStats now grows in place with arraycopy() instead of callers
needing to know record count a priori. Better growth calculation for
both NetworkStats and NetworkStatsHistory; 50% each time. Better
estimates of buckets needed in calling services.

Change-Id: I3adbffa0b7407612cc6349d9135a8b4eb63cd440
etworkStats.java
etworkStatsHistory.java
cd2ca4038a027315832c38c68be5076000bc4b53 11-Jun-2011 Jeff Sharkey <jsharkey@android.com> Move data cycle methods to framework object.

Moved so they can be used by both system service and Settings UI, since
they both work with data usage cycles. Still covered by tests.

Change-Id: I01c0c4db6da9457dd867c9167d31a5f9f8e5f5d9
etworkPolicyManager.java
21c9c45e5caf62b935354b74392fb40c4bf18529 07-Jun-2011 Jeff Sharkey <jsharkey@android.com> Interface-level network policy, persist policies.

Define NetworkPolicy as cycle-reset day and warning/limit values, and
set/get through NetworkPolicyManager. Watch ConnectivityManager for
network connection events, and apply quota rules based on matching
interfaces. Policy service matches based on strong identity to support
IMSI-specific policy values.

Calculates remaining quota based on current stats recorded since the
last reset cycle day. Tests to verify edge cases around February.

Persist network and UID policies in XML, and restore on boot.

Change-Id: Id40ba7d6eed6094fbd5e18e6331286c606880d80
NetworkPolicyManager.aidl
NetworkStatsService.aidl
etworkPolicy.aidl
etworkPolicy.java
etworkPolicyManager.java
3f3913550c10792edb8aecf66cc83c3db5c8b311 06-Jun-2011 Jeff Sharkey <jsharkey@android.com> Persist network stats using AtomicFile.

Implements read/write of network stats using AtomicFile, along with
magic number and versioning. Stores in "/data/system/netstats.bin"
for now. Tests to verify that stats are persisted across a simulated
reboot, and to verify that TEMPLATE_WIFI is working.

Fixed bug where kernel counters rolling backwards would cause negative
stats to be recorded; now we clamp deltas at 0.

Change-Id: I53bce26fc8fd3f4ab1e34ce135d302edfa34db34
NetworkStatsService.aidl
etworkStats.java
etworkStatsHistory.java
rafficStats.java
ff3bdca31f4cf2bd607519b276dd175763aa1784 24-May-2011 Chia-chi Yeh <chiachi@android.com> The service part of the user space VPN support.

The dialogs will be in another change.

Change-Id: I0cdfd2ef21ffd40ee955b3cbde5ada65dbfdb0bc
onnectivityManager.java
ConnectivityManager.aidl
8a02401129e5805025d3a39e552a2840e73fb8cf 08-Jun-2011 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of e139167c to master

Change-Id: Ic4d8aae7dd457457d9cc8ba081b273e425729f86
19862bf5d058b6ab0c2979e7a5e0297dae6b170b 03-Jun-2011 Jeff Sharkey <jsharkey@android.com> Compute range-based usage in NetworkStatsHistory.

When given a start/end range, interpolate between buckets to return
the total network usage. Used to summarize detailed UID stats. Method
to combine NetworkStatsHistory regardless of bucket size. Used to
combine all histories matching a template.

Added tests for both methods.

Change-Id: Ia463910c0ecf7cf08dcf97c658ad99742bd6b882
etworkStatsHistory.java
61ee0bbb5b87fb5c4c3dc219868d52743def3d2b 30-May-2011 Jeff Sharkey <jsharkey@android.com> UID network stats, secure settings, and random.

Collect UID-granularity network stats during regular poll event. Add
dumpsys argument to generate fake historical data for debugging, and
move stats parameters to Settings.Secure.

Change-Id: I09b36a2955dc10c697d4b9c3ff23dcb3ac37bd70
etworkStats.java
etworkStatsHistory.java
d2a458750e5a3d490af09cecb5c28370baf0a913 29-May-2011 Jeff Sharkey <jsharkey@android.com> Map network identity using ConnectivityService.

Instead of deriving network identity based on raw subsystem broadcasts,
listen for updates from ConnectivityService. Added atomic view of all
active NetworkState, and build map from "iface" to NetworkIdentity set
for stats tracking.

To avoid exposing internal complexity, INetworkStatsService calls use
general templates. Added TelephonyManager mapping to classify network
types using broad labels like "3G" or "4G", used to drive templates.

Cleaned up Objects and Preconditions.

Change-Id: I1d4c1403f0503bc3635a59bb378841ba42239a91
onnectivityManager.java
ConnectivityManager.aidl
NetworkStatsService.aidl
etworkState.aidl
etworkState.java
etworkStatsHistory.java
rafficStats.java
5df69fad6e5021d2862bff0553a510f8d6729fbd 07-Jun-2011 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of 8de47a2f to honeycomb-LTE

Change-Id: I8193235a4c7e574635e17b2eb05bb5420a3c6749
1b52806e21270ccbe90d27f3dd93cbee1a81d09e 03-May-2011 Ben Komalo <benkomalo@google.com> Makes SSLCertificateSocketFactory more flexible

Specifically, this adds support for specifying custom
{Trust,Key}Managers in the socket factory.

Change-Id: I1fdf6587064c71ae0520f73821923dcad8d140ad
SLCertificateSocketFactory.java
75279904202357565cf5a1cb11148d01f42b4569 25-May-2011 Jeff Sharkey <jsharkey@android.com> Collect historical network stats.

Periodically records delta network traffic into historical buckets to
support other services, such NetworkPolicyManager and Settings UI.

Introduces NetworkStatsHistory structure which contains sparse, uniform
buckets of data usage defined by timestamps. Service periodically
polls NetworkStats and records changes into buckets. It only persists
to disk when substantial changes have occured. Current parameters
create 4 buckets each day, and persist for 90 days, resulting in about
8kB of data per network.

Only records stats for "well known" network interfaces that have been
claimed by Telephony or Wi-Fi subsystems. Historical stats are also
keyed off identity (such as IMSI) to support SIM swapping.

Change-Id: Ia27d1289556a2bf9545fbc4f3b789425a01be53a
NetworkStatsService.aidl
etworkStats.java
etworkStatsHistory.aidl
etworkStatsHistory.java
rafficStats.java
9599cc5f21152860af9d18015b1398b50743da76 22-May-2011 Jeff Sharkey <jsharkey@android.com> Tests for NetworkPolicyManager rule generation.

Verifies that policy changes trigger rule updates that respect current
foregroundActivities status. Also verifies logic that promotes a UID
based on its most-foreground PID. Verifies that policy changes result
in immediate rule changes.

Also verifies that BACKGROUND_DATA_SETTING_CHANGED broadcasts are sent
by policy changes.

Change-Id: I4fd0dad9e1dbccee2c5968244bb1814e6cb2c6e1
NetworkPolicyManager.aidl
1b861278a2051f53ce7955fb7992fa536dc975d9 22-May-2011 Jeff Sharkey <jsharkey@android.com> Teach NetworkPolicyManager how to dumpsys itself.

Includes details on all internally known UIDs, which can be used for
debugging purposes.

Change-Id: I340d25212e3c7a76a57de0a94ffeea34b6748941
etworkPolicyManager.java
c006f1aec15454782c35e028ad64d79a5c161cc1 20-May-2011 Jeff Sharkey <jsharkey@android.com> Policy and rules work for ConnectivityManager.

Teach ConnectivityManager about UID-specific rules derived from policy,
such as rejecting network traffic on "paid" interfaces. Calls that
return NetworkInfo now filter based on any REJECT rules in effect for
the calling UID. (Added uid parameter if callers that still want all
interfaces.)

Changed NetworkPolicyManager to derive rules based on current policy
combined with PowerManager and ActivityManager status, which it passes
to ConnectivityService for eventual enforcement through netd. When
rules change the usability of a NetworkInfo for a specific UID, it also
dispatches CONNECTIVITY_ACTION broadcasts to that UID. Combined paid
and background policy together to match current working definition.

Change-Id: I797ea49439fcc487cfe2cbc16703d4b91ceb9af6
onnectivityManager.java
ConnectivityManager.aidl
NetworkPolicyListener.aidl
NetworkPolicyManager.aidl
etworkInfo.java
etworkPolicyManager.java
97ab2d4f86ee9c2b661a00688e934fc7030df22e 27-May-2011 Robert Greenwalt <rgreenwalt@google.com> Reveal some network constants.

Since we've already decided to inc the sdk version we should try to get these in too.

bug:4500218
Change-Id: I6dcb401bf30f1b06f02be0a93681a190d7ee5775
onnectivityManager.java
a7284f0e72745d66155e1e282fc07113332790fa 27-May-2011 Brian Carlstrom <bdc@google.com> Tracking merge of dalvik-dev to master

Adapt to change in the way MockWebServer sets up CONNECT proxies.
git cherry-pick --no-commit c7e2feee5e7908a019a0de91123c1feb9bdc38bc

React to move of Base64 in libcore
git cherry-pick --no-commit 119f7ebdd1f8df3a8ff8e3b8056bff725d569253

Expose and document android.net.HttpResponseCache.
git cherry-pick --no-commit 7b73f0fdb8c032a65c55610541d66385bd8bcbe6)

make update-api

Change-Id: Ieb48b304ea38ee8c2ec01e860d99b1404583889e
ttp/HttpResponseCache.java
a4620793038b9a9163b26c6ece882cb454fcbf87 21-May-2011 Jeff Sharkey <jsharkey@android.com> Observe screen on/off events in NetworkPolicy.

The POLICY_REJECT_BACKGROUND policy requires that network traffic be
blocked when a UID goes into the background. Even if the UID has an
activity in the foreground, it's considered "background" if the screen
is turned off.

This changes watches for SCREEN_ON/OFF broadcasts, and rule generation
now observes screen state. It also introduces an observer pattern so
that ActivityManager doesn't directly know about NetworkPolicy, and
moves the service management into SystemServer.

Change-Id: Ie7a84929d3ca60ae4578d47e19d5a8da10fd8d58
NetworkPolicyManager.aidl
eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3 17-May-2011 Jeff Sharkey <jsharkey@android.com> APIs to profile network usage for current UID.

Added startDataProfiling() and stopDataProfiling() to TrafficStats,
which can be used by apps to measure network usage delta between two
points in time. Currently takes two NetworkStats snapshots and returns
delta, which will eventually include tag-level granularity. Added
tests for NetworkStats delta subtraction.

Added NMS.getNetworkStatsUidDetail() that returns stats for specific
UID. Always gives stats access for the calling UID, otherwise enforces
that caller has permission. Fix readSingleLongFromFile(), since
/proc/ files don't have well-defined lengths.

Change-Id: Ic5b6414d8effbd66846e275b00d4b8a82c74589d
etworkPolicyManager.java
etworkStats.java
rafficStats.java
b568b51255256a8c9bdf6463cca185f813f28caa 19-May-2011 Wink Saville <wink@google.com> am 09ded82b: am ab5baa1d: Merge "Reset connection while data state changed." into honeycomb-LTE

* commit '09ded82b784b9f6e01d4cd4298097fd2b459560b':
Reset connection while data state changed.
ab5baa1d5fbd433e4c391ea06d177aa6a6c1c736 19-May-2011 Wink Saville <wink@google.com> Merge "Reset connection while data state changed." into honeycomb-LTE
5c3816f2ff3d40136da1e40eec792d8faf0e75dd 19-May-2011 Jean-Baptiste Queru <jbq@google.com> Merge c41aefe1

Change-Id: I70fc4382f832d1a2bded8a5ee7d9b96fac77879b
8904c3d814b5959b17a0523177f4142db6a18f1e 19-May-2011 Kazuhiro Ondo <kazuhiro.ondo@motorola.com> am b22a9fd9: am 01758e81: Linkproperties update via unsol data call state change.

* commit 'b22a9fd9bb32133cbc7dc4fc7752dbf68e52dffe':
Linkproperties update via unsol data call state change.
be2b058ec1e11e1d33b6d03230c21e5d2d7ac40c 19-May-2011 Wink Saville <wink@google.com> Reset connection while data state changed.

Check data call states and reset connection if any link properties changed.


Change-Id: I008aea969378648192852161959fdf4aad6211a1
inkProperties.java
outeInfo.java
59b1a4ede7032c1b4d897e13dd4ede09b5e14743 11-May-2011 Robert Greenwalt <rgreenwalt@google.com> Switch to use netd to add/remove routes.

Also adds support for v6 routes and for removing single routes.

Change-Id: I1c4f08c7938371090944d8d6f603e1e0d6d70c01
etworkUtils.java
outeInfo.java
01758e81b3ad89934581885bb2fc7006510ec639 01-May-2011 Kazuhiro Ondo <kazuhiro.ondo@motorola.com> Linkproperties update via unsol data call state change.

Handles the scenario of radio technology handover with IP continuity.
Once RIL/Modem finished a handover operation, an unsol data call state
change will be send up to FW notifying all link propertes changes.
FW will then re-configure the device with new link properties
including iptable used by Tethering.

Change-Id: I05e29f66ac3db8ba4274d3662642607742ba1d12
obileDataStateTracker.java
78ae81efa9d49b2697629f576e9f4beec6ec8b2b 17-May-2011 Jeff Sharkey <jsharkey@android.com> Merge "First pass at NetworkPolicy and activity tracking."
43be174888684ef3404a43d8434015193c656cce 22-Apr-2011 Jeff Sharkey <jsharkey@android.com> Add Socket tagging for granular data accounting.

Introduces public API to apply "tags" to track data traffic originating
from the current thread. (Under the hood, the tags are maintained and
applied in BlockGuard.) Also adds tag/untag methods for developers who
maintain their own Socket pools.

Change-Id: Ic2dd3155559a93a7b613c7853748d4c44fb3a39e
rafficStats.java
d5cdd597b895a48ffa9a8e39f8a2504cd9b905c4 04-May-2011 Jeff Sharkey <jsharkey@android.com> First pass at NetworkPolicy and activity tracking.

New system service that maintains low-level network policy rules and
collects statistics to drive those rules. Will eventually connect to
netfilter kernel module through NetworkManagementService and "netd".

Begin tracking foreground activities in ActivityManagerService, which
is updated as part of OOM adjustment. Eventually a network policy of
POLICY_REJECT_BACKGROUND will reject network traffic from background
processes.

Change-Id: I5ffbbaee1b9628e9c3eff6b9cb2145fc5316e64d
NetworkPolicyManager.aidl
etworkPolicyManager.java
fe3b33d4ead06c546202753e38188db5e2eaa7fa 07-May-2011 Irfan Sheriff <isheriff@google.com> DO NOT MERGE Add DhcpStateMachine

Add DhcpStateMachine for interation with dhcpcd

- Supports wakeup and renewal on dhcp
- Supports multiple controllers to use the state machine
simultaneously
- Optionally, a controller can request a notification prior
to DHCP request/renewal being sent

Change-Id: I5324814b19ff19863aa6fa89f1e3f0a202930c98
hcpStateMachine.java
etworkUtils.java
1f5e3a1af338d23838de059d7b270e89d54efa00 12-May-2011 Wink Saville <wink@google.com> am 9c7c8794: am 76a118dd: Merge "Fix initialization of RouteInfo" into honeycomb-LTE

* commit '9c7c87941446cdd1263a87a8c4cc5672082c7e12':
Fix initialization of RouteInfo
8c0b528a4746228461ead10f0d477345b607fef1 11-May-2011 Kazuhiro Ondo <kazuhiro.ondo@motorola.com> Fix initialization of RouteInfo

IPv6 gateway is not correctly set in RouteInfo

Change-Id: I24b1ab71a64e3097c9ba641899240fc27847b86c
outeInfo.java
fc82cb170cfaf419f2a8da3baff8296d3ea4e241 11-May-2011 Robert Greenwalt <rgreenwalt@google.com> am 441bc9a6: am e6848fac: Merge "Fix the adding of host routes." into honeycomb-LTE

* commit '441bc9a6f41ca1678a6c965bec7e2f18227ac100':
Fix the adding of host routes.
f43396caaaae8f336bcf6fe9128a89dc7a7b0a5c 07-May-2011 Robert Greenwalt <rgreenwalt@google.com> Fix the adding of host routes.

We used to just add

Change-Id: I991e4cc976cc2932887dd3242fd50e013d521b0a
etworkUtils.java
outeInfo.java
9a13f36cddaad01350bdb5f000167811a1d753c9 27-Apr-2011 Jeff Sharkey <jsharkey@android.com> Return NetworkStats bundle from NM service.

Introduce NetworkStats which is a collection of network statistics,
which should match the structure communicated by kernel module through
netd. Will introduce tags and fg/bg stats later. Kept entirely in a
flat data structure to optimize parcel speed.

Initial pass at returning NetworkStats from NetworkManagementService,
both summary and details. Will eventually pull data from kernel module
over netd connection.

Change-Id: I92d9f61678ec8c22e2ce26775fb035a0cf32413f
etworkStats.aidl
etworkStats.java
b6f8bff10963893435afda7b426c7a5b1ac1cc1f 04-May-2011 Robert Greenwalt <rgreenwalt@google.com> am 9c7e6fc5: am f13eb830: Merge "Add auto-restore timeout for secondary networks." into honeycomb-LTE

* commit '9c7e6fc50614cc1739d4bfbf6187893c27b01a67':
Add auto-restore timeout for secondary networks.
f13eb8301f4704179938e374129f2943c9c38d5f 04-May-2011 Robert Greenwalt <rgreenwalt@google.com> Merge "Add auto-restore timeout for secondary networks." into honeycomb-LTE
f2102f7a1a26d399cc60c516ed7d90ef660de055 04-May-2011 Robert Greenwalt <rgreenwalt@google.com> Add auto-restore timeout for secondary networks.

Settable per network so you can have not timeout for some and some for others.
If you set the old NETWORK_RESTORE_DELAY_PROP_NAME system property
(android.telephony.apn-restore) it will override this value.

Change-Id: Icca706fdc74245dce679209116660e5dc4b05d23
etworkConfig.java
a8e0dfae06298b375637813a3263a62749dd0b82 02-May-2011 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of db46fa25 to master

Change-Id: I8df9d5d07588fbd70e417dae567be26f645b74b6
d713683f9f5230d6a234ce8efbaf3c0959b81e22 02-May-2011 Irfan Sheriff <isheriff@google.com> am d369d64e: am 8ab6a6d4: Merge "Add DhcpStateMachine for interation with dhcpcd" into honeycomb-LTE

* commit 'd369d64ee7931726d479e60e64d76a31fdba4a8f':
Add DhcpStateMachine for interation with dhcpcd
a47c40193fcbe9ca07facea78b2828afdae5e025 02-May-2011 Robert Greenwalt <rgreenwalt@google.com> Merge "Add RouteInfo objects for tracking routes." into honeycomb-LTE
aa70f101e08098ed9cb190abe2d7f952561026b8 28-Apr-2011 Robert Greenwalt <rgreenwalt@google.com> Add RouteInfo objects for tracking routes.

Used to have list of gateways for default routes, but general static routes
should be supported.

Change-Id: I01730142c6139f2b833b9d48f5381d2d320b69f6
hcpInfoInternal.java
inkProperties.java
outeInfo.aidl
outeInfo.java
31be7cf4c7aef140f2a576975a7fd31e062f6964 28-Apr-2011 Irfan Sheriff <isheriff@google.com> Add DhcpStateMachine for interation with dhcpcd

- Supports wakeup and renewal on dhcp
- Supports multiple controllers to use the state machine
simultaneously
- Optionally, a controller can request a notification prior
to DHCP request/renewal being sent

Change-Id: I3a9d7e6a02ff26be3a86ddca6964683ad3c28f93
hcpStateMachine.java
etworkUtils.java
7460591a57a2ea585eec410a5d0112e8427d78c9 26-Apr-2011 Robert Greenwalt <rgreenwalt@google.com> am 759efacd: am ef568c97: Merge "Make new networkAttribute parameter non-optional." into honeycomb-LTE

* commit '759efacd2d1cf70d10f66fb9656de656ac8ca867':
Make new networkAttribute parameter non-optional.
af2eb4f6db2b54a144ecd0a87a0321933ffabc2c 25-Apr-2011 Robert Greenwalt <rgreenwalt@google.com> Make new networkAttribute parameter non-optional.

Dependencymet sets the default dep-met value for the network. Should
be set to true unless you know what you're doing.

Change-Id: Ifa3765a97615f5333da07bce9defdb8600275129
etworkConfig.java
6081084e8831d12d2dd5a9a340ee7d35a54edb8a 23-Apr-2011 Robert Greenwalt <rgreenwalt@google.com> Expose more net types to the public.

Ethernet and bluetooth.

Change-Id: Ic499709ffa151c0f27aef497373a8de7289e3e7f
onnectivityManager.java
43be7a6120d9dd2ee0902de2322aec2ee75b0351 12-Apr-2011 Benoit Goby <benoit@android.com> EthernetDataTracker: implement setDependencyMet

Change-Id: I4be804e3c9dccacfacb5cb813a4ad6f513224f06
thernetDataTracker.java
2869d1715d815ef2b357bf182d384515cdf6f9ab 12-Apr-2011 Benoit Goby <benoit@android.com> resolved conflicts for merge of 08c39c6a to honeycomb-LTE

Change-Id: I79f8ac1dc8ff9f5d0559d37043b850cd26246b92
08c39c6a11f728e113811a6a85c109cfc80ce28e 22-Dec-2010 Benoit Goby <benoit@android.com> Add support for USB Ethernet adapters

Change-Id: I6ae34a32d0e1b6f21c484b8639c3e7ce086e568d
onnectivityManager.java
thernetDataTracker.java
43a17654cf4bfe7f1ec22bd8b7b32daccdf27c09 07-Apr-2011 Joe Onorato <joeo@google.com> Remove the deprecated things from Config.java. These haven't been working since before 1.0.

Change-Id: Ic2e8fa68797ea9d486f4117f3d82c98233cdab1e
ntpClient.java
ttp/Headers.java
ttp/HttpLog.java
af6eddb1c285a11841a2e1e0e3a41636f6bfd63d 08-Apr-2011 Robert Greenwalt <rgreenwalt@google.com> Fix build.

Change-Id: I9ac1c28de4f3f11f84b04923d4547ab64dd57f23
thernetDataTracker.java
80f7c594fae3f1b19e3ea78938de450418fe183c 07-Apr-2011 Robert Greenwalt <rgreenwalt@google.com> am f4a29403: resolved conflicts for merge of 70c3d1c2 to honeycomb-plus-aosp

* commit 'f4a29403ae5b6d3e8e754a025d33f0c33adecb21':
Add external dependency API.
70c3d1c23b5d4398cc561ec9ddbe868b3182cc74 07-Apr-2011 Robert Greenwalt <rgreenwalt@google.com> Merge "Add external dependency API." into honeycomb-LTE
52c858f5f01d99b34131612a645790492bf6d5e9 07-Apr-2011 John Wang <johnwang@google.com> am c343c183: am 5d6f1167: Merge "Make LinkProperties comparable." into honeycomb-LTE

* commit 'c343c18376b8fd7d27a07adc5bb617d0260a8cdc':
Make LinkProperties comparable.
4e900091c4da26eb1c9f0d232ee0e50f4522cc69 04-Apr-2011 John Wang <johnwang@google.com> Make LinkProperties comparable.

Add equals() and hashcode() to LinkProperties and related fields.

Bug:3501569
Change-Id: Ifa737a67c16867ac43cf76bf618a483e612a189e
inkAddress.java
inkProperties.java
roxyProperties.java
d55a6b498d66d8fc415908ecf63e50f46cce67e8 25-Mar-2011 Robert Greenwalt <rgreenwalt@google.com> Add external dependency API.

An APN will not be connected to if some external dependency is not met.

bug:3486704
Change-Id: I7d94df343b260013efd11faa978deb13f07f1389
onnectivityManager.java
ummyDataStateTracker.java
ConnectivityManager.aidl
obileDataStateTracker.java
etworkConfig.java
etworkStateTracker.java
ff5569948fda346d95d4615de6578f82d9614be3 24-Mar-2011 Jesse Wilson <jessewilson@google.com> Don't link to Harmony implementation details in public APIs.

Change-Id: I8a157d64d87443b512a5b958d52a0769ef01ef7b
SLCertificateSocketFactory.java
04cac40ff86e175444991c07869cb85219db1019 03-Mar-2011 Robert Greenwalt <rgreenwalt@google.com> Do not merge: Add some input checking to prevent problems

Adding nulls can cause unhappiness. It's suspected as a cause of 3495045.

bug:3495045
Change-Id: I925c965ef64032fc57849bf15fe9b11f4bc99351
inkProperties.java
9d7d62801ddb206d2ea96d74864a9edfe54d2eee 12-Mar-2011 Wink Saville <wink@google.com> Do not merge: Revert the revert of "LTE Changes for Telephony including Multiple PDN support and IPV6 support"

This reverts commit eca208fae6d1b6ae9c8c0e42eee092e86dbddbb7
and is the first of the LTE commits in master being back ported
to the LTE branch.

Change-Id: I17d4a1b779ed74bc7dfb409d2c1a30f60fdb27c7
onnectivityManager.java
obileDataStateTracker.java
1997069436f0d47583a0b700c12ed63132cf3312 22-Dec-2010 Benoit Goby <benoit@android.com> Add support for USB Ethernet adapters

Change-Id: Ie75cbcdb1b0c8965b59b89675a05175a1e9ebdd6
thernetDataTracker.java
5c1c29805452349e6c510c1261429b83557308be 04-Mar-2011 Lorenzo Colitti <lorenzo@google.com> Merge "Fix IPv6->IPv4 fallback for HTTPS."
eca208fae6d1b6ae9c8c0e42eee092e86dbddbb7 03-Mar-2011 Wink Saville <wink@google.com> DO NOT MERGE: Revert "LTE Changes for Telephony including Multiple PDN support and IPV6 support"

This reverts commit 2b8bcfe5b74e1a34d136f4ff46e3c94397f38f82.

Change-Id: Ifc4e9aaccb54e065a36380710694cd6e4d347636
onnectivityManager.java
obileDataStateTracker.java
b9aa8e50e1f72b77ca736d2b6a22d217bbca9d59 03-Mar-2011 Robert Greenwalt <rgreenwalt@google.com> Merge "Add some input checking to prevent problems"
b8167c35bbfd63493e84c2b1d3d28a59957a3bc4 03-Mar-2011 Robert Greenwalt <rgreenwalt@google.com> Add some input checking to prevent problems

Adding nulls can cause unhappiness. It's suspected as a cause of 3495045.

bug:3495045
Change-Id: I1d83a5461caa0b8de9602f93a40681e7963b915e
inkProperties.java
7e48e76cab10377367b925790cf3a840651009fa 02-Mar-2011 Robert Greenwalt <rgreenwalt@google.com> Merge "Start using NetworkUtils.numericToInetAddress."
e590373ea71251cfffc8f22f011e2e6335dce716 23-Feb-2011 Robert Greenwalt <rgreenwalt@google.com> Start using NetworkUtils.numericToInetAddress.

Generates InetAddresses without risking an accidental dns lookup. For use with supposedly
numeric-only ip address strings.

Change-Id: I694f3976ce1c6382854706f6557ea88a289add3a
roxy.java
2b8bcfe5b74e1a34d136f4ff46e3c94397f38f82 25-Feb-2011 Wink Saville <wink@google.com> LTE Changes for Telephony including Multiple PDN support and IPV6 support

Added init for CDMAPhone.java

Change-Id: I2392b5ad3382ee1993537b8477ef00dd036c6fe9
onnectivityManager.java
obileDataStateTracker.java
e5a3e9790110cb42ff0c4e882eec04e6961ed402 21-Feb-2011 Robert Greenwalt <rgreenwalt@google.com> Merge "Remove some unused code."
645b83f3ec2ead154c2062fd6d4498713d11de7e 21-Feb-2011 Robert Greenwalt <rgreenwalt@google.com> Remove some unused code.

Change-Id: Id29bf7d2118065e2e772b22d910bda1c6de2a475
ummyDataStateTracker.java
obileDataStateTracker.java
etworkStateTracker.java
79ae37086b277765001a0d2da3fd058e9fa73abf 05-Feb-2011 Lorenzo Colitti <lorenzo@google.com> Fix IPv6->IPv4 fallback for HTTPS.

Bug: http://code.google.com/p/android/issues/detail?id=8113

Change-Id: If49f4f2f8c676badbe0c44a138f4756bd8a9ac08
ttp/HttpsConnection.java
227bec49157bc496f7c9e8e8f63c12728a448922 16-Feb-2011 Irfan Sheriff <isheriff@google.com> data activity reporting on wifi

Initial checkin, need icons to complete the feature

Bug: 3412258

Change-Id: I9a3ecc8159cc314d84707065dafe23d402409a84
rafficStats.java
cc687c52a0313b3b42d2960c8ca669cf1d94aae8 16-Feb-2011 Brian Carlstrom <bdc@google.com> Deprecate non-X509Certificate SslCertificate constructors

Change-Id: I45541c48b321fbd6054712c08d8ac64108d32674
ttp/SslCertificate.java
f5bbb5720454742e0e2f6ae489fa164845261cbf 16-Feb-2011 Elliott Hughes <enh@google.com> Use InetAddress.parseNumericAddress.

Bug: 3300307
Change-Id: I4ebfe533056e67931db1117e934596ba7b5c8b75
etworkUtils.java
b979f79158f9c470fa09ff3b96d72db274262201 12-Feb-2011 Robert Greenwalt <rgreenwalt@google.com> Remove more use of netmask

bug:2542681
Change-Id: Ifd75672739ee8262d4df22afd8173e4f3f67260d
inkAddress.java
992564e481af13cbcb058ee801f9254a520c54a1 09-Feb-2011 Robert Greenwalt <rgreenwalt@google.com> Update LinkProperties treatment of gateways

A link can have multiple gateways (think ipv4/ipv6 for a trivial example).
.

bug:3438810
Change-Id: I28c90a6947cd50b82e5ca9a0113148f98b3f4dd8
hcpInfoInternal.java
inkProperties.java
eafccc0859c58ad853fbe26bfa928cc9a91653f3 04-Feb-2011 Stan Chesnutt <chesnutt@google.com> Place the DHCP server address in the "next server IP address"
field of the bootp header. A certain Apple client likes this,
and it is more consistent with other DHCP servers.

Change-Id: I59e73fbf3dccfbadd1325d3ad5e2997952a28fde
hcp/DhcpAckPacket.java
f8d40f0d55fdf7046b013cc7d74a4cd199484f7a 03-Feb-2011 Robert Greenwalt <rgreenwalt@google.com> Merge "Bind addr and prefixLength together in LinkAddress"
045b166ac27c3b7a67993b029f03088042bf4d5a 02-Feb-2011 Stan Chesnutt <chesnutt@google.com> Provide an empty List of dns servers, protecting against an NPE if the
DHCP server omits the list of DNS servers from the DHCP-OFFER packet.

Change-Id: I4cdb3d47f36ecceaef390948741c0632067ee8ba
hcp/DhcpPacket.java
929a1c219248b62778807cac8ea256c7ac0fda6a 02-Feb-2011 Brian Carlstrom <bdc@google.com> Removing android.security.MessageDigest

Bug: 3392028
Change-Id: I6b9732da17d086ba00c846c3ad1c7fb39baf9502
ttp/CertificateValidatorCache.java
ttp/RequestHandle.java
e982f711a3c53522ae91238e03e435e7ff264f2f 01-Feb-2011 Ashish Sharma <ashishsharma@google.com> Merge "Fix a minor documentation bug in TrafficStats."
beda53d5a69691699edae81923ef974d69ea81c3 31-Jan-2011 Ashish Sharma <ashishsharma@google.com> Fix a minor documentation bug in TrafficStats.

Change-Id: I3cf2199797d875ccb6ab432c298afaace44c7527
Signed-off-by: Ashish Sharma <ashishsharma@google.com>
rafficStats.java
b46062bc0886eb176afe23b7dab81db3ab6c1beb 29-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> am f8fdec50: resolved conflicts for merge of aa3866e6 to honeycomb-plus-aosp

* commit 'f8fdec50c7871b640c13cfe3e2e7a3b449f62f69':
Add some network types that OEM's are asking for.
f8fdec50c7871b640c13cfe3e2e7a3b449f62f69 29-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of aa3866e6 to honeycomb-plus-aosp

Change-Id: I7a3445f7df2a66c70f630fa63ceb4ae150d70963
aa3866e6fa2d0c0e026b78cf43dccce67a2021e5 29-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> am 6b739dc7: Merge "Add some network types that OEM\'s are asking for." into gingerbread

* commit '6b739dc7292452227cdd8abd90658f4db8f0ce70':
Add some network types that OEM's are asking for.
ed1264093234b1f1354cd5f669eb82a50bb56869 29-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Bind addr and prefixLength together in LinkAddress

bug:2542681
Change-Id: I90200446216d78c676498144946832afe75efdb8
nterfaceConfiguration.java
e12aec941dfc93b76b5efb9bc9f30d2ba3469434 28-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Add some network types that OEM's are asking for.

Adding them hidden so that if OEM's are rolling their own at least they can
use the same values. Will mark them unhidden in a future sdk release.

bug:3395729
Change-Id: I90eabe036a96e1aa7c8cac49ca51efd9b1776a0c
onnectivityManager.java
c39c1d4dee917560d174f6ba5402e4c6644edd47 28-Jan-2011 Ashish Sharma <ashishsharma@google.com> TrafficStats: Include UDP stats and packet count to API

Change-Id: I70063e6033d3c181bcc5b9e401f9474900e25281
Signed-off-by: Ashish Sharma <ashishsharma@google.com>
rafficStats.java
68e18d23298c62b61844eb296d247df55d45f463 27-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Fix the build

Check for null before trying to make InetAddresses.

Change-Id: I3228eea32eb455437dd76be2de56a913884f3f6e
hcpInfoInternal.java
etworkUtils.java
b27ce984510ed287b87cb7498efb973fb651e8cb 27-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> am 89a54408: Merge "Update networktype before sending state change." into gingerbread

* commit '89a544088fcfa849be0d8824a2ac0a545950847b':
Update networktype before sending state change.
70d2c4d82cea8821d6b09dff174ec78094622d95 26-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Get rid of manual int->ipv4 string generation

bug:2542681
Change-Id: I67919d7b5dc8d72eeb2dfb9e3906210b1951d4fb
hcpInfo.java
67881c414a7ed4ed48619482bef7fe65cd7826a0 26-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Update networktype before sending state change.

Fixes potential race condition in network-type info. May fix this issue.

bug:3376930
Change-Id: I3d5fd7c76e54923b62c56defa947be3c9c1cd585
obileDataStateTracker.java
etworkStateTracker.java
0216e618198393bfd7ac0625fa6ad251d5ea682f 15-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Make the interface with DHCP IPv6 capable.

It doesn't work (yet) for IPv6, but we can remove v4-centric notions from the framework.

bug:2542681
Change-Id: I21c058f5c88d07706c9265bf0ea902fc90357e56
hcpInfoInternal.java
etworkUtils.java
aa16a0f357ab2a222c3a1ca1163b1570d878094f 25-Jan-2011 Brian Carlstrom <bdc@google.com> am f2b7c844: am 8d37c4ef: Merge "Tracking jarjar of org.bouncycastle to com.android.org.bouncycastle" into honeycomb

* commit 'f2b7c84468c5397b44566c393bec2675d73817b7':
Tracking jarjar of org.bouncycastle to com.android.org.bouncycastle
4140faeebbfa23d56068c1862b2913fb62145f4f 25-Jan-2011 Brian Carlstrom <bdc@google.com> Tracking jarjar of org.bouncycastle to com.android.org.bouncycastle

Bug: 3086427
Change-Id: I7af99fe4c36d9a519777f0499ccab65646313879
ttp/SslCertificate.java
27d3c5907cc6f4366a7af3f0941d8d29d9b2440b 20-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Switch from NetworkUtils to netd for iface config.

Moving more stuff to netd and getting rid of unused NetworkUtils.

Change-Id: Ibb5a11dca58d07291fe33e6d33027553f6158ea7
etworkUtils.java
ff017477f8bf428545b0fb177155cb2d2ed21561 17-Jan-2011 Irfan Sheriff <isheriff@google.com> am fc6ef518: am 326feb89: Merge "Pick an upstream interface with valid IP config" into honeycomb

* commit 'fc6ef518e0696ca45608ca07803aa50081f9f72f':
Pick an upstream interface with valid IP config
29552095e19e3faf2006ac1051da41d9bd212d6f 17-Jan-2011 Irfan Sheriff <isheriff@google.com> Pick an upstream interface with valid IP config

As a work around for the issue of picking
the wrong interface, add a check for selecting
an upstream interface that has a valid IP configuration

Bug: 3362306
Change-Id: I01084517cff756c97660b2cfbfa8e9bf26673148
nterfaceConfiguration.java
e5a3556268b3079366f4a07fdc96a803969b055a 14-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> am 7b04b1d7: am 1e02ebd2: Merge "Update network subtypes info so it is current." into honeycomb

* commit '7b04b1d7ff7a38be30794c25e893beb40616affb':
Update network subtypes info so it is current.
17415b9292d3da64d6776906954bcf31421d00f2 14-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Update network subtypes info so it is current.

bug:3327895
Change-Id: Ic1e2a5527c651333af50cc5cfa6c44a15b991fb0
obileDataStateTracker.java
1a7e67190228a8ff3b92e7e5496a8db8ff306cca 09-Jan-2011 Wink Saville <wink@google.com> Revert "Propagate new link-status-change message to any NetworkManagementService"

This reverts commit 780dfa42aa8664afa53c30ae669fc0e1f10f6537.
NetworkManagementEventObserver.aidl
780dfa42aa8664afa53c30ae669fc0e1f10f6537 03-Jan-2011 Stan Chesnutt <chesnutt@google.com> Propagate new link-status-change message to any NetworkManagementService
observers. Also fix the syntax of the "interface-status-change" message. Add
a null handler in the ThrottleService and Tethering classes (plus fix names).

Change-Id: I58cabc7b0ce5662243bc6513b2de4818065e6c52
NetworkManagementEventObserver.aidl
a085ef3e35e986463567360b1d02a66c642ea603 07-Jan-2011 Vasu Nori <vnori@google.com> am a270bd59: Merge "fix a long-standing \'typo\' bug" into honeycomb

* commit 'a270bd59a8e6d291af8c1cfcf13af5260ec0ed5a':
fix a long-standing 'typo' bug
07481ccd1dcc2912797ec64f0bfa5641b39adcea 07-Jan-2011 Jesse Wilson <jessewilson@google.com> Deprecate a method that formats only IPv4 addresses.

Anyone calling this method is probably storing IP addresses
in an int, which doesn't make sense anymore.

Change-Id: Iba535b66f6cff47ce07b5ecc6427e3b2fd846998
etworkUtils.java
29549c7abd4b1534622e41040af5ce8eaea93937 07-Jan-2011 Vasu Nori <vnori@google.com> fix a long-standing 'typo' bug

bug:2676368
Change-Id: Ie7381f343223c3bd4757de962efab7b75fe2cf1d
ownloads.java
4887804ea619dd98ccb52a1cd911d23c74b4b457 29-Dec-2010 Jean-Baptiste Queru <jbq@google.com> am a6ac0ec3: am 69ebb984: Merge "according to rfc2617, nc-value = 8LHEX"

* commit 'a6ac0ec30dfdacb7baba126b5cea69fc7097496e':
according to rfc2617, nc-value = 8LHEX
a6ac0ec30dfdacb7baba126b5cea69fc7097496e 29-Dec-2010 Jean-Baptiste Queru <jbq@google.com> am 69ebb984: Merge "according to rfc2617, nc-value = 8LHEX"

* commit '69ebb984f230a523dc316bdb2c9e9c28111364fd':
according to rfc2617, nc-value = 8LHEX
55985bed7be8c93296eee3f4f39557fba4fbaebe 24-Dec-2010 Robert Greenwalt <rgreenwalt@google.com> Make sure the ProxyProperties is always present.

Lets people know that it's non-null, though the InetAddr inside may be.

bug:3305689
Change-Id: I0fe16a9ef1feba987680c419fa2dc0e00e400d91
roxy.java
b19c9c39949eef293dd3a271ec88d28c3ff62044 25-Dec-2010 Bin Jin <bjin1990@gmail.com> according to rfc2617, nc-value = 8LHEX

Change-Id: I8646fd8d68cfa4786ee6fc24a757b2af93955c4b
ttp/RequestHandle.java
15c7439acb22ab079dd2ebe42bdf0d2ffd525c5d 22-Dec-2010 Jaikumar Ganesh <jaikumar@google.com> Add TYPE_BLUETOOTH network interface for reverse tethering.

Change-Id: I2aa61ce15f57aea9e8fd3a4cb56799c8bc51e998
onnectivityManager.java
778c0ba8586a4494ed617c2d3cb3692311df1086 14-Dec-2010 Robert Greenwalt <rgreenwalt@google.com> Fix some older (depricated) API so they work.

Just because they're depricated doesn't mean we can neglect them.

Change-Id: I7556456bd8be2ec57b81b092f75b4b613b538d46
roxy.java
091969af90ab335d2969a9966f0e159297f15eb5 15-Dec-2010 Robert Greenwalt <rgreenwalt@google.com> Merge "Fix some IpV4-only code."
04808c294027f8bc318643a94c85a999257d7f52 14-Dec-2010 Robert Greenwalt <rgreenwalt@google.com> Fix some IpV4-only code.

InterfaceConfiguration changed to use InetAddress and stop with the string->int->string
conversions.

bug:2542681
Change-Id: I11c4954547333c43bb840fa0469ddde57b0d043b
nterfaceConfiguration.java
7c25cd15bbebe7502af0a711f1cb0f4e4e43e63c 14-Dec-2010 Robert Greenwalt <robdroid@android.com> Merge "DHCP core classes, defining data, behavior, and state transitions for the DHCP protocol. The DHCP client and DHCP server classes are not included in this commit: still working out some integration issues with ethernet & wifi services"
7da02ad3b7a8a0b13a2ccc84e666baa8e6370482 14-Dec-2010 Stan Chesnutt <chesnutt@google.com> DHCP core classes, defining data, behavior, and state transitions for the DHCP
protocol. The DHCP client and DHCP server classes are not included in this
commit: still working out some integration issues with ethernet & wifi services

Change-Id: I0c9cc48b7d960005b73ecb757c1fa66f0eb68471
hcp/DhcpAckPacket.java
hcp/DhcpDeclinePacket.java
hcp/DhcpDiscoverPacket.java
hcp/DhcpInformPacket.java
hcp/DhcpNakPacket.java
hcp/DhcpOfferPacket.java
hcp/DhcpPacket.java
hcp/DhcpRequestPacket.java
hcp/DhcpStateMachine.java
b019ef61583fe64478c78a833a0340ab30ba0299 14-Dec-2010 Nick Kralevich <nnk@google.com> am 30ad1e57: am 9dbef975: Merge "Avoid leaking sockets." into gingerbread

* commit '30ad1e576a445b8ffec12ef148f5d7253ebb6ef4':
Avoid leaking sockets.
30ad1e576a445b8ffec12ef148f5d7253ebb6ef4 14-Dec-2010 Nick Kralevich <nnk@google.com> am 9dbef975: Merge "Avoid leaking sockets." into gingerbread

* commit '9dbef975f0f4370dfe48a0fb040e3d8d1eb91d87':
Avoid leaking sockets.
2ed20f87684a892d640a91f1961f369bbbc7d05e 13-Dec-2010 Nick Kralevich <nnk@google.com> Avoid leaking sockets.

When a DNS lookup fails, we end up creating a datagram socket
but never properly close it. This wastes limited valuable file
descriptors and causes CTS test failures. Generally, we should
ensure that sockets or files are opened in a try block, and closed
in a finally block.

Bug: 3276283
Change-Id: I3432f3bc061268c7367948230f6edbdfcec55892
ntpClient.java
e798268f16ec6d0542616ea45ca0bb18ae2645ee 07-Dec-2010 Wink Saville <wink@google.com> Have MobileDataStateTracker & DataConnectionTracker communicate directly.

Added CMD_SET_DATA_ENABLE which is sent when data is enabled/disabled
via the ConnectivityService. It is anticipated that the communication
channel will be used for additional commands and to receive unsoliciated
commands from DataConnectionTracker back to MobileDataStateTracker.

Change-Id: I3863e7385155d503f069b1dcb7e4f766ec78b5f8
ummyDataStateTracker.java
obileDataStateTracker.java
etworkStateTracker.java
da3d5e6587c1476d489495ac93e84ebf223024c9 06-Dec-2010 Robert Greenwalt <rgreenwalt@google.com> Add a Dummy data connection for testing purposes.

Enable with:
<string-array translatable="false" name="networkAttributes">
<item>"wifi,1,1,1"</item>
<item>"dummy,7,7,0"</item>
</string-array>

in your config.xml

Change-Id: I3965edaeb4873e95131f4083b8d23d682ce17841
onnectivityManager.java
ummyDataStateTracker.java
4c240a2cd16962016b81081777d5b15c573fa59c 07-Dec-2010 Jean-Baptiste Queru <jbq@google.com> am 465e88eb: am 1ee2394e: am 1d67fa5b: Merge "Changing connect and response timeout."

* commit '465e88eb008408d4e655ca7bdd9c2b3ac305e54b':
Changing connect and response timeout.
1ee2394edd4b90111f8174862c7c0f435e1a3634 06-Dec-2010 Jean-Baptiste Queru <jbq@google.com> am 1d67fa5b: Merge "Changing connect and response timeout."

* commit '1d67fa5b110a1df21e408d450394fb62d5dc9a1e':
Changing connect and response timeout.
d39fd5a97c6f56794a6ed7ac1dfb0bbf585becf1 18-Nov-2010 Henrik Baard <henrik.baard@sonyericsson.com> Changing connect and response timeout.

In bad network conditions and where switches often occur between 2G and
3G the timeout of 20s is too short.

Setting this timeout to 60 seconds will improve functionality in bad conditions
while it will not affect functionality in good networks. This change also aligns
the timeouts with the timeouts used by the Browser (Connection.java).

Change-Id: I0fbe3cbfe734f8d55a41bfa5d8ab6b332a19f912
ttp/AndroidHttpClient.java
ed9c02b56c6f56a583aa272f82818ef039face75 03-Dec-2010 Wink Saville <wink@google.com> Cleanup logging.

Change-Id: Ie73c6d97ec19b0d27e58c085b60e885d90066056
obileDataStateTracker.java
26f5a384d81487cc6bb80a78fb40d5e7e7ffc81e 25-Nov-2010 Wink Saville <wink@google.com> Use apn types instead of host when sending notifications.

Previously we were passing the apn host not the type and this
caused us to sometimes not send out network change notifications.

Also rename of getActivceApn to getActiveApnHost to make
the method clearer on what is being returned and add some debug.

A future change will rename ApnSetting.apn to ApnSetting.host
and getActiveApnString.

bug: 2995554
Change-Id: I0c405b0f823f62c9596968c8516b820d9f8a94f2
obileDataStateTracker.java
434203a277cd2f237a71508a3d5a7d1602126cd5 12-Oct-2010 Robert Greenwalt <rgreenwalt@google.com> Notify all VMs when proxy changes.

bug:2700664
Change-Id: I74cc6e0bd6e66847bf18f524ce851e3e9d2c4e87
onnectivityManager.java
ConnectivityManager.aidl
roxy.java
roxyProperties.aidl
roxyProperties.java
83d4a23c280bdcaf6c301651b76ddc6fbf08949c 12-Nov-2010 Iain Merrick <husky@google.com> Provide default error strings in BrowserFrame.onReceivedError().

This method is called from both the Android and Chrome HTTP stacks.
We want the same user-facing behaviour in each case, but the Chrome
code does not have easy access to the same error message strings.

Therefore, I'll have the Chrome HTTP stack provide empty strings
for the descriptions. (See change I9042a2ee in external/webkit).

This CL makes BrowserFrame check for empty or null strings and use
the standard error messages instead.

The strings were package-private, so I did a little cleaning up
to make them public (but still hidden from the API). Using a switch
statement instead of an array because it's more robust and should
be comparably efficient.

Bug: 3172265
Test: Load http://google.com:81 to force a timeout error, check
that the correct message is displayed.

Change-Id: I7dec8dffe8ad9e513fdb90877e0b466e707174a8
ttp/Connection.java
ttp/ErrorStrings.java
ttp/EventHandler.java
06d8dfd5d1088f20d899b67b20df2cd741990679 09-Nov-2010 Huahui Wu <hwu@google.com> Merge "b/2864818 use authType for cert verification."
762b33f9494ba48aa1be3701d345b692e8432af9 09-Nov-2010 Jesse Wilson <jessewilson@google.com> am 2d2f10fa: am 28c74257: Add @Deprecated to match @deprecated where it\'s missing.

* commit '2d2f10fa3412adc07a08c25ba5d2df600fb654bf':
Add @Deprecated to match @deprecated where it's missing.
2d2f10fa3412adc07a08c25ba5d2df600fb654bf 09-Nov-2010 Jesse Wilson <jessewilson@google.com> am 28c74257: Add @Deprecated to match @deprecated where it\'s missing.

* commit '28c742573ccaeb55c16bc02fb25fdd86b8d1f76a':
Add @Deprecated to match @deprecated where it's missing.
28c742573ccaeb55c16bc02fb25fdd86b8d1f76a 04-Nov-2010 Jesse Wilson <jessewilson@google.com> Add @Deprecated to match @deprecated where it's missing.

Change-Id: Ice95022671968386a601f32df7850f9baa1d2dd0
SLCertificateSocketFactory.java
ttp/SslCertificate.java
8234bdb36a951c1265b2bc702c06bab09509a615 09-Nov-2010 Huahui Wu <hwu@google.com> b/2864818 use authType for cert verification.

Change-Id: I2a3cb963165a7e2e4e72a1d398205b31f769cafa
ttp/CertificateChainValidator.java
5912f90e60a305996cdace35f72f847dfeb0f5ec 09-Nov-2010 Huahui Wu <hwu@google.com> Merge "Expose the cert validator to JNI."
85ffa26f67efad30912e1561b5123b6f8f5827ee 08-Nov-2010 Huahui Wu <hwu@google.com> Expose the cert validator to JNI.

Change-Id: Ie31919e762b1f528b319c251ccfd891dd7738544
ttp/CertificateChainValidator.java
ee8dd6baf848130400af8864e5de142c8a5e3718 08-Nov-2010 Brian Carlstrom <bdc@google.com> Delete used import

Change-Id: Ic950e50565aadafd2575561eb03c8e1e2ff45593
SLCertificateSocketFactory.java
6b7af6055f25022361beb2c169d2c1835922dc32 05-Nov-2010 Elliott Hughes <enh@google.com> Use InetAddress.isNumeric.

This code is trying to detect anything equivalent to localhost, but without
accidentally causing a DNS lookup.

Bug: 3073384
Change-Id: Ib611c8ca46059e00b07fc4b94d4af777217da1fb
roxy.java
1693182c02b18eb6128eef79a1ec8c3764171544 04-Nov-2010 Elliott Hughes <enh@google.com> Remove NetworkUtils.isIpAddress.

Bug: 3073384
Change-Id: I5bd46d1995186c2384c68d0afff3b869f46624c5
etworkUtils.java
962a990a45a2a9f9c3002064e71f9c2fed86acf1 02-Nov-2010 Robert Greenwalt <rgreenwalt@google.com> Add some network/phone type constants.

Support for LTE (and SIP-based voice) and the stepping-stone eHPRD.

bug:3125398
Change-Id: Ied3d96fa09d9c758a82a2fd1817f55db711d1a4f
obileDataStateTracker.java
02ca44b13c7aa66f99242dbcb07feac877153754 22-Oct-2010 Brian Carlstrom <bdc@google.com> Move improved cert chain handling from CertificateChainValidator to TrustManagerImpl

Bug: 2658463
Change-Id: Iaf27e6b37ad4ad3951ecccc17eab64049bbfaac0
ttp/CertificateChainValidator.java
eb8be973c7982fe3ece0aeaeca379c3b3cdced0c 12-Oct-2010 Bjorn Bringert <bringert@android.com> Make fields in WebAddress private, add getters/setters

Change-Id: Iceaf3d648289344e53c37273f7324a79676fbef7
ebAddress.java
ttp/RequestQueue.java
f21b4cde1865747ed054111944e6b30e38109293 11-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> resolved conflicts for merge of b3ffd4ad to master

Change-Id: I80b227b678ef168a45494acf879debed5861de39
b3ffd4adccc430f59a9348dd218d23545e4f6c65 10-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am 3ed792d5: Merge "Don\'t perform DNS lookup in android.net.Proxy.isLocalHost"

Merge commit '3ed792d59cda9f9023201d80f5bdc62d4cef3090' into gingerbread-plus-aosp

* commit '3ed792d59cda9f9023201d80f5bdc62d4cef3090':
Don't perform DNS lookup in android.net.Proxy.isLocalHost
96ca91761e6857c1ca2e4fafe5b35e4b5fefe5a1 06-Oct-2010 Irfan Sheriff <isheriff@google.com> Use LinkProperties for IP and proxy configuration

Change-Id: I4ae817fb00141e9a742216b7fd02dca1ed228270
inkAddress.java
etworkUtils.java
ed5d7d17c9e9837ce7a6a10698cce9f6e4101acd 02-Oct-2010 Irfan Sheriff <isheriff@google.com> Add LinkAddress

LinkAddress stores IP address + prefix for a network link

Change-Id: Id3e74e9d0a62121d097ebdc9be064eeea257ba1f
inkAddress.aidl
inkAddress.java
inkProperties.java
ba175a5e1331883ef4ecfc2b751789a3492efca1 06-Oct-2010 Robert Greenwalt <rgreenwalt@google.com> Turn on some debugging info

bug:3060742
Change-Id: I86f4e0b3f678c80e1bee11abd32ab0b9e0563b09
obileDataStateTracker.java
e6b29898b12a3547c24d23e41438bcefd49b56e9 30-Sep-2010 Andreas Sandblad <andreas.sandblad@sonyericsson.com> Don't perform DNS lookup in android.net.Proxy.isLocalHost

This fixes degrade introduced by:
Switch to using public APIs instead of private ones.
536ff5a6d700a80dbd75adb737ec4b560fbed2dc

Change-Id: I63cbea82d85d55d933bcfc9e7a311d1aa2324955
roxy.java
dc71b9e4d67327065a992924a021cad4bc100fa2 01-Oct-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 6a3eddb4 to master

Change-Id: I1ca1d100274d4a733ef2bf58b0d5d7217b4f858e
6a3eddb469b282f7d904e5dbcb375ad44ada3ee3 01-Oct-2010 Dianne Hackborn <hackbod@google.com> am 0a69f597: Merge "Rub in a little \'ol log-b-gone." into gingerbread

Merge commit '0a69f597604254bc37721b135ab612eaacdd0cbd' into gingerbread-plus-aosp

* commit '0a69f597604254bc37721b135ab612eaacdd0cbd':
Rub in a little 'ol log-b-gone.
cef65eeb0315c3118bf8860d6f723cb49ff6bc52 01-Oct-2010 Dianne Hackborn <hackbod@google.com> Rub in a little 'ol log-b-gone.

Mmmmmm... great fresh scent!

Change-Id: I050e70b31b5d4a9c6731f15a4b51a3620a33a78d
obileDataStateTracker.java
etworkStateTracker.java
d58429f9acdb33f05bdb233b7bba495de80cb336 28-Sep-2010 Steve Howard <showard@google.com> Manual merge: Move DownloadManager to android.app

Changing package at hackbod's request.

Change-Id: I867017b6a9f4684d30c6c5bd1b07f9cabecddb9f
ownloadManager.java
9d9719c44ad05834b48542ea0fc4edbb4f59c311 28-Sep-2010 Steve Howard <showard@google.com> am 5bdb89d7: Merge "Move DownloadManager to android.app (DO NOT MERGE)" into gingerbread

Merge commit '5bdb89d7ac20d4d3e71660d7fe78002a63900399' into gingerbread-plus-aosp

* commit '5bdb89d7ac20d4d3e71660d7fe78002a63900399':
Move DownloadManager to android.app (DO NOT MERGE)
31fd85f39b554e09b2e6c1c2ccf5c186859880fa 28-Sep-2010 Steve Howard <showard@google.com> Move DownloadManager to android.app (DO NOT MERGE)

Changing package at hackbod's request. I'll merge this manually, as
there's some additional master-only code that will be to be
simultaneously changed.

Change-Id: Ibb629ec1c31807fbee31e0193c6a941d04be0117
ownloadManager.java
1beeab70a22c1d880b9aa7dfba09ef1d4203a37d 28-Sep-2010 Irfan Sheriff <isheriff@google.com> Merge "use hostname when address null ProxyProperties parcelling"
798ffa12379d26d698f97b104e97a8309b059a62 26-Sep-2010 Irfan Sheriff <isheriff@google.com> use hostname when address null ProxyProperties parcelling

In ProxyProperties parcel, use toString so that hostname
is used when address is null

Change-Id: I4813dbdaf3c4a7bb404edf960d0f990c732ec0b8
roxyProperties.java
e9d51c4e887ed92698b308dbe9f6afb9a911de82 25-Sep-2010 Steve Howard <showard@google.com> am ffe47726: am e78fc18b: Intent action to launch downloads UI.

Merge commit 'ffe477263c503ce75d609d5360cf5e0c72a1363f'

* commit 'ffe477263c503ce75d609d5360cf5e0c72a1363f':
Intent action to launch downloads UI.
ffe477263c503ce75d609d5360cf5e0c72a1363f 25-Sep-2010 Steve Howard <showard@google.com> am e78fc18b: Intent action to launch downloads UI.

Merge commit 'e78fc18b339bfe2915e61aef2013a17f0a9ede33' into gingerbread-plus-aosp

* commit 'e78fc18b339bfe2915e61aef2013a17f0a9ede33':
Intent action to launch downloads UI.
e78fc18b339bfe2915e61aef2013a17f0a9ede33 24-Sep-2010 Steve Howard <showard@google.com> Intent action to launch downloads UI.

Change-Id: Ifd21b9b916479062d51e60108d16ce3f46b453a5
ownloadManager.java
f333123d50776507891b90a6eda4a3b8fa305bb6 24-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of 2d457a32 to master

Change-Id: I08fc7881010083407a102f471483cd6d5b9774b4
2d457a32a653ad06487cf0fef9ef400f3055099a 24-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> am 8f97fe55: Merge "Move long Connectivity tasks to handler thread." into gingerbread

Merge commit '8f97fe551e7bd95abf395eed303b975eaa8f0158' into gingerbread-plus-aosp

* commit '8f97fe551e7bd95abf395eed303b975eaa8f0158':
Move long Connectivity tasks to handler thread.
8f97fe551e7bd95abf395eed303b975eaa8f0158 24-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> Merge "Move long Connectivity tasks to handler thread." into gingerbread
8dcc28be065bb5997ed97d58c9592324b891023a 23-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> Move long Connectivity tasks to handler thread.

Reduce ANR potential.
bug:2942829

Change-Id: I21610b462d5ab91821015cd16eecd86d2c0580d1
etworkStateTracker.java
9c7bec2538eb30c7e8049effb8de827da74793a9 23-Sep-2010 Steve Howard <showard@google.com> am 1fd11292: am bb0d23b5: Have DownloadManager pass file URIs for legacy external downloads

Merge commit '1fd1129264ef4379633aa4fcd8a9ecaeeb9797f3'

* commit '1fd1129264ef4379633aa4fcd8a9ecaeeb9797f3':
Have DownloadManager pass file URIs for legacy external downloads
1c134d5559eb4d4e9f1db68bc9597711f6fa5325 23-Sep-2010 Steve Howard <showard@google.com> am 8449490a: am 4f564cde: Tweaks to download manager API based on API review feedback

Merge commit '8449490a94fb5ab02be2a67d4b57c017d8abd75a'

* commit '8449490a94fb5ab02be2a67d4b57c017d8abd75a':
Tweaks to download manager API based on API review feedback
1fd1129264ef4379633aa4fcd8a9ecaeeb9797f3 23-Sep-2010 Steve Howard <showard@google.com> am bb0d23b5: Have DownloadManager pass file URIs for legacy external downloads

Merge commit 'bb0d23b5475cb516fa6f61ee3fe4e7b79cd980f8' into gingerbread-plus-aosp

* commit 'bb0d23b5475cb516fa6f61ee3fe4e7b79cd980f8':
Have DownloadManager pass file URIs for legacy external downloads
8449490a94fb5ab02be2a67d4b57c017d8abd75a 23-Sep-2010 Steve Howard <showard@google.com> am 4f564cde: Tweaks to download manager API based on API review feedback

Merge commit '4f564cdeb8478f1a20263fc036c74cc4a63145c3' into gingerbread-plus-aosp

* commit '4f564cdeb8478f1a20263fc036c74cc4a63145c3':
Tweaks to download manager API based on API review feedback
bb0d23b5475cb516fa6f61ee3fe4e7b79cd980f8 23-Sep-2010 Steve Howard <showard@google.com> Have DownloadManager pass file URIs for legacy external downloads

DownloadManager was set up to return file URIs for public API
downloads to external, but to return content URIs for all others.
This included browser downloads, which are on external but don't go
through the public API. Since the new downloads UI uses
DownloadManager, it was affected by this change when the user opened a
file from the UI. Apparently numerous things don't handle content
URIs well, including music preview (clicking on downloaded mp3) and
package installer (clicking on downloaded APK), so this change makes
it generate file URIs for legacy external downloads.

Change-Id: I5c34d8ba188cc8b0d11865262cb451208be78eae
ownloadManager.java
4f564cdeb8478f1a20263fc036c74cc4a63145c3 23-Sep-2010 Steve Howard <showard@google.com> Tweaks to download manager API based on API review feedback

* improved documentation of the default destination on the download
cache and the concomitant consequences

* removed NETWORK_WIMAX flag for setting allowed networks

* changed request headers behavior to support multiple instances of
the same header (as allowed in the HTTP spec), renamed
setRequestHeader() to addRequestHeader()

* accept user-facing strings as CharSequences instead of Strings

* new convenience methods setDestinationInExternalFilesDir() and
setDestinationInExternalPublicDir() for setting a destination in
either shared or app-private external storage directories

* renamed setMediaType() to setMimeType()

Change-Id: I8781e2214d939c340209cab917bbbba264ab919c
ownloadManager.java
d0f533ec0aa6042dc8eef4d6f4bba5d616b845f7 22-Sep-2010 Steve Howard <showard@google.com> am 8bf158f6: am 34a7f080: Merge "Un-@hide ability to download without a running notification." into gingerbread

Merge commit '8bf158f6ba31efd2f262fc3ba6cdd13733c7d99e'

* commit '8bf158f6ba31efd2f262fc3ba6cdd13733c7d99e':
Un-@hide ability to download without a running notification.
8bf158f6ba31efd2f262fc3ba6cdd13733c7d99e 22-Sep-2010 Steve Howard <showard@google.com> am 34a7f080: Merge "Un-@hide ability to download without a running notification." into gingerbread

Merge commit '34a7f0807ee93eaefe83a9192ebc774fb1560875' into gingerbread-plus-aosp

* commit '34a7f0807ee93eaefe83a9192ebc774fb1560875':
Un-@hide ability to download without a running notification.
76a562d45f802a2cbee0c1a8a973664faa2f7ca3 21-Sep-2010 Wink Saville <wink@google.com> Merge "Cleanup copyright dates add missing method."
3104775b53c9b519edad96a225131250b91fcc11 21-Sep-2010 Steve Howard <showard@google.com> Un-@hide ability to download without a running notification.

Change-Id: Iaf4d86f05e1f98a894a480d7e2e0ecabb42116c4
ownloadManager.java
0acddc582b5d5332195452e88a5b970ae2e593ef 21-Sep-2010 Jesse Wilson <jessewilson@google.com> am 2121ec9b: am 8217eac0: Merge "Fix double-checked locking bug in LocalSocket." into gingerbread

Merge commit '2121ec9bca3507c7c3df6fb4fb1d553990adc05b'

* commit '2121ec9bca3507c7c3df6fb4fb1d553990adc05b':
Fix double-checked locking bug in LocalSocket.
2121ec9bca3507c7c3df6fb4fb1d553990adc05b 21-Sep-2010 Jesse Wilson <jessewilson@google.com> am 8217eac0: Merge "Fix double-checked locking bug in LocalSocket." into gingerbread

Merge commit '8217eac0a0b6d394139eefa85d5f467240427e98' into gingerbread-plus-aosp

* commit '8217eac0a0b6d394139eefa85d5f467240427e98':
Fix double-checked locking bug in LocalSocket.
8217eac0a0b6d394139eefa85d5f467240427e98 21-Sep-2010 Jesse Wilson <jessewilson@google.com> Merge "Fix double-checked locking bug in LocalSocket." into gingerbread
c59a66238261778b3fbc496e9b21dfa043ee9160 21-Sep-2010 Jesse Wilson <jessewilson@google.com> Fix double-checked locking bug in LocalSocket.

This code uses a try/finally to maintain the old behavior of setting
implCreated even if creation fails.

Change-Id: Ieac05568477db4908cd4087714cf00a9addd1d20
ocalSocket.java
6e80997a9a7b6a15370544edde322cd8833e9524 21-Sep-2010 Wink Saville <wink@google.com> Cleanup copyright dates add missing method.

Change-Id: I2d8fe0b705e7c90efabb8b3427a539a4a1056874
inkCapabilities.aidl
inkCapabilities.java
inkProperties.aidl
inkProperties.java
inkSocket.java
inkSocketNotifier.java
roxyProperties.java
9759df072eb4531132d166cb204b2026259a1881 21-Sep-2010 Steve Howard <showard@google.com> am 4735be02: am d2319d8d: Merge "New error status for "destination file already exists"." into gingerbread

Merge commit '4735be0211a996f791accc77aeb399df2258ab4c'

* commit '4735be0211a996f791accc77aeb399df2258ab4c':
New error status for "destination file already exists".
4735be0211a996f791accc77aeb399df2258ab4c 21-Sep-2010 Steve Howard <showard@google.com> am d2319d8d: Merge "New error status for "destination file already exists"." into gingerbread

Merge commit 'd2319d8d9a2d2bc5edc9d7d20b7100f4c72cb2e1' into gingerbread-plus-aosp

* commit 'd2319d8d9a2d2bc5edc9d7d20b7100f4c72cb2e1':
New error status for "destination file already exists".
a9e87c9cc375b8be43a05ad641545db26eee0d46 16-Sep-2010 Steve Howard <showard@google.com> New error status for "destination file already exists".

Also changing the behavior of the local URI column slightly to better
match the spec -- it should return the client-provided destination so
that it's valid even if the download failed.

Change-Id: Ibf9c07519e647e677ebac8b334b9f2e930e47033
ownloadManager.java
d192dad69e9e5a820c5c11d8cd34460c9cc2ed11 14-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> Enhance http proxy support

Make it read proxys the correct way from CS so it works for all network types.
Add utility class for apache http client support.

bug:2700664
Change-Id: If81917b19b5f0636247a6519a1ec78bd8dbf3596
onnectivityManager.java
ConnectivityManager.aidl
roxy.java
00cfe112b436eaafb44c0466ceacce3baf10a8f3 17-Sep-2010 Wink Saville <wink@google.com> Add LinkSocket API

Restructuring ConnectivityService to handle multiple connections.

Change-Id: Ia993fbb120bebb844fd0d603dc76fbc700b31fd1
inkSocket.java
inkSocketNotifier.java
f61101f6266be243c481d163b95e65d67b8d1669 17-Sep-2010 Wink Saville <wink@google.com> Add LinkCapabilities

Change-Id: Ia1599ade936b79f12526252c0a2e6b453abb136e
inkCapabilities.aidl
inkCapabilities.java
obileDataStateTracker.java
etworkStateTracker.java
0b576506664d836bccc2782863b953e5c39d69d0 16-Sep-2010 Steve Howard <showard@google.com> am 4cd34abe: am 47874718: Merge "Support new URI structure for download provider." into gingerbread

Merge commit '4cd34abe538ea1da4aba8685ef6c8dc6c3e4947b'

* commit '4cd34abe538ea1da4aba8685ef6c8dc6c3e4947b':
Support new URI structure for download provider.
4cd34abe538ea1da4aba8685ef6c8dc6c3e4947b 16-Sep-2010 Steve Howard <showard@google.com> am 47874718: Merge "Support new URI structure for download provider." into gingerbread

Merge commit '478747181e0414d703076d4786b201718cd93d5b' into gingerbread-plus-aosp

* commit '478747181e0414d703076d4786b201718cd93d5b':
Support new URI structure for download provider.
478747181e0414d703076d4786b201718cd93d5b 16-Sep-2010 Steve Howard <showard@google.com> Merge "Support new URI structure for download provider." into gingerbread
5b7c5e055233154d2a82cc2d084cf983d12bb3a7 16-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> am f434dd16: am 134b28a7: Merge "Update Inet Connection Status display" into gingerbread

Merge commit 'f434dd1660f222a1ee85e77c98893b90857805c2'

* commit 'f434dd1660f222a1ee85e77c98893b90857805c2':
Update Inet Connection Status display
f434dd1660f222a1ee85e77c98893b90857805c2 16-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> am 134b28a7: Merge "Update Inet Connection Status display" into gingerbread

Merge commit '134b28a7f049719cb74fd5baadbbcc5915bc861b' into gingerbread-plus-aosp

* commit '134b28a7f049719cb74fd5baadbbcc5915bc861b':
Update Inet Connection Status display
134b28a7f049719cb74fd5baadbbcc5915bc861b 16-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> Merge "Update Inet Connection Status display" into gingerbread
1e9aac2bd855f12708d3049eff4435fa4a2f4317 16-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> Update Inet Connection Status display

Cellular signal strength should also be green - these assets aren't, but
the art guys are working on that.

Also using a new intent so we don't overload the CONNECTIVITY_ACTION and
confuse the apps.
bug:2994024

Change-Id: I6fe8f65dd6e9869d9724064c4fae45340491a4d8
onnectivityManager.java
86a6019f0226990221ec2f57b92a5b443630903d 15-Sep-2010 Paul Westbrook <pwestbro@google.com> Enable downloads of https urls

Bug: 3001890
Change-Id: Ibb2bc5c8efe90744a3b6f76bd31c3199a7365827
ownloadManager.java
eca77fcdc64dcbd2915e7f5e1e26dbe4a7105314 13-Sep-2010 Steve Howard <showard@google.com> Support new URI structure for download provider.

I'm changing the URI structure for the download provider a bit. The
download provider will now support two views into its data:

* content://downloads/my_downloads... will basically be the current
view, which is limited to downloads owned by the calling UID
* content://downloads/all_downloads... will include all downloads in
the system, but will require special permission

In addition to making things more clear, this change will allow for
granting URI permissions to individual downloads via the
/all_downloads/... URI.

This change includes the framework changes necessary to support the
new structure. The bulk of the work will be in the DownloadProvider
code itself.

In addition, this change makes DownloadManager return a content URI
rather than a file URI for /cache downloads. This avoids any
confusion in clients, which wouldn't be able to open the file
directly, and better supports granting permissions to viewers.

Change-Id: Ie548b927817ac774111990dd0c9d26aaf979d1ea
ownloadManager.java
b3f23da320991dd078b6cc55c719201cd8d7eb1c 15-Sep-2010 Brian Carlstrom <bdc@google.com> am e68f8b7e: am 405d4db5: Rename internal SSLParameters to SSLParametersImpl to avoid collision with new javax.net.ssl.SSLParameters

Merge commit 'e68f8b7ebe898ec06d7a156964d498e3d0a2e6c0'

* commit 'e68f8b7ebe898ec06d7a156964d498e3d0a2e6c0':
Rename internal SSLParameters to SSLParametersImpl to avoid collision with new javax.net.ssl.SSLParameters
7352c8bb4242caeba47e7696541c133760cc95de 15-Sep-2010 Brian Carlstrom <bdc@google.com> am 0535d857: am 94126238: Merge "Remove SSLContextImpl.engineInit(..) that takes persistent cache arguments" into gingerbread

Merge commit '0535d8577fb2a3687428f462c591ae3220e1f773'

* commit '0535d8577fb2a3687428f462c591ae3220e1f773':
Remove SSLContextImpl.engineInit(..) that takes persistent cache arguments
31b62322bfa9470d648fbfd69510e03da29b29af 30-Aug-2010 Irfan Sheriff <isheriff@google.com> Add per network static IP settings

Remove the existing global static IP settings and add support
for per network configuration

Change-Id: I5a6d8b877471b8c8ad07951c96d273893754607f
hcpInfo.java
e68f8b7ebe898ec06d7a156964d498e3d0a2e6c0 14-Sep-2010 Brian Carlstrom <bdc@google.com> am 405d4db5: Rename internal SSLParameters to SSLParametersImpl to avoid collision with new javax.net.ssl.SSLParameters

Merge commit '405d4db50b3db1fc5e015475218e190d193332d4' into gingerbread-plus-aosp

* commit '405d4db50b3db1fc5e015475218e190d193332d4':
Rename internal SSLParameters to SSLParametersImpl to avoid collision with new javax.net.ssl.SSLParameters
405d4db50b3db1fc5e015475218e190d193332d4 14-Sep-2010 Brian Carlstrom <bdc@google.com> Rename internal SSLParameters to SSLParametersImpl to avoid collision with new javax.net.ssl.SSLParameters

Bug: 2672817
Change-Id: Ibe20830f024f76232f3628cfca922d49a5a06bef
SLCertificateSocketFactory.java
ttp/CertificateChainValidator.java
0535d8577fb2a3687428f462c591ae3220e1f773 14-Sep-2010 Brian Carlstrom <bdc@google.com> am 94126238: Merge "Remove SSLContextImpl.engineInit(..) that takes persistent cache arguments" into gingerbread

Merge commit '94126238427f04ecb86fe6832113afb2f04e89b5' into gingerbread-plus-aosp

* commit '94126238427f04ecb86fe6832113afb2f04e89b5':
Remove SSLContextImpl.engineInit(..) that takes persistent cache arguments
2c42c8fbaf02be1f3ea6298077128d0c419526f0 14-Sep-2010 Brian Carlstrom <bdc@google.com> Remove SSLContextImpl.engineInit(..) that takes persistent cache arguments

Bug: 2672817

Change-Id: If5f10fa16eaf5676a0c1540463759cd4e0e837de
SLCertificateSocketFactory.java
ttp/HttpsConnection.java
df10a19296b7c69b9bd314806d1de24ed698bc46 13-Sep-2010 Steve Howard <showard@google.com> am f353daa0: am 90fb15a7: Support UI visibility and restarting in download manager.

Merge commit 'f353daa03aeb3c04fdfa87b7bcd49f0a7eea59b1'

* commit 'f353daa03aeb3c04fdfa87b7bcd49f0a7eea59b1':
Support UI visibility and restarting in download manager.
f353daa03aeb3c04fdfa87b7bcd49f0a7eea59b1 13-Sep-2010 Steve Howard <showard@google.com> am 90fb15a7: Support UI visibility and restarting in download manager.

Merge commit '90fb15a7e52b1208b8d4f7518a61efb99580b5b0' into gingerbread-plus-aosp

* commit '90fb15a7e52b1208b8d4f7518a61efb99580b5b0':
Support UI visibility and restarting in download manager.
90fb15a7e52b1208b8d4f7518a61efb99580b5b0 10-Sep-2010 Steve Howard <showard@google.com> Support UI visibility and restarting in download manager.

First, this change adds a column to the downloads table specifying
whether a download should be displayed in the system downloads UI. It
adds a public method to set this parameter when requesting a download,
and a hidden method to filter queries based on this paramter (such
filtering could be made public later, but it's not strictly necessary
right now).

Second, this change adds support for restarting a completed/failed
download as a hidden method on DownloadManager. Currently it only
works from the download manager's process - it'll be used by the new
download manager UI.

Change-Id: I15eda1a6e3717d1ce947a810b25ad3540cce809e
ownloadManager.java
c7c0acd1f5d826d867940254469368668594f60f 09-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> Merge "Fix the build"
67fd6c92922a94f46c7b6793a808f473a43eddd3 09-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> Fix the build

add '*' so javadoc recognizes a comment block and finds the required @hide..

Change-Id: If665ba6549f9e017c063ea2800b7970917c33bdf
onnectivityManager.java
c8532dac2122b17cd4ad9007ee4351bdae07384d 09-Sep-2010 Steve Howard <showard@google.com> am 1ed20dc4: am e3692d15: Merge "Hidden API to control sorting of download manager queries." into gingerbread

Merge commit '1ed20dc43b070903597c55738f342bc77f7ab21d'

* commit '1ed20dc43b070903597c55738f342bc77f7ab21d':
Hidden API to control sorting of download manager queries.
ca4306c976d393c3cd04270bc2de0af2f4f30fa5 09-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> resolved conflicts for merge of ec52c98d to master

Change-Id: I31297232c9d918a967b93c3ae977f81b6a94f2ed
1ed20dc43b070903597c55738f342bc77f7ab21d 09-Sep-2010 Steve Howard <showard@google.com> am e3692d15: Merge "Hidden API to control sorting of download manager queries." into gingerbread

Merge commit 'e3692d153e0f66a5620eb96bd75ce92585b9fc04' into gingerbread-plus-aosp

* commit 'e3692d153e0f66a5620eb96bd75ce92585b9fc04':
Hidden API to control sorting of download manager queries.
f054e190bb6f06e5645826c84670098159feaf34 02-Sep-2010 Steve Howard <showard@google.com> Hidden API to control sorting of download manager queries.

This change adds a hidden API to sort download manager queries by size
rather than by time last modified. This is necessary for the system
download manager UI but, in the interest of keeping the new public API
as minimal as possible for now, I'm leaving @hide on this method.

This change also changes the DownloadManager.COLUMN_ID column to be
identical to BaseColumns._ID, since some code relies on this (such as
CursorAdapter).

Change-Id: Ib89b614d63e988974d4486b122b39365b35b5269
ownloadManager.java
ec52c98d441aa592a203f547c0edec79c25bf28e 09-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> am 0727a865: Merge "Add network condition reporting." into gingerbread

Merge commit '0727a865d83b944c2fecc0bf1228a36976fe5300' into gingerbread-plus-aosp

* commit '0727a865d83b944c2fecc0bf1228a36976fe5300':
Add network condition reporting.
d7085fcf6567452a9d6fc69b0c6b1bf556f4c1b9 09-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> Add network condition reporting.

Apps can report if they like their connection to the nets
and we display either not-really-connected or fully-connected
icons. Final icons TBD.

bug:2978624
Change-Id: I28be52085edfe54571c0d4559aba0df883548654
onnectivityManager.java
ConnectivityManager.aidl
etworkStateTracker.java
fa018890643dfc2ccc3a74a223b21dc24b72fa05 09-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> Merge "Some cleanup of Proxy class."
582deec1f3c8f51b431bb2ad685c9217ffd9eaad 06-Sep-2010 Steve Block <steveblock@google.com> Fixes a problem with URL parsing when the host ends with a dot

The WebAddress class provides a lenient parser for URLs. Currently, it
identifies the host portion with the regex [<chars>]+(\.[<chars>]+)* where
<chars> is the set of characters valid for the host name. This pattern excludes
the case where the host ends with a dot, which is valid possibility. As a
result, any trailing dot is pushed into the path component. Since we add a
leading slash to the path if one is missing, the result is a path that begins
with '/.'.

This fix changes the host regex to [<chars>]+[<chars>\.]* which allows trailing
dots and fixes the problem.

Bug: 2337042
Change-Id: I310512531787e0f742988f5d815ad944fd39e059
ebAddress.java
70af574b3d61605e311a7b3b5cb1531d5201dc5b 03-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> Some cleanup of Proxy class.

Switch to using InetSocketAddress.

Change-Id: Ibdb97fcd2d06eecaa1e847b78267180156089f27
roxy.java
roxyProperties.java
30bf654574981c39e9090fdd6ddbf515a4180bae 03-Sep-2010 Wink Saville <wink@google.com> Remove unused intent from filter and unused method.

Change-Id: I8c503903fceb508658cce14918f2c77c04289873
obileDataStateTracker.java
21e784496719c6ac8bd8d960aeaed73fd6a796fc 02-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> Merge "Remember mobile nets availability"
cff25ffb0aeddecc2621e59b47322e524aa66046 31-Aug-2010 Robert Greenwalt <rgreenwalt@google.com> Remember mobile nets availability

Change-Id: I402ac64bf477b0b600b17f0267c2ff5c19ab9cf3
obileDataStateTracker.java
f6682b031742df794f95a3955db60595cb459b2a 01-Sep-2010 Robert Greenwalt <rgreenwalt@google.com> Fix NPE in toString

bug:2965739
Change-Id: Ic3f274cba8ac668d86a8f69f1b2b738d348b3977
roxyProperties.java
ac19f24cc10d380b4065778e8ff5492c10a75cdd 31-Aug-2010 Andrew Stadler <stadler@android.com> Fix crash when proxy exclusion list is null.

Also cleaned up source a little bit and eliminated a warning.

Bug: 2964821
Change-Id: I35825bb345742ea1a1854e8998aa67e353deaa17
roxyProperties.java
ef6c1431fa2039a4b8c604d651bb8f4dc0806581 31-Aug-2010 Irfan Sheriff <isheriff@google.com> Fix reboot loop due to NPE

Bug: 2962059
Change-Id: I73d5fa5ef0f29dc139c843b34f58f189c94dfe4b
inkProperties.java
roxyProperties.java
37e65ebb7eb932e1a144b1cab262e11ca5fd109b 30-Aug-2010 Robert Greenwalt <robdroid@android.com> Rename NetworkProperties to LinkProperties

Also add copy constructors and use them when giving out data.

Change-Id: Id320eb8fb91d0bd250305ce7bb4f628570215615
inkProperties.aidl
inkProperties.java
obileDataStateTracker.java
etworkProperties.aidl
etworkProperties.java
etworkStateTracker.java
roxyProperties.java
fc40701c8b170706a87eed9a758bf3307c572b99 28-Aug-2010 Robert Greenwalt <robdroid@android.com> Merge "resolved conflicts for merge of 4ea54f44 to master"
db4c91ff7b4667527c09b01c4467b89e8e19925e 27-Aug-2010 Wink Saville <wink@google.com> Merge "Add NetworkProperties to DataConnection."
1f6408a96c757b3001c553f8f34ef0bda00a224d 27-Aug-2010 Wink Saville <wink@google.com> Add NetworkProperties to DataConnection.

Since we have NetworkProperties we can remove the individual accessors
from Phone and its subclasses.

Change-Id: Id9969a880405900a63051b3ae4019d889afb1fe8
etworkProperties.java
roxyProperties.java
585ac0fc8dde3fe35ec4c71c8f215f2c84139b8b 27-Aug-2010 Robert Greenwalt <robdroid@android.com> resolved conflicts for merge of 4ea54f44 to master

Change-Id: Ia77bb59a6e1950648c8ebf7db307e204f93a9f56
onnectivityManager.java
ConnectivityManager.aidl
obileDataStateTracker.java
etworkUtils.java
58a345936d7e2b66bdeefb492e4f777754792d7e 19-Aug-2010 Ben Dodson <bjdodson@google.com> Added methods for managing uri query parameters

Change-Id: Ic98c1bd159740dd4d895889079f9f2abae4fc2b9
ri.java
4e8620f868e2490782ebb960404140ea9482c91d 25-Aug-2010 Ben Dodson <bjdodson@google.com> Updated documentation for upcoming fix for @code tags

Change-Id: Id7b163179132b9cf180afecb4e9e10ee39bcd415
ri.java
b21b62327c10e92baf1a88e77f1c6d5576a17d62 26-Aug-2010 Robert Greenwalt <robdroid@android.com> resolved conflicts for merge of b998f311 to gingerbread-plus-aosp

Change-Id: I7ceb0b624e78d85542d1c36bfabeb5dc31961505
2b05a95bccafddac15debdfb5c39107aa3418783 20-Aug-2010 Robert Greenwalt <robdroid@android.com> am 4b1bdc02: Merge "DO NOT MERGE Fixing Connectivity" into gingerbread

Merge commit '4b1bdc0209650436ebe0dad1020080cc891e97b6' into gingerbread-plus-aosp

* commit '4b1bdc0209650436ebe0dad1020080cc891e97b6':
DO NOT MERGE Fixing Connectivity
8afddad7e7ce7275e26dc1ebfb359fbdd1d5920b 20-Aug-2010 Robert Greenwalt <robdroid@android.com> DO NOT MERGE Fixing Connectivity

Passing Gateway addr info from telephony into ConnectivityService so it can
add/remove the default route as needed. Fixed differently on master.

bug:2927822
Change-Id: I9a3ee7cd23c4717e7c60098f0595aa3f77c44b15
obileDataStateTracker.java
etworkUtils.java
9bc709d46e1165ca0c9a02bd970767c401b990e5 10-Aug-2010 Banavathu, Srinivas Naik <snb@codeaurora.org> Add an API to request route to an IPv6 host.

Add API to create a route to an IPv6 host through a particular
interface.

Change-Id: I7649051e94832576e02b5f5ad17abe093d21d48e
onnectivityManager.java
ConnectivityManager.aidl
obileDataStateTracker.java
etworkStateTracker.java
etworkUtils.java
4600139173c80db4ebfb70e2417231e9678d37f9 19-Aug-2010 Robert Greenwalt <robdroid@android.com> am 6b2c56a2: Merge "DO NOT MERGE Do not kill sockets going default->hipri" into gingerbread

Merge commit '6b2c56a299eb05deef2b887549e29e9e9f0f2cf6' into gingerbread-plus-aosp

* commit '6b2c56a299eb05deef2b887549e29e9e9f0f2cf6':
DO NOT MERGE Do not kill sockets going default->hipri
6b2c56a299eb05deef2b887549e29e9e9f0f2cf6 19-Aug-2010 Robert Greenwalt <robdroid@android.com> Merge "DO NOT MERGE Do not kill sockets going default->hipri" into gingerbread
6fdd0c6274c81b337ad35b70480f881daf7354c3 11-Aug-2010 Danica Chang <danicachang@google.com> bluetooth tethering

Change-Id: Id6d5fb1922facc7013abc29214d3e1141995b767
onnectivityManager.java
ConnectivityManager.aidl
a22ae073cc727eb4cf2c6734d6ba7336d6d9e2b4 14-Aug-2010 Robert Greenwalt <robdroid@android.com> DO NOT MERGE Do not kill sockets going default->hipri

A usecase is to use hipri to keep alive 3g connections when wifi
is about to be brought up. They are the same network, so don't
reset unless both are down.

Change-Id: I8dabc42f315943b28ea34721793b0ee330c07bf6
obileDataStateTracker.java
1944cca612b491db147b86bbd637e5ebaf3e8c9a 18-Aug-2010 Steve Howard <showard@google.com> am 0899e8bc: am baf3869b: Merge "Fix up handling of null fields in DownloadManager." into gingerbread

Merge commit '0899e8bc9dc44249d6be016bed71a9ecee56f132'

* commit '0899e8bc9dc44249d6be016bed71a9ecee56f132':
Fix up handling of null fields in DownloadManager.
0899e8bc9dc44249d6be016bed71a9ecee56f132 18-Aug-2010 Steve Howard <showard@google.com> am baf3869b: Merge "Fix up handling of null fields in DownloadManager." into gingerbread

Merge commit 'baf3869b88ab4e31f792dbe08f61725bc3619ea8' into gingerbread-plus-aosp

* commit 'baf3869b88ab4e31f792dbe08f61725bc3619ea8':
Fix up handling of null fields in DownloadManager.
8651bd5d1813aaef5ccfe3581cd1ab6aa693fba8 03-Aug-2010 Steve Howard <showard@google.com> Fix up handling of null fields in DownloadManager.

Document fields that can have invalid/unknown values, and fix handling
of null local URI.

Change-Id: I7684c151f0a20c91340655246bec2ce0a60328e4
ownloadManager.java
fe762e9d127988b736422915ee8bac3d9321a786 17-Aug-2010 Steve Howard <showard@google.com> am ab59914d: am b3e957bb: Merge "New download manager error code when we can\'t resume." into gingerbread

Merge commit 'ab59914de7ac714d04a5013c53aa9c7edb5421a2'

* commit 'ab59914de7ac714d04a5013c53aa9c7edb5421a2':
New download manager error code when we can't resume.
ab59914de7ac714d04a5013c53aa9c7edb5421a2 17-Aug-2010 Steve Howard <showard@google.com> am b3e957bb: Merge "New download manager error code when we can\'t resume." into gingerbread

Merge commit 'b3e957bb9d3a3811412e5d94233c7f7e2e777c28' into gingerbread-plus-aosp

* commit 'b3e957bb9d3a3811412e5d94233c7f7e2e777c28':
New download manager error code when we can't resume.
33bbd12a05005ac92a0ecf82695893148227bb22 03-Aug-2010 Steve Howard <showard@google.com> New download manager error code when we can't resume.

Adding DownloadManager.ERROR_CANNOT_RESUME for when we can't resume an
interrupted download (because the server didn't provide an ETag or
doesn't support range requests), as well as the necessary private
status code in Downloads.Impl.

Change-Id: I5a66f1e1964198552ab2216aa6d3cc0db2254e21
ownloadManager.java
c7a98341b053bd8090accca151e8f3522f2dd126 14-Aug-2010 Wink Saville <wink@google.com> Add documentation to NetworkStateTracker and a small change to the API.

Also, removed some unused NetworkStateTracker event codes.

The API change was to add context and target to startMonitor, this makes
it easier to document what the actual interface contract is.

Change-Id: If9b52486c3c281fe4794bc78417c8b03888414b1
obileDataStateTracker.java
etworkStateTracker.java
993f85f3194000d0eb212f361431c9319548b144 14-Aug-2010 Robert Greenwalt <robdroid@android.com> am e300b8c1: Merge "DO NOT MERGE Always set/remove default routes." into gingerbread

Merge commit 'e300b8c10c306b575bbbec29d5572ba92a97785e' into gingerbread-plus-aosp

* commit 'e300b8c10c306b575bbbec29d5572ba92a97785e':
DO NOT MERGE Always set/remove default routes.
b738fb9938631a2e4540f9a9308f49e6be5565b8 13-Aug-2010 Robert Greenwalt <robdroid@android.com> DO NOT MERGE Always set/remove default routes.

Must clean up default route if a default 3g connection is replaced
by a non-default (ie, mms) connection on teh same interface.

Also stop mucking with all connections dns and routes - do it only
for the connection that has changed.

bug:2865974
Change-Id: Ifdf49080fa0413a4d826813706c809975a562dfa
etworkStateTracker.java
0d25534fed91f636def5776ddc4605005bd7471c 28-Jul-2010 Irfan Sheriff <isheriff@google.com> Split WifiStateMachine from WifiStateTracker

Notifications handled in WifiService. WifiStateTracker tracks
state for connectivity service

Change-Id: Idb0cf494898d28712af0f95f9e60c5417cd4a053
obileDataStateTracker.java
etworkStateTracker.java
f0cfe3438aea77b5193d94fb9fa0c8d37972b194 09-Aug-2010 Jeff Hamilton <jham@android.com> Add a few helpful APIs.

Change-Id: Ie57aa71eb77a1e0fb058f4eb6f40d4144a6dfce7
ri.java
bd576042a5f7b70cb677718246dc5afcb6a782ae 07-Aug-2010 Steve Howard <showard@google.com> am 974c993f: am 8e15afe7: Make downloads visible by default.

Merge commit '974c993fc3771169efa73e40981d18ac0969fac8'

* commit '974c993fc3771169efa73e40981d18ac0969fac8':
Make downloads visible by default.
974c993fc3771169efa73e40981d18ac0969fac8 07-Aug-2010 Steve Howard <showard@google.com> am 8e15afe7: Make downloads visible by default.

Merge commit '8e15afe799bbe8d332640c1f2b57b5e0458a9625' into gingerbread-plus-aosp

* commit '8e15afe799bbe8d332640c1f2b57b5e0458a9625':
Make downloads visible by default.
8e15afe799bbe8d332640c1f2b57b5e0458a9625 29-Jul-2010 Steve Howard <showard@google.com> Make downloads visible by default.

Change-Id: I8f8b325658d8afc964bddd3f1c03ed20e6bd10aa
ownloadManager.java
6f71b42bc4531618e2b050bdf9ad05a72ac2a565 05-Aug-2010 Oscar Montemayor <oam@google.com> Fix for bug 2890320 Browser crashes, after adding bookmark.
Simplified locking scheme in Proxy's getProxy(..) method.
Also modified ContentObserver creation to be done from any thread.

Change-Id: I54edb56a86796f08a1310cf1ae1d1f0c42a0cbc8
roxy.java
1b7e4d5adcc2737bc11bfbf42a88a02d6df984e0 05-Aug-2010 Brian Carlstrom <bdc@google.com> am 4ae1e382: Merge "Tracking merge of dalvik-dev to gingerbread" into gingerbread

Merge commit '4ae1e382f4b6c5bb9e757f35f82ad48dc02c32af' into gingerbread-plus-aosp

* commit '4ae1e382f4b6c5bb9e757f35f82ad48dc02c32af':
Tracking merge of dalvik-dev to gingerbread
3c7c351a6217ac48b741740167c201a679a0ca65 05-Aug-2010 Brian Carlstrom <bdc@google.com> Tracking merge of dalvik-dev to gingerbread

git cherry-pick --no-commit f77cf7f0
git cherry-pick --no-commit c8f503b5285e30c1a881d0ba860ba9021f57d113
git cherry-pick --no-commit 570bb561
git cherry-pick --no-commit e2417541
git cherry-pick --no-commit e4d81f25bd4dc1a5c909b56ab56a56406290da30
git cherry-pick --no-commit 5e8a587d

Change-Id: I101a385d43f3e0f4ce5352217f92ef67a3908c88
SLCertificateSocketFactory.java
ttp/HttpsConnection.java
2cd1dbe50dc2acbabb1cbd5b7e31563f63797106 05-Aug-2010 Oscar Montemayor <oam@google.com> Merge "Fix for bug 2890320 Browser crashes, after adding bookmark. Fixed Proxy class locking and dealing with empty exclusion lists."
b8f66019ad2d3885be38d8874ded0e21970af998 04-Aug-2010 Oscar Montemayor <oam@google.com> Fix for bug 2890320 Browser crashes, after adding bookmark.
Fixed Proxy class locking and dealing with empty exclusion lists.

Change-Id: I2cfcc099961aa3eec388a7457f40b0b2236f84c8
roxy.java
1cf56ab9c68334d9124c52bcede06aaa0b17c730 05-Aug-2010 Irfan Sheriff <isheriff@google.com> Avoid hostname lookup in NetworkProperties

Bug: 2870816
Change-Id: Iba98d7d25da5068051dba19aa04702cc93b7cc05
etworkProperties.java
fa64bcfb016c4cfece428f82deeb542be77ccb6c 03-Aug-2010 Robert Greenwalt <robdroid@android.com> Merge "Don't reset connections switching default->hipri"
153b4374d067ee92a0b9c712e54300cc49db017c 23-Jul-2010 Robert Greenwalt <robdroid@android.com> Don't reset connections switching default->hipri

A usecase is to use hipri to keep alive 3g connections when wifi
is about to be brought up. They are the same network, so don't
do the reset unless both are down.

This will go away when we get the deferred network downing.

bug:2865630
Change-Id: I07729b7776fe5ea129120c688cf7839a55a7ed95
obileDataStateTracker.java
16fb7910fd3a86780edf4e65b529542ae95c26cd 02-Aug-2010 Oscar Montemayor <oam@google.com> Global Proxy changes to proxy class.

Change-Id: Ib2da33670b1da33c0b35b60f4fcbd0bc084e616a
roxy.java
5e8a587d49f014fdd42403f51bbe877855e4a6b3 29-Jul-2010 Brian Carlstrom <bdc@google.com> Tracking merge of dalvik-dev to master

Change-Id: Id4c19401ad0aa238219aaf5d9a20d2889d0a4b18
SLCertificateSocketFactory.java
ttp/HttpsConnection.java
82d0249f5b2629f977be3621ba5a55879ec39c32 28-Jul-2010 Steve Howard <showard@google.com> am 55020622: am 7feab347: Merge "Un-@hide new download manager public API." into gingerbread

Merge commit '550206226b59ff116cc677121c82aa61eac966bc'

* commit '550206226b59ff116cc677121c82aa61eac966bc':
Un-@hide new download manager public API.
550206226b59ff116cc677121c82aa61eac966bc 28-Jul-2010 Steve Howard <showard@google.com> am 7feab347: Merge "Un-@hide new download manager public API." into gingerbread

Merge commit '7feab3470156c7864fe159115d575c16f0974493' into gingerbread-plus-aosp

* commit '7feab3470156c7864fe159115d575c16f0974493':
Un-@hide new download manager public API.
a2a1b911a31dd94ee75e94845f762b91f1db1368 07-Jun-2010 Irfan Sheriff <isheriff@google.com> Refactor WifiStateTracker

Implement WifiStateTracker as a HSM.

Change-Id: Ic12fd78f1f183b5c4dea8ad2301002267ceff0cb
etworkInfo.java
46be2a5bb647a2429c16ce7d613dd9cce8c3c43b 27-Jul-2010 Steve Howard <showard@google.com> Un-@hide new download manager public API.

Change-Id: Ia8433160ef40e25fb9408f05f97c7bbfa10a807e
ownloadManager.java
14d9c34ccb75795d0b219b3dcc42c2269eb0e756 26-Jul-2010 Jean-Baptiste Queru <jbq@google.com> am c7ab09ed: Merge "Fix build."

Merge commit 'c7ab09ede5426f1ca7f1215aa4d7ac95a2b6109b' into gingerbread-plus-aosp

* commit 'c7ab09ede5426f1ca7f1215aa4d7ac95a2b6109b':
Fix build.
a265083890cf67b35e432506e81fb90e7cf2bff8 22-Jul-2010 Steve Howard <showard@google.com> am 5e43c5a6: am b8e07a51: DL manager support for broadcasts + connectivity control

Merge commit '5e43c5a6e8f94134850c7e3bc4c7f657e1579746'

* commit '5e43c5a6e8f94134850c7e3bc4c7f657e1579746':
DL manager support for broadcasts + connectivity control
5e43c5a6e8f94134850c7e3bc4c7f657e1579746 22-Jul-2010 Steve Howard <showard@google.com> am b8e07a51: DL manager support for broadcasts + connectivity control

Merge commit 'b8e07a51c1849d6894c5773a3daacedd01294218' into gingerbread-plus-aosp

* commit 'b8e07a51c1849d6894c5773a3daacedd01294218':
DL manager support for broadcasts + connectivity control
b8e07a51c1849d6894c5773a3daacedd01294218 21-Jul-2010 Steve Howard <showard@google.com> DL manager support for broadcasts + connectivity control

* Additions to DownloadManager to support control of broadcast intents, allowed network types, and roaming control. This includes new constants and added implementation.
* New DB columns to hold connectivity flags and one to indicate whether the download was initiated through the public API; this is used to change behavior related to broadcast intents and connectivity controls.

Change-Id: I2e8e4ce92cde7889a0f24dc43b86c596c73c0eaa
ownloadManager.java
536ff5a6d700a80dbd75adb737ec4b560fbed2dc 17-Jul-2010 Jean-Baptiste Queru <jbq@google.com> Fix build.

Switch to using public APIs instead of private ones.

Change-Id: Ia3468d94b3dadeb6a000ce419ee08f7e7ba5dc67
roxy.java
cc0aad38f0e9a9096f0acb71dfd1f6a8ebc7d344 17-Jul-2010 Jean-Baptiste Queru <jbq@google.com> Fix build.

Switch to using public APIs instead of private ones.

Change-Id: Ia3468d94b3dadeb6a000ce419ee08f7e7ba5dc67
roxy.java
a508668309201c7e781dfd8e714d6194938ed566 16-Jul-2010 The Android Open Source Project <initial-contribution@android.com> am c9ecd445: merge from open-source master

Merge commit 'c9ecd445b86552265b4adb90e5df2fbe5f71cb8e'

* commit 'c9ecd445b86552265b4adb90e5df2fbe5f71cb8e':
Added method getPreferredHttpHost
c9ecd445b86552265b4adb90e5df2fbe5f71cb8e 16-Jul-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: I6bdeeff30be1fdb0901aec9bcdd67176c29eaf7b
62dfcf38b5e93ecd6ea90910516c0089b7a332ea 16-Jul-2010 The Android Open Source Project <initial-contribution@android.com> am 3b97e5a6: merge from open-source master

Merge commit '3b97e5a6270f40111117c4d3f1e964154ddea0fe'

* commit '3b97e5a6270f40111117c4d3f1e964154ddea0fe':
Make HTTP Header class handle multiple cache-control fields.
3b97e5a6270f40111117c4d3f1e964154ddea0fe 16-Jul-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: Ic91d205e7fd6a71320d9a4498643d384397dfb00
0a0ba099ed89270a9346748ccfe2265def595e9e 16-Jul-2010 Robert Greenwalt <robdroid@android.com> Fix Emulator boot.

Catch a NPE that doesn't seem to happen on devices.

Change-Id: I47d599afbed76798d8d312a59e30b89664363e93
obileDataStateTracker.java
9db328463a61357a3928ef2012c209bd5e7b09e1 15-Jul-2010 Steve Howard <showard@google.com> am 203ec9fa: am d6343c26: Merge "Interface support for custom HTTP headers in DL manager" into gingerbread

Merge commit '203ec9fa6eab21621969f36053d4cd59c23977a9'

* commit '203ec9fa6eab21621969f36053d4cd59c23977a9':
Interface support for custom HTTP headers in DL manager
203ec9fa6eab21621969f36053d4cd59c23977a9 15-Jul-2010 Steve Howard <showard@google.com> am d6343c26: Merge "Interface support for custom HTTP headers in DL manager" into gingerbread

Merge commit 'd6343c26b8580f61a257a3045bfa124049201116' into gingerbread-plus-aosp

* commit 'd6343c26b8580f61a257a3045bfa124049201116':
Interface support for custom HTTP headers in DL manager
d6343c26b8580f61a257a3045bfa124049201116 15-Jul-2010 Steve Howard <showard@google.com> Merge "Interface support for custom HTTP headers in DL manager" into gingerbread
3fb33c7262a35f844e152441379fe93c53211e85 15-Jul-2010 Romain Guy <romainguy@android.com> Merge "Added method getPreferredHttpHost"
ea9147df00ee6e098cd02d901424ae5a4fe0fafd 14-Jul-2010 Steve Howard <showard@google.com> Interface support for custom HTTP headers in DL manager

* constants for new DB table, keys for including headers in a
DownloadProvider.insert() call, and new URIs for retrieving headers
* support in DownloadManager to pass headers to the provider
ownloadManager.java
5ba2e74560dcbf4d5f8d30a89807c1148425ed21 15-Jul-2010 Andrew Stadler <stadler@android.com> am 521e9aa7: am c98e4311: am 468c82e4: Merge "Skip hostname verification when using insecure factory" into froyo

Merge commit '521e9aa7523220c3dc48f6abd32fad6b76eea114'

* commit '521e9aa7523220c3dc48f6abd32fad6b76eea114':
Skip hostname verification when using insecure factory
521e9aa7523220c3dc48f6abd32fad6b76eea114 15-Jul-2010 Andrew Stadler <stadler@android.com> am c98e4311: am 468c82e4: Merge "Skip hostname verification when using insecure factory" into froyo

Merge commit 'c98e431119867dbc4ae3da52d5c374607c0f67b9' into gingerbread-plus-aosp

* commit 'c98e431119867dbc4ae3da52d5c374607c0f67b9':
Skip hostname verification when using insecure factory
c98e431119867dbc4ae3da52d5c374607c0f67b9 15-Jul-2010 Andrew Stadler <stadler@android.com> am 468c82e4: Merge "Skip hostname verification when using insecure factory" into froyo

Merge commit '468c82e4be0630de04a50d88602cd8c6bc745962' into gingerbread

* commit '468c82e4be0630de04a50d88602cd8c6bc745962':
Skip hostname verification when using insecure factory
756088482fb102f0c728151553210dca254b575f 14-Jul-2010 Steve Howard <showard@google.com> am 57de95a5: am 05940b2c: Merge "Download manager support for file URIs + last modified time" into gingerbread

Merge commit '57de95a51ff5d98fcad0a7735c496be5f647d66f'

* commit '57de95a51ff5d98fcad0a7735c496be5f647d66f':
Download manager support for file URIs + last modified time
57de95a51ff5d98fcad0a7735c496be5f647d66f 14-Jul-2010 Steve Howard <showard@google.com> am 05940b2c: Merge "Download manager support for file URIs + last modified time" into gingerbread

Merge commit '05940b2c04041d6b3b8d222f4acfd12faeeb6c9c' into gingerbread-plus-aosp

* commit '05940b2c04041d6b3b8d222f4acfd12faeeb6c9c':
Download manager support for file URIs + last modified time
26dd7b3bb381ba06ce3a7eb17205e54fdd7becfc 14-Jul-2010 Robert Greenwalt <robdroid@android.com> Merge "Pass network properties to ConnectivityService."
2986f858ae6c6cc8a84614083661d1a2e2108aee 16-Jun-2010 Andreas Sandblad <andreas.sandblad@sonyericsson.com> Added method getPreferredHttpHost

Added method for returning preferred proxy which takes both
localhost and Wi-Fi into account. This is a convenient method
to clients which only wants to set a correct proxy and don't
want to build in dependency to if Wi-Fi is active or not.
Currently no Wi-Fi proxy is supported by the system, but once
added, this method could return a suitable proxy for Wi-Fi.

Change-Id: I8c9c2879351fd25a20ea82a2cb000f226248c357
roxy.java
c692e8c4da1c5e481ec8564839d47576e643f50c 13-Jul-2010 Henrik Baard <henrik.baard@sonyericsson.com> Make HTTP Header class handle multiple cache-control fields.

The HTTP specification states the following about the fields:
Multiple message-header fields with the same field-name MAY be present
in a message if and only if the entire field-value for that header field
is defined as a comma-separated list [i.e., #(values)]. It MUST be
possible to combine the multiple header fields into one "field-name:
field-value" pair, without changing the semantics of the message, by
appending each subsequent field-value to the first, each separated by a
comma. The order in which header fields with the same field-name are
received is therefore significant to the interpretation of the combined
field value, and thus a proxy MUST NOT change the order of these field
values when a message is forwarded.

Change-Id: I1a6fe5cc8f541f8e80d559641d270d09eac9d85c
ttp/Headers.java
adcb697826753391f02f6b3bd35b4edfb3032ad1 13-Jul-2010 Steve Howard <showard@google.com> Download manager support for file URIs + last modified time

First, in the download manager public API, I'm changing
COLUMN_REQUESTED_TIMESTAMP to COLUMN_LAST_MODIFIED_TIMESTAMP, a field
that already exists in the download manager. Upon inspection of
existing users of this field, it looks like there are some good use
cases -- for instance, looking at when a download completed. And if
I'm exposing that timestamp, there's no need to also expose the
requested timestamp.

Second, this change includes support for file URI destinations:

* add DESTINATION_FILE_URI for use by the DownloadManager wrapper
* make DownloadManager use it appropriately

The backend support is in a separate change (since it's in a separate
project).

Also fixing a bug with file URI construction when DownloadManager
fills in COLUMN_LOCAL_URI.

Change-Id: I5bb93a222cd23215c2a03ed9f68d7f140454f7f2
ownloadManager.java
47f69fe2999e46004f2f2463b70d38de9ff7079a 16-Jun-2010 Robert Greenwalt <robdroid@android.com> Pass network properties to ConnectivityService.

Used as a bag to hold ipaddr, gateway, dns, proxy info.
addr's are InetAddresses for v4/v6 use. Cleaning up some old v4-only code

bug:2655015
Change-Id: I7ac886fe5c519e8bab42f49cd82a5189d9c9ab59
obileDataStateTracker.java
etworkProperties.aidl
etworkProperties.java
etworkStateTracker.java
etworkUtils.java
roxyProperties.java
4c14a0f13fb9f5d796b505991e0178b60efbaccf 13-Jul-2010 Steve Howard <showard@google.com> am 47b46648: am b8d890eb: Merge "Initial implementation of the download manager public API." into gingerbread

Merge commit '47b46648b5a9b8c518b96db37618fc49c5e5f2d1'

* commit '47b46648b5a9b8c518b96db37618fc49c5e5f2d1':
Initial implementation of the download manager public API.
47b46648b5a9b8c518b96db37618fc49c5e5f2d1 13-Jul-2010 Steve Howard <showard@google.com> am b8d890eb: Merge "Initial implementation of the download manager public API." into gingerbread

Merge commit 'b8d890ebc1923d98d19d24f396442c91eb766b16' into gingerbread-plus-aosp

* commit 'b8d890ebc1923d98d19d24f396442c91eb766b16':
Initial implementation of the download manager public API.
a2709360665f77ed8bebccb2df86f08e8c83a701 03-Jul-2010 Steve Howard <showard@google.com> Initial implementation of the download manager public API.

The implementation is in android.net.DownloadManager, which is
obtained through Context.getSystemService(). Right now this class
acts as a simple wrapper on top of the existing DownloadProvider,
exposing a simple interface to a subset of DownloadProvider's
functionality. There are several TODOs for features that require
changes to the underlying download manager implementation.

Change-Id: I2f26e51b60b6e82af8478ac7ccd895667df095b6
ownloadManager.java
df27c0c26209fe04de332497beafcafc1fbaad2b 13-Jul-2010 Andrew Stadler <stadler@android.com> Skip hostname verification when using insecure factory

If the factory was obtained by calling getInsecure(), calls to
createSocket() should skip hostname verification (along with all of the
other skipped safety checks.)

This change slightly relaxes the too-strict checking that was introduced
in change 7fc93c36ae235115727296780dbc35101622bbd4.

Bug: 2834174
Change-Id: Iab7ef861ad0ca727f82ee8cdb78b89b9e835740d
SLCertificateSocketFactory.java
9ae3f66f14f69f5cf11b56a7b1eb9381546f9bdd 01-Jul-2010 Doug Zongker <dougz@android.com> am 6db0ef09: am 24c737cc: am d581484e: Merge "Verify hostname where possible, and clarify where not." into froyo

Merge commit '6db0ef09c4a8b7c1842fc08d37c62692f4f91ebb'

* commit '6db0ef09c4a8b7c1842fc08d37c62692f4f91ebb':
Verify hostname where possible, and clarify where not.
6db0ef09c4a8b7c1842fc08d37c62692f4f91ebb 01-Jul-2010 Doug Zongker <dougz@android.com> am 24c737cc: am d581484e: Merge "Verify hostname where possible, and clarify where not." into froyo

Merge commit '24c737ccdd64475178d53677f90a300fcfbab79f' into gingerbread-plus-aosp

* commit '24c737ccdd64475178d53677f90a300fcfbab79f':
Verify hostname where possible, and clarify where not.
24c737ccdd64475178d53677f90a300fcfbab79f 30-Jun-2010 Doug Zongker <dougz@android.com> am d581484e: Merge "Verify hostname where possible, and clarify where not." into froyo

Merge commit 'd581484ef8fac80c15ebf652e66f918374df5109' into gingerbread

* commit 'd581484ef8fac80c15ebf652e66f918374df5109':
Verify hostname where possible, and clarify where not.
7fc93c36ae235115727296780dbc35101622bbd4 30-Jun-2010 Dan Egnor <egnor@google.com> Verify hostname where possible, and clarify where not.

Bug: 2807409
Change-Id: I6f6a6b22a48149d9f1f45ff8f53103b25706ecc0
SLCertificateSocketFactory.java
14f2ef4c9da27a3d58d65dc9f684c5f764ee279a 15-Jun-2010 Robert Greenwalt <robdroid@android.com> Move the net transition wakelock to ConnService.

When the default network goes down we lose the wake-on-incoming-data capability
until the new net is brought up and apps rebuild their connections. We fixed this
in Wifi, but it's a general connectivity issue, not a wifi issue so moving the
mechanism to connecitivty so other networks can use it.

bug:2734419
Change-Id: I39b5d825eb6b548bd9bb8f179b89254f4db53147
onnectivityManager.java
ConnectivityManager.aidl
etworkStateTracker.java
d649c12815bcf944b2c97371f3f60716a42a1557 10-Jun-2010 Irfan Sheriff <isheriff@google.com> Make NetworkStateTracker an interface

As part of the WifiStateTracker cleanup, need
to have NetworkStateTracker as an interface.

Change-Id: I2ac48d7e4c7274ac4df40bc3b8591b182956a936
obileDataStateTracker.java
etworkInfo.java
etworkStateTracker.java
9396f6e0698541f6c9b71209ce9ece14cc2414a4 10-Jun-2010 Robert Greenwalt <robdroid@android.com> Merge "Clean up APN notifications."
02648a4b8422733ed401f07edf8e426318bb2f8d 18-May-2010 Robert Greenwalt <robdroid@android.com> Clean up APN notifications.

Add APNType info to notifications so you can tell what's happening. Now, even if a new APN
shares a connection with an already-connected-to- apn type, the new type will get all
the connecting and connected messages on connect and disconnecting/disconnected on disconnect
even though the shared connection remains connected.

Cleaning out the hacks MobileDataStateTracker needed to deal with the old situation.
bug:2226092

Change-Id: Iddd7421d6b91cda7c8405f9c3d5404ac04ef8e42
obileDataStateTracker.java
etworkStateTracker.java
e4031a3780ad3560d540e87e543a316b0b50a945 10-Jun-2010 Jean-Baptiste Queru <jbq@google.com> am 030b0ebe: merge from froyo-plus-aosp
4bd6940c576a1bbf47e52607e7c06a1cb7a476dc 08-Jun-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: Id2305d345a6cc248e08c0bdc6f3c8d999cc1d861
e6c2b8d6bd19ea825e3f4b663d771f831ea6fe66 08-Jun-2010 Jean-Baptiste Queru <jbq@google.com> Merge "Fixed problem with proxy server sometimes responds with 400 Bad Request when trying to connect to a site using https."
d81689aefcf57cfb692b73161b1a00511a90ee1e 04-Jun-2010 Alon Albert <aalbert@google.com> Add support for logging curl commands for binary POST data

Change-Id: Ibf55b95c2ae11681b18b20ba5643057ea0083f7f
ttp/AndroidHttpClient.java
381b55863efcd65ed43d66924beae550c18d8930 13-May-2010 The Android Open Source Project <initial-contribution@android.com> am 7cd6ca9b: am d6e24ca2: am 4adacd23: merge from open-source master
4adacd23d4c91569b16fe50419f1a91f68d805bd 12-May-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: If6730b50627b2231bd345e594d8d30a37557849e
6b385b66379b866c73d653e517de35ce313547c1 11-May-2010 Keith Ito <kito@google.com> am a52c85da: am 8528fcb1: am a8d8cb12: am be65399b: Merge "Fix for bug 2672749: StringIndexOutOfBoundsException in Uri.getQueryParameter" into froyo
0a5174a6e947d5cbeb8846a1273a90b6de065cbf 21-Apr-2010 Naveen Kalla <nkalla@codeaurora.org> Add support for EVDO Rev B

Change-Id: I8588e8b342c51f4b79bced8ef8fe60d57f07aefa
obileDataStateTracker.java
9114a8bb8b241bb8d3be307b29e64ea64ab27901 11-May-2010 Keith Ito <kito@google.com> Fix for bug 2672749: StringIndexOutOfBoundsException in Uri.getQueryParameter

Change-Id: I10b02306478d9c595dbcae0767b44c403d50e24a
ri.java
e103355d9332e2fab9d5c408e824ac8ab3b915a7 05-May-2010 Brian Carlstrom <bdc@google.com> Remove explicit SSLSocket.startHandshake

When dalvik-dev merges to master, startHandshake will imply that
the caller wants a fully synchronous handshake instead of using
handshake cutthrough. This removes an unnecessary startHandshake
from the CertificateChainValidator.

core/java/android/net/http/CertificateChainValidator.java

Change-Id: Ie28abd961a06b28fa780d62b0063371ef4dc1eec
ttp/CertificateChainValidator.java
6d3564e7d62dcafa6b404748bb98d8b45de794d3 04-May-2010 Paul Westbrook <pwestbro@google.com> Fix Gmail unit test

Fix a NPE where, while running the unit tests, a download
is not found

Change-Id: I7c407112e5cfe7c39ceace25c48c6eba4f5dcfbe
ownloads.java
6ead8f6771fdc80d3ac67e174066b674f688b2d6 24-Apr-2010 Grace Kloba <klobag@google.com> Restrict the range request to the servers claiming
that they accept ranges. This may be too restrict as
the spec says the server MAY set this in the response
header. But this is the last minute change made in
https://android-git.corp.google.com/g/#change,49444
I think it is safer to be conservative.

Fix http://b/issue?id=2616477
ttp/Request.java
a6ece18d95a35acc4fb3f9648403ce42d0d6b2d7 22-Apr-2010 Grace Kloba <klobag@google.com> Merge "Added the subset of partial content support so that we can continue the interrupted request to support streaming the content even with a brief disconnection." into froyo
52e41583f58132ae109c632b51f8419c4c2225d6 22-Apr-2010 Grace Kloba <klobag@google.com> Added the subset of partial content support so that
we can continue the interrupted request to support
streaming the content even with a brief disconnection.

Note: we don't update the headers for partial content
as the headers we care should not be updated. See
a list in chromium/net/http/http_response_headers.cc.

We currently also don't support cache for partial content.

Fix http://b/issue?id=2616477
ttp/Request.java
bf7de397279519e0144ceb7264003bc2accbb092 22-Apr-2010 Robert Greenwalt <robdroid@android.com> Trim throttle logs.

Removing unwanted sntp logging and throttle logging.

bug:2614927
Change-Id: Ic0b1c3502ebbc1f04130d09d715591af6513f439
ntpClient.java
499a121c13672294fd691aea190b4d4560768665 15-Apr-2010 Robert Greenwalt <robdroid@android.com> Fix SntpClient to give accurate time info.

Old calc was off by 2x and was affected by the user-settable system clock. The error
came because it was calculating the offset between our clock and the NTP clock and the algebra
had two factors of the offset instead of the desired 1.

bug:2600010
Change-Id: I0856091d32b50e6909e4889fb98df819e0aeabbe
ntpClient.java
bc284a5f9f1e3f19ddd45cfb233f0d1775b612a7 09-Apr-2010 Jesse Wilson <jessewilson@google.com> Merge "Move the public method HttpDateTime.parse() into AndroidHttpClient." into froyo
7cfa90fee54f44831ac492891d1c123601c2a262 08-Apr-2010 Jesse Wilson <jessewilson@google.com> Move the public method HttpDateTime.parse() into AndroidHttpClient.

See bug http://b/2553589

Change-Id: Ide3399c7c63daf9c0b8c18669076f2f4d6e9a876
ttp/AndroidHttpClient.java
ttp/HttpDateTime.java
81aa0971d7a26ae16ed34fc7da97a55d97fb8e74 09-Apr-2010 Robert Greenwalt <robdroid@android.com> Make ThrottleService notice policy changes.

Added ContentObserver to watch relevant Secure Settings.
Also added new policy-change broadcast to let settings know.
Lastly reorged things a bit so that all of our broadcasts are sent at boot so the sticky ones
are populated.

bug:2576057
Change-Id: Ie11ffb057de9c801a5088612cd464ea062f3a666
hrottleManager.java
c9b6851af68bdc20c4903b16c344e9f116647219 08-Apr-2010 Irfan Sheriff <isheriff@google.com> Throttling framework addins

Add ThrottleManager in getSystemService
Add API for URL fetch

Bug: 2576057
Change-Id: Icd25c8b91ea4beea15c74e8ad7292ab48c962253
ThrottleManager.aidl
hrottleManager.java
5945579e4ed8fbe6dae6adaa4c222b321c2ec80b 08-Apr-2010 Dan Egnor <egnor@google.com> Merge "Change TrafficStats to a new JNI implementation." into froyo
9e696c29f06d45d2891e1d38fd8d9033a9e21bb9 01-Apr-2010 Robert Greenwalt <robdroid@android.com> Add service to monitor/control the flow of data.

bug:2576057
Change-Id: Ib343c7ee1d619c6978910d9ee597db195d5aa3b6
ThrottleManager.aidl
hrottleManager.java
2b4abcd0c7c4361af8ab6d5d7b073fb75ac6d219 08-Apr-2010 Dan Egnor <egnor@google.com> Change TrafficStats to a new JNI implementation.

Also change phone's ConnectionStateTrackers to use it directly,
rather than through the INetStat binder interface.

Bug: 2578938
Change-Id: I8858e2609cbec3be845a0ce5178cb03f67e01b41
rafficStats.java
9253446922d925f6a5453b60d539beed292921a7 31-Mar-2010 Patrick Scott <phanna@android.com> Use case insensitive matching.

Use the lowercase version of the protocol.

Bug: 2560217
Change-Id: Ibfadf4ba363968df9caf22c9ab36f666ee44d1db
ebAddress.java
f1cac90c7baafa48b47c5d178dd12a75ba89af0b 31-Mar-2010 Robert Greenwalt <robdroid@android.com> Fix HttpProxy.

A key bit of code was lost in change 38/25338/5 (2009/09/17 change
of RequestQueue.java) which caused us to not pick up proxy settings.
Putting it back.

bug:2364475
Change-Id: I1e79858f64d8e793a966ef8e6f7a0d3f2a02251f
ttp/RequestQueue.java
cf7958f916ccf4b547a7428a1102b2700d67c0b6 26-Mar-2010 Jean-Baptiste Queru <jbq@google.com> Hide download manager.

Not ready for public consumption yet.

Bug: 2544512
Change-Id: I4a5b3c5f6afbc911d31e24333c2898d0c36281a3
ownloads.java
3435485164552723d27b7ea0273b7c324d799108 25-Mar-2010 Jean-Baptiste Queru <jbq@google.com> Revert "Hide download manager."

This reverts commit aaaf1232177ca008818ddac13f5f98405b789ff2.
ownloads.java
aaaf1232177ca008818ddac13f5f98405b789ff2 25-Mar-2010 Jean-Baptiste Queru <jbq@google.com> Hide download manager.

Not ready for public consumption yet.

Bug: 2544512
Change-Id: I8be1a4aa24581c6d272b087439f3e22ef1fc29d2
ownloads.java
c76bfa5bb5e6e9afdae571e4b98d7f3dcc9a1669 24-Mar-2010 Steve Block <steveblock@google.com> Fixes synchronous XHR requests which require authentication to complete synchronously

Bug: 2540515
Change-Id: I58eebdf2db9388f66c75d86dc26b8055f513b038
ttp/RequestHandle.java
7f49b9e47416808d7ef5de77b4094fd83f50134d 24-Mar-2010 Leon Clarke <leonclarke@google.com> Merge "Fix for when flash loads cached crossdomain.xml files. Cache the x-permitted-cross-domain-policies header. http://b/issue?id=2519669"
de08008fcff0debd7d8f99d21d780f087fb2889f 23-Mar-2010 Jean-Baptiste Queru <jbq@google.com> Make DownloadBase public

It's the base class for some public classes, so it needs to be public
as well according to the CTS rules.

Bug: 2537352
Change-Id: Ie2f8141d56907e1d0f4a3a040204b7b14d1fd79a
ownloads.java
60708a75120c4469dc2683485301ff9ee3b022e0 23-Mar-2010 Leon Clarke <leonclarke@google.com> Fix for when flash loads cached crossdomain.xml files.
Cache the x-permitted-cross-domain-policies header.
http://b/issue?id=2519669
ttp/Headers.java
b4882ca26fbf55c385fbc2b37e1bab6a13ee963a 23-Mar-2010 Kenny Root <kroot@google.com> Merge "Advance encodedKeySearchIndex if encodedKey matches a suffix of a parameter."
5b494c1ca4c3cf0e0992c59fe34ae66c81e6dcce 12-Mar-2010 Ben Murdoch <benm@google.com> Add an API on the Java side to allow WebKit to pause the current load. This is used when the plugin is streaming data but it's
buffer is full. In that case, WebCore instructs the laoder to pause loading to give the plugin a chance to clear it's buffer and
continue.

Requires an external/webkit change.

Change-Id: Iec96a6325d92e979cbdc53289c2a20cad940ded2
ttp/Request.java
ttp/RequestHandle.java
e41c317348cfe23a78bfd97609c3489c6cc4a786 21-Mar-2010 Keith Ito <kito@google.com> Advance encodedKeySearchIndex if encodedKey matches a suffix of a parameter.

Bug: 2524610
Change-Id: I51bbf8248133b61825d2ae14afe175cb4d0413b8
ri.java
dba8cb76371960457e91b31fa396478f809a5a34 19-Mar-2010 Brian Carlstrom <bdc@google.com> b/2511635 Browser displays incorrect SSL cert information

Two more cases of "View certificate" problems like b/2511635

One problem is that if there are multiple resources downloaded for a
page. In that case the mCertificate shown ends up being from the last
loaded resource instead of the main resource of the page. The solution
is to only set the certificate if the LoadListener is the
mIsMainResourceLoader as well as the mIsMainPageLoader.

A larger problem was the fact that the EventHandler.certificate
interface method (in this case the LoadListener.certificate
implementation) once per https connection instead of once per request
as was documented. That meant if an https connection was reused (which
happens frequently on login pages such as
https://www.google.com/accounts which use the POST -> redirect -> GET
idiom to avoid POST data page refresh warnings) then later pages never
were associated with an SslCertificate.

The solution was to change EventHandler.certificate to be called once
per request, specifcally before the request. This means we no longer
call the certificate method in the handleSslErrorRequest case, which
is okay because it includes the SslCertificate within the SslError and
that is what the BrowserActivity expects.

Change-Id: Icbd9bd98c89db82762d1d06de85e1cde2470300d
ttp/Connection.java
ttp/EventHandler.java
ttp/HttpsConnection.java
61f1ce0ec0692f4184edef3334a26973ba65edd7 18-Mar-2010 Robert Greenwalt <robdroid@android.com> Fix bug in airplane mode.

If the phone comes up in airplane mode you and you turn it off,
you can currently end with both mobile and wifi turned on.

bug:2524413
Change-Id: I7a841c955be9038109d0b220070406a3fbd3e8e9
obileDataStateTracker.java
8214deb542392f48b6c3fdc377fdf976c0b17a32 12-Mar-2010 jsh <jsh@google.com> Add definitions for WiMAX and iDen network types.

b/2509185

Change-Id: Icf07ce857874e200712218713edbdbb47e646297
onnectivityManager.java
50f1c4b7093dd0e319ed16917446ed9f39f2d809 04-Mar-2010 Robert Greenwalt <robdroid@android.com> Resync with Telephony after losing Phone service.

Bug shows we lost contact with the phone service. We used to leave the notion of enabled alone
in this case, but that can lead to being out of sync (the mobile data connection may be
alive or come alive but if we think it is dead we ignore it). Changing our
notion of its enabled-ness to 'enabled' means we'll pay attention to its messages going forward,
and since after a reboot it starts enabled we'll actually be in sync.

bug:2323057
Change-Id: Ie080b50d764e6879e712507aceb68f585f12f94e
obileDataStateTracker.java
78a640af951377d9749d0dbfd027687cbb92dc72 11-Mar-2010 Robert Greenwalt <robdroid@android.com> Make HiPri work when already connected.

A recent change made the HiPri MobileDataStateTracker listen for notifications
about the default connection (which HiPri shadows). Local code was sending
itself a notification using the old HiPri badging instead of the new Default
badging and those notifications where therefore ignored.

Manifested itself on HiPri connections when we were already on 3g.

See change 42422 on master platform/frameworks/base for the change this is completing.

Change-Id: I375026048724d0035297287c61c6c2f58d4e0294
obileDataStateTracker.java
68da044d3a7bfe77fdc0f6c447963a6018d030ed 08-Mar-2010 Steve Block <steveblock@google.com> Merge "Updates WebAddress to ignore the colon after the host component of a URL if no port is specified"
2257440f4b261cfc3251a6fc0f3cbd1fa1e548b1 08-Mar-2010 Steve Block <steveblock@google.com> Updates WebAddress to ignore the colon after the host component of a URL if no port is specified

Currently, the regex used to extract the port matches ':' followed by 1 or more
digits. This means that when passed a malformed URL of type <host>:<path>, no
match is made for the port and the ':' is matched as part of the path. Since the
handling of the path adds a leading '/' where absent (see http://b/1011602),
this leads to the URL being converted to <host>/:<path>.

This change updates the port regex to match ':' followed by zero or more digits.
This means that the ':' is always matched, so it does not leak into the path
and the result is <host><path>. This matches the behavior of desktop browsers.

Bug: 2494876
Change-Id: I34b47c8187cf03aa7674c14cd6593de53dce3169
ebAddress.java
0dc59b00f28f4d5543cf31627eeec4e913ee0785 05-Mar-2010 Debajit Ghosh <debajit@google.com> switching from ro.secure to ro.debuggable for relaxing ssl cert check.

Conflicts:

core/java/android/net/SSLCertificateSocketFactory.java
SLCertificateSocketFactory.java
5a73506cdd466f2b96686ced3ff0f7ca224d1143 03-Mar-2010 Robert Greenwalt <robdroid@android.com> Add error reporting for Tethering.

Also make the usb interface configuration more robust so retries are possible.

Makes all Tethering errors recoverable - no harm letting them try again anyway. Worst case
is they need to reboot.
onnectivityManager.java
ConnectivityManager.aidl
ddb42a421fe110bfce8dab1cc241ca0fc1f5290e 03-Mar-2010 Brian Carlstrom <bdc@google.com> Merge "Fixing spelling of intiialization to initialization in comment"
a5987a510187749c32f0f68f8fc54e1334f91be6 02-Mar-2010 Brian Carlstrom <bdc@google.com> SslCertificate should clone Dates

To avoid external tampering with Dates withing SslCertificate by code
holding on to pointers to Dates used in the constructor or code
mutating values returned by the accessors, we now clone Dates taking
in as arguments and returned to callers.
ttp/SslCertificate.java
37254dcdcf9f9eee9c61e124d23f2cb7114adeda 02-Mar-2010 Brian Carlstrom <bdc@google.com> Fixing spelling of intiialization to initialization in comment
ttp/HttpsConnection.java
9147a0ed64917e82c3f70632bbc3a91895cc1d55 02-Mar-2010 Brian Carlstrom <bdc@google.com> SslCertificate should use Dates - fixing api for build

Also fixing missing @deprecated noticed when updating API
ttp/SslCertificate.java
445d8f159258708e084d578edaf468239d6cecc1 02-Mar-2010 Brian Carlstrom <bdc@google.com> SslCertificate should provide Date interface

While working on out openssl code, I found a Y2k bug that the dates
from invalidate certificates could be shown as 1909 instead of 2009.
The reason was because SslCertificate/BrowserActivity passed the
values around as Strings even though the started as Dates (from
X509Certificate) and were converted backed to Dates before
presentation by BrowserActivity's reformatCertificateDate.

SslCertificate now maintains date fields internally as Date objects
without converting them to Strings. The constructor and String
accessors, which are now @deprecated, now specify the format as an ISO
8601 date string which uses 4 digit years.

BrowserActivity now reformatCertificateDate is now simply
formatCertificateDate and no longer has to convert from String to Date
and back to String to get proper Locale formatting.

CTS SslCertificateTest also updated.
ttp/SslCertificate.java
0e350f020a5858dcf2b507a19b26c0ef69b1ec89 26-Feb-2010 Robert Greenwalt <robdroid@android.com> Fix hipri status notifications

MobileDataStateTracker was looking for "hipri" notifications, but it is really
just using the default apn.
obileDataStateTracker.java
2269d1572e5fcfb725ea55f5764d8c3280d69f6d 25-Feb-2010 Dianne Hackborn <hackbod@google.com> Re-arrange android-common so framework no longer links with it.

This is the framework part, moving classes around so the framework
no longer needs to link to android-common. Makes some APIs public,
others that didn't need to be public are private in the framework,
some small things are copied.
SLCertificateSocketFactory.java
ebAddress.java
ttp/AndroidHttpClient.java
ttp/CertificateChainValidator.java
ttp/HttpDateTime.java
c03fa5014912684367174ff3cce664deb29f5e0e 24-Feb-2010 Robert Greenwalt <robdroid@android.com> Add mobile data on/off switch.

bug:2251458
onnectivityManager.java
ConnectivityManager.aidl
ea4e597a87b51b8ec19798f3fdedf74a723d75d8 24-Feb-2010 Henrik Baard <henrik.baard@sonyericsson.com> Fixed problem with proxy server sometimes responds with 400 Bad Request when trying
to connect to a site using https.

The CONNECT to the server lacks the 'host' header which is mandatory according to the
specification. Some proxy servers are strictly following the specification and sends
back the 400 Bad Requst error code.
ttp/HttpsConnection.java
65ae29bd852ff468ad003af241d5177fe016c74a 18-Feb-2010 Robert Greenwalt <robdroid@android.com> Add USB RNDIS enable/disable control

Also adding interface configuration to the tethering machine.
Also fixing netd bug that didn't send up/down portion of iface config command.
nterfaceConfiguration.java
6a6ce74e5972f189004340af97c77aa7631478ee 17-Feb-2010 Robert Greenwalt <robdroid@android.com> Merge "Update Tethering."
2a091d7aa0c174986387e5d56bf97a87fe075bdb 12-Feb-2010 Robert Greenwalt <robdroid@android.com> Update Tethering.

Adds telephony support, async model, multiple tethered iface suport,
better notifications, device config.

bug:2413855
onnectivityManager.java
ConnectivityManager.aidl
e3460d7a01337e92be64c4dbe7fb847c772797fb 16-Feb-2010 Jean-Baptiste Queru <jbq@google.com> fix build

Change-Id: I08b7d09408530e8c107e2821af7a769fba1c7bd7
ownloads.java
9d4b57545300c6de1722094404ae09bf0f6be937 14-Feb-2010 Dan Egnor <egnor@google.com> Add getInsecure() that returns a persistently insecure SSLSocketFactory,
which Email needs for unbundling.

Bug: 2353593
SLCertificateSocketFactory.java
fa4039e4fc680920bc53528c4a76e09210f1dcd6 16-Feb-2010 Patrick Scott <phanna@android.com> Do not include the fragement identifier in the path.

Bug: 2435741
ebAddress.java
3af80dc6d937fb95cab544417e75f5aadc595690 16-Feb-2010 Jean-Baptiste Queru <jbq@google.com> Expose more Download Manager APIs.

This will allow apps to track download progress.

Change-Id: Id6b77c0fc01b4838fca45e2fe241b1ea08e65038
ownloads.java
e8cb5ab7c0e9f22ffcaee8de718c83aa01765f55 16-Feb-2010 Shimeng (Simon) Wang <swang@google.com> Merge "Enhance URL regular expression to match more Unicode chars."
b9dfb9b403e3e61cd97d4f9981c54c4e2229777d 29-Jan-2010 Paul Westbrook <pwestbro@google.com> Download Manager API to support Gmail

Adds APIs to the Download manager to handle downloads based on
opaque ids
ownloads.java
d85639afb62d995856b434635e55523c34b628bb 12-Feb-2010 Jean-Baptiste Queru <jbq@google.com> Merge "Public Download Manager API"
51c02dbf75fede9b2829af5b821f10e0bc2af124 11-Feb-2010 Shimeng (Simon) Wang <swang@google.com> Enhance URL regular expression to match more Unicode chars.

Enhance URL regular expression to match legal one byte Unicode characters in
Internationalized Resource Identifiers as detailed in RFC 3987. Specifically
two byte Unicode characters are not included. Not all things in RFC 3987 is
implemented, this is just an enhancement for recognizing more common used one
byte Unicode characters.

This change helps Browser address bar identify more valid URL without scheme
typed in, such as 현금영수증.kr

make-iana-tld-pattern.py is modified to contain only Top Level Domain
regular expression generation. Other parts of WEB_URL pattern are in
solely in Patters.java for better consistency and maintenance.
ebAddress.java
60586f2ec65d16d185767fce4311d3ed0e9112ac 09-Feb-2010 Dan Egnor <egnor@google.com> API CHANGE: Add SSLSessionCache public API to allow unbundled SSL session caching.

Generally clean up the associated SSLCertificateSocketFactory API as well,
change AndroidHttpClient to use this new thing, and make the android-common
library build SDK-clean (woo hoo).

Bug: 2362543
Bug: 2357311
SLCertificateSocketFactory.java
SLSessionCache.java
47f46981cc50f773c445a120da06ae3af866c05f 21-Jan-2010 Jean-Baptiste Queru <jbq@google.com> Public Download Manager API

Change-Id: Ie91e816620b367816572f83d85cfecc91d66c764
ownloads.java
5c19aeca3d41c6a5820dc05a51c38736d3583378 04-Feb-2010 Ken Shirriff <kens@google.com> API review: TrafficStats: rename Pkts to Packets

Rename getMobileTxPackets(), getMobileRxPackets(), getTotalTxPackets(),
getMobileRxPackets()

bug 2420318
rafficStats.java
d0e18ffb82b59d38aeaf0e552f48e734202719ab 26-Jan-2010 Robert Greenwalt <robdroid@android.com> First pass at USB Tethering.

bug:2281900
onnectivityManager.java
ConnectivityManager.aidl
c4e834dc47885c8dbd3a2911ce4b9fccde21c800 08-Jan-2010 Huahui Wu <hwu@google.com> Rebuild a cleaner certificates chain before validating it.

This change cleans the server certificates:
1. Use the end-entity certificate as found in the chain received from the server as the end-entity cert for the newly built chain.

2. Look at the last cert in the newly built chain, specifically it's "issuer" field. If there's a cert in the chain as received with this as the "subject", and this cert hasn't yet been moved into the newly built chain, move it there (as the new last cert). Repeat this step 2 until you can't continue (because there's no matching previously unused cert left).

3. If the last certificate in the new chain has expired (and it's not the end-entity cert), remember this fact, and remove it (so that we can try if we can validating the chain for a different root). If in this case it turns out that we still can't validate the chain, it's probably the cert expiry error that should be displayed.

This CL also cleans the redundant error detection code and reduces the error messages to two types, which are the only two make differences to the user:
a. SSL_IDMISMATCH for name mismatch,
b. SSL_UNTRUSTED for other reasons.
ttp/CertificateChainValidator.java
6505122dfe96322bdeac4210d313b3f043c6a29a 27-Jan-2010 Brian Carlstrom <bdc@google.com> Issue 1597: browser crash possibly related to invalid SSL certificate
ttp/SslCertificate.java
4d02d001ef6e06583e858e63e48d1aebf54ba28d 23-Jan-2010 San Mehat <san@google.com> NetworkManagementService: Introduce INetworkManagementEventObserver

Introduce a callback event observer which can be registered on the
INetworkManagementService instance to receive events from the service.

Signed-off-by: San Mehat <san@google.com>
NetworkManagementEventObserver.aidl
353ced79b49269151b056c4b06dc632801b59497 22-Jan-2010 San Mehat <san@google.com> android.net: Introduce @hidden parcelable InterfaceConfiguration class

This class is used to get/set interface configuration via the
new NetworkManagementService API

Signed-off-by: San Mehat <san@google.com>
nterfaceConfiguration.aidl
nterfaceConfiguration.java
1bc3c3775b7b2cbaec50cd377db437f284478de0 13-Jan-2010 Robert Greenwalt <robdroid@android.com> Fix Javadoc errors so the sdk can build.

I unhid some API in a previous install, triggering javadoc processing on
their buggy comments.

Fixing build.
onnectivityManager.java
c849cdf5cfde007ce591838c4e2b777fb4843c8d 08-Jan-2010 Robert Greenwalt <robdroid@android.com> Unhide some CM constants to support unbundling.

The MOBILE_MMS, MOBILE_SUPL, MOBILE_DUN and MOBILE_HIPRI net types used
by location, messaging, and vending needed to be exposed.

Bug: 2363272
Change-ID: I6d2361d3642064db619b283b9217512563eb3439
onnectivityManager.java
8f028a94fc533e75077485a7d11a04e4de820335 08-Jan-2010 Makoto Onuki <omakoto@google.com> Moved DomainNameChecker to android common.

- Moved DomainNameChecker from android.net.http to android common, and renamed to DomainNameValidator.
- Added a simplified version of DNParser, which DomainNameValidator uses instead of X509Name in order to extract Subject Name from a certificate.
- Added unit tests for DomainNameChecker and DNParser.

There's a suspicious comment in DomainNameChecker saying something like "X509Certificate fails to parse a certificate when a subject alt name begins with '*'". I think we should fix it if it's really the case -- otherwise certificates with the wildcard wouldn't work. I'll see if it's true after submitting this patch.
SLCertificateSocketFactory.java
ttp/CertificateChainValidator.java
ttp/DomainNameChecker.java
5aded76004408491dbaeb12e183359f9ecfe7412 05-Jan-2010 Grace Kloba <klobag@google.com> am 552346a7: am 106f9b24: Patch from Huahui Wu.

Merge commit '552346a743be7c8b10893f817238e92938866999'

* commit '552346a743be7c8b10893f817238e92938866999':
Patch from Huahui Wu.
552346a743be7c8b10893f817238e92938866999 05-Jan-2010 Grace Kloba <klobag@google.com> am 106f9b24: Patch from Huahui Wu.

Merge commit '106f9b244633171ab75dd98b9761b7137c1a4705' into eclair-mr2-plus-aosp

* commit '106f9b244633171ab75dd98b9761b7137c1a4705':
Patch from Huahui Wu.
106f9b244633171ab75dd98b9761b7137c1a4705 05-Jan-2010 Grace Kloba <klobag@google.com> Patch from Huahui Wu.

Fix http://b/issue?id=1908085
ttp/DomainNameChecker.java
f0108cda21bec61418b24aa6217406072780b5d5 22-Dec-2009 Tom Taylor <tomtaylor@google.com> resolved conflicts for merge of ad2fa35d to master

Change-Id: Ia4362cd48ac0689b91003943a4cd9660da72ff90
ad2fa35d888e0763bfef0fc060775bec5d169479 22-Dec-2009 Tom Taylor <tomtaylor@google.com> am d4a4729c: Update imports to android-common

Merge commit 'd4a4729c0cac582a2dcec7c8cfb316b81885a0f0' into eclair-mr2-plus-aosp

* commit 'd4a4729c0cac582a2dcec7c8cfb316b81885a0f0':
Update imports to android-common
d4a4729c0cac582a2dcec7c8cfb316b81885a0f0 21-Dec-2009 Tom Taylor <tomtaylor@google.com> Update imports to android-common

Several files were moved to android-common. Update all the references
to import those files from the new location.
etworkConnectivityListener.java
e143bc92b2dfa205ea6af80855132bf52e018688 14-Dec-2009 Paul Westbrook <pwestbro@google.com> resolved conflicts for merge of 15d3bb2c to master
15d3bb2ce6b3e48608148d56b2ba1555ad63dff8 14-Dec-2009 Paul Westbrook <pwestbro@google.com> am 7762d936: Unbundling work

Merge commit '7762d93621f508f4410fd37b5bbdfec0071b0420' into eclair-mr2-plus-aosp

* commit '7762d93621f508f4410fd37b5bbdfec0071b0420':
Unbundling work
7762d93621f508f4410fd37b5bbdfec0071b0420 11-Dec-2009 Paul Westbrook <pwestbro@google.com> Unbundling work

Moved AndroidHttpClient, Rfc822InputFilter, Rfc822Validator
NumberPicker, NumberPickerButton to android-common
---
ttp/AndroidHttpClient.java
8ea486788fe5e77111ab9d6e1834cc6e6a3edc76 10-Dec-2009 Ken Shirriff <kens@google.com> am 0e933c85: am f7d0b013: Add TrafficStats class to SDK.

Merge commit '0e933c853ad53037631e5bca5b4a46f056c1e538'

* commit '0e933c853ad53037631e5bca5b4a46f056c1e538':
Add TrafficStats class to SDK.
0e933c853ad53037631e5bca5b4a46f056c1e538 10-Dec-2009 Ken Shirriff <kens@google.com> am f7d0b013: Add TrafficStats class to SDK.

Merge commit 'f7d0b01387c10f93bf17981d45087810c80f0902' into eclair-mr2-plus-aosp

* commit 'f7d0b01387c10f93bf17981d45087810c80f0902':
Add TrafficStats class to SDK.
f7d0b01387c10f93bf17981d45087810c80f0902 08-Dec-2009 Ken Shirriff <kens@google.com> Add TrafficStats class to SDK.

This class (a rename of NetStat) provides network byte and packet statistics.
NetStat will be removed separately, to avoid breaking other packages when submitting.
rafficStats.java
6180977d11da01d05455e7b4cb93978fdf6b2d3e 08-Dec-2009 Grace Kloba <klobag@google.com> am 8657978a: am ddcea3d2: Expose onReceivedSslError() so that the WebView client can accept the error and continue.

Merge commit '8657978aabc7141869926a98a0da257255678dd4'

* commit '8657978aabc7141869926a98a0da257255678dd4':
Expose onReceivedSslError() so that the WebView client
8657978aabc7141869926a98a0da257255678dd4 07-Dec-2009 Grace Kloba <klobag@google.com> am ddcea3d2: Expose onReceivedSslError() so that the WebView client can accept the error and continue.

Merge commit 'ddcea3d21645bb3037703c84807dae077aae62ce' into eclair-mr2-plus-aosp

* commit 'ddcea3d21645bb3037703c84807dae077aae62ce':
Expose onReceivedSslError() so that the WebView client
ddcea3d21645bb3037703c84807dae077aae62ce 04-Dec-2009 Grace Kloba <klobag@google.com> Expose onReceivedSslError() so that the WebView client
can accept the error and continue.

Fix http://b/issue?id=2299152
ttp/SslError.java
5154ae7665743b114c71f90dcc577dc50c63b398 30-Oct-2009 Robert Greenwalt <robdroid@android.com> Cleanup ConnectivityServices network configuration

Don't instantiate objects not needed for the device.

bug: 2226064
obileDataStateTracker.java
478de466ce0504b9af639c3338b883893670a8e8 15-Nov-2009 Jean-Baptiste Queru <jbq@google.com> merge from eclair
9db3d07b9620b4269ab33f78604a36327e536ce1 13-Nov-2009 Jean-Baptiste Queru <jbq@google.com> eclair snapshot
onnectivityManager.java
ConnectivityManager.aidl
obileDataStateTracker.java
etworkInfo.java
etworkStateTracker.java
etworkUtils.java
ri.java
ebAddress.java
ttp/Connection.java
ttp/ConnectionThread.java
ttp/Request.java
ttp/RequestHandle.java
ttp/RequestQueue.java
70ece8d334485af47edfb5bf3049bef2cf5f4df6 26-Oct-2009 Brad Fitzpatrick <bradfitz@android.com> Speed up Uri.getQueryParameter by allocating less.

Sample hierarchial URL, from my ContactsProvider test case:

content://com.android.contacts/data?account_name=braddroid%40gmail.com&account_type=com.google.GAIA&caller_is_syncadapter=true

Without this patch: (fetching the "account_name" parameter)

10000 iters: 0.5293 ms average
10000 iters: 0.5119 ms average
10000 iters: 0.5158 ms average

With this patch, rewriting it to not allocate memory (no implicit
StringBuilder), but still no caching:

1) when it needs to decode something (i.e account_name above;
allocates memory)

50000 iters: 0.28724 ms average
50000 iters: 0.31774 ms average
50000 iters: 0.28764 ms average

2) when it doesn't need to decode (and thus allocate memory,
i.e. account_type above)

50000 iters: 0.0954 ms average
50000 iters: 0.09124 ms average
50000 iters: 0.09088 ms average
ri.java
94f3a36326ddecaa09787d795451b0a229fe111c 09-Oct-2009 Eric Fischer <enf@google.com> Merge branch 'eclair-plus-aosp' of ssh://android-git.corp.google.com:29418/platform/frameworks/base into eclair-mr2-plus-aosp
d5b090b26b740be890395887b27db8cb2186c3b8 09-Oct-2009 Mike Lockwood <lockwood@android.com> am 348b92bd: Merge change Iee227ace into eclair

Merge commit '348b92bd513087369ac682e29620d7829fa1381b' into eclair-mr2

* commit '348b92bd513087369ac682e29620d7829fa1381b':
GPS: Fix problem with SUPL when SUPL APN is already active.
a4f6c96f1acb4f0e7aaa233c2a5b884aaac2f573 09-Oct-2009 Mike Lockwood <lockwood@android.com> am 348b92bd: Merge change Iee227ace into eclair

Merge commit '348b92bd513087369ac682e29620d7829fa1381b' into eclair-plus-aosp

* commit '348b92bd513087369ac682e29620d7829fa1381b':
GPS: Fix problem with SUPL when SUPL APN is already active.
03d246779ea65fc2bd10d0b4f32620f45211133a 08-Oct-2009 Mike Lockwood <lockwood@android.com> GPS: Fix problem with SUPL when SUPL APN is already active.

Use ConnectivityManager.CONNECTIVITY_ACTION broadcast in LocationManagerService
to notify GPS when SUPL connection is ready instead of TelephonyIntents.ACTION_ANY_DATA_CONNECTION_STATE_CHANGED,
which is not sent in all cases.
Expand LocationProvider.updateNetworkState() to include NetworkInfo object.

Fixes bug b/2155661

Change-Id: Iee227ace7d536b36cf7973e3e6a8b7a621ce6565
Signed-off-by: Mike Lockwood <lockwood@android.com>
obileDataStateTracker.java
c0565fb88c8fff380f938ed6831893ad23dc330a 07-Oct-2009 Robert Greenwalt <robdroid@android.com> am 92b5caa4: Merge change Id8df149c into eclair

Merge commit '92b5caa4e21d48db6efeddba532d1546c6e686b1' into eclair-plus-aosp

* commit '92b5caa4e21d48db6efeddba532d1546c6e686b1':
Turn some logging back on in ConnectionManager
031e4ac7dd0405e16664d2ec5311d2e96221ce23 07-Oct-2009 Dianne Hackborn <hackbod@google.com> am 48e6725c: Merge change Iaca22686 into eclair

Merge commit '48e6725c828a8d420d43925b0c9a9a915a8c4e2f' into eclair-plus-aosp

* commit '48e6725c828a8d420d43925b0c9a9a915a8c4e2f':
Work on issue #2163789: Way too much logging
2a9b411d4ed60acbe089068c93850ecd049f57f2 07-Oct-2009 Robert Greenwalt <robdroid@android.com> am e8830120: am 92b5caa4: Merge change Id8df149c into eclair

Merge commit 'e8830120c8e416a26520dfbbd0e386e77255dbda' into eclair-mr2-plus-aosp

* commit 'e8830120c8e416a26520dfbbd0e386e77255dbda':
Turn some logging back on in ConnectionManager
e8830120c8e416a26520dfbbd0e386e77255dbda 07-Oct-2009 Robert Greenwalt <robdroid@android.com> am 92b5caa4: Merge change Id8df149c into eclair

Merge commit '92b5caa4e21d48db6efeddba532d1546c6e686b1' into eclair-mr2

* commit '92b5caa4e21d48db6efeddba532d1546c6e686b1':
Turn some logging back on in ConnectionManager
d8df149cfb82cf02cef7e04c05f229d7caf7fe90 06-Oct-2009 Robert Greenwalt <robdroid@android.com> Turn some logging back on in ConnectionManager

Trimmed a bunch of logging out, but turned it on so we get the critical stuff.

bug: 2168291
obileDataStateTracker.java
8e20e88ba664ff606cd7eb427dd05fd981355410 05-Oct-2009 Patrick Scott <phanna@android.com> Merge branch 'eclair-plus-aosp' of ssh://android-git.corp.google.com:29418/platform/frameworks/base into eclair-mr2-plus-aosp
492eb109ff704c0dfec447a88920657cb230b8d6 05-Oct-2009 Dianne Hackborn <hackbod@google.com> am 48e6725c: Merge change Iaca22686 into eclair

Merge commit '48e6725c828a8d420d43925b0c9a9a915a8c4e2f' into eclair-mr2

* commit '48e6725c828a8d420d43925b0c9a9a915a8c4e2f':
Work on issue #2163789: Way too much logging
bd0a81ff1c0e92e80e05e2f12bb1805c7d081e94 04-Oct-2009 Dianne Hackborn <hackbod@google.com> Work on issue #2163789: Way too much logging

Dr.No from mcleron.

Change-Id: Iaca2268684f83fe8757e64db0b0e047a19755311
obileDataStateTracker.java
86806ce11a89260147d7c2efa2c192b711d923db 01-Oct-2009 Patrick Scott <phanna@android.com> Process synchronous requests in the same RequestQueue.

Use a dedicated Connection to process a synchronous request using the main
RequestQueue and on the WebCore thread.

HttpConnection, HttpsConnection, Connection:
No need for ConnectionManager, just pass the proxy host to
HttpsConnection. In Connection.clearPipe, empty should be set to true if the
RequestFeeder does _not_ have a request for the host. I don't think that
broke anything but it is incorrect.
ConnectionThread:
Refactor the proxy selection into ConnectionManager.getConnection
RequestHandle:
Add a new constructor that takes a Connection argument. Add processRequest
to process a single request on that Connection.
RequestQueue:
Add determine host to select between the request's host and the proxy. Add
queueSynchronousRequest to make a new request that operates on a private
connection. Add SyncFeeder to handle RequestFeeder.requeueRequest if the
request fails.
Network: Use the new RequestQueue api to handle a synchronous request.

Bug: 1315832
ttp/Connection.java
ttp/ConnectionThread.java
ttp/HttpConnection.java
ttp/HttpsConnection.java
ttp/RequestHandle.java
ttp/RequestQueue.java
1412308467116347e0443117b358c63da103774f 01-Oct-2009 Robert Greenwalt <robdroid@android.com> am a1323c77: Merge change Iaf08eabc into eclair

Merge commit 'a1323c77b961ae1b9cfaf5305e05780b07e88226' into eclair-plus-aosp

* commit 'a1323c77b961ae1b9cfaf5305e05780b07e88226':
Reduce the ConnectivityManager logging.
1ef95f9eed610897b46a00f51a7cd7944ef26e62 01-Oct-2009 Robert Greenwalt <robdroid@android.com> Reduce the ConnectivityManager logging.

Same great info, just fewer chars.
etworkStateTracker.java
fc6cd59650d9f3f649dcdf5f5e23b3e089d7d5b9 26-Sep-2009 Robert Greenwalt <robdroid@android.com> am a16ca5ec: Merge change 27141 into eclair

Merge commit 'a16ca5ec4ba936ed2731a74650b6882d0ffde404' into eclair-plus-aosp

* commit 'a16ca5ec4ba936ed2731a74650b6882d0ffde404':
Fix ConnectivityManager's handling of apn switch.
d1aca6aa73b0f1e22229829db89b1f3513a16aa8 25-Sep-2009 Robert Greenwalt <robdroid@android.com> Fix ConnectivityManager's handling of apn switch.

It was clearing the interfacename when it was needed later in the process - the prevented us
from clearing the route to private dns servers and clearing the flag that this was set.
Consequently future uses would not set the private dns servers (since it thought they were already
set) and our lookups would fail.

bug: 2146929
obileDataStateTracker.java
etworkStateTracker.java
4d5cd955423a6b0cb54c9e3030f4415db3e0b1e0 24-Sep-2009 Lorenzo Colitti <lorenzo@google.com> am 7c5c6076: Merge change 26640 into eclair

Merge commit '7c5c6076ea5d02aabbb449b1341ec44d184d1316' into eclair-plus-aosp

* commit '7c5c6076ea5d02aabbb449b1341ec44d184d1316':
Support IPv6 literal URLs, e.g., http://[2001:4860:b004::68]/ as per RFC 3896
78cf04f6585a363a0c9650a3ddc66febe2c6cc80 23-Sep-2009 Lorenzo Colitti <lorenzo@google.com> Support IPv6 literal URLs, e.g., http://[2001:4860:b004::68]/ as per RFC 3896
section 3.2.2.

Change-Id: I6166753fac2c141440fc3c860ab644b29b188d76
ebAddress.java
65540522d748b62a93a8b091072c7b3d51886d3a 17-Sep-2009 Patrick Scott <phanna@android.com> am 3239de8c: Merge change 25338 into eclair

Merge commit '3239de8cd78b3fa292d85ee7658a9871cdfbc79b' into eclair-plus-aosp

* commit '3239de8cd78b3fa292d85ee7658a9871cdfbc79b':
Remove the network connection logic from RequestQueue.
aaebc86386c8bb44c25dd06fe573e52ef6b60fbe 16-Sep-2009 Patrick Scott <phanna@android.com> Remove the network connection logic from RequestQueue.

This doesn't always work right and is causing some problems if the network comes
back up without sending the broadcast.
ttp/Connection.java
ttp/RequestQueue.java
e525eef4b8e284ac8eb023bd0df4eeed37916d4b 17-Sep-2009 Jean-Baptiste Queru <jbq@google.com> merge from open-source master
fc01794f33057862a361a0d0113630c58befc21b 12-Jul-2009 Kenny Root <kenny@the-b.org> Make Uri.parseUserPart, parseHost, and parsePort symmetric

Currently parseUserPart uses the encoded authority to split the URI
into user and non-user parts, but the parseHost and parsePort uses
the decoded URI to split the URI into non-host, host, and port parts.
This gives unexpected results when %40 ('@') and %3a (':') is used
in a URI:

Uri test = Uri.parse("http://bob%40lee%3ajr@example.com:42/");
test.getUserInfo() => "bob@lee:jr"
test.getHost() => "lee:jr@example.com" (should be "example.com")
test.getPort() => -1 (should be 42)
ri.java
8206ff30c23c76851bebc8d72a65e65b0f7f9a29 11-Sep-2009 Robert Greenwalt <robdroid@android.com> Fix for multi-apn MMS access.

Mark cellular variants with the same availability, regardless of which are currently in use.
Availability just means the radio is enabled and sees the network, but has no guarantees that
we could connect to an APN if requested.

Fix the requestRouteToHost logic to support apn switches without WIFI.

bug:2093841
obileDataStateTracker.java
etworkInfo.java
be8e36e32b9cb2bb37e28e4c0d414ee0e46c84a2 04-Sep-2009 Jean-Baptiste Queru <jbq@google.com> merge from donut
72b1f379d5c97c8ff31d2201e78215af777d6bda 31-Aug-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
SLCertificateSocketFactory.java
ttp/CertificateChainValidator.java
0badd0b700ed618dac421cb6cde4654b51acb3a4 25-Aug-2009 Robert Greenwalt <robdroid@android.com> Note net availability even when apn not enabled

Fixes a problem where mms apn was on when we lost the network (airplane mode) but mms was
off when airplane mode was turned off so it kept thinking we didn't have access and
future mms always failed.

bug: 2075145
obileDataStateTracker.java
ec9fe4672a46eb928ab710d8e3caf2ce046100d4 21-Aug-2009 Robert Greenwalt <robdroid@android.com> Fix a race condition for data change notification

We could sometimes not be told about network state changes breaking subsequent mms access.
Turning on more logging too.

bug: 2069106
obileDataStateTracker.java
etworkStateTracker.java
ebe66345e7099ca6fc95e8aa4d31a5b5cbbd6224 14-Aug-2009 Li Zhe <jqc837@motorola.com> Framework changes to support HSDPA/HSUPA/HSPA
HSDPA: High-Speed Downlink Packet Access
HSUPA: High-Speend Uplink Packet Access
HSPA: High-Speed Packet Access

Add support for HSDPA/HSUPA/HSPA:
1) extend TelephonyManager.NETWORK_TYPE for HSDPA/HSUPA/HSPA
2) extend ServiceState.RADIO_TECHNOLOGY for HSDPA/HSUPA/HSPA
3) set radioTechnology into ServiceState in GsmServiceStateTracker
4) change the implementation of TelephonyManager.getNetworkType to
solve the competition timing issue between the time of setting
system property and the time of receiving notification through
PhoneStateListener
4.1) add a getNetworkType interface in ITelephony.aidl
5) add icons resources for HSDPA/HSUPA/HSPA
6) make use of HSDPA/HSUPA/HSPA icons in StatusBarPolicy
obileDataStateTracker.java
5dc0c00258f90a546efcfdeca87f8e57c5a07a54 21-Aug-2009 Bob Lee <crazybob@google.com> am e97c2006: Updated Browser and MCS to use shared default trust manager instead of initializing their own copies.

Merge commit 'e97c2006bf7c391c933307e520a392e532aa5d6a' into eclair

* commit 'e97c2006bf7c391c933307e520a392e532aa5d6a':
Updated Browser and MCS to use shared default trust manager instead of initializing their own copies.
e97c2006bf7c391c933307e520a392e532aa5d6a 21-Aug-2009 Bob Lee <crazybob@google.com> Updated Browser and MCS to use shared default trust manager instead of initializing their own copies.
SLCertificateSocketFactory.java
ttp/CertificateChainValidator.java
a64bf834ffa677405af1c87c9f53eed0cd3853ce 20-Aug-2009 Robert Greenwalt <robdroid@android.com> Fix various issues found when testing Mms.

Fix some race conditions (check isTeardownRequested).
Fix the passing of mInterfaceName to subtypes (mms, etc).
Fix the generation of CONNECTED message to already active subtypes.
Fix the enabling of Data in DataConnectionTracker.

bug: 2065037
obileDataStateTracker.java
60a45aff31541f65d39e4c4e7824cd1ea5a1e84c 19-Aug-2009 Robert Greenwalt <robdroid@android.com> Fix Wifi+Cell on boot after wifi in use.

The gist of it is: Ignore reconnect fail of default APN during boot.

A long path:
1 If wifi is started at boot it starts fast - before the PhoneService is available.
2 Wifi starts by failing - you get DISCONNECTED/Scanning events so CM starts the other default network (mobile).
3 Trying to restart mobile fails because the phone service isn't up yet.
4 The failure is noted and the net is marked as not-enabled.
5 The phone trys to auto-start the mobile network and succeeds, sending state-changed events
6 The CM ignores the state-changed events because the net isn't enabled (see 4).

The long term fix is to remove two-way state tracking from the MobileDataStateTracker and instead just consume the state fed to us in state-change events.
Near term fix is to not mark the default net disabled when we have failure (step 4) if the phone service isn't available.
obileDataStateTracker.java
c85675d0ef75ad968935ff8af9a3ed8bee29c511 18-Aug-2009 Robert Greenwalt <robdroid@android.com> Fix for Mms without wifi.

Need to change MOBILE_MMS network into connnected state if the current
apn can already support the traffic.

Bug:2058212
Bug:2055065
Bug:2046882
obileDataStateTracker.java
25a5d3db3ff06b9952395832308bc3b48913c4ee 14-Aug-2009 Robert Greenwalt <robdroid@android.com> Fix CDMA to startup/shutdown based on apn en/disab

Fixes MMS during wifi.
Also fixes CDMA for ConnectivityManager change.
obileDataStateTracker.java
42acef37339afe6ac608c842f1637870ee9c4f6c 13-Aug-2009 Robert Greenwalt <robdroid@android.com> Add net type to mobile for mobile-required traffic

This also refactors ConnectivityService a bit towards supporting multiple simultaneous connections by making each a seem like a seperate Network with it's own stateTracker, etc.
Also adds tracking of process death to clean orphaned startUsingNetworkFeature features.
onnectivityManager.java
ConnectivityManager.aidl
obileDataStateTracker.java
etworkStateTracker.java
ac1e59d887651220f5367cc7fa4207b34eab774d 11-Aug-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
ttp/EventHandler.java
ttp/HttpsConnection.java
ttp/LoggingEventHandler.java
f6d1a5528ee626487c78f17501d61e61bbe26b10 03-Aug-2009 Grace Kloba <klobag@google.com> resolved conflicts for merge of b8802b21 to master
4c8db8a4feb2afbd9d5f94ff09c7167ca34076c4 31-Jul-2009 Grace Kloba <klobag@google.com> Fix #2025900. If a https request is canceled while openConnection is called
and a ssl error happened, the http thread can be blocked for up to 10 min.
Added code to detect this case and unlock the thread.
ttp/EventHandler.java
ttp/HttpsConnection.java
ttp/LoggingEventHandler.java
61e4248f8f6ae8a8f40550cc0800e5190cd1dc09 29-Jul-2009 Jean-Baptiste Queru <jbq@google.com> merge from donut
a8675f67e33bc7337d148358783b0fd138b501ff 29-Jul-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
ri.java
2af1b3db3d4f687d008db74b150f149e956b4bc6 26-Jul-2009 Jean-Baptiste Queru <jbq@google.com> Merge korg/donut into korg/master
a16de7b03a1b2fe9e5eca55ce677c121e97079f8 25-Jul-2009 Grace Kloba <klobag@google.com> Fix 1993520 where page cycler fails.

Recover the old logic before removing network management. Remove the empty
list for the host after consuming the last entry. As we should never have
an empty list, it is safe to call removeFirst without checking whether it is
empty.

Currently, in getRequest() or removeFrist(), if we found an empty list, we
remove it. Then we return null for the request even there are requests in
another list. So the page stops loading until the next getRequest() or
removeFirst() is called. If they are not called, those requests will never
be accessed.
ttp/RequestQueue.java
cf4550c3198d6b3d92cdc52707fe70d7cc0caa9f 21-Jul-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
ttp/RequestHandle.java
c319c69b1228f5eee2f9d71a71ad021f3d8ba82b 20-Jul-2009 Patrick Scott <phanna@android.com> Allow 205 and 305 to have content.

205 is interpreted by Safari to be like 200 and show the given content. Change
canHaveResponseBody to allow 205 to have a body.

305 is a very rare server response indicating to the client to use the given
Location header as a proxy and reissue the original request. Curl doesn't do
anything with this header and neither does internal networking code. For now,
we will just allow the response body to propagate to webcore.
ttp/Request.java
4a06b68c82fc011d8cd780ed7f0393d1d0617a07 20-Jul-2009 Patrick Scott <phanna@android.com> Correctly set the thread priority for ConnectionThreads.

This does not change the actual thread priority but if the default priority
changes, this will have the desired result of being slightly less favorable.

I tried messing with the priorities to see if a higher or lower priority helped
but it seemed to do more harm than good. It might be worth more investigation to
find out where all the thread time is being spent so we can determine the
correct priority.
ttp/ConnectionThread.java
fe4fec7c66b0d956f008ead0fd899b588cfacb5d 14-Jul-2009 Patrick Scott <phanna@android.com> Remove all our old high priority knowledge since WebCore will manage it.

Also removed an unused variable in RequestQueue.java.
ttp/Request.java
ttp/RequestHandle.java
ttp/RequestQueue.java
38a34b2c75b0d44fa463c63563ce3ba85bb817f1 12-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 2d791055: Merge change 6820 into donut

Merge commit '2d7910555ab6b376e8cd1646db6c329c1cd1adb7'

* commit '2d7910555ab6b376e8cd1646db6c329c1cd1adb7':
Fixed NPE bugs in Uri. Fixes internal issue #1724719.
9cf012a9fcac9b651dd0799240a96d454de49ba2 11-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 6823

* changes:
wifi: Keep the WLAN network interface up whenever wifi is enabled.
5621f0d928dc738cb9bde78f1c23eaf916b8c931 10-Jul-2009 Bob Lee <crazybob@google.com> Fixed NPE bugs in Uri. Fixes internal issue #1724719.
Modified getQueryParameter() to use the encoded query string. Fixes internal issue #1749094.
ri.java
0900f3657664d9046e6723825fd32b244eef2b6c 10-Jul-2009 Mike Lockwood <lockwood@android.com> wifi: Keep the WLAN network interface up whenever wifi is enabled.

We now only bring it down briefly and bring it back up again when
we want to reset the interface.

Signed-off-by: Mike Lockwood <lockwood@android.com>
etworkUtils.java
c8e852da32cd91b708ee53d69fbe9bba2e08ffec 10-Jul-2009 Bob Lee <crazybob@google.com> resolved conflicts for merge of ad94a983 to master
b8b8f044f4735b08f5a422637cfdcef43ac1a824 10-Jul-2009 Bob Lee <crazybob@google.com> Uri.EMPTY.toString() was returning null due to an initialization order bug. Fixes internal issue #1957015.
ri.java
f76035f35200d58dd72d8f019d4c1219300b2942 10-Jun-2009 Simon Schoar <schoar@googlemail.com> Fixed typo, RFC3296 is for LDAP, RFC2396 is for URI
ri.java
340a1b21de7d5f650b15fab2bcda355ae9776f90 03-Jul-2009 Grace Kloba <klobag@google.com> Fix the performance collection in the http thread. A connection can be reused. Change the thread time collection based on per request.
ttp/ConnectionThread.java
ttp/RequestQueue.java
e10809d02cd16bb31e1e9b094c612094af08757c 01-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 7a573862: Merge change 5720 into donut

Merge commit '7a5738624fa78e328b5f36c687c20b9cf0eb5a60'

* commit '7a5738624fa78e328b5f36c687c20b9cf0eb5a60':
Fix #1876303. Even rfc2616 4.2 says that "Field names are case-insensitive.", servers including Google internal uses case-sensitive checking for "Cookie". So change it.
cd15475bc3c096a0d17e76c6917ea253e54f7641 30-Jun-2009 Mike Lockwood <lockwood@android.com> Revert "ConnectivityManager: Add support for bringing up the default APN."

This reverts commit a84b6faffbe7ef5981f3202be0f68a8b44d61a76.

I will work on a better mechanism for bringing up the default APN
when Wifi is enabled.
obileDataStateTracker.java
65c0fc4fc445374c7f6e2106e6ed3d6191e45cae 30-Jun-2009 Grace Kloba <klobag@google.com> Fix #1876303. Even rfc2616 4.2 says that "Field names are case-insensitive.", servers including Google internal uses case-sensitive checking for "Cookie". So change it.
ttp/RequestHandle.java
a84b6faffbe7ef5981f3202be0f68a8b44d61a76 24-Jun-2009 Mike Lockwood <lockwood@android.com> ConnectivityManager: Add support for bringing up the default APN.

The default APN can now be requested by calling
ConnectivityManager.startUsingNetworkFeature(Phone.FEATURE_ENABLE_DEFAULT).

Signed-off-by: Mike Lockwood <lockwood@android.com>
obileDataStateTracker.java
7cd64bd7e7425408f0dc7e1212e81950a7dab217 10-Jun-2009 Grace Kloba <klobag@google.com> Fix #1907439. If there is uncommitted content when gzipped content got EOFException, we need to commit them.
ttp/Request.java
8aa393b03f6d1f25313c658334e9b86a86a6f61f 10-Jun-2009 Simon Schoar <schoar@googlemail.com> Fixed typo, RFC3296 is for LDAP, RFC2396 is for URI
ri.java
843ef36f7b96cc19ea7d2996b7c8661b41ec3452 20-May-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
obileDataStateTracker.java
roxy.java
ttp/CertificateValidatorCache.java
b5b33c734ab2a178f07c667a8c1daf8beab837aa 15-May-2009 Patrick Scott <phanna@android.com> Order high priority requests in the same order they are requested.

Use a class to hold the high priority requests and low priority requests. Each
request is appended to the correct list in the order received. If a request
needs to be requeued after an error, it is placed at the head of the
corresponding list.
ttp/RequestQueue.java
67fd6d50af256265c8103d844212934f86079815 15-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 1c9a92fd: Merge change 1690 into donut

Merge commit '1c9a92fd9fbe192f24e53c26cddeab401cefb108'

* commit '1c9a92fd9fbe192f24e53c26cddeab401cefb108':
Rework some code so that it works the way it was supposed to work.
3537506c883cdf4f4b792590abb5a8acb937503a 14-May-2009 Marco Nelissen <marcone@google.com> Rework some code so that it works the way it was supposed to work.
ttp/CertificateValidatorCache.java
45efe69f8019f9743aef4d2b4eb6acf56ea0551f 09-May-2009 Grace Kloba <klobag@google.com> Fix #1807059. If it is "POST", always use BasicHttpEntityEnclosingRequest even bodyProvider is null. This ensures the content-type, content-encoding and content-length are set correctly.
ttp/Request.java
135e24c294884e009766e5b269424fcd07d83646 27-Apr-2009 Patrick Scott <phanna@android.com> Add '_' to the allowable characters in a host name.

This does not fix the underscore problem in host names but it moves it from a
Browser issue to a libc issue.
ebAddress.java
42ad56ead40f6c5986bd2d298b1d36f42da489a1 14-Apr-2009 Mike Lockwood <lockwood@android.com> telephony: Add support for bringing up GSM data connections for GPS SUPL.

Signed-off-by: Mike Lockwood <lockwood@android.com>
obileDataStateTracker.java
308618fa9d9d61ec3a88dda5930d9fdd4ddd2975 14-Apr-2009 Eric Shienbrood <> Merge branch 'readonly-p4-donut' into donut
99001278289036a3c645e599ed832943ff1b6e15 14-Apr-2009 Eric Shienbrood <> AI 145980: am: CL 145881 Adding on to CL 145383, unhiding some additional methods and constants
that ought to be exposed. Hid and deprecated the single-arg public
constructor for NetworkInfo, and modified a CTS test that was testing it.
Ran the android.net test package to make sure it still works.
Original author: ers
Merged from: //branches/cupcake/...

Automated import of CL 145980
etworkInfo.java
18b4d490652457c94594393a334be9bbc914c8ce 13-Apr-2009 Eric Shienbrood <> AI 145881: Adding on to CL 145383, unhiding some additional methods and constants
that ought to be exposed. Hid and deprecated the single-arg public
constructor for NetworkInfo, and modified a CTS test that was testing it.
Ran the android.net test package to make sure it still works.
BUG=1779439

Automated import of CL 145881
etworkInfo.java
fb8390729192860066c081b11b2f58db4cba9924 10-Apr-2009 Dave Bort <dbort@android.com> Remove references to android.util.Config

The semantics of Config.DEBUG will be changing soon, and all other
Config.* fields will become deprecated/hidden.

BUG=1780938
roxy.java
767a662ecde33c3979bf02b793d392aca0403162 02-Apr-2009 Wink Saville <> AI 144185: Integrate cdma into the main code base.

Automated import of CL 144185
obileDataStateTracker.java
886f3d69b79748fe937725e33b8bbb3d67ab82c7 25-Mar-2009 Bob Lee <> Automated import from //branches/donutburger/...@141355,141355
ttp/CertificateChainValidator.java
ttp/HttpsConnection.java
c2ad241504fcaa12d4579d3b0b4038d1ca8d08c9 20-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@141571
ttp/CertificateChainValidator.java
ttp/HttpsConnection.java
4df2423a947bcd3f024cc3d3a1a315a8dc428598 05-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@136594
ttp/AndroidHttpClient.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
onnectivityManager.java
redentials.java
hcpInfo.aidl
hcpInfo.java
ConnectivityManager.aidl
ocalServerSocket.java
ocalSocket.java
ocalSocketAddress.java
ocalSocketImpl.java
ailTo.java
obileDataStateTracker.java
etworkConnectivityListener.java
etworkInfo.aidl
etworkInfo.java
etworkStateTracker.java
etworkUtils.java
arseException.java
roxy.java
SLCertificateSocketFactory.java
ntpClient.java
ri.aidl
ri.java
rlQuerySanitizer.java
ebAddress.java
ttp/AndroidHttpClient.java
ttp/AndroidHttpClientConnection.java
ttp/CertificateChainValidator.java
ttp/CertificateValidatorCache.java
ttp/CharArrayBuffers.java
ttp/Connection.java
ttp/ConnectionThread.java
ttp/DomainNameChecker.java
ttp/EventHandler.java
ttp/Headers.java
ttp/HttpAuthHeader.java
ttp/HttpConnection.java
ttp/HttpLog.java
ttp/HttpsConnection.java
ttp/IdleCache.java
ttp/LoggingEventHandler.java
ttp/Request.java
ttp/RequestFeeder.java
ttp/RequestHandle.java
ttp/RequestQueue.java
ttp/SslCertificate.java
ttp/SslError.java
ttp/Timer.java
ttp/package.html
ackage.html
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
onnectivityManager.java
redentials.java
hcpInfo.aidl
hcpInfo.java
ConnectivityManager.aidl
ocalServerSocket.java
ocalSocket.java
ocalSocketAddress.java
ocalSocketImpl.java
ailTo.java
obileDataStateTracker.java
etworkConnectivityListener.java
etworkInfo.aidl
etworkInfo.java
etworkStateTracker.java
etworkUtils.java
arseException.java
roxy.java
SLCertificateSocketFactory.java
ntpClient.java
ri.aidl
ri.java
rlQuerySanitizer.java
ebAddress.java
ttp/AndroidHttpClient.java
ttp/AndroidHttpClientConnection.java
ttp/CertificateChainValidator.java
ttp/CertificateValidatorCache.java
ttp/CharArrayBuffers.java
ttp/Connection.java
ttp/ConnectionThread.java
ttp/DomainNameChecker.java
ttp/EventHandler.java
ttp/Headers.java
ttp/HttpAuthHeader.java
ttp/HttpConnection.java
ttp/HttpLog.java
ttp/HttpsConnection.java
ttp/IdleCache.java
ttp/LoggingEventHandler.java
ttp/Request.java
ttp/RequestFeeder.java
ttp/RequestHandle.java
ttp/RequestQueue.java
ttp/SslCertificate.java
ttp/SslError.java
ttp/Timer.java
ttp/package.html
ackage.html
076357b8567458d4b6dfdcf839ef751634cd2bfb 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
SLCertificateSocketFactory.java
ttp/AndroidHttpClient.java
ttp/CertificateChainValidator.java
3dec7d563a2f3e1eb967ce2054a00b6620e3558c 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
SLCertificateSocketFactory.java
ttp/AndroidHttpClient.java
ttp/CertificateChainValidator.java
da996f390e17e16f2dfa60e972e7ebc4f868f37e 13-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@131421
rlQuerySanitizer.java
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
onnectivityManager.java
ConnectivityManager.aidl
ri.java
ttp/AndroidHttpClient.java
ttp/RequestHandle.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
obileDataStateTracker.java
etworkInfo.java
etworkStateTracker.java
etworkUtils.java
roxy.java
ttp/Connection.java
ttp/Headers.java
ttp/Request.java
ttp/RequestHandle.java
ttp/RequestQueue.java
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
onnectivityManager.java
redentials.java
hcpInfo.aidl
hcpInfo.java
ConnectivityManager.aidl
ocalServerSocket.java
ocalSocket.java
ocalSocketAddress.java
ocalSocketImpl.java
ailTo.java
obileDataStateTracker.java
etworkConnectivityListener.java
etworkInfo.aidl
etworkInfo.java
etworkStateTracker.java
etworkUtils.java
arseException.java
roxy.java
SLCertificateSocketFactory.java
ntpClient.java
ri.aidl
ri.java
rlQuerySanitizer.java
ebAddress.java
ttp/AndroidHttpClient.java
ttp/AndroidHttpClientConnection.java
ttp/CertificateChainValidator.java
ttp/CertificateValidatorCache.java
ttp/CharArrayBuffers.java
ttp/Connection.java
ttp/ConnectionThread.java
ttp/DomainNameChecker.java
ttp/EventHandler.java
ttp/Headers.java
ttp/HttpAuthHeader.java
ttp/HttpConnection.java
ttp/HttpLog.java
ttp/HttpsConnection.java
ttp/IdleCache.java
ttp/LoggingEventHandler.java
ttp/Request.java
ttp/RequestFeeder.java
ttp/RequestHandle.java
ttp/RequestQueue.java
ttp/SslCertificate.java
ttp/SslError.java
ttp/Timer.java
ttp/package.html
ackage.html