So that read-only partitions can also get mounted.
For example, Super volumes are RO when setting up.
Change-Id: I736a738963ba208cfdeaadc05c47d45b1bb7bf3e
(cherry picked from commit b52a4815d5c3a5be1fe56968f4480c788d2eaab2)
exclude this dir to prevent "error 255" on MIUI
Change-Id: I7e31006617775d575cc1f37a0234369a345c372d
(cherry picked from commit 05ca8766bff3e0cb22e1d69be56fa8d9f1d9ef19)
This commit will add EROFS Filesystem mount support
Since Huawei announced the new file system EROFS and successfully
merged into mainline. More and more OEMs switch the ext4 filesystem
to EROFS filesystem for system/vendor/odm/product partitions like
Oplus (OPPO / Realme / OnePlus).
Test: Import the latest fstab from system, build and boot. EROFS-based
partions like system and vendor partitions were sucessfully mounted.
Notes: Although I tried to change 'ext4' to 'erofs' for correct partition
in twrp.flags, but it was still recognized as 'ext4'. So you can just copy
the line related erofs partitions from recovery.fstab and TWRP will failed
to recognize the line in twrp.flags, and then skip this line, so the issue
was solved.
Signed-off-by: GarfieldHan <2652609017@qq.com>
Change-Id: I49a04e4465f1d92eb589ad6d86b6db9b58d720eb
* Adds support for mixed adopted storage + removable
storage partitioned sdcards.
* Also symlinks Adopted Storage datamedia folder to an
available /sdcardN (N being 2 through 9) folder.
* Requires a suitable entry in fstab, for example:
# Removable Storage
/sd_ext ext4 /dev/block/mmcblk1p2 /dev/block/mmcblk1
flags=storage;wipeingui;removable;encryptable=footer
/external_sd vfat /dev/block/mmcblk1p1 /dev/block/mmcblk1
flags=storage;wipeingui;removable;encryptable=footer
/sd_ext will be the mountpoint for adopted storage, and /sdcardN
will become symlinked to /sd_ext/data/media[/0]
* Fix adopted storage nickname being ""
* Output adopted partition info after successful decrypt
* Mimic single lun code for multi lun devices:
"Mount CurrentStoragePath if it's not /data"
Change-Id: I3874c09f1a1c3a81f04277e17f17cc03ecb4184a
Move setting crypto state and type to functions and call those
functions rather than arbitrarily setting those props in every
case. This cleans up all the log spam from trying to set
read-only props, since they will now only get set if
they aren't already.
Change-Id: I392bee060d71c6ee50d0d92bf1b118d9049be41a
Since we don't re-create data/media on FBE devices,
don't create an MTP storage device for it.
This fixes the bug when, after formatting data on
and FBE device, an empty Internal Storage appears
on the PC.
This also prevents an empty storage device from
being created if recovery is rebooted after formatting
data before booting to Android. A warning will appear
in the console that MTP is disabled in that case.
Currently the path is hardcoded to data/media; this
should probably be adjusted for cases where adoptable
storage is being used.
Change-Id: Iaafc5e3cde54c3ef6ffaf33f76d14c626b6e590d
Now in android-11 we can now process legacy and newer wrappedkey
support in our libfscrypt library. TWRP doesn't need to set a
property to check for wrapped key. libfscrypt will just process
wrappedkey fs_mgr flag for legacy wrapped key or wrappedkey_v0
for the newer wrapped key supported in android-11.
Change-Id: Ia94c7ebe34a05c9b25bbb7a5b2e899902c93d203
To support all partitions that are on the super partition
we now parse for the logical flag in fstab to denote super
status.
- Remove guards for the first character being '/'.
- Skip commented lines in fstab
- Build Backup_Display_Name from partitions in super.
The first four lines that are in fstab will be
displayed.
Change-Id: I3f8980187bd4a136257dd6eeaeddd7ea71706cd3
Change-Id: I1ee7c02f91aafb646beaf401a43bcb22fa8c8c7a
This patchset introduces support decryption for Android 11.
In this update we deprecate ext4crypt. To specify the
policy version to use, use TW_USE_FSCRYPT_POLICY := 1 or
TW_USE_FSCRYPT_POLICY := 2. By default policy version will
be set to 2 if this variable is omitted.
Change-Id: I62a29c1bef36c259ec4b11259f71be613d20a112
In this patchset we will store and reset the android system
root context after a wipe and restore to prevent issues
with no context labels in the file_contexts being applied.
This will prevent no boot issues in android with selinux
denials on the system root partition.
Change-Id: I87fd3a6060fbaa3e7bdfd7a4b1d09feeb4fa3f27
(cherry picked from commit 35d2bfda3c89ebd212a9bd2328bffd7464f95d47)
* On some mediatek devices we must use symlinked path instead of the
real block device. Needed for decryption on some MTK HW FDE devices.
Change-Id: Ib48d745fd442c590aea2baf6d2dbe20aaaef9eec
* On some devices, the external mmc driver will only load the card after
a certain delay. The original code will break and fail to mount any
adopted storage in this case.
* Add a special fstab flag to allow the partitionmanager to retry after
a delay.
Change-Id: I219978850ff3ba7ad9dc7ca96fc30634c9574164
* Add CLI support using the command "twrp decrypt <PASSWORD> [USER ID]"
* Add GUI support using the menu Advanced --> Decrypt User
multiuser: Parse users only when Decrypt_DE runs successfully
multiuser: Warn when not all users are decrypted
Change-Id: Ia5e943b13c2d5ec5c34ae97661133c19ff471e6d