su: Update for latest su daemon compatibility

Change-Id: I6d2f36d9f01d7bc6004724458875b3dce850d00e
minui: do not use flexible array initialization

Avoiding the use of gnu extensions improves code portability

Change-Id: I441a49ce08b6ecb1d735ca453552fa92026c5016
Remove "Go Back" option from verify root and recovery options

These options only show when you are exiting recovery and there
is no where to "go back" to.

Patchset 1) initial
Patchset 2) change to ui_set_showing_back_button()
Patchset 3) revert settings before returning

Change-Id: I0aee8d0fbce9a5ff415b74b4a16e0d416042e307
do not use static type

Change-Id: I7baff2106a98d5246ea2ad619670dcb5575afeab
remove unused variable

Change-Id: Idb89503140a6a3385fe17990e3484fe71883885f
do not error on missing sd-ext when wiping dalvik cache

Change-Id: I4cf817f05bd708fe2b7d6a5f20aab6ef2413d117
Fix potential chmod failures

1) ensure_directory: only chmod if directory exists or is created
2) nandroid_backup: if the backup is stored on a different volume than
/sdcard, then these chmod commands will fail. Correct the backup paths.

Change-Id: Ia54c27fdf861c90a4de86346893f334420060090
Add a copy of the updater binary to the recovery resources

* We may need to force the use of a compatible binary if the one
in the update package is suspected to be bad

Change-Id: I71505de51a9600c08ccfe8639385a7b2f2bfe2a2
install: Support downgrade scenarios

Android 4.4 changed the in-RAM format of the property data, making
update binaries built with older versions unable to read it. This
makes any attempt to read a property return empty, and fail any
prop-related assertions.

If we identify an attempt to run a binary that has a common pre-4.4
edify command ("set_perm_recursive") but not one of the new ones
("set_metadata_recursive"), assume it's a pre-4.4 binary and replace
it with a builtin fallback

Change-Id: Ic483c816d772c32266585b669f59c66e77afcebb
install: Fix possible overflow condition in the updater "scanner"

Don't just reset the position pointer after a failure, reset it
after a successful match too, to prevent a followup loop from poking
beyond the limit of the match arrays. (if matchmeta is hit before
matchperm)

Change-Id: I7842798597eb1aee79b4c770f1eeca131020483d
correctly mount tmpfs as /tmp in recovery

The syntax of init's mount command changed in April 2008 but
recovery's init.rc was never updated, so recovery's /tmp has been on
the root fs all this time.  Fix.

Also add /system/bin to the PATH in recovery, which is handy for
debugging.

Change-Id: I39f7ae435a8ce3bad691e4b7c307db0bd8de1302
install: Really fix possible overflow condition in the updater "scanner"

Match new recovery format indenting

Change-Id: I02b703861dbc204b6613a93926fe9e4461f17ff5
Use cat for adb backup.

Change-Id: I4fb9f20e42bbc4883a224e24592bb662d5b4577d
Fix up bu restore.

Change-Id: Ib87907d1a02f891210a01dbdc1439b6a426efb19
6047

Change-Id: I76ea2c7aab15583f42486338a75c83f09036dff5