diff options
author | Marcos Marado <mmarado@cyngn.com> | 2015-03-05 15:14:05 +0000 |
---|---|---|
committer | Marcos Marado <mmarado@cyngn.com> | 2015-03-05 15:14:30 +0000 |
commit | 68368dcf02219aae7d26600e8c060c05c7fdfdc1 (patch) | |
tree | 3efb16294f1441dc0808393b538cdb2873152c5f | |
parent | c1d985e1346fd6b1d4548f15a492298d758fb3e9 (diff) | |
download | android_system_vold-stable/cm-11.0-XNG3C.tar.gz android_system_vold-stable/cm-11.0-XNG3C.tar.bz2 android_system_vold-stable/cm-11.0-XNG3C.zip |
some return codes validationstable/cm-11.0-XNG3Cstable/cm-11.0-XNG2S
Change-Id: Ic84fceeabdccab4071d75dc97148a42767201f77
-rw-r--r-- | cryptfs.c | 14 |
1 files changed, 11 insertions, 3 deletions
@@ -1804,8 +1804,10 @@ int cryptfs_enable(char *howarg, char *passwd) strlcpy((char *)crypt_ftr.crypto_type_name, "aes-cbc-essiv:sha256", MAX_CRYPTO_TYPE_NAME_LEN); #else strlcpy((char *)crypt_ftr.crypto_type_name, "aes-xts", MAX_CRYPTO_TYPE_NAME_LEN); - if(!set_hw_device_encryption_key(passwd, (char*)crypt_ftr.crypto_type_name)) + if(!set_hw_device_encryption_key(passwd, (char*)crypt_ftr.crypto_type_name)) { + SLOGE("error setting hw device encryption key"); goto error_shutting_down; + } #endif /* Do extra work for a better UX when doing the long inplace encryption */ @@ -1851,7 +1853,10 @@ int cryptfs_enable(char *howarg, char *passwd) } /* Write the key to the end of the partition */ - put_crypt_ftr_and_key(&crypt_ftr); + if (put_crypt_ftr_and_key(&crypt_ftr)) { + SLOGE("Failed to write the key to the end of the partition\n"); + goto error_unencrypted; + } /* If any persistent data has been remembered, save it. * If none, create a valid empty table and save that. @@ -1867,7 +1872,10 @@ int cryptfs_enable(char *howarg, char *passwd) save_persistent_data(); } - decrypt_master_key(passwd, decrypted_master_key, &crypt_ftr); + if (decrypt_master_key(passwd, decrypted_master_key, &crypt_ftr)) { + SLOGE("failed to decrypt master key\n"); + goto error_unencrypted; + } create_crypto_blk_dev(&crypt_ftr, decrypted_master_key, real_blkdev, crypto_blkdev, "userdata"); |