Fix assertion failure

Adding 0 items to vector causes assertion failure in _grow -> itemLocation

Change-Id: Ief232a9c12e2e43ee6c87a7a137fe8a94aa741d4
Unicode: Fix mismatched type initialization

Fixes the following:
system/core/libutils/Unicode.cpp:579:27: error: cannot initialize a variable of type 'const uint16_t *const' (aka 'const
unsigned short *const') with an rvalue of type 'char16_t *'
    const uint16_t* const u16end = dst + dstLen;
                          ^        ~~~~~~~~~~~~

Change-Id: I6b1c64d69bb78faeb0e7ae7b08afe05f426c7532
ueventd: fix a busy loop while reading uevents

Under certain conditions, poll() may raise the POLLERR
flag along with POLLIN, in which case the check for
(ufd.revents == POLLIN) results in an endless busy loop.

The following fix was applied to
hardware/libhardware_legacy/uevent/uevent.c
to fix a similar bug:

  commit 3aabb260ceef10377c31c9e45fb239247f5cfeba
  Author: Mathias Agopian <mathias@google.com>
  Date:   Mon Oct 1 14:53:18 2012 -0700

    fix a typo in uevent_next_eventi

    Bug: 7114973
    Change-Id: I15a4c714b59aeb1d02db00517d70b5f0e5ab22c2

Applying the same fix for two more poll loops in init
and ueventd.

https://android.googlesource.com/platform/hardware/libhardware_legacy.git/+/3aabb260ceef10377c31c9e45fb239247f5cfeba
Signed-off-by: houst0nn <houstonn@gmail.com>
Change-Id: I50693f6d3c904992ac4b8a9a14a83c7106e6b9e0
Add keystore to system group

 * Required in order to request firmware for hardware implementation

Change-Id: Ibd1ba79667d4489f0972b8fba587a8ba9c6083dd
Remove obsolete vdc call.

Since ca8e66a8b0f843812014a28d49208f9f6f64ecbc, init has
been handling reboots and filesystem unmounts. Remove obsolete
call to vdc.

Bug: 12504045
Change-Id: If8704ca042cb3a68857743b9973e48c52e7eb881
(cherry picked from commit 225459a5da21e9397ca49b0d9af7d5fe3462706b)
don't load property_contexts from /data

Bug: 12613118
Change-Id: I5a84b13d2151075d5136e3682431fbcc9307df13
(cherry picked from commit dc3a42bb11dc2aefee37f799b5a1cce87cf35aaf)
audio: Add Dolby subformat

Add Dolby subformats to support Dual-Mono content

Change-Id: Iff7d141f6689d5c378bee35c9e6627ce8af70cb6
system/audio: Add the the SPDIF device entry

Add the the SPDIF device entry

Change-Id: Ied13adebb4581c4f45ab9fde858c5417c4414d9a
audio: New audio formats for PCM Offload

- Add new formats 16/24 bit PCM offload formats

Change-Id: I68bccc2851e3820c7adb98af9e2e3818ea5bf01b
Underp an ifdef

Change-Id: If0e0f1fddcad3d7ec6987ecc5d4e6a40e605c39a
init.rc: prep tcp_default_init_rwnd, set the default to 60

The kernel's default is between 4~20.

Prepare for javaland to modify the value at runtime.

It can be done via
  setprop sys.sysctl.tcp_def_init_rwnd  <value>

Bug: 12020135
Change-Id: Id34194b085206fd02e316401c0fbbb9eb52522d2
(cherry picked from commit 7c862c8b5e59cbe216a5bc092c01f1ecba8e9de4)
Add support for ECDSA P-256 with SHA256

This adds a small EC library that is capable of verifying a signature of
SHA256 with ECDSA on the NIST P-256 curve.

Change-Id: I2a16639c92a77e8e4783c47ffbc56676de56eb59
update minui library call

The names of the res_create_* functions have changed.

Change-Id: I9990bb4f6e6dc2d7c62e2cb9e0831532c83b2bb9
charger: Query pathmap for recovery headers location

 * For compatibility with new recovery

Change-Id: I7054b662f41b2ff3360484f2b9e66efbfb6de09c
Do not change ownership on /sys/fs/selinux/enforce.

There is no longer any reason to permit system UID to set enforcing mode.

Change-Id: Ie28beed1ca2b215c71f2847e2390cee1af1713c3
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Run the console service shell in the shell domain.

This allows it to be permissive in userdebug/eng builds
but confined/enforcing in user builds.

Change-Id: Ie322eaa0acdbefea2de4e71ae386778c929d042b
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Apply strict SELinux checking of PROT_EXEC on mmap/mprotect calls.

If checkreqprot == 1, SELinux only checks the protection flags passed
by the application, even if the kernel internally adds PROT_EXEC for
READ_IMPLIES_EXEC personality flags.  Switch to checkreqprot == 0
to check the final protection flags applied by the kernel.

Change-Id: Ic39242bbbd104fc9a1bcf2cd2ded7ce1aeadfac4
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Set security context of /adb_keys and /data/misc/adb/adb_keys.

I97b3d86a69681330bba549491a2fb39df6cf20ef introduced a separate type
for the adb_keys file.  Set the security context of the adb_keys file
accordingly by adding restorecon commands to init.rc.

Change-Id: I30e4d2a1ae223a03eadee58a883c79932fff59fe
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Move restorecon and restorecon_recursive code to libselinux.

This requires telling libselinux to use the sehandle already
obtained by init rather than re-acquiring it internally.  init
retains ownership of the sehandle because it performs the
initial load, uses the sehandle for other purposes (e.g. labeling
of directories created via mkdir and labeling of socket files),
and handles the policy reload property trigger.

Change-Id: I4a380caab7f8481c33eb64fcdb16b6cabe918ebd
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Move creation of /data/misc/wifi and /data/misc/dhcp to main init.rc file.

mkdir /data/misc/wifi subdirectories and /data/misc/dhcp is performed
in the various device-specific init*.rc files but seems generic.
Move it to the main init.rc file.

Drop the separate chown for /data/misc/dhcp as this is handled by mkdir
built-in if the directory already exists.

Add a restorecon_recursive /data/misc/wifi/sockets.

Change-Id: I51b09c5e40946673a38732ea9f601b2d047d3b62
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>