summaryrefslogtreecommitdiffstats
path: root/Android.mk (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-01-27Add cancel backup capability.bigbiff1-1/+1
This will stop the iteration of the partition objects, kill the current twrpTar thread and remove the backup directory. Implement TWAtomicInt class to give us a wrapper that automatically uses mutexes before the read and write to help ensure that the reads and writes will be atomic based on documentation. Change-Id: I645b22bc980a292e9c7202acb24ffd22ebe68c63
2015-01-22Use /twres instead of /res for theme resourcesDees Troy1-0/+5
AOSP and other ROM trees now do a rm -rf of the res folder during the ramdisk creation process that removes the TWRP resources. Using /twres instead of /res works around this issue making TWRP more compatible with AOSP and other build trees. Change-Id: I0d4c7e06ca381ac5aa0069b6f2b8c47f7dec49e7
2015-01-05Remove mtdutils source from libaosprecoveryEthan Yonker1-1/+1
Change-Id: I836ae4491f8da75fd13e73193774677e26daf16d
2015-01-05Update blkid to 2.25.0bigbiff1-1/+2
Break libblkid into 4 libraries: libblkid, libuuid, libutil-linux and libfdisk. This should help in later patch updates. Change-Id: I680d9a7feb031e5c29a603e9c58aff4b65826262
2014-12-12Fix compiling of dosfstools for arm64Ethan Yonker1-11/+7
Change-Id: If99d0be4b73cdeb388c6cb1b35a215d3b8b3b58d
2014-12-12Attempt to set the proper uid/gid/contexts on new files and dirsEthan Yonker1-2/+2
Files and folders that we create during backups, copy log, or MTP operations often do not have the proper uid/gid/contexts assigned. We will attempt to read the proper contexts from the settings storage path and assign those same contexts to any files or dirs that we create. Change-Id: I769f9479854122b49b499de2175e6e2d026f8afd
2014-12-12Fix generating symlinks for older treesDees Troy1-0/+3
Symlinks for unpigz, toolbox, and busybox were not generating in older trees. Change-Id: I3ca2a2047510954e66fb3cf49eef6af713d3268e
2014-12-10Use one mizip for allEthan Yonker1-17/+3
The new minzip did not compile in older trees due to needing mmap64. For older trees we will just use mmap instead. Remove all files and code pertaining to minzipold. Updater should now build properly in older trees as well. Eliminate use of PLATFORM_VERSION in favor of PLATFORM_SDK_VERSION which should be more consistent and reliable. Change-Id: I38d2b604a73d1b17a2072c7d60e990b81ece0c10
2014-12-10Fix mkexfatfs exclusion when TW_NO_EXFAT enabledMatt Mower1-1/+3
Push to android-5.0 Conflicts: Android.mk Change-Id: I0b831a4e6e52e4b314751035b750e6a398cb4d2d
2014-12-09Use linker64 on AArch64Ethan Yonker1-2/+3
Patch Set 3: Combine into one sed - by bigbiff Change-Id: Ice3147fae76575f6e09c7df201bcd3f949aa24ea
2014-12-04Reduce libs needed for decrypt and clean up old decypt filesEthan Yonker1-51/+6
Trim cryptfs.c to remove functions that TWRP does not use for decrypt and remove the need for libfs_mgr from cryptfs.c by passing some items to cryptfs.c from the partition manager. Add support for new fstab flags: encryptable and forceencrypt=/path/to/cryptokey For example: flags=forceencrypt=/dev/block/platform/sdhci-tegra.3/by-name/MD1 Note that "footer" is the default, so you do not need to set this flag on devices that use the footer for the crypto key. Also add mounttodecrypt if you need to mount a partition during the decrypt cycle for firmware of proprietary libs. Clean up decrypt and only support one version Android 5.0 lollipop decrypt should be backwards compatible with older versions so we will only support one version, 1.3 that came with 5.0 lollipop. Remove support for Samsung TouchWiz decrypt. It does not work with the latest versions of Samsung encryption anyway and it has not been updated to work with any AOSP decryption higher than 1.1 Change-Id: I2d9c6e31df50268c91ee642c2fa090f901d9d5c9
2014-12-03bootable recovery: we upgraded to 5.0.1erikcas1-3/+3
Change-Id: I9e2f359dd7274e1ae885f6a3b392d5ab5ca99ac9
2014-12-02 Make the android-5.0 branch compile in 4.4 to 4.1Ethan Yonker1-6/+15
Migrate previous minzip to minzipold replacing the existing minzipold. This will break compatibility with trees that do not support selinux (ICS and older). Migrate former verifier files to verifierold. Add fuse.h to recovery source because older trees do not have it. Add LOCAL_MODULE_TAGS where needed for 4.1 tree. Change-Id: Iade57cb2b0115af7fce9f56aa98636b1744a1ef4
2014-11-17Make libmincrypttwrp a shared libraryEthan Yonker1-4/+2
Change-Id: I8c3f084fc34b00edb4cd1b652290df8bc80ea1db
2014-11-12Add lollipop decrypt supportEthan Yonker1-1/+9
Kang in cryptfs.c and cryptfs.h from vold. Use TW_INCLUDE_L_CRYPTO := true to enable. Ramdisk must contain the normal fstab file in the root in the usual format of: fstab.{ro.hardware} For examble for Nexus 5: fstab.hammerhead Or on many Qualcomm devices: fstab.qcom Tested against Android 5.0 lollipop on Nexus 7 2012 grouper. Not sure if or how this will work when we are dealing with a device with a hardware keystore. Long term we need to add a GUI element to allow entering a pattern. For now you can decrypt a pattern unlock by converting the dots to numbers in the following format: 123 456 789 So an upper-case L would translate to 14789 as a password entered on the keyboard. Change-Id: I02c29e1f1c2eb29bf002c9fe0fc118357300b5b3
2014-11-12Make TWRP compile for arm64Ethan Yonker1-8/+16
-Remove dosfstools for arm64 until we can make it compile -Fix TW_USE_TOOLBOX flag to work again -Fix symlinking and handling of sh when using mksh -Fix legacy properties to find futex_wake function -Fix libcrecovery to not use bsd_signal anymore -Fix rules for building with regards to libcrecovery -Update toolbox_recovery rules to compile tools in lollipop -Fix a few compile errors specific to arm64 Testers report that TWRP does not boot on Nexus 9 and we fail to get a shell for adb shell. At least it compiles without errors. Change-Id: I286be8628defb60cc527b8a548c0bdfcb0ebb574
2014-11-07Fix merge derp in main Android.mk fileEthan Yonker1-14/+0
Change-Id: Id6fcae7b7b8d9a03ff09711844e987084bd001ac
2014-11-06Fix up libaosprecoveryEthan Yonker1-1/+1
Change-Id: I5a6d0c3c5f9a3a474464c0f06d6b09045459eebb
2014-11-06More make file tweaksEthan Yonker1-3/+4
Change-Id: I26fa571b151c50d133b550395576d4e0246e18bd
2014-11-06Fix some make file duplicatesEthan Yonker1-3/+0
Change-Id: Id226b2cde93cf0f81a6dd33fbdf70f8f954cade8
2014-11-04Fix some module tagsMatt Mower1-2/+1
There is no LOCAL_MODULES_TAGS. Fix by combining with LOCAL_MODULE_TAGS. Change-Id: I1cacef2f8123af3632ff6a52aa62c2f2e15ac37d
2014-11-03Remove dependence on build hax in makefilesMatt Mower1-2/+69
Update makefiles to no longer rely on INTERNAL_RECOVERY_FILES. Define LOCAL_ADDITIONAL_DEPENDENCIES instead. Set LOCAL_LDFLAGS to properly link recovery executable. Change-Id: I4542104c69399b5a19674b9772ab89c3709efa72
2014-10-14display cpu temperature in twrpJenkins1-0/+9
use TW_NO_CPU_TEMP := true to disable display use TW_CPU_CUSTOM_PATH := path to set custom path Change-Id: Id260ecbb4ec36a78442387329944f67003d0f6a0
2014-10-08Update RECOVERY_VARIANT blocking to use project-path-forMatt Mower1-5/+9
Using RECOVERY_VARIANT to allow recovery to reside at bootable/recovery-(variant) has changed at CM. project-path-for now handles all the path re-mapping. This is simply a compatibility update to be able to continue using RECOVERY_VARIANT with TWRP in a CM tree. Change-Id: I66769d85b2a111e837f206b1c9a5bc07d6ac0d86
2014-10-07Fixes for exfat-fuseCaptain Throwback1-2/+4
Change-Id: I46a1e7bf115c45616774b0571b17e38777ba87f8
2014-09-03Only use SELinux tools from toolbox if not in busyboxMatt Mower1-3/+9
If busybox has SELinux support, we don't need toolbox to provide SELinux specific tools. Check busybox for restorecon to see if SELinux support is present and then adjust the tools built by toolbox based on this. Change-Id: I30a2b036b97ac3e26510d5e0498c52d7a8af36e1
2014-09-03Build block TWRP with RECOVERY_VARIANTMatt Mower1-2/+14
Enable TWRP to reside alongside other recoveries with the naming convention: bootable/recovery(-flag). If TWRP resides at bootable/recovery and a device does not specify RECOVERY_VARIANT, then it will build like normal. If TWRP resides at bootable/recovery-twrp, then its makefiles will only be parsed if a device specifies 'RECOVERY_VARIANT := twrp'. This prevents TWRP specific makefile warnings/errors (notably, missing DEVICE_RESOLUTION) when another recovery is being built. Change-Id: I8f02fffcd79c309c7123b9428eedc69af02e126e
2014-09-03add mtp responder to TWRP.bigbiff bigbiff1-4/+9
Big thanks to Dees_Troy for helping with the implementation. Change-Id: I6c9c522b9c9de5dc139e2ecb0141008182ba07f0
2014-08-10Support reading since_epoch and secondary brightness filesxNUTx1-0/+3
TWFunc::Fixup_Time_On_Boot: Will now try to read /sys/class/rtc/rtc0/since_epoch to correct time, if that fails it will try to use the ats files to correct time. TWFunc::Set_Brightness: One single function to set brightness from both the automated functions and the gui actions. It is able to set a second brightness path if present, it will set them both the same value. Many Sony devices have 2 brightness files in the sysfs that must be set to properly set the brightness. Change-Id: I7ca582109085dfbcb46b8de73ad031e4b7903fca
2014-08-09Add command line capabilitiesEthan Yonker1-0/+3
Allows sending openrecoveryscript commands to TWRP via shell. This may be handy for visually impaired users, for various one click utilities to drive TWRP commands from a computer, for using TWRP when a catastrophic hardware failure like a shattered screen prevents you from being able to use touch, or even on devices like a TV stick where touch and USB mouse input is unavailable. This patch also includes a few minor changes to openrecoveryscript including proper support for rebooting via the script and for decrypting the device via the command line. Change-Id: I796ad168efdd2da9c25334ac93d1079daaa7b0bc
2014-07-16Allow custom bootloader msg offset in block miscMatt Mower1-0/+4
Use board define BOARD_RECOVERY_BLDRMSG_OFFSET with a decimal integer to define a custom offset where the bootloader message should be read/written. Change-Id: Id13a23dd41bb7d907b96d657b8e21eb839dfeaa9
2014-07-10do sdcard sideloading through the fuse filesystemDoug Zongker1-1/+2
Make a fuse filesystem that sits on top of the selected package file on the sdcard, so we can verify that the file contents don't change while being read and avoid copying the file to /tmp (that is, RAM) before verifying and installing it. Change-Id: Ifd982aa68bfe469eda5f839042648654bf7386a1
2014-07-10refactor fuse sideloading codeDoug Zongker1-0/+13
Split the adb-specific portions (fetching a block from the adb host and closing the connections) out from the rest of the FUSE filesystem code, so that we can reuse the fuse stuff for installing off sdcards as well. Change-Id: I0ba385fd35999c5f5cad27842bc82024a264dd14
2014-07-09Track backup and restore progressEthan Yonker1-1/+2
Track backup and restore progress based on the sizes of the files as they are being added to the tar backup file. Update the progress bar based on the sizes of the files. Change-Id: Idf649efa1db3e91830b4b2add86203a3f30042ff
2014-06-30Add "include $(CLEAR_VARS)" for 4.4 ROMS (clears LOCAL_BUILT/LOCAL_INSTALLED error)Motorhead19911-0/+2
Change-Id: Ibbba0ce9c7ebadee40e42b740c83214fd1cd56ac
2014-06-18Use LOCAL_REQUIRED_MODULES for mkfs.f2fsJi-Hwan Lee1-5/+3
Instead of LOCAL_ADDITIONAL_DEPENDENCIES. Bug: 15702524 Change-Id: Ic152ae60354bf09eccdb9a85dcd04f0f076a6422
2014-06-17Support F2FS for the data partitionJP Abgrall1-0/+6
This adds F2FS support - for wiping a device - for the install "format" command. Note: crypto data in "footer" with a default/negative length is not supported, unlike with "ext4". Change-Id: I8d141a0d4d14df9fe84d3b131484e9696fcd8870 Signed-off-by: JP Abgrall <jpa@google.com>
2014-04-15Enable rk30xx hackJ. Carlos Romero1-6/+0
Fix problem with erase/restore mtd partitions on Rockchip SoC Change-Id: I3320f711446441cf79e38e9ffb5dfdb6b1717a55
2014-04-15Add find file class to search for filesEthan Yonker1-0/+1
Scan a folder for a file based on file name. First scan the files in the current path, then search real directories and finally search symlinks in that order. Goal is to locate important sysfs files for things like brightness, battery capacity, lun files, etc This implementation just scans for the brightness file for the LCD Change-Id: I8ed3e74a2e2851d58b443718b6e92b50a5491f08
2014-04-04Tweak OEM modeEthan Yonker1-3/+6
Change-Id: Ic440e33fa22aa7b082097366f10b333cc945362a
2014-04-04Add option to build TWRP with toolbox instead of busyboxEthan Yonker1-0/+2
Makes a smaller TWRP Uses mksh for shell Change-Id: If78d7745dda8919fcb2e9c9b60c6696063c14114
2014-04-04Allow building of an OEM friendly TWRPEthan Yonker1-0/+3
Disable theming Disable creating the TWRP folder for the settings file Change factory reset on data/media devices to a full wipe Change-Id: I3104282b5dd3f55dfff7c8cf39c72750af08563d
2014-03-27Allow disabling legacy propertiesMatt Mower1-0/+3
Introduce TW_NO_LEGACY_PROPS flag for users that build TWRP in non-kitkat trees and don't need the legacy prop environment. Change-Id: Iacb2d9af7d7069acb3d0a96bb34f32ded6317a20
2014-03-11remove pixelflinger from recoveryDoug Zongker1-1/+0
Recovery now draws directly to the framebuffer by rolling its own graphics code, rather than depending on libpixelflinger. The recovery UI is modified slightly to eliminate operations that are slow with the software implementation: when the text display / menu is turned on, it now appears on a black background instead of a dimmed version of the recovery icon. There's probably substantial room for optimization of the graphics operations. Bug: 12131110 Change-Id: Iab6520e0a7aaec39e2ce39377c10aef82ae0c595 Conflicts: minui/resources.c
2014-03-11allow CheckKey to request mounting /systemDoug Zongker1-0/+1
Also provide a default implementation of CheckKey that's reasonable for many devices (those that have power and volume keys). Change-Id: Icf6c7746ebd866152d402059dbd27fd16bd51ff8
2014-03-11remove pixelflinger from recoveryDoug Zongker1-1/+0
Recovery now draws directly to the framebuffer by rolling its own graphics code, rather than depending on libpixelflinger. The recovery UI is modified slightly to eliminate operations that are slow with the software implementation: when the text display / menu is turned on, it now appears on a black background instead of a dimmed version of the recovery icon. There's probably substantial room for optimization of the graphics operations. Bug: 12131110 Change-Id: Iab6520e0a7aaec39e2ce39377c10aef82ae0c595
2014-03-09Support pre-KitKat properties for update-binarythat1-1/+1
Google changed the in-memory format for storing properties in 4.4. Zips containing an older update-binary expect the old format, otherwise assertions on properties in the update script fail. This is just enough of the old property service to copy the properties to the legacy format before running the updater. Change-Id: I404680384bdc5e952609e295029ab0a0faf743a5
2014-03-03Fix build break caused by vold changePaul Lawrence1-0/+1
cryptfs.h now includes sha header from libcrypto folder Change-Id: Icd02c88971aedf96040c3bd9ca759e531546023b
2014-02-28Restore capabilities to run-as binaryDees Troy1-0/+3
Change-Id: I9e2b8e9b69c94b94c57143c04b950530490ec33e
2014-02-14clean up some warnings when building recoveryDoug Zongker1-0/+2
Change-Id: I1541534ee6978ddf8d548433986679ce9507d508
2014-02-14remove 'retouch' ASLR supportDoug Zongker1-1/+0
Older versions of android supported an ASLR system where binaries were randomly twiddled at OTA install time. Remove support for this; we now use the ASLR support in the linux kernel. Change-Id: I8348eb0d6424692668dc1a00e2416fbef6c158a2
2014-02-12Add twrpTar binaryEthan Yonker1-1/+2
Change-Id: I9db1aac350cd2ca02cceccc249ebd2f0b3c3c671
2014-02-04Load RTC offset on Qualcomm Krait chips, fixes the broken time & dateVojtech Bocek1-0/+7
Signed-off-by: Vojtech Bocek <vbocek@gmail.com> Change-Id: I04ad07f3e6be961003e063be8c648e191e2f9431
2014-01-28Fix make file flag name for minzipEthan Yonker1-1/+1
Change-Id: I53380ee203c1fe75d37f24f99e36f5c5a62e5b39
2014-01-16program to store unencrypted files in an encrypted filesystemDoug Zongker1-0/+1
uncrypt can read a file on an encrypted filesystem and rewrite it to the same blocks on the underlying (unencrypted) block device. This destroys the contents of the file as far as the encrypted filesystem is concerned, but allows the data to be read without the encryption key if you know which blocks of the raw device to access. uncrypt produces a "block map" file which lists the blocks that contain the file. For unencrypted filesystem, uncrypt will produce the block map without touching the data. Bug: 12188746 Change-Id: Ib7259b9e14dac8af406796b429d58378a00c7c63
2014-01-16do verification and extraction on memory, not filesDoug Zongker1-0/+1
Changes minzip and recovery's file signature verification to work on memory regions, rather than files. For packages which are regular files, install.cpp now mmap()s them into memory and then passes the mapped memory to the verifier and to the minzip library. Support for files which are raw block maps (which will be used when we have packages written to encrypted data partitions) is present but largely untested so far. Bug: 12188746 Change-Id: I12cc3e809834745a489dd9d4ceb558cbccdc3f71
2013-12-19Create a TWRP Disk Usage Class to retain state about a directory and whether we should skip it in other classes like twrpTar.bigbiff bigbiff1-0/+1
Moved Get_Folder_Size to this new class. Change-Id: If0a0220f900eb109581f2eeaf7b76e3f7d6886f1
2013-12-13recovery: wipe encryption metadata along with data partitionDoug Zongker1-1/+1
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-11-11Add getfooter tool for crypto debuggingDees Troy1-0/+1
Change-Id: I3b9e5f72f3c1c77e41a45d3c94a44f36cc5cbc3c
2013-11-10Update decrypt for 4.4Dees Troy1-0/+2
Change-Id: I8d5d7b6a49890e4707d70de8b429563de0d2ad99
2013-11-03Fix building of other utilitiesDees Troy1-1/+2
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-10-24Add toolbox_recovery rulesDees Troy1-1/+6
Build special limited toolbox with SELinux tools for recovery Change-Id: Ifc76a6bd0468a72081f15ede2a68adf48af8a0f2
2013-10-16Add toolbox_recovery rulesDees Troy1-1/+6
Build special limited toolbox with SELinux tools for recovery Change-Id: Ifc76a6bd0468a72081f15ede2a68adf48af8a0f2
2013-10-10Add support for ECDSA signaturesKenny Root1-1/+10
This adds support for key version 5 which is an EC key using the NIST P-256 curve parameters. OTAs may be signed with these keys using the ECDSA signature algorithm with SHA-256. Change-Id: Id88672a3deb70681c78d5ea0d739e10f839e4567
2013-09-12Make SELinux automatic if presentDees Troy1-3/+5
2013-09-10Kang in older minzip for building in CM9 & CM7Dees Troy1-1/+5
CM7 and CM9 do not have libselinux needed in the newer minzip.
2013-09-05allow CheckKey to request mounting /systemDoug Zongker1-0/+1
Also provide a default implementation of CheckKey that's reasonable for many devices (those that have power and volume keys). Change-Id: Icf6c7746ebd866152d402059dbd27fd16bd51ff8
2013-08-29Change to use HAVE_SELINUX build flagDees_Troy1-1/+1
2013-08-25Add a TW_NO_TIMEOUT optionRicardo Gomez1-0/+3
Change-Id: Ifb3a5bd9f1e6c2e9810c90b0aec198e91d5956fc
2013-08-24Add SELinux supportDees_Troy1-4/+9
Change-Id: I11e1a3d018d921d96ba08915925b14bf633be6ed
2013-08-11Add libselinux for CM10.2 treeDees_Troy1-0/+5
Change-Id: I94979806935546fa40a87611be5185c14b557377
2013-08-11Remove libjpegtwrp and use CM provided libjpegDees_Troy1-2/+1
2013-07-01Fix MTD MountingDees_Troy1-1/+1
Pulled part of change from kokotas in this patch set: http://review.teamw.in/#/c/586/ Change-Id: If1c5b1563df16f9c561c94f61010f6a99f36efa0
2013-07-01FB2PNG: Add fb2png source to TWRPTalustus1-0/+5
* Add Source of fb2png to TWRP tree * Android.mk by PhilZ-cwm6 * Makefile for CrossCompiling via external toolchan by me (Talustus) Change-Id: If9680688df6e4c9c567f74f46dfc303566b868ba
2013-06-22Support encrypted backup filesDees_Troy1-1/+7
Also includes features merged from: Update twrpTar by kokotas Revised function entryExists(). Added function to get archive's uncompressed size. Added option to exclude item(s) from the archive. Revised forks() http://review.teamw.in/#/c/590/ Change-Id: I01fa2c81643161984eff2625247af75990684bd9
2013-04-10Add liblogYing Wang1-0/+1
Bug: 8580410 Change-Id: Ie60dade81c06589cb0daee431611ded34adef8e6
2013-04-04Add new SliderValue GUI widgetVojtech Bocek1-1/+0
Signed-off-by: Vojtech Bocek <vbocek@gmail.com> Change-Id: Ic5d44314f501341140dd7059d1cb753341f5844c
2013-04-04Move all AOSP code out of recovery binaryDees_Troy1-26/+30
Improves license compatibility between GPL and Apache Change-Id: I2b165aa575bb6213af6b07936f99610c113443f0
2013-03-11add no fb blankingbigbiff bigbiff1-0/+3
Change-Id: Iaf771257d8f904807ca6f6c1a6c3d7993abadb85
2013-03-07use md5.c for computation of md5sumsbigbiff bigbiff1-0/+1
create a framework for computing digests and reading digests in TWRP add space for backwards compatibility with bb md5sum Change-Id: Ia18e3f430eed5eba22e5052d39b9b8d88ecd4536
2013-03-01Add option for custom battery pathDees_Troy1-0/+3
2013-02-27Add fast scroll bar to fileselectorVojtech Bocek1-1/+3
Also fix build problems with libblkid in CM7 Signed-off-by: Vojtech Bocek <vbocek@gmail.com> Change-Id: I1cd4573e25b247171e4bd8cc05b70543f897a454
2013-02-25use libblkid to get filesystem typebigbiff bigbiff1-2/+3
we can now use libblkid to detect exfat
2013-02-20Configurable timeout and brightness settingsDees_Troy1-0/+6
Change-Id: I924297ab0dcf920cd4b4b617949c3b16cbc68e43
2013-02-20Move to using the new unified fstab in recovery.Ken Sumrall1-0/+2
Instead of reading it's own fstab, have recovery invoke fs_mgr to read the unified fstab. Change-Id: I80c75d2c53b809ac60a4a69f0ef7ebfa707c39e9
2013-02-19support devices without bootpartitionChampionSwimmer1-0/+3
if device has no /boot partition, then add the following flag in BoardConfig.mk TW_HAS_NO_BOOT_PARTITION Signed-off-by: ChampionSwimmer <android@championswimmer.tk> Change-Id: I92b36b2e6ca690e2422b36004ae9bb315d24a7c2
2013-02-19Add TW_USE_MODEL_HADWARE_ID_FOR_DEVICE_ID parameter for correct model identificationAnatoly Smaznov1-2/+4
Change-Id: Ic6440c624b5cfbdb0f24681461748a0da16bf95e
2013-02-07Add write buffer for tar writesDees_Troy1-1/+2
update fuse to 2.9.2 catch return from unlink so that we don't print error messages when things work Change-Id: I1115039a0fa5d9d73f78ef1abd79755d7ffd9d96
2013-02-01Fix fail over to vfat from exfatDees_Troy1-0/+3
Fix issues with MD5 checking using chdir and leaving the working dir in a subfolder that prevented unmounting sometimes. Change-Id: I01a563d722f474297ed3f7a30064c3a61748ade3
2013-01-28exFAT improvements, fixesDees_Troy1-7/+7
Move Exec_Cmd to libcrecovery __popen Provide opt out build flag for exFAT Default fstype to exfat on external storage if exfat support is present and fstype is vfat or auto Fix invalid unmount errors Improve handling of unencrypted sdcards on Samsung devices
2013-01-22move libexfat and fuse to be compiled with mkexfatfsbigbiff bigbiff1-3/+3
2013-01-19change fuse to be compiled with TW_INCLUDE_FUSE_EXFATbigbiff bigbiff1-2/+2
update exfat_fuse to newest updates Always compile mkexfatfs
2013-01-10Add libsparse if it existsDees_Troy1-0/+4
2013-01-09Add libtar to TWRP instead of using busybox tarbigbiff bigbiff1-5/+14
Add proper mkdosfs tool Add fuse to TWRP Add experimental exfat-fuse to TWRP Convert all system() functions to use new Exec_Cmd function
2013-01-08Add Samsung TouchWiz decryptiona39552691-2/+14
Change-Id: I418680e59372160dabfe3e2d5f0208229aa151ae
2013-01-05Work around MEMERASE ioctl for rk3066 compatibilitySergey 'Jin' Bostandzhyan1-0/+4
Due to a kernel bug and no available sources we have to work around the MEMERASE ioctl - if used, it hangs and never returns. I straced the original recovery executable and could see that it is simply calling write() with a bunch of zeroes instead of using MEMERASE. Added a hack that does the same and now the resulting TWRP recovery image works. Change-Id: I1b1c1c9e870e350776346bdca5d442c7ef565aa0
2012-10-16Remove HAVE_SELINUX guardsKenny Root1-12/+1
Change-Id: Ia96201f20f7838d7d9e8926208977d3f8318ced4
2012-10-10redo fix permissions in c++ for faster changesbigbiff bigbiff1-0/+1
2012-10-02Create busybox symlinks during compileDees_Troy1-0/+14
2012-09-28Revert busybox for CM7 compatibility, add exclamation point to format dataDees_Troy1-14/+0
2012-09-27Create symlinks at compile time for busyboxDees_Troy1-0/+11
2012-09-27Update sdcard partitioning to C++Dees_Troy1-1/+0
2012-09-27Port reboot functions to C++Dees_Troy1-3/+1
2012-09-26Add backup size checkingDees_Troy1-1/+1
Converted bootloader.cpp to TWRP and removed AOSP fstab parsing from startup
2012-09-26Convert makelist to C++Dees_Troy1-1/+1
2012-09-20Add and improve OpenRecoveryScript supportDees_Troy1-1/+2
Improve zip finding in ORS engine Add support for restoring with just a backup name
2012-09-18Cleanup extra-functionsDees_Troy1-1/+0
2012-09-17Update backup and restore code, adb sideloadDees_Troy1-3/+3
Fixed a problem with using make_ext4fs by making its lib a dynamic lib. Added ADB sideload zip install feature - no way to cancel it yet. Improve backup and restore code.
2012-09-14Move to shared libmincryptDees_Troy1-4/+4
Remove mincrypt source from TWRP and add rule to make libmincrypt as a shared library. No more crashes during zip signature verification and less code to maintain in TWRP.
2012-09-14Add wipe functions, compiles in CM7, text shows in UI, zips installDees_Troy1-1/+2
Zip install works, had to move mincrypt code into TWRP to prevent a crash when checking the zip signature. Added wipe functions Made it compile in CM7 Made text show up in console and logging
2012-09-12Make text appear in GUI console, Zip install works.Dees_Troy1-2/+5
Move TW zip install code to C++ so that it can use the ui->functions. Bring in mincrypt code to fix a crash during signature checking.
2012-09-11Move device ID code to data managerDees_Troy1-0/+3
2012-09-06Hax to make it bootDees_Troy1-1/+1
2012-09-05TWRP-ify AOSP codeDees_Troy1-24/+168
Pull in most TWRP sources Stub out partition management code Make it compile -- probably will not boot Kind of a mess but have to start somewhere
2012-08-24Add libm due to libpng dependency.Stephen Hines1-0/+1
Change-Id: I0bdc2df5ef358813587f613a1b50eaa850e95782
2012-08-14Use the static version of libsparseJoe Onorato1-1/+1
Change-Id: I664f8dc7939f8f902e4775eaaf6476fcd4ab8ed2
2012-08-14Multiple modules with the same name are going away.Joe Onorato1-35/+59
Change-Id: I4154db066865d6031caa3c2c3b94064b2f28076e
2012-07-24Use the static version of libsparseJoe Onorato1-1/+1
Change-Id: I664f8dc7939f8f902e4775eaaf6476fcd4ab8ed2
2012-07-22Multiple modules with the same name are going away.Joe Onorato1-35/+59
Change-Id: I4154db066865d6031caa3c2c3b94064b2f28076e
2012-07-18Link against libsparseColin Cross1-2/+2
libext4_utils requires libsparse, link against it as well. Change-Id: I4d6aec0e5edcf1ed42118b7b77adcded2858d3dd
2012-03-30Extend recovery and updater to support setting file security contexts.Stephen Smalley1-1/+2
Extend minzip, recovery, and updater to set the security context on files based on the file_contexts configuration included in the package. Change-Id: Ied379f266a16c64f2b4dca15dc39b98fcce16f29
2012-01-31libz is a superset of libunz, so we don't need both.Elliott Hughes1-2/+2
Change-Id: I082995c338feaf5d11288300768624cd51b027a4
2012-01-24Add libselinux to LOCAL_STATIC_LIBRARIES wherever libext4_utils is used.Stephen Smalley1-0/+11
libext4_utils now calls libselinux in order to determine the file security context to set on files when creating ext4 images. Change-Id: I09fb9d563d22ee106bf100eacd4cd9c6300b1152
2012-01-18support "sideload over ADB" modeDoug Zongker1-2/+4
Rather than depending on the existence of some place to store a file that is accessible to users on an an unbootable device (eg, a physical sdcard, external USB drive, etc.), add support for sideloading packages sent to the device with adb. This change adds a "minimal adbd" which supports nothing but receiving a package over adb (with the "adb sideload" command) and storing it to a fixed filename in the /tmp ramdisk, from where it can be verified and sideloaded in the usual way. This should be leave available even on locked user-build devices. The user can select "apply package from ADB" from the recovery menu, which starts minimal-adb mode (shutting down any real adbd that may be running). Once minimal-adb has received a package it exits (restarting real adbd if appropriate) and then verification and installation of the received package proceeds. always initialize usb product, vendor, etc. for adb in recovery Set these values even on non-debuggable builds, so that the mini-adb now in recovery can work.
2012-01-10support "sideload over ADB" modeDoug Zongker1-2/+4
Rather than depending on the existence of some place to store a file that is accessible to users on an an unbootable device (eg, a physical sdcard, external USB drive, etc.), add support for sideloading packages sent to the device with adb. This change adds a "minimal adbd" which supports nothing but receiving a package over adb (with the "adb sideload" command) and storing it to a fixed filename in the /tmp ramdisk, from where it can be verified and sideloaded in the usual way. This should be leave available even on locked user-build devices. The user can select "apply package from ADB" from the recovery menu, which starts minimal-adb mode (shutting down any real adbd that may be running). Once minimal-adb has received a package it exits (restarting real adbd if appropriate) and then verification and installation of the received package proceeds. Change-Id: I6fe13161ca064a98d06fa32104e1f432826582f5
2011-11-04move key processing to RecoveryUIDoug Zongker1-2/+3
Move the key for handling keys from ScreenRecoveryUI to RecoveryUI, so it can be used by devices without screens. Remove the UIParameters struct and replace it with some new member variables in ScreenRecoveryUI. Change-Id: I70094ecbc4acbf76ce44d5b5ec2036c36bdc3414
2011-11-01fix verifier testDoug Zongker1-2/+2
Needs to link with libminui and ui.cpp now. Change-Id: I5005e12cf8adb13d320921e3f9174e8c7304d7bf
2011-11-01move key processing to RecoveryUIDoug Zongker1-0/+1
Move the key for handling keys from ScreenRecoveryUI to RecoveryUI, so it can be used by devices without screens. Remove the UIParameters struct and replace it with some new member variables in ScreenRecoveryUI. Change-Id: I4c0e659edcbedc0b9e86ed261ae4dbb3c6097414
2011-10-31C++ class for device-specific codeDoug Zongker1-7/+7
Replace the device-specific functions with a class. Move some of the key handling (for log visibility toggling and rebooting) into the UI class. Fix up the key handling so there is less crosstalk between the immediate keys and the queued keys (an increasing annoyance on button-limited devices). Change-Id: I698f6fd21c67a1e55429312a0484b6c393cad46f
2011-10-31temporarily remove verifier_test binaryDoug Zongker1-6/+6
Change-Id: I61f249861b27180225fb786901275d2da611531b
2011-10-31refactor ui functions into a classDoug Zongker1-1/+1
Move all the functions in ui.c to be members of a ScreenRecoveryUI class, which is a subclass of an abstract RecoveryUI class. Recovery then creates a global singleton instance of this class and then invoke the methods to drive the UI. We use this to allow substitution of a different RecoveryUI implementation for devices with radically different form factors (eg, that don't have a screen). Change-Id: I76bdd34eca506149f4cc07685df6a4890473f3d9
2011-10-31C++ class for device-specific codeDoug Zongker1-1/+1
Replace the device-specific functions with a class. Move some of the key handling (for log visibility toggling and rebooting) into the UI class. Fix up the key handling so there is less crosstalk between the immediate keys and the queued keys (an increasing annoyance on button-limited devices). Change-Id: I8bdea6505da7974631bf3d9ac3ee308f8c0f76e1
2011-10-31turn recovery into a C++ binaryDoug Zongker1-7/+7
Change-Id: I423a23581048d451d53eef46e5f5eac485b77555
2011-10-29refactor ui functions into a classDoug Zongker1-1/+1
Move all the functions in ui.c to be members of a ScreenRecoveryUI class, which is a subclass of an abstract RecoveryUI class. Recovery then creates a global singleton instance of this class and then invoke the methods to drive the UI. We use this to allow substitution of a different RecoveryUI implementation for devices with radically different form factors (eg, that don't have a screen). Change-Id: I7fd8b2949d0db5a3f47c52978bca183966c86f33
2011-10-28turn recovery into a C++ binaryDoug Zongker1-7/+7
Change-Id: I68a67a4c8edec9a74463b3d4766005ce27b51316
2011-07-12Remove the simulator target from all makefiles.Jeff Brown1-4/+0
Bug: 5010576 Change-Id: Ib465fdb42c8621899bea15c04a427d7ab1641a8c
2011-02-09Fix x86 build.Ying Wang1-3/+0
Change-Id: Iada6268b0a72ee832113ea397334cc7950a37051
2011-01-18remove encrypted filesystem code from recoveryDoug Zongker1-2/+1
This was never used; encrypted filesystems are being done a different way now. Change-Id: I519c57b9be44d001f0b81516af7bfc252069892b
2010-09-21remove the notion of "root path"; support mixed flash typesDoug Zongker1-2/+3
Remove the wacky notion of "roots" and "root paths" (those things that look like "FOO:some/path" instead of just "/foo/some/path"). Let each device specify its own table of available partitions and how to mount them (needed for devices that use both MTD/yaffs2 and EMMC/ext4 partitions). (Cherrypicked from gingerbread w/slight edits.) Change-Id: I2479ce76b13e73f1d12035c89386c3a82b3edf51
2010-09-21remove the notion of "root path"; support mixed flash types (do not merge)Doug Zongker1-2/+3
Remove the wacky notion of "roots" and "root paths" (those things that look like "FOO:some/path" instead of just "/foo/some/path"). Let each device specify its own table of available partitions and how to mount them (needed for devices that use both MTD/yaffs2 and EMMC/ext4 partitions). Change-Id: I18b0a572a71c5e087e0b7ae11b1774388339bfd1
2010-08-02Working ASLR implementationHristo Bojinov1-0/+1
Separate files for retouch functionality are in minelf/* ASLR for shared libraries is controlled by "-a" in ota_from_target_files. Binary files are self-contained. Retouch logic can recover from crashes. Signed-off-by: Hristo Bojinov <hristo@google.com> Change-Id: I76c596abf4febd68c14f9d807ac62e8751e0b1bd
2010-06-30support userdata and cache partitions using emmc/ext4 instead of mtd/yaffsDoug Zongker1-1/+8
Change-Id: I827af624c9ec7c64decb702de8c0310cf19b4141
2010-04-02DO NOT MERGEOscar Montemayor1-1/+1
Encrypted File Systems integration. Recovery changes. Change-Id: I932f73a6f937aac061128e1134eab08c30f0471d
2010-03-27DO NOT MERGEOscar Montemayor1-2/+1
Removing unused recovey options. Please refer to Bug#2502219 for more info. Change-Id: I2fe3cdb0c8b93ed7e1cc4093824fbe181f5f0aea
2010-03-15Encrypted File Systems part 3. Recovery changes.Oscar Montemayor1-1/+1
Change-Id: I932f73a6f937aac061128e1134eab08c30f0471d
2010-02-18relocate applypatch; add type system and new functions to edifyDoug Zongker1-0/+1
- Move applypatch to this package (from build). - Add a rudimentary type system to edify: instead of just returning a char*, functions now return a Value*, which is a struct that can carry different types of value (currently just STRING and BLOB). Convert all functions to this new scheme. - Change the one-argument form of package_extract_file to return a Value of the new BLOB type. - Add read_file() to load a local file and return a blob, and sha1_check() to test a blob (or string) against a set of possible sha1s. read_file() uses the file-loading code from applypatch so it can read MTD partitions as well. This is the start of better integration between applypatch and the rest of edify. b/2361316 - VZW Issue PP628: Continuous reset to Droid logo: framework-res.apk update failed (CR LIBtt59130) Change-Id: Ibd038074749a4d515de1f115c498c6c589ee91e5
2010-02-03bump updater API version to 3; deprecate firmware update commandDoug Zongker1-2/+1
Remove support for the HTC-specific "firmware" update command and the corresponding edify function write_firmware_update(). This functionality is now done by an edify extension library that lives in vendor/htc. Change-Id: I80858951ff10ed8dfff98aefb796bef009e05efb
2009-12-10Recovery changes for Encrypted File Systems.Oscar Montemayor1-8/+9
This change enables/disables the Encrypted file systems feature. It reads some properties form the data partition, wipes the partition out, and then rewrites the proper properties again into the data partition to signal that encrypted FS are enabled.
2009-12-10add a simple unit test for the OTA package verifierDoug Zongker1-0/+16
2009-11-13eclair snapshotJean-Baptiste Queru1-4/+10
2009-07-15remove amendDoug Zongker1-3/+1
Yank all the code to install OTA packages out of the recovery binary itself. Now packages are installed by a binary included in the package (run as a child of recovery), so we can make improvements in the installation process without waiting for a new release to use them.
2009-06-18let the "firmware" command take the file straight from the packageDoug Zongker1-0/+3
To do a firmware-install-on-reboot, the update binary tells recovery what file to install before rebooting. Let this file be specified as "PACKAGE:<foo>" to indicate taking the file out of the OTA package, avoiding an extra copy to /tmp. Bump the API version number to reflect this change.
2009-06-12fix sim build in donut, tooDoug Zongker1-4/+4
2009-06-12fix simulator build by excluding more of recoveryDoug Zongker1-3/+4
2009-06-12edify extensions for OTA package installation, part 1Doug Zongker1-0/+2
Adds the following edify functions: mount unmount format show_progress delete delete_recursive package_extract symlink set_perm set_perm_recursive This set is enough to extract and install the system part of a (full) OTA package. Adds the updater binary that extracts an edify script from the OTA package and then executes it. Minor changes to the edify core (adds a sleep() builtin for debugging, adds "." to the set of characters that can appear in an unquoted string).
2009-06-11split out device-specific recovery UI code into vendor directoriesDoug Zongker1-6/+11
Take some device-specific details of the recovery UI (eg, what keys to press to bring up the interface and perform actions, exact text of the menu, etc.) and split them out into separate C functions. Arrange to take implementations of those functions from the appropriate vendor directory at build time. Provide a default implementation in case no vendor-specific one is available.
2009-04-02AI 144132: am: CL 144130 Don't build OTA package keys into the recovery binary; readDoug Zongker1-13/+0
them from an external file in the recovery image. Use the test-keys for all builds. Original author: dougz Merged from: //branches/donutburger/... Automated import of CL 144132
2009-04-02AI 144130: Don't build OTA package keys into the recovery binary; readDoug Zongker1-13/+0
them from an external file in the recovery image. Use the test-keys for all builds. Automated import of CL 144130
2009-03-28AI 143289: am: CL 143128 Use PNG instead of BMP for recovery image icons. This savesDoug Zongker1-1/+1
about 60k from the recovery and system images. Original author: dougz Merged from: //branches/donutburger/... Automated import of CL 143289
2009-03-27AI 143128: Use PNG instead of BMP for recovery image icons. This savesDoug Zongker1-1/+1
about 60k from the recovery and system images. Automated import of CL 143128
2009-03-04auto import from //depot/cupcake/@135843The Android Open Source Project1-0/+60
2009-03-04auto import from //depot/cupcake/@135843The Android Open Source Project1-60/+0
2008-12-18Code drop from //branches/cupcake/...@124589The Android Open Source Project1-0/+3