• Home
  • Raw
  • Download

Lines Matching refs:crypt_ftr

145 static int put_crypt_ftr_and_key(char *real_blk_name, struct crypt_mnt_ftr *crypt_ftr,  in put_crypt_ftr_and_key()  argument
191 if ((cnt = write(fd, crypt_ftr, sizeof(struct crypt_mnt_ftr))) != sizeof(struct crypt_mnt_ftr)) { in put_crypt_ftr_and_key()
197 if (crypt_ftr->keysize != KEY_LEN_BYTES) { in put_crypt_ftr_and_key()
199 crypt_ftr->keysize*8, fname); in put_crypt_ftr_and_key()
203 if ( (cnt = write(fd, key, crypt_ftr->keysize)) != crypt_ftr->keysize) { in put_crypt_ftr_and_key()
213 off += crypt_ftr->keysize; in put_crypt_ftr_and_key()
244 static int get_crypt_ftr_and_key(char *real_blk_name, struct crypt_mnt_ftr *crypt_ftr, in get_crypt_ftr_and_key() argument
297 if ( (cnt = read(fd, crypt_ftr, sizeof(struct crypt_mnt_ftr))) != sizeof(struct crypt_mnt_ftr)) { in get_crypt_ftr_and_key()
302 if (crypt_ftr->magic != CRYPT_MNT_MAGIC) { in get_crypt_ftr_and_key()
307 if (crypt_ftr->major_version != 1) { in get_crypt_ftr_and_key()
309 crypt_ftr->major_version); in get_crypt_ftr_and_key()
313 if (crypt_ftr->minor_version != 0) { in get_crypt_ftr_and_key()
315 crypt_ftr->minor_version); in get_crypt_ftr_and_key()
318 if (crypt_ftr->ftr_size > sizeof(struct crypt_mnt_ftr)) { in get_crypt_ftr_and_key()
322 if (lseek(fd, crypt_ftr->ftr_size - sizeof(struct crypt_mnt_ftr), SEEK_CUR) == -1) { in get_crypt_ftr_and_key()
328 if (crypt_ftr->keysize != KEY_LEN_BYTES) { in get_crypt_ftr_and_key()
330 crypt_ftr->keysize * 8, fname); in get_crypt_ftr_and_key()
334 if ( (cnt = read(fd, key, crypt_ftr->keysize)) != crypt_ftr->keysize) { in get_crypt_ftr_and_key()
380 static int create_crypto_blk_dev(struct crypt_mnt_ftr *crypt_ftr, unsigned char *master_key, in create_crypto_blk_dev() argument
422 tgt->length = crypt_ftr->fs_size; in create_crypto_blk_dev()
426 convert_key_to_hex_ascii(master_key, crypt_ftr->keysize, master_key_ascii); in create_crypto_blk_dev()
427 sprintf(crypt_params, "%s %s 0 %s 0", crypt_ftr->crypto_type_name, in create_crypto_blk_dev()
735 struct crypt_mnt_ftr crypt_ftr; in do_crypto_complete() local
750 if (get_crypt_ftr_and_key(real_blkdev, &crypt_ftr, encrypted_master_key, salt)) { in do_crypto_complete()
769 if (crypt_ftr.flags & CRYPT_ENCRYPTION_IN_PROGRESS) { in do_crypto_complete()
781 struct crypt_mnt_ftr crypt_ftr; in test_mount_encrypted_fs() local
800 if (get_crypt_ftr_and_key(real_blkdev, &crypt_ftr, encrypted_master_key, salt)) { in test_mount_encrypted_fs()
805 SLOGD("crypt_ftr->fs_size = %lld\n", crypt_ftr.fs_size); in test_mount_encrypted_fs()
806 orig_failed_decrypt_count = crypt_ftr.failed_decrypt_count; in test_mount_encrypted_fs()
808 if (! (crypt_ftr.flags & CRYPT_MNT_KEY_UNENCRYPTED) ) { in test_mount_encrypted_fs()
812 if (create_crypto_blk_dev(&crypt_ftr, decrypted_master_key, in test_mount_encrypted_fs()
830 crypt_ftr.failed_decrypt_count++; in test_mount_encrypted_fs()
836 crypt_ftr.failed_decrypt_count = 0; in test_mount_encrypted_fs()
839 if (orig_failed_decrypt_count != crypt_ftr.failed_decrypt_count) { in test_mount_encrypted_fs()
840 put_crypt_ftr_and_key(real_blkdev, &crypt_ftr, 0, 0); in test_mount_encrypted_fs()
843 if (crypt_ftr.failed_decrypt_count) { in test_mount_encrypted_fs()
845 rc = crypt_ftr.failed_decrypt_count; in test_mount_encrypted_fs()
934 struct crypt_mnt_ftr crypt_ftr; in cryptfs_verify_passwd() local
960 if (get_crypt_ftr_and_key(real_blkdev, &crypt_ftr, encrypted_master_key, salt)) { in cryptfs_verify_passwd()
965 if (crypt_ftr.flags & CRYPT_MNT_KEY_UNENCRYPTED) { in cryptfs_verify_passwd()
970 if (!memcmp(decrypted_master_key, saved_master_key, crypt_ftr.keysize)) { in cryptfs_verify_passwd()
1142 struct crypt_mnt_ftr crypt_ftr, sd_crypt_ftr;; in cryptfs_enable() local
1302 cryptfs_init_crypt_mnt_ftr(&crypt_ftr); in cryptfs_enable()
1304 crypt_ftr.fs_size = nr_sec - (CRYPT_FOOTER_OFFSET / 512); in cryptfs_enable()
1306 crypt_ftr.fs_size = nr_sec; in cryptfs_enable()
1308 crypt_ftr.flags |= CRYPT_ENCRYPTION_IN_PROGRESS; in cryptfs_enable()
1309 strcpy((char *)crypt_ftr.crypto_type_name, "aes-cbc-essiv:sha256"); in cryptfs_enable()
1318 put_crypt_ftr_and_key(real_blkdev, &crypt_ftr, master_key, salt); in cryptfs_enable()
1321 create_crypto_blk_dev(&crypt_ftr, decrypted_master_key, real_blkdev, crypto_blkdev, in cryptfs_enable()
1325 tot_encryption_size = crypt_ftr.fs_size; in cryptfs_enable()
1330 vol_list[i].crypt_ftr = crypt_ftr; /* gotta love struct assign */ in cryptfs_enable()
1331 vol_list[i].crypt_ftr.fs_size = vol_list[i].size; in cryptfs_enable()
1332 create_crypto_blk_dev(&vol_list[i].crypt_ftr, decrypted_master_key, in cryptfs_enable()
1340 rc = cryptfs_enable_wipe(crypto_blkdev, crypt_ftr.fs_size, EXT4_FS); in cryptfs_enable()
1346 vol_list[i].crypt_ftr.fs_size, FAT_FS); in cryptfs_enable()
1351 rc = cryptfs_enable_inplace(crypto_blkdev, real_blkdev, crypt_ftr.fs_size, in cryptfs_enable()
1359 vol_list[i].crypt_ftr.fs_size, in cryptfs_enable()
1389 crypt_ftr.flags &= ~CRYPT_ENCRYPTION_IN_PROGRESS; in cryptfs_enable()
1390 put_crypt_ftr_and_key(real_blkdev, &crypt_ftr, 0, 0); in cryptfs_enable()
1453 struct crypt_mnt_ftr crypt_ftr; in cryptfs_changepw() local
1471 if (get_crypt_ftr_and_key(real_blkdev, &crypt_ftr, encrypted_master_key, salt)) { in cryptfs_changepw()
1479 put_crypt_ftr_and_key(real_blkdev, &crypt_ftr, encrypted_master_key, salt); in cryptfs_changepw()