Commit Graph

706 Commits

Author SHA1 Message Date
Jeff Sharkey
8fc27e8b87 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
2012-04-05 16:02:25 -07:00
Irfan Sheriff
fa291e6691 Fix build
Add missing file

Change-Id: I5ed1827e1183c37741675ce4d198d3e200c5fb94
2012-04-04 13:20:20 -07:00
Irfan Sheriff
7d024d3724 Add initial framework for DNS service discovery
Change-Id: I53c0b7ebfd75e520ebb7553612f1aa8413b6b79b
2012-04-04 12:24:56 -07:00
Irfan Sheriff
26d4452a08 Original DnsSd TxtRecord file
Change-Id: I4aa308a3b417d6bdce50567fb66c7119b048140a
2012-04-04 11:37:35 -07:00
Jesse Wilson
f5fb5e8096 Add an API to expose Next Protocol Negotiation (NPN).
Bug: http://b/4190756
Change-Id: If904f7ff440391a6adb2963eb2ecb990140ab7cc
2012-03-25 19:43:01 -04:00
Jeff Sharkey
8a8b581e66 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
2012-03-22 11:02:43 -07:00
Jeff Sharkey
948eef8254 Remove unused android.net.Downloads.
It's another set of constants that can be confused with those in
android.provider.Downloads.

Change-Id: I78ac058fa264d59a81f7655ab101c3fb2c8c17ff
2012-03-20 17:58:27 -07:00
Jeff Sharkey
837f9242ae Remember when NetworkPolicy was inferred.
This helps future-proof NPMS if we need to correct default policies
after an upgrade.

Change-Id: I0ddfdeaf41757a46aeb867c91d495ccf981d544b
2012-03-20 16:52:20 -07:00
Jeff Sharkey
f9f1d06678 Remove network subtype check when building template.
Change-Id: I069d82a77d27dae6bfffe3b7e65d73b63f258ad9
2012-03-16 11:54:01 -07:00
Jeff Sharkey
d4dd7716fb 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
2012-03-16 11:35:29 -07:00
Jeff Sharkey
ce8668f809 Merge "Save timezone when setting data cycle reset date." 2012-03-09 18:33:44 -08:00
Jeff Sharkey
9bf3150cfa 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
2012-03-09 17:10:05 -08:00
Ken Wakasa
f76a50ce8f Fix obvious typos under frameworks/base/core
Change-Id: Ia5fc3db1bb51824e7523885553be926bcc42d736
2012-03-09 22:48:43 +09:00
Brian Carlstrom
866666071b Tracking changes to SSLParametersImpl.getDefaultTrustManager()
Change-Id: I0bcf2bbcd2581f6b66e08d1c6f0de24bf8d34199
2012-03-08 12:23:53 -08:00
Irfan Sheriff
07573b3249 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
2012-02-29 17:33:36 -08:00
Selim Gurun
93ba4fedeb Act on credential storage updates.
Bug: 6009802

Cherry pick fcd93b72a3
Listen to credential storage updates and clean state when necessary.

Change-Id: I2c63e6771e9373da8b39781fdcf3d21583c4e3b2
2012-02-16 14:24:10 -08:00
Selim Gurun
d8d6afdc06 Merge "Revert "Act on credential storage updates."" 2012-02-15 19:04:58 -08:00
Selim Gurun
43e41580e4 Revert "Act on credential storage updates."
This reverts commit fcd93b72a3
2012-02-15 19:04:04 -08:00
Selim Gurun
e83b83fe20 Merge "Act on credential storage updates." 2012-02-15 17:48:12 -08:00
Jesse Wilson
18c227ba72 Implement the (hidden) ExtendedResponseCache interface.
Bug: http://code.google.com/p/android/issues/detail?id=25418
Change-Id: I4b20d576bac7036f94e57db7124de44f5b8d75be
2012-02-15 16:53:57 -05:00
Selim Gurun
fcd93b72a3 Act on credential storage updates.
Bug: 6009802

Listen to credential storage updates and clean state when necessary.

Change-Id: I48f2e7d6e036882c2b4a29fbd357ca018fd4e4c7
2012-02-15 10:02:25 -08:00
Mike Lockwood
efeba018bd 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>
2012-02-10 14:44:08 -08:00
Doug Zongker
d60ae7f668 store the hw addr in the extraInfo field of ethernet NetworkInfos 2012-02-10 14:44:03 -08:00
Mike J. Chen
4bcbefdc5f 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>
2012-02-10 10:51:22 -08:00
Jeff Sharkey
1f8ea2dcd1 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
2012-02-07 12:08:58 -08:00
Jeff Sharkey
241dde2306 Unify shorthand for byte-based units.
Change-Id: If990859dee3f0973e1d4c48f05312c84071b3328
2012-02-03 14:50:13 -08:00
Jeff Sharkey
0e2e5f8b56 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
2012-02-02 16:22:33 -08:00
Jeff Sharkey
54ee2adf17 Deprecate ACTION_BACKGROUND_DATA_SETTING_CHANGED.
Broadcast is no longer sent, except during first boot after platform
upgrade.

Change-Id: I7a9c105b5783ca9f9c3aca2efff6fe5c13a4c1fd
2012-01-30 16:32:54 -08:00
Nick Pelly
dc828acd5f Merge "Add API's for normalizing MIME's and URI's." 2012-01-25 12:55:58 -08:00
Nick Pelly
ccae412ded 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
2012-01-24 20:04:13 -08:00
Jeff Sharkey
3ca7481439 Match WIFI_P2P data usage.
Bug: 5405891
Change-Id: I5b815d6fc25a2f26a86c39a43fde305fcc3fb65c
2012-01-24 15:37:07 -08:00
Jeff Sharkey
63abc37356 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
2012-01-24 11:13:14 -08:00
Jeff Sharkey
5a7bcf31a4 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
2012-01-10 17:24:44 -08:00
Jesse Wilson
52cd299eef Move the frameworks/base hostname verifier into libcore. Part 2/2
Bug: http://b/5619726
Change-Id: I165eb3befcef104ff56ffb466c87c60b632f3194
2011-12-27 19:00:56 -05:00
Jeff Sharkey
931310f1d2 Merge "Include roaming in NetworkIdentity.hashCode()." 2011-12-16 11:56:06 -08:00
Jeff Sharkey
f9a3a8d42b Include roaming in NetworkIdentity.hashCode().
Change-Id: I148d95c8d08e3916a90fa78f7efee327d4b7de2a
2011-12-16 11:52:35 -08:00
Jesse Wilson
4868dfa33b Merge "Give a reflection example for installing the HTTP response cache." 2011-12-16 07:37:22 -08:00
Jeff Sharkey
f60d0afd1e 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
2011-12-15 14:30:04 -08:00
Jesse Wilson
8543b5480d 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
2011-12-15 12:25:55 -05:00
Robert Greenwalt
7776da1b79 am 4741163c: am fbb09ea8: Merge "Fix NPE in trimV4AddrZeros." into ics-mr1
* commit '4741163cd719ce88eddf17ebb0a3ffd6a8044fbe':
  Fix NPE in trimV4AddrZeros.
2011-12-07 17:12:47 -08:00
Robert Greenwalt
0faacf0658 Fix NPE in trimV4AddrZeros.
Change-Id: Id6ab91dabce4a2adba02f2601bc1157e87b782c3
2011-12-07 16:55:38 -08:00
Robert Greenwalt
131746ba38 am e55e5b84: am 3957b5fc: Fix the build.
* commit 'e55e5b84e53889791c0b6be8cad7cc134c9dfcba':
  Fix the build.
2011-12-07 13:19:37 -08:00
Robert Greenwalt
3957b5fc49 Fix the build.
Change-Id: I71d1d9958182966d2eff0d34fa05ac57f2cabc48
2011-12-07 13:10:59 -08:00
Robert Greenwalt
86a943951b am 2ebd3612: am f352491a: Merge "Trim leading zeros from ipv4 addrs." into ics-mr1
* commit '2ebd3612d82f728873f87cdbea9fa5513b5cfb39':
  Trim leading zeros from ipv4 addrs.
2011-12-07 12:33:24 -08:00
Robert Greenwalt
d4420ab2fb Trim leading zeros from ipv4 addrs.
Underlying libraries will interpret leading zeros as octal values and
fail.

bug:5262995
Change-Id: Iff949225bb6b941f7274ee81754e1f41ed719a6c
2011-12-07 09:58:48 -08:00
Jeff Sharkey
ba2896e939 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
2011-12-02 13:08:26 -08:00
Jeff Sharkey
ddba10622d Clean up InterfaceConfiguration flags.
Offer modifier methods for interface flags instead of mutating
directly, and remove square brackets.

Change-Id: I4cce719dccedfb3f0e8448c111e65b93c0008cbb
2011-11-29 18:37:04 -08:00
Irfan Sheriff
b9c955664b Add support for infinite dhcp lease time
Bug: 5649076
Change-Id: I29e3b41d8bd1173b155f3173e65a3b45ad17a45c
2011-11-21 14:03:00 -08:00
Scott Main
8b4e2ccf15 Merge "docs: some helpful javadocs for network info" 2011-11-11 09:49:23 -08:00
Jesse Wilson
8d7fad5e67 Merge "Warn about changed behavior around '+' characters." 2011-11-11 08:22:33 -08:00