Commit Graph

21 Commits

Author SHA1 Message Date
Jeff Sharkey
5d6a2cd7ca 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
2014-08-14 22:42:27 +00:00
Jeff Sharkey
3b43a279e3 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
2014-08-11 18:40:23 -07:00
Sreeram Ramachandran
fba15596cb Cleanup: Delete dead code.
Bug: 15413389
Change-Id: I315468832ef18ffc84174e54774ab63b86d284dc
2014-07-22 15:46:34 -07:00
Lorenzo Colitti
8e33e456a1 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
2014-06-10 14:46:39 -07:00
Sreeram Ramachandran
c447220e53 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
2014-06-10 14:30:15 -07:00
Robert Greenwalt
690790088d Fix public API of LinkProperties.
bug:15142362
Change-Id: I1457111da7d3bd09998f7e010febb8bb4c45c8bc
2014-06-08 12:54:23 -07:00
Lorenzo Colitti
eeae94e9cd Fix a typo in IpConfigStore.
Change-Id: I1fc845bf4547ae9a86db02ed29b6d5ba60a01277
2014-05-21 16:38:11 -07:00
Jaewan Kim
e36bfe74f3 Move IP config from WifiConfiguration to IpConfiguration.
This is so that Ethernet can use it in the future.

Bug: 7606609
Bug: 8687763

Change-Id: I5d1189682b13f1088848809604690648d8d9ecca
2014-05-20 15:24:10 -07:00
Robert Greenwalt
61c34fd2a2 Turn down the logging.
Cut per-msg logging by 1/3 in NDC so we see that much more.

Change-Id: I406297d98f2649a88b16c7be3cf90757d009c762
2014-05-12 08:59:27 -07:00
Christopher Lane
7441122e23 Fix incorrect "listener no longer active" errors
Was incorrectly using .indexOfValue to search for Integer objects in the
client map.

Change-Id: I54e2e1725e0fff0a7d35a22376714cc8266a9eee
2014-04-25 18:57:23 -07:00
Dianne Hackborn
0cc4425b3b Start collecting mobile radio activity from the radio.
Hook in to the new radio API to find out when the radio
is active and use that to track its state in batter stats.
We also still have the data being tracked from the kernel's
emulation, and continue to use that if we don't get data from
the radio.

Currently this monitoring is turned off until some issues
in the radio can be fixed that are providing bad data.

Also add a new API to get estimated drain and charge times.

Change-Id: Ifc4900fabb8f848f9cda361dce698664ea75f175
2014-04-24 11:21:30 -07:00
Christopher Lane
b6e0448851 Fix build
Change-Id: I20168fb1c29ba6eb695f0d24c6ca512420b2b319
2014-04-14 16:31:27 -07:00
Christopher Lane
6f34914b4c resolved conflicts for merge of 468c0578 to master
Change-Id: I779c49c48980ba7737ee4e7b04a9e4c3e02fca21
2014-04-14 15:14:01 -07:00
Christopher Lane
0f2cc36572 Add support for custom TXT records in NSD
Change-Id: I8e6dc9852ad4d273c71ad6a63a7fbd28a206806d
2014-04-14 14:10:36 -07:00
Dave Platt
5da9a41811 Merge "NsdService does not clean up after exiting clients" 2014-04-08 17:35:57 -07:00
Dianne Hackborn
87522f50e1 Battery stats: wake locks, radio active, cleanup.
- Improve wake lock work source updates to also update the current
  history tag, in case the new work source gets recorded in the
  history.

- Fix bug in recording radio active time that was not distributing
  any time to apps.

- No longer hold a wake lock while dispatching data conn active call,
  since it comes with its own timestamp.

- Fix issue where the top app was not being cleared while the screen
  was off.

- Remove obsolete STATS_LAST stats type.

- Fix bug that was not clearing the total run time when resetting
  the stats.

Change-Id: Iabe17a9edf34f762374ae09fcffb8a819cf72e30
2014-03-24 13:36:46 -07:00
Dave Platt
cf4709a694 am cb1254f1: am 20caa09c: am 21384faa: am 694f219c: Merge "NsdService does not clean up after exiting clients"
* commit 'cb1254f1abc44b82e2a9da0d9a73230eb46e129e':
  NsdService does not clean up after exiting clients
2014-03-14 13:13:38 +00:00
Dave Platt
20caa09c61 am 21384faa: am 694f219c: Merge "NsdService does not clean up after exiting clients"
* commit '21384faa2b3da619a54b35f15936c00593b30694':
  NsdService does not clean up after exiting clients
2014-03-13 23:42:03 +00:00
Dianne Hackborn
9cd0fea519 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
2014-02-28 15:19:39 -08:00
Amith Yamasani
4181c2f47e am 59e808f5: Move some system services to separate directories
* commit '59e808f5491ded962445be7bff490e1fb32480ab':
  Move some system services to separate directories
2013-12-19 23:30:35 +00:00
Amith Yamasani
59e808f549 Move some system services to separate directories
Refactored the directory structure so that services can be optionally
excluded. This is step 1. Will be followed by another change that makes
it possible to remove services from the build.

Change-Id: Ideacedfd34b5e213217ad3ff4ebb21c4a8e73f85
2013-12-19 15:25:37 -08:00