Commit Graph

9577 Commits

Author SHA1 Message Date
Michael Runge f9dd42de60 Merge "Don't abort on read_file if the file is missing." into klp-dev 2013-12-20 19:33:05 +00:00
Dees Troy 42f40f5c1e declare dir for non data/media devices
Change-Id: I60e2e2a880c3bd5fff3f485f7c8e4ac9ab6fd3bd
2013-12-20 05:08:36 +00:00
Doug Zongker 289ab02599 am e1bb2733: am 168724c3: fix unnecessarily slow writing of EMMC partitions
* commit 'e1bb2733f9261336f38a94dc9d93ed010a7cbc57':
  fix unnecessarily slow writing of EMMC partitions
2013-12-20 00:10:49 +00:00
Doug Zongker e1bb2733f9 am 168724c3: fix unnecessarily slow writing of EMMC partitions
* commit '168724c31ad5241e157ebb35135a734fa075d53b':
  fix unnecessarily slow writing of EMMC partitions
2013-12-19 16:03:12 -08:00
Doug Zongker 168724c31a fix unnecessarily slow writing of EMMC partitions
These were attempts to write partitions "conservatively" in hopes of
fixing the problems with writing the radio partition on Nexus 4.  They
didn't work (a kernel patch was needed), but got left in.  They make
writing of partitions unnecessarily slow (ie, we really shouldn't need
to sync() after every 4kb).  Roll back most of them, but leave the
verification read-back in.

Change-Id: I94badc0979e88816c5aa0485f6316c02be69173c
2013-12-19 15:16:57 -08:00
Dees Troy 8d0eb1361e Improve SELinux support check
If the kernel does not use SELinux security then the ramdisk
contents will not have contexts set on the files, however we may
still have everything we need in recovery if the kernel supports
EXT4 security labels, so we try to check /cache/recovery if it
exists first.

Change-Id: I96a4ae16418e07b0a2e83cd56e19893898d0b394
2013-12-19 19:06:06 +01:00
bigbiff bigbiff 34684ff313 Create a TWRP Disk Usage Class to retain state about a directory and whether we should skip it in other classes like twrpTar.
Moved Get_Folder_Size to this new class.

Change-Id: If0a0220f900eb109581f2eeaf7b76e3f7d6886f1
2013-12-19 18:02:44 +00:00
Dees Troy 4d132cabf4 Merge "Add support for persistent variables in theme's <variables> section" into android-4.4 2013-12-19 18:27:16 +01:00
Dees Troy 504022bd8e Merge "add fix /data/data contexts to fixPermissions only compile symbols if selinux is defined Change-Id: I7c8596360cdf2f715c8e1379fc55ea27d9370393" into android-4.4 2013-12-19 18:20:11 +01:00
OliverG96 06b91e7965 crypto: Fix crypto dependencies for ICS/Samsung methods
- libmincrypt renamed to libmincrypttwrp that is an static library
- libjpegtwrp does not exist
- libfs_mgrtwrp is for JB decryption methods

This fixes making full builds when TW_INCLUDE_CRYPTO_SAMSUNG := true and TW_INCLUDE_CRYPTO := true are set.
Somehow typing make recoveryimage doesnt push the mentioned issue.

Change-Id: I7cad5db4f51152a1a8209e619b188ca88d7c74d1
2013-12-19 17:08:31 +00:00
Hashcode 62bd9e04c7 add support for fsflags= option in twrp.fstab file
example userdata line (as needed by MotoX):
/data         f2fs      /dev/block/platform/msm_sdcc.1/by-name/userdata       flags=fsflags="inline_xattr"

Code for parsing flags/options originally based on AOSP fs_mgr sources.

Change-Id: I5fb2b5d5cdd08137e6bf71f0085a3f8aebd889a8
2013-12-19 17:04:02 +00:00
Michael Runge 6eed224771 Don't abort on read_file if the file is missing.
Change-Id: I85726bf736203d602428114145c3b98692580656
2013-12-13 17:13:11 -08:00
Doug Zongker f39989a36d recovery: wipe encryption metadata along with data partition
This assumes that the metadata is correctly defined in fstab.
Which apparently some devices don't do.


Bug: 8766487
Bug: 12112624
Change-Id: I1b14b9d4c888e9348527984be3dce04bdd9f4de0
2013-12-12 23:27:42 +00:00
Koushik Dutta aac4854b45 Support custom graphics.c.
TWRP does not use this, but is needed for other things that depend
on it like charger.

Change-Id: Ic7d10e8230151bcc4be6cfa222a1e07231e7139f
2013-12-12 20:16:50 +00:00
Vojtech Bocek 81c29dc7c4 Add support for persistent variables in theme's <variables> section
* Add support for variables with persist="1", which will cause
  them saved into settings file and reloaded on next boot.
* This is handy for theme makers, who can use this to
  implement "theme settings".

Signed-off-by: Vojtech Bocek <vbocek@gmail.com>

Change-Id: I6415979011b38cbb15dec9909c445b02da6eadc0
2013-12-07 23:05:10 +01:00
bigbiff bigbiff 872a3b923f add fix /data/data contexts to fixPermissions
only compile symbols if selinux is defined
Change-Id: I7c8596360cdf2f715c8e1379fc55ea27d9370393
2013-12-06 19:40:14 -05:00
Doug Zongker a766c34f86 am d327c63a: am c87bab10: add the functions for multi-stage packages to updater
* commit 'd327c63af691a36fbf53866a3ae7ad27a43ebe3b':
  add the functions for multi-stage packages to updater
2013-12-02 23:30:51 +00:00
Dees Troy 4168a07310 Fix render issue when button has conditional
If the button has a conditional, the image render function will
return a 0 which indicated that an image was present even if it
was not if the condition was not being met during boot. When the
condition is met, mButtonImg was not set to NULL causing a render
request failure.

Change-Id: I32be0ddcdc1bf7ad22440d66018ef09484280afa
2013-11-29 05:02:40 +00:00
Doug Zongker d327c63af6 am c87bab10: add the functions for multi-stage packages to updater
* commit 'c87bab101893e8322b49d7c8600e3367b20ab50a':
  add the functions for multi-stage packages to updater
2013-11-27 10:57:44 -08:00
Doug Zongker c87bab1018 add the functions for multi-stage packages to updater
In order to support multi-stage recovery packages, we add the
set_stage() and get_stage() functions, which store a short string
somewhere it can be accessed across invocations of recovery.  We also
add reboot_now() which updater can invoke to immediately reboot the
device, without doing normal recovery cleanup.  (It can also choose
whether to boot off the boot or recovery partition.)

If the stage string is of the form "#/#", recovery's UI will be
augmented with a simple indicator of what stage you're in, so it
doesn't look like a reboot loop.

Change-Id: I62f7ff0bc802b549c9bcf3cc154a6bad99f94603
2013-11-26 15:46:57 -08:00
Dees Troy 995e88cfbe Add check during boot for SELinux support
Change-Id: Ib02867c403d1baa665dfb1d4f3137204e64a813c
2013-11-26 21:39:14 +00:00
Dees Troy 8c0f06b0d3 Update partition sizes after sideload
Change-Id: I4dbb4677f1c3bcfa0b0a9248ae0b411c155f927e
2013-11-26 21:21:29 +00:00
synergy dev a0ecc8c427 minui: do not use flexible array initialization
Avoiding the use of gnu extensions improves code portability

Change-Id: I441a49ce08b6ecb1d735ca453552fa92026c5016
2013-11-26 03:21:13 +00:00
Dees Troy a2e5efba0c Merge "Add getfooter tool for crypto debugging" into android-4.4 2013-11-19 17:10:06 +01:00
Dees Troy bc183725cd Merge "Update decrypt for 4.4" into android-4.4 2013-11-19 17:09:38 +01:00
Doug Zongker 9fb676aa92 Merge "Fix rare crash seen when dereferencing backgroundIcon[NONE]." 2013-11-18 17:58:12 +00:00
Alistair Strachan 027429a34f Restore default umask after forking for update-binary.
A system/core change made in Mar 26 2012 6ebf12f "init: Change umask
of forked processes to 077" changed the default umask of services
forked from init.

Because recovery is forked from init, it has a umask of 077. Therefore
when update-binary is forked from recovery, it too has a umask of 077.

This umask is overly restrictive and can cause problems for scripts
relying on minzip to extract binaries directly into the target
filesystem. Any directories updated by minzip will have their
permissions reset to r-x------ and created files will have similarly
restrictive permissions.

As it seems unlikely this security measure was intended to have this
side effect on legacy sideloads that do not have chmods to repair
the damage done by minzip, this change reverts the umask to 022 in
the fork made for update-binary.

Change-Id: Ib1a3fc83aa4ecc7480b5d0c00f3c7d0d040d4887
2013-11-18 09:52:46 -08:00
Alistair Strachan 9b8ae8038b Fix rare crash seen when dereferencing backgroundIcon[NONE].
Because backgroundIcon[] is not initialized by the ScreenRecoveryUI
constructor, it should be initialized explicitly to NULL in Init().

If it is not initialized, ScreenRecoveryUI::SetBackground() can fail
for the NONE icon because the NULL test can fail and junk will be
dereferenced.

Change-Id: I4e3738d2e241ed90df43c984fb41e0072933f50a
2013-11-18 09:51:32 -08:00
bigbiff bigbiff 163d474803 Add check for making sure theme exists for device
Change-Id: I9b178cebbb2834cd0c86088c8e78678f55d14e62
2013-11-16 13:47:30 -05:00
bigbiff bigbiff 705f16ea4b Add warning if DEVICE_RESOLUTION is not set in BoardConfig.mk
Change-Id: Ifc71c2e2078dbcd4b4893205bea9988e1e129f83
2013-11-16 10:15:46 -05:00
Dees Troy 8931007340 Add getfooter tool for crypto debugging
Change-Id: I3b9e5f72f3c1c77e41a45d3c94a44f36cc5cbc3c
2013-11-11 15:15:30 +00:00
Dees Troy 4dff2e6234 Update decrypt for 4.4
Change-Id: I8d5d7b6a49890e4707d70de8b429563de0d2ad99
2013-11-10 04:11:48 +00:00
Michael Runge 9690e2b370 am 40dfc474: am c64e76c7: Merge "Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add." into klp-dev
* commit '40dfc474c457f5be24e204e6a0c657c97acb8f3c':
  Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add.
2013-11-07 16:13:15 -08:00
Michael Runge 40dfc474c4 am c64e76c7: Merge "Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add." into klp-dev
* commit 'c64e76c75088b951f61a7f7bacf8af6eccd2ccfa':
  Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add.
2013-11-07 15:00:42 -08:00
Michael Runge c64e76c750 Merge "Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add." into klp-dev 2013-11-07 22:55:51 +00:00
Michael Runge ce7ca7165b Enable incremental builder to find files that moved, and
try to process them via patch + rename, instead of
delete + add.

b/11437930

Change-Id: I984349fbc9a8dac4379e00c0d66fc7d22c4eb834
2013-11-07 12:29:14 -08:00
Dees Troy 0226cd55ab Add reboot binary if it exists to recovery
Change-Id: I7efdba5cf4addf0036ea04ab76a8ecc2c3456e2a
2013-11-04 14:13:07 +00:00
Dees Troy 79ff74905b Fix merge conflicts 2013-11-04 14:01:22 +00:00
Dees Troy d63c7643fd Fix building of other utilities
Fix building all applypatch items
Fix building verifier_test (probably will not work right as-is)
but at least it builds without errors.

Change-Id: I7ab0c04d7d3d2c2e14b57480627e594f89a68b0b
2013-11-03 13:06:10 +00:00
Dees Troy ce8d8931ce Fix updater makefiles
Change-Id: Ie6262e3e80b1fd37f47b0f4a2ed343bd9f13b128
2013-11-03 02:49:35 +00:00
Dees Troy bb4c0cbc4b Fix merge conflicts and update for 4.4 kitkat
Make a copy of libmincrypt in TWRP source so we do not have to
ifdef verifier.cpp for various versions of mincrypt.

Remove reboot tool from toolbox (it was removed from 4.4 and did
not compile properly on some devices in older trees)
2013-11-02 20:43:26 +00:00
Kevin Steck 23f2c39906 Skip the = or \n before grabbing Zip_File.
Change-Id: I0454f8fc3cbe037fac63ef5861f8f373e4654d49
2013-10-24 20:40:22 +01:00
Dees Troy f4766921d4 Ensure root folders get added in split archives
Make sure that we add the root folder itself to get the perms and
SELinux contexts before splitting to a second archive.

Change-Id: Id93a9f9b4767b61bba38eb0cf7306c81a8540a3c
2013-10-24 21:33:39 +02:00
Dees Troy d8a26e0be9 Update licenses to all match
Change-Id: I3be70a897e563658736b2dec3a9ea2697b69b225
2013-10-24 21:30:42 +02:00
Dees Troy 3c71347f5a Fix spelling error
Change-Id: Id932ce1b99dee85feb788c513acad3384af6459e
2013-10-24 21:29:47 +02:00
Dees Troy 4c07ab3c0e Add toolbox_recovery rules
Build special limited toolbox with SELinux tools for recovery

Change-Id: Ifc76a6bd0468a72081f15ede2a68adf48af8a0f2
2013-10-24 21:27:54 +02:00
Dees Troy 7d5b71cbe2 Clean up init.rc 2013-10-23 20:29:55 +01:00
Dees Troy 14ca0259f9 Merge "fix getting and setting contexts in selinux" into android-4.3 2013-10-23 20:28:57 +01:00
bigbiff bigbiff d0c24c50d9 fix getting and setting contexts in selinux
recreate lost+found with selinux contexts

Change-Id: I19e8696d47319dfb641520956c8a27c2a796a0c3
2013-10-23 19:27:48 +00:00
Dees Troy fb9f7f3c7f Merge "Remove trailing spaces on auto generated backup names" into android-4.3 2013-10-23 20:10:15 +01:00