summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Lawrence <paullawrence@google.com>2015-07-15 15:22:03 -0700
committerPaul Lawrence <paullawrence@google.com>2015-07-15 15:22:03 -0700
commit65df483af2efcb2ab9fd82ae53f9aeaa55f0cebd (patch)
treec671370eadad91415a8189b509c5a9605b7702f5
parent96f2bc51002a59fb77711a2a38e014cf13ac010c (diff)
downloadextras-65df483af2efcb2ab9fd82ae53f9aeaa55f0cebd.tar.gz
Don't encrypt lost+found
ext4 encryption doesn't like it, and the kernel crashes. Also fix a formatting error in logs. Bug: 22478103 Change-Id: Ia25f4b0c1c9eeb20e39b795c7827c5bd1a11cb6a
-rw-r--r--ext4_utils/ext4_crypt_init_extensions.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/ext4_utils/ext4_crypt_init_extensions.cpp b/ext4_utils/ext4_crypt_init_extensions.cpp
index 6e8695e8..9b687e80 100644
--- a/ext4_utils/ext4_crypt_init_extensions.cpp
+++ b/ext4_utils/ext4_crypt_init_extensions.cpp
@@ -142,6 +142,12 @@ int e4crypt_set_directory_policy(const char* dir)
if (!dir || strncmp(dir, "/data/", 6) || strchr(dir + 6, '/')) {
return 0;
}
+
+ // Don't encrypt lost+found - ext4 doesn't like it
+ if (strcmp(dir, "/data/lost+found")) {
+ return 0;
+ }
+
// ext4enc:TODO exclude /data/user with a horrible special case.
if (!strcmp(dir, "/data/user")) {
return 0;
@@ -157,8 +163,8 @@ int e4crypt_set_directory_policy(const char* dir)
KLOG_INFO(TAG, "Setting policy on %s\n", dir);
int result = do_policy_set(dir, policy.c_str(), policy.size());
if (result) {
- KLOG_ERROR(TAG, "Setting %s policy on %s failed!\n",
- policy.c_str(), dir);
+ KLOG_ERROR(TAG, "Setting %02x%02x%02x%02x policy on %s failed!\n",
+ policy[0], policy[1], policy[2], policy[3], dir);
return -1;
}