rootdir: Allow to use a custom environ.rc

This is helpful for device which relies on blobs that needs their dependencies to be placed on a different dir

Change-Id: Ic5ebb7abe6ea97599c28c8a0d61350358b18fda6
init: Add a mechanism to extend the property service in device configs

Instead of every so often adding a new set of stuff here for a specific
device, let the device includes overload the property arrays. The
new device_perms.h header documents it

Change-Id: I477e27abebeb4b85abe5fcaf19333999b1625417
init: Allow device-specific appends to the property service permission structs

Extends device_perms.h API to allow property_perms and control_perms to be
appended on a device-specific basis, without needing to redefine the entire
struct contents.

Conflicts:
	init/property_service.c

Change-Id: Ifa4ec83cbd72b063da5bb8964677fcfd8f4831c5
audio: Add APIs for supported compress formats

-Add APIs for supported compress capture & compress voip formats.
-Add default bytes per sample as 1.

Change-Id: If63a50f02389475855f2f0729b03b6049d44fb29
core: add QCOM_HARDWARE ifdefs

Change-Id: I5fb1420d5ce99a86cd8bc42556be5616ff89229b
charger: Add support for non-standard charging interfaces

 * Certain devices may have multiple battery devices or broken uevent
   reporting when a power supply is disconnected.
 * Add a new BOARD_BATTERY_DEVICE_NAME to force which device to monitor.

Change-Id: I3045bf17a4d962cc5f0e6a951472916412ac0d0d
Add unpackbootimg.

Change-Id: I9e3e279e2b48b3fdf5b64a7e9a28fa54e91ccace
unpackbootimg: Add support for device trees

Change-Id: I340eed99d2274a2f4cbaf5a9f27726ff3a9302e5
init: allow system UID to setenforce and set booleans

Allow system UID to setenforce and set booleans for SELinux.
Boolean ownerships must also be reset upon policy reload as
the boolean files in selinuxfs are regenerated to match the new policy.

Signed-off-by: Humberto Borba <humberos@gmail.com>
Change-Id: I0dae393892753b4745e6c956289196338bf771d5
bluetooth: Introduce new property type and permission

Introduce new property type and allow system and bluetooth
processes to set these properties so that transport layer of
AND and BT stack can set these properties for chip initialization
part

Fix: omni-318

Change-Id: I7735d4743d8b43ea935584901d5aa330df965868
pdp: introduce new property type and permission

Fix: omni-318

Signed-off-by: Humberto Borba <humberos@gmail.com>
Change-Id: I330efd4d551e87fa3211f427f3199c53d0ff981d
core: Add API to retrieve mtu size

Adding an API to libnetutils to retrieve mtu size of an interface
Made few utility functions from ifc_utils public

Change-Id: Iddec2dcd9f241b146d7f362e2df0724cf740d1f2
(cherry picked from commit 108cded7d96cc347f36b5b78c404c5ebccce13d7)
libnetutils: add ifc_set_mtu

Fix: omni-318

Change-Id: I3031e9ee38583648350f2c46baa7a9a714b9ea1e
Use RECOVERY_PRE_COMMAND before calling __reboot() recovery

For the Power menu,
frameworks/base/core/jni/android_os_Power.cpp#L180
already uses RECOVERY_PRE_COMMAND if
TARGET_RECOVERY_PRE_COMMAND is defined in the
BoardConfig.mk for a device to make a system() call before
calling __reboot() for recovery. This commit adds
the same thing to the other places that we know we are
getting into recovery using __reboot(), namely,
adb reboot recovery, the reboot binary and init
in the case of errors.

Signed-off-by: Humberto Borba <humberos@gmail.com>
Change-Id: If0a9c7f22de2aa187c921b60ad5edd77b49e095d
revert changes to main init.rc file

Move these to the Omni init, there's no need to have them here.

Revert "init: added missing permissions"
This reverts commit 012c4de62a414388aaa6193a5b1797e9bd02901c.

Revert "init: fixup cpufreq permissions"
This reverts commit c20a2550bd9c0b5311fe5aba716e8e885b9e2a56.

Signed-off-by: Humberto Borba <humberos@gmail.com>
Change-Id: I005c8a908edceda03a54e8ea5da31e5b3474b5cd
Do not add default route during ifc_configure

Avoid duplicate default routes.
Remove adding of default routes during interface configuration as
route add/remove operation is managed by ConnectivityService via netd.
(cherry picked from commit 4a48635c72d91cf8decb7653948fe0c76de46098)

Change-Id: I982b95a44bf91d3850ca7752e307c1b1b6a66ecf
toolbox: Add levelFromUid categorization support to restorecon

This is necessary for the app data relabeling on migrated devices
to include the proper app context. Freshly installed apps get this
done automagically, as do newly created files.

Change-Id: If7421dac01c6ae8bd78e66f71e69298ed850a7ab
bootanim: introduce new property type and permission

<3>[   58.921827] init: sys_prop: permission denied uid:1003  name:service.bootanim.exit

Signed-off-by: Humberto Borba <humberos@gmail.com>
Change-Id: I98d4c79bc021381ee30d47d056522db248ff679b
core: Fix permissions for data and cache

 - Add /data/radio
 - Set gateway property after DNS
 - Allow radio users to set properties associated with
   all rmnet interfaces. Not just rmnet0
 - Check Cache and Dalvik perm
 - Check selinux enforced booleans

Change-Id: Ia60fcb8f90aa73ffd40e839b93356ee50a9e5072
sdcard: Allow building as a static library

 * Split main() out in order to allow linking with a multi-call
   executable such as recovery.

Conflicts:
	sdcard/Android.mk

Change-Id: I3325135e47e4dd5af3912f5ce67ec64007d54a63