summaryrefslogtreecommitdiffstats
path: root/partitionmanager.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-10-08performance profile supportTom Hite1-5/+21
Many device trees support the recovery.perf.mode property to set various core frequencies and online/offline mode. TWRP is highly threaded, and support for multiple cores on many operations dramatically recudes the time, e.g., backups, zip flashes, etc. p2: removed user notifications Change-Id: I957b8ca40b241c0af0471327eeb329cce1816017
2014-10-08mtp: cleanup, fixes and performance improvementsthat1-7/+6
- use std::map instead of linked list - read directories on demand - fix writing zip files to storage root - fix creating directories - lots of minor fixes - simplify generation of storage IDs and make them spec compliant Change-Id: I2137c27549ddbdc58466f2e3aeda464fac70a3c5
2014-09-20Attempt to automatically identify data/media devicesEthan Yonker1-10/+21
Change-Id: Ia3007fbced9ce3bc94efdb3dacc582a5e68a49a4
2014-09-15Additional checks to prevent partitioning internal storageEthan Yonker1-1/+1
Change-Id: I9fcd7e0169fbdd52405c0c86aafbef091f69411e
2014-09-11Fix handling of MTP fork/child processEthan Yonker1-1/+6
Change-Id: Iacd8a38d21e9c8b0dfafefbeb646f46cd3ba02a1
2014-09-05MTP: Use fork instead of pthreadEthan Yonker1-7/+12
Change-Id: I95cf6f4def0c86f40c775738f0712323f0a0f146
2014-09-03Allow toggle of MTP debugEthan Yonker1-1/+4
Via command line in TWRP: twrp set tw_mtp_debug 1 This will enable debugging for MTP. You will need to disable and re-enable MTP in order to see the debug logging. Change-Id: Ia7bb0c584e10a4322b65ecf80a67ed7ee836b38e
2014-09-03add mtp responder to TWRP.bigbiff bigbiff1-11/+104
Big thanks to Dees_Troy for helping with the implementation. Change-Id: I6c9c522b9c9de5dc139e2ecb0141008182ba07f0
2014-07-09Track backup and restore progressEthan Yonker1-9/+26
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-07-09Color in the consoleEthan Yonker1-2/+2
Allow each gui_print command to specify a color Change LOGERR to use the error color Theme should specify colors for error, warning, and highlight Change-Id: Ie8ece34111f604e25fcb79e5b731cd4e61038ff9
2014-06-04Whitespace and minor code cleanupMatt Mower1-16/+16
This is by no means comprehensive, but is quite a bit better already. Change-Id: Ibc8654a5dfb0eec39cbd0b64bdb52bb4fbfe2f7e
2014-06-04Add options to repair or change file systemEthan Yonker1-0/+135
Change-Id: I9043e98e1e1ed4722f05c13a60b43d2d0bf739f6
2014-05-31Fix crash while loading config due to incorrect tw_storage_pathVojtech Bocek1-0/+16
Change-Id: Ia5957efe616defa4272501cd8f31d26d394077bb Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
2014-05-31Fix multiple lun file USB mountingMatt Mower1-2/+2
Both the incorrect mount point and the incorrect lun file were being passed as the second storage volume. Change-Id: If9c7d92d1992ec022a2c89a82b2ea05c9150d635
2014-04-16Only setup settings,andsec partitions if availableMatt Mower1-4/+7
Change-Id: Iafedcec9e6ba368e29e32ab7a92d774cdd3f64e1
2014-04-16Support alternative .android_secure locationMatt Mower1-3/+20
Some devices (jewel, m8) have .android_secure at a non-standard location. Allow a different partition to be specified as the home of .android_secure using the fstab flag 'andsec'. Using the /data/media variant of jewel as an example, recovery.fstab or twrp.fstab could be edited like follows: /external_sd vfat /dev/block/mmcblk1p1 flags=display="MicroSD";andsec Note, this is NOT a method to move .android_secure in your ROM. Your ROM must already write to this alternative location. Change-Id: I3a6e4e63aaddb35870b79e80938b0f9c2c902443
2014-04-02Fix display of .android_secure size in BackupMatt Mower1-1/+1
Setup_Settings_Storage_Partition() needs to be called before Update_System_Details() in order for the /and-sec mount point to be setup and size read correctly. Change-Id: Id5394c90b6d095027c1b852764676dc6080a871d
2014-04-01Improve USB Storage handlingEthan Yonker1-30/+61
Change-Id: I5743d9b967a8227c4bb87da01a9c67c574bf9876
2014-03-30if md5 check is not selected for subpartitions, don't check it.bigbiff bigbiff1-1/+1
Change-Id: I7248c75f17c6f82e098831c297c0662ef6ea289f
2014-03-19Re-arrange handling of settings storage partitionDees Troy1-7/+7
Sometimes we received an error about being unable to locate storage partition because the DataManager would attempt to access the PartitionManager before we finished adding the storage partitions to the vector. Change-Id: I0ce1778938d308b1eb17de46a192ecd52489cad3
2014-03-13Improve handling of settings storage and android secureEthan Yonker1-13/+12
Change-Id: I8af92543c2f0c201e7220267c417d74e4561038d
2014-02-28Restore capabilities to run-as binaryDees Troy1-1/+1
Change-Id: I9e2b8e9b69c94b94c57143c04b950530490ec33e
2014-02-26Check crypto footer before offering to decryptEthan Yonker1-3/+3
Verify that we have a valid footer with proper magic before setting things up for decryption to help prevent user confusion when dealing with data partitions that fail to mount. Also check to make sure that the block device for /data is present. Change-Id: Ie87818fe4505a8bf71df7d3934c114e7328ef3ca
2014-02-12Allow recovery to be restored if backup=1 flag is present in recovery.fstabbigbiff bigbiff1-1/+1
Change-Id: I426c8da8ae586004011ec4a103e1d7a1f23b3599
2014-02-03Improve android secure handlingEthan Yonker1-0/+3
Change-Id: I9e1c7f4a8353b7be51e1a54bf5d506c9dce70da2
2014-01-23Fix include of cutilsDees Troy1-1/+4
Change-Id: I9868298908ce501d3043326862057e8a637544af
2014-01-21Fix handling of storage after decryptionDees Troy1-2/+1
Change-Id: I0c2614f841a225699be9d4a52c60e9456241659b
2014-01-21Set listener properties for UMS mount/unmountMatt Mower1-0/+2
Some kernels require the usb functions be defined before UMS mounting of storage partitions will work. This sets the sys.storage.ums_enabled property upon mount/unmount which can be listened for in init.rc. Example routines to include in init.rc: on property:sys.storage.ums_enabled=1 write /sys/class/android_usb/android0/enable 0 write /sys/class/android_usb/android0/functions adb,mass_storage write /sys/class/android_usb/android0/enable 1 on property:sys.storage.ums_enabled=0 write /sys/class/android_usb/android0/enable 0 write /sys/class/android_usb/android0/functions adb write /sys/class/android_usb/android0/enable ${service.adb.root} Change-Id: I8a8ad4b392abbaa173d402714bcb4049ba84ccca
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-1/+5
Moved Get_Folder_Size to this new class. Change-Id: If0a0220f900eb109581f2eeaf7b76e3f7d6886f1
2013-12-19add support for fsflags= option in twrp.fstab fileHashcode1-0/+2
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-10-24Update licenses to all matchDees Troy1-21/+17
Change-Id: I3be70a897e563658736b2dec3a9ea2697b69b225
2013-10-23fix getting and setting contexts in selinuxbigbiff bigbiff1-1/+0
recreate lost+found with selinux contexts Change-Id: I19e8696d47319dfb641520956c8a27c2a796a0c3
2013-10-22Update licenses to all matchDees Troy1-21/+17
2013-10-17fix getting and setting contexts in selinuxbigbiff bigbiff1-1/+0
recreate lost+found with selinux contexts Change-Id: I19e8696d47319dfb641520956c8a27c2a796a0c3
2013-09-12Add TWFunc::Exec_Cmd() with no 'result' agrumentVojtech Bocek1-7/+7
Signed-off-by: Vojtech Bocek <vbocek@gmail.com> Change-Id: Id8acff1ac9b3c7e4b562c80562a8ff42a1d132b9
2013-09-12Pull ROM info from build.prop for backup namesDees Troy1-4/+5
Change-Id: I7847fca22b5d4f0a35da41625b15bd677a1e9768
2013-08-30implement "usermrf" fstab flag to force rm -rf * deletion on specific partitionsHashcode1-0/+2
Change-Id: I58f4a8cedf31e6b6efd88f96a43ed525603ae311
2013-08-24Unify indentation and little clean-up in TWRP filesVojtech Bocek1-8/+8
Signed-off-by: Vojtech Bocek <vbocek@gmail.com>
2013-08-23Fix AOSP decrypt when TouchWiz code is presentDees_Troy1-0/+1
2013-08-14Fix problem with not waiting for pigz to exitDees_Troy1-0/+2
In some cases compressed backups would not wait for pigz to finish leading to backup files that were 0 bytes or MD5 mismatches.
2013-07-032.6.0.0Dees_Troy1-1/+23
Also copy recovery.fstab to cache and create a storage.fstab in cache for app/apk use.
2013-07-01Fix backup of datadataDees_Troy1-3/+4
Change-Id: Ib0098542599283787592ba08caa070dc818d6111
2013-07-01Fix some issues with wipe partition listDees_Troy1-0/+11
Change-Id: Ie7d5878faf86b8fa824b72211be7fd3596b471d7
2013-06-22Support encrypted backup filesDees_Troy1-12/+30
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-08Improve backup list resultsDees_Troy1-3/+13
2013-04-05Fix handling of subpartitionsDees_Troy1-8/+8
2013-04-04Move all AOSP code out of recovery binaryDees_Troy1-163/+140
Improves license compatibility between GPL and Apache Change-Id: I2b165aa575bb6213af6b07936f99610c113443f0
2013-03-30Add partition list GUI elementDees_Troy1-390/+249
Add partition list GUI element and update backup, restore, mount, storage selection, and wipe sections of GUI and partition manager code to reflect the new GUI element. Update ORS engine to handle new backup and restore setup. Fix a bug with decrypt. Add 1080x1920 layout. Change-Id: Iaa2f44cb707167e66f935452f076ba00e68a2aa4
2013-03-17trying to fix md5bigbiff bigbiff1-5/+1
Change-Id: I4ec037f76aa965bc818afe924942adbe9a080b36
2013-03-07use md5.c for computation of md5sumsbigbiff bigbiff1-13/+24
create a framework for computing digests and reading digests in TWRP add space for backwards compatibility with bb md5sum Change-Id: Ia18e3f430eed5eba22e5052d39b9b8d88ecd4536
2013-02-19support devices without bootpartitionChampionSwimmer1-0/+4
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-19convert file_bps to be unsigned long longbigbiff bigbiff1-5/+8
Change-Id: Ib5d9ca8f9a2a4e27d9798665b312376a7d9c571c
2013-02-01Fix fail over to vfat from exfatDees_Troy1-5/+5
Fix issues with MD5 checking using chdir and leaving the working dir in a subfolder that prevented unmounting sometimes. Change-Id: I01a563d722f474297ed3f7a30064c3a61748ade3
2013-01-24Disable USB Mass Storage if the USB lun file does not exist.Dees_Troy1-4/+0
Change-Id: I185edb4538fa84c17fc2b9a803557bb7a622f880
2013-01-18Move backup folder creation to after free space calcDees_Troy1-8/+8
Also fix free space calculation
2013-01-17ORS engine fixesDees_Troy1-28/+29
Fix backup to not error when a non-existant partition is given. Fix restore to run when no partition parameters are given. Ensure that ORS runs after decryption and that zips install. Fix a problem with the fake internal sdcard not mounting to /sdcard on data media devices.
2013-01-15Add flag for retaining layout versionDees_Troy1-0/+2
Needed on Sony mint (Xperia T) as the /data/media folder is a separate partition and normal data media wiping is not appropriate for this device but the layout version file needs to be retained for Android 4.2 multi-user.
2013-01-14Check to ensure that external is encryptedDees_Troy1-0/+7
2013-01-10More Samsung sdcard crypto fixesDees_Troy1-1/+1
2013-01-10Fix ifdefs for Samsung encryptionDees_Troy1-0/+4
2013-01-09Improve remounting sdcard with ecryptfsDees_Troy1-5/+12
2013-01-09Add libtar to TWRP instead of using busybox tarbigbiff bigbiff1-31/+42
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-1/+52
Change-Id: I418680e59372160dabfe3e2d5f0208229aa151ae
2012-12-21Improve handling of undecrypted encrypted /dataGary Peck1-0/+3
- Until the encrypted partition is decrypted, treat it as a disk image instead of a filesystem so that it is properly backed up using dd. - Make Partition::Wipe() use the filesystem from fstab for disk images so that wiping an undecrypted /data makes it a plain unencrypted partition again. Change-Id: I78db977d6348cfa66b0cfbc492fb5776f84db48d
2012-12-12Add ignore blkid flag for TransformersDees_Troy1-0/+2
Change-Id: I8f2b5b68a8c3ede74858d53002efab997174ee65
2012-11-22print partition details independent of whether its mountableGary Peck1-61/+61
Change-Id: Ibbc3bf3d3264fb9852f8312ece0567950aace496
2012-11-15Fixes for multi-user in 4.2Dees_Troy1-0/+9
Also fixed inability to delete backups with a space in the name. Change-Id: I2f6639d33caa3c4542960f76adbd59b25ab64f5d
2012-10-20Unmount main partitions after fixing permissionsDees_Troy1-0/+1
2012-10-15Update and improve USB storage codeDees_Troy1-82/+39
2012-10-14Handle single lun file for USB storageDees_Troy1-34/+60
2012-10-13Fix problem with sizes of images after reset defaultDees_Troy1-0/+37
2012-10-12Unmount main partitions after USB storage disableDees_Troy1-0/+1
2012-10-12Unmount system after boot, backup, and restoreDees_Troy1-0/+19
2012-10-10redo fix permissions in c++ for faster changesbigbiff bigbiff1-1/+18
2012-09-27Update sdcard partitioning to C++Dees_Troy1-0/+144
2012-09-27Port backup name checking to Partition ManagerDees_Troy1-1/+53
2012-09-27Handle mountable boot partitionsDees_Troy1-1/+9
2012-09-26Add option to wipe android secureDees_Troy1-0/+20
2012-09-26Fix permissions updatesDees_Troy1-13/+0
Also redirect stderr output on terminal commands for display in GUI console
2012-09-26Fix problems with MTD devicesDees_Troy1-2/+5
Also improve handling of MTD names
2012-09-26Unify portrait layouts againDees_Troy1-0/+3
2012-09-24Fix skip MD5 setting during backupDees_Troy1-4/+6
2012-09-21Add progress bar support to backup and restoreDees_Troy1-25/+89
2012-09-21Fix special partition handlingDees_Troy1-17/+38
2012-09-21Add android_secure supportDees_Troy1-20/+35
2012-09-20Various fixesDees_Troy1-3/+1
Modify AOSP mount and wipe functions to use Partition Manager. Update wipe code to reset the log file index when wiping cache. Add ADB sideload to 540x960 theme.
2012-09-20Fix fstab and unmount problemsDees_Troy1-1/+5
Fix a problem parsing some recovery.fstab files. Fixed a problem with MD5 checking that prevented unmounting after md5 checking.
2012-09-20Add and improve OpenRecoveryScript supportDees_Troy1-0/+9
Improve zip finding in ORS engine Add support for restoring with just a backup name
2012-09-18Cleanup extra-functionsDees_Troy1-20/+287
2012-09-18Improve backup and restoreDees_Troy1-177/+160
Add in archive splitting support
2012-09-17Update backup and restore code, adb sideloadDees_Troy1-22/+449
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-14Add wipe functions, compiles in CM7, text shows in UI, zips installDees_Troy1-30/+126
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/+2
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-11Zip install works againDees_Troy1-4/+4
2012-09-10More Partition Manager functionalityDees_Troy1-13/+277
2012-09-10Improve storage size code, mount, unmountDees_Troy1-50/+192
Add flag parsing from recovery.fstab
2012-09-07Add processing of fstab, mounting, and decryptDees_Troy1-16/+190
2012-09-05TWRP-ify AOSP codeDees_Troy1-0/+147
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