15353 Commits

Author SHA1 Message Date
Kenny Root
e6585b32ea Use java.util.Objects instead on internal API
Not needed since java.util.Objects implements all the needed
functionality.

Change-Id: Icd31d49a9801d1705427f028e9ac927d58e7d34c
2013-12-13 13:40:30 -08:00
Greg Hackmann
32b4c0779e Clean up native AlarmManagerService tabs/spaces and unused parameter warnings
Change-Id: I64da1437dd0ed30957b43450c72b9d3797112a2e
Signed-off-by: Greg Hackmann <ghackmann@google.com>
2013-12-12 12:53:32 -08:00
Lorenzo Colitti
2daa0c93c4 Merge "Add address flags and scope to LinkAddress." 2013-12-07 02:43:04 +00:00
Nick Kralevich
6b8a3a52ac am f7422885: Merge "Augment SELinuxMMAC functionality."
* commit 'f7422885a99c5d240f70c2f8227ae44abeea3e5c':
  Augment SELinuxMMAC functionality.
2013-12-06 08:17:23 -08:00
Robert Craig
99a626c271 Augment SELinuxMMAC functionality.
* No longer support a package name stanza outside of
  a signature tag. Package names, by themselves, have
  no security associated with them in Android and thus we
  should not be allowing or encouraging this
  type of policy.

* Allow for nested package name stanzas inside
  signature stanzas. There are cases where a finer
  distinction needs to be made among apps signed with
  the same cert. New code allows a different seinfo
  tag to be assigned to the listed package names
  signed by the parent cert. When a determination needs
  to be made concerning seinfo assignments, the inner
  seinfo tag takes precedence over the outer seinfo
  labels which are assigned to just the signature.

* Temp structures are now used to parse new policy files
  until the entire xml file is parsed and deemed correct,
  at which time the temp structures are copied over to the
  permanent class structures. This ensures that any structural
  errors with the policy will not result in partial loads.

* Valid stanzas look like the following with the inner
  package piece being optional.

   <signer signature="">
     <seinfo value=""/>
     <package name="">
       <seinfo value=""/>
     </package>
   <signer>

   <default>
     <seinfo value=""/>
   </default>

Change-Id: Ia204d71211776dcf9b2dcc86ad6d77c4ad39dc25
2013-12-06 08:51:20 -05:00
Lorenzo Colitti
64483947fd 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
2013-12-06 13:54:35 +09:00
The Android Open Source Project
ebcb32f58a Merge commit 'bac61807d3bcfff957b358cb9ad77850bd373689' into HEAD
Change-Id: I29374270c8e0c2f2859efaf1d55af9f73da0f8d7
2013-12-05 13:10:46 -08:00
Stephen Smalley
856df42a5a Remove setEnforcingMode from SELinuxPolicyInstallReceiver.
It never worked anyhow, at least in AOSP, as nothing checks that property,
and is pointless now that enforcing mode is set by init.

Change-Id: If05dd49963c5d7081e00039b5e378032bea0939b
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2013-12-02 14:38:31 -05:00
Lorenzo Colitti
5ad421a3d0 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
2013-11-26 21:55:15 +09:00
Lorenzo Colitti
5ae4a531cc 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
2013-11-25 17:27:17 +09:00
Lorenzo Colitti
a9626c1c95 Minor cleanups to NetdCallbackReceiver.onEvent.
- Clean up identical error messages.
- Fix the array length check for InterfaceAddressChange.

[Cherry-pick of 59be800e7fe81842aa8c77b91319f58ab165983d]

Bug: 9180552
Change-Id: Id871f481445b530c3ad749725f1548df0e3a1228
2013-11-25 17:25:45 +09:00
Lorenzo Colitti
132fe8d27d Use BaseNetworkObserver in Tethering.
Tethering currently inherits from the AIDL interface
INetworkManagementEventObserver, so it has to provide no-op
implementations of all the interface's methods. Inherit from
BaseNetworkObserver and get rid of the no-ops.

[Cherry-pick of f4e90eac87bc31611ddd80c46fc924d35ce66c1c]

Bug: 9180552
Change-Id: I74859b0d77951005651aaaa418185857e40eeedb
2013-11-25 17:24:30 +09:00
The Android Open Source Project
dbccd44a63 Merge commit 'b873a17ce7be0a9771c24999adca6964431728f6' into HEAD
Change-Id: I938755073e70602cc8f51ce9bd420fdcf870cecd
2013-11-22 11:18:57 -08:00
Craig Mautner
90192a6165 am 0495f4ed: Merge "Make SurfaceView layers captured by screenshotApplications()"
* commit '0495f4eded46efd7035ed672dc933ec6430b93fd':
  Make SurfaceView layers captured by screenshotApplications()
2013-11-21 08:50:05 -08:00
Sangkyu Lee
7ccba97417 Make SurfaceView layers captured by screenshotApplications()
Since SurfaceView layers are located below application layers,
SurfaceView is not captured by screenshotApplications()
when the application is running in fullscreen.

Moreover, ws.isFullscreen(dw, dh) returns mostly true
on the devices which do not use the navigation bar.

Change-Id: Ia1036c79054950384a97504714929fd85c8147de
Signed-off-by: Sangkyu Lee <sk82.lee@lge.com>
2013-11-21 15:20:33 +09:00
Adam Lesinski
bac61807d3 am 1abead42: am 245408d2: Merge "Do not hold direct ref BatteryStatsImpl" into klp-dev
* commit '1abead425c0e862e316e17521833a33d22e7a850':
  Do not hold direct ref BatteryStatsImpl$Uid$Proc
2013-11-18 13:32:42 -08:00
Adam Lesinski
245408d290 Merge "Do not hold direct ref BatteryStatsImpl$Uid$Proc" into klp-dev 2013-11-18 21:26:32 +00:00
John Spurlock
32962b3e2c am c65dfef3: am afc76f28: Merge "Use scaled display size in wallpaper constraint." into klp-dev
* commit 'c65dfef3f5ee07883446be0e6907f15fe457da9d':
  Use scaled display size in wallpaper constraint.
2013-11-18 12:56:25 -08:00
John Spurlock
afc76f28b9 Merge "Use scaled display size in wallpaper constraint." into klp-dev 2013-11-18 20:49:16 +00:00
Adam Lesinski
2cd3fb5aa7 Do not hold direct ref BatteryStatsImpl$Uid$Proc
BatteryStatsImpl can reset its collected data, including
removing a BatteryStatsImpl$Uid$Proc object. If a ProcessRecord
has a direct reference, then the battery stats for a process
will be recorded in an old Proc object and prevent GC, causing
a memory leak.

bug:11087238
Change-Id: I19a9cd9d8361c10446a8ebdd5c0860b56c442209
2013-11-18 12:29:34 -08:00
John Spurlock
d6e836c4a0 Use scaled display size in wallpaper constraint.
Bug:11596190
Change-Id: Icc81beeea2e71144c2e5330b047e4781a23d7449
2013-11-18 14:14:49 -05:00
Robert Greenwalt
51213d943b am a8a448da: am e568672c: Merge "Fix NPE in ConnectivityService" into klp-dev
* commit 'a8a448da25c62f54cac3318c17c69e851a4ecde9':
  Fix NPE in ConnectivityService
2013-11-18 10:33:46 -08:00
Robert Greenwalt
a8dae99d76 Fix NPE in ConnectivityService
bug:11727708
Change-Id: Ia8ca9d1e23f021feaf4b772ec38d1d0e89b0cd2a
2013-11-18 09:43:59 -08:00
Craig Mautner
427dcdffc2 am 0324bb1a: am 23188c2b: Merge "Restore jankless transition keyguard-to-wallpaper" into klp-dev
* commit '0324bb1a9972ec766b65d4b47b9688588633967b':
  Restore jankless transition keyguard-to-wallpaper
2013-11-15 15:26:03 -08:00
Craig Mautner
de43ebe86a Restore jankless transition keyguard-to-wallpaper
There is still a flash of black when going to a non-wallpaper activity
from keyguard. This is not a regression from jb-mr2 and any fixes to
clean it up are too risky at this late date.

Fixes (partially) bug 11570753.

Change-Id: I17aaae4ab8be570f7e28276a7b8ac4b8685e7551
2013-11-15 14:15:43 -08:00
Jeff Brown
2ea480cac8 am 5d0b18cd: am 3de885be: Merge "Disallow applications from initiating cast screen." into klp-dev
* commit '5d0b18cddfcb933d7960c5a6a820045d77a0285c':
  Disallow applications from initiating cast screen.
2013-11-15 00:39:57 -08:00
Jeff Brown
3de885bef2 Merge "Disallow applications from initiating cast screen." into klp-dev 2013-11-15 08:35:50 +00:00
Jeff Brown
af574183c2 Disallow applications from initiating cast screen.
Only allow the system ui and settings to connect to a remote display.
To do this, we essentially hide the remote displays from applications
by using the ROUTE_TYPE_REMOTE_DISPLAY then add permission checks
around the operations that connect to them.

As a bonus, this may actually save power on devices since applications
that use MediaRouter will not longer be performing discover on
remote display routes at all.

Bug: 11257292
Change-Id: I9ea8c568df4df5a0f0cf3d0f11b39c87e2110795
2013-11-15 00:29:43 -08:00
Christopher Tate
461febadc4 am 64397749: am 22010817: Merge "Handle backup transport registration dynamically" into klp-dev
* commit '64397749effa088dcea3799fc8440845c5a1c193':
  Handle backup transport registration dynamically
2013-11-14 18:41:02 -08:00
Christopher Tate
22010817b9 Merge "Handle backup transport registration dynamically" into klp-dev 2013-11-15 02:34:38 +00:00
Christopher Tate
cefba58d14 Handle backup transport registration dynamically
Bug 11369873

Change-Id: I9bbdcc21ce25159c6645690123b5d03c553b0ddc
2013-11-14 18:13:25 -08:00
Christopher Tate
a5acd62bde am 6e5cf573: am 99437f25: Merge "Ensure recipient can be launched before attempting broadcast delivery" into klp-dev
* commit '6e5cf573f2f2e17825af2973daeba893c6aa5855':
  Ensure recipient can be launched before attempting broadcast delivery
2013-11-14 15:44:40 -08:00
Dianne Hackborn
8e9b5fc932 am 59bf3be7: am 2e3ede74: Merge "Maybe fix issue #11634365: Leaking restarting services" into klp-dev
* commit '59bf3be7d1cd7311cf60ead6872f33433a097bd1':
  Maybe fix issue #11634365: Leaking restarting services
2013-11-14 15:44:36 -08:00
Christopher Tate
99437f252b Merge "Ensure recipient can be launched before attempting broadcast delivery" into klp-dev 2013-11-14 22:59:20 +00:00
Dianne Hackborn
2e3ede7497 Merge "Maybe fix issue #11634365: Leaking restarting services" into klp-dev 2013-11-14 22:56:14 +00:00
Dianne Hackborn
ddc19e9847 Maybe fix issue #11634365: Leaking restarting services
It looks like we could add services to the restart list because
they end up left in the process's list of running services after
they have been removed from the main activity list, and we can
trip up on them there when the app is being force stopped.

Change-Id: I79805b67fcf5b593430dc5c856c97927e1a54a57
2013-11-14 14:32:17 -08:00
Christopher Tate
ba629da331 Ensure recipient can be launched before attempting broadcast delivery
User removal or eviction inherently races with broadcast delivery.  This
patch introduces a latest-possible recheck of the availbility of the
target application before attempting to send it a broadcast.

Once the process has actually been spun up the system is essentially
committed to presenting it as a running application, and there is no
later check of the availability of the app: the failure mode for
continuing to attempt delivery is a crash *in the app process*,
and is user-visible.

We now check the app+userid existence of the intended recipient
just prior to committing to launch its process for receipt, and
if it is no longer available we simply skip that receiver and
continue normally.

Bug 11652784
Bug 11272019
Bug 8263020

Change-Id: Ib19ba2af493250890db7371c1a9f853772db1af0
2013-11-14 12:37:31 -08:00
Matthew Williams
72402f9de7 am 09d8e3cf: am c68bb182: Merge "SyncManager now returns copy on getCurrentSyncs()" into klp-dev
* commit '09d8e3cf4e411b016ee65d8328dd7a443c9de0ff':
  SyncManager now returns copy on getCurrentSyncs()
2013-11-14 09:27:26 -08:00
Matthew Williams
c68bb18244 Merge "SyncManager now returns copy on getCurrentSyncs()" into klp-dev 2013-11-14 17:18:58 +00:00
Matthew Williams
a7456e46f4 SyncManager now returns copy on getCurrentSyncs()
Bug:11559103
Added a new getCurrentSyncsCopy() that is public. The other version
is needed for internal SSE calls.

Change-Id: I0287f039a6f75abf04b65b85cb30f78353aeef4f
2013-11-13 18:17:54 -08:00
Robert Greenwalt
7fdfe28c75 am 4c514f2a: am 594eeb08: Merge "Fix for the invalid Global Proxy Setting" into klp-dev
* commit '4c514f2a688bdae319c919987092ccfee690f390':
  Fix for the invalid Global Proxy Setting
2013-11-13 16:29:12 -08:00
Robert Greenwalt
ec9e8933ef am 3b9244b4: Merge "Fix for the invalid Global Proxy Setting"
* commit '3b9244b4b4d5008daa9763a169a751975c75cc54':
  Fix for the invalid Global Proxy Setting
2013-11-13 16:27:56 -08:00
Craig Mautner
1fbb5da29a am 29bbd570: am 1f0f9fa9: Merge "Add null pointer check." into klp-dev
* commit '29bbd570fe36c55321a3cd9d84330dea9d2f1e10':
  Add null pointer check.
2013-11-13 16:23:38 -08:00
Robert Greenwalt
3b9244b4b4 Merge "Fix for the invalid Global Proxy Setting" 2013-11-14 00:23:04 +00:00
Robert Greenwalt
594eeb082e Merge "Fix for the invalid Global Proxy Setting" into klp-dev 2013-11-14 00:22:46 +00:00
Craig Mautner
1f0f9fa949 Merge "Add null pointer check." into klp-dev 2013-11-14 00:15:55 +00:00
Raj Mamadgi
92d02491ad 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
2013-11-14 00:08:21 +00:00
Craig Mautner
f4703da89b am ef1dd26e: am 0e823a45: Merge "Keyguard isn\'t visible if it hasn\'t been drawn." into klp-dev
* commit 'ef1dd26ee7b4d8a6ec854bd0b5b9557d67b554f5':
  Keyguard isn't visible if it hasn't been drawn.
2013-11-13 15:18:47 -08:00
Craig Mautner
0e823a450a Merge "Keyguard isn't visible if it hasn't been drawn." into klp-dev 2013-11-13 23:11:12 +00:00
Craig Mautner
ada62fca51 Add null pointer check.
Fixes bug 11673948.

Change-Id: I60b590b9793ae1b8d5c3d343f4bb6cb40ba4a092
2013-11-13 15:09:55 -08:00