Add a mount option to Cryptohome to "force dircrypto". |
|||||||
Issue descriptionIn eCryptfs -> ext4 encryption migration UI ( Bug 688900 ), * We basically want user to migrate--i.e., mounting an existing ecryptfs should be an error. * However, we still keep an option for the user to "do it later". To handle the both cases, the plan it to enchance MountEx() with a flag to force dircrypto, and when it is on, trying to mount an ecryptfs vault should result in a new error code.
,
Mar 8 2017
If it's going to be complicated, one thing we can do is remove force_ecryptfs from mount arguments by injecting the value via Mount's ctor (this should result in cleaner code as force_cryptfs value never changes during crypothome process's lifetime).
,
Mar 13 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform/system_api/+/e86bc673db5c34560e86ce1ceac5b8029584149d commit e86bc673db5c34560e86ce1ceac5b8029584149d Author: Kazuhiro Inaba <kinaba@chromium.org> Date: Mon Mar 13 09:54:13 2017 cryptohome: Add a new flag and an error code for forcing new encryption. New encryption scheme is required for running ARC for Android N, so we want to force it, and in case of an error we navigate the user to migration UI. Some other cases (including when the user chose "do it later"), we are not forcing it. In addition, if for any reason the migration step is aborted in the middle and the user tried to re-login, we cannot let "do it later" and do need to force migration. An additional error code for this state is also necessary. This CL adds a flag and an error code for that purpose. Actual code using them will follow later. BUG= chromium:699436 TEST=manually checked log-in to new/existing accounts. Change-Id: Ibf5e40815fb50f74badfc95808c9c401a0b35a05 Reviewed-on: https://chromium-review.googlesource.com/452097 Commit-Ready: Kazuhiro Inaba <kinaba@chromium.org> Tested-by: Kazuhiro Inaba <kinaba@chromium.org> Reviewed-by: Dan Erat <derat@chromium.org> Reviewed-by: Ryo Hashimoto <hashimoto@chromium.org> [modify] https://crrev.com/e86bc673db5c34560e86ce1ceac5b8029584149d/dbus/cryptohome/rpc.proto [modify] https://crrev.com/e86bc673db5c34560e86ce1ceac5b8029584149d/dbus/cryptohome/dbus-constants.h
,
Mar 13 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/8a9749142275a2eae0ab63da86ec41905d199812 commit 8a9749142275a2eae0ab63da86ec41905d199812 Author: kinaba <kinaba@chromium.org> Date: Mon Mar 13 12:50:03 2017 cryptohome: Add the conversion for a new error code. This CL depends on https://chromium-review.googlesource.com/c/452097/ BUG= 699436 TEST=none (no behavior change at this point.) Review-Url: https://codereview.chromium.org/2740883002 Cr-Commit-Position: refs/heads/master@{#456357} [modify] https://crrev.com/8a9749142275a2eae0ab63da86ec41905d199812/DEPS [modify] https://crrev.com/8a9749142275a2eae0ab63da86ec41905d199812/chromeos/cryptohome/homedir_methods.cc
,
Mar 13 2017
Dbus interface has landed. I'll move on to the implementation (of properly returning the error codes) next.
,
Mar 13 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform2/+/17f9ea4fc88f34cd58ce24375dfb46b5fa0874f3 commit 17f9ea4fc88f34cd58ce24375dfb46b5fa0874f3 Author: Kazuhiro Inaba <kinaba@chromium.org> Date: Mon Mar 13 14:36:17 2017 cryptohome: Add a new error code for forcing new encryption. Just adding the conversion to protobuf enum. Actual change generating this new error code is coming very soon. CQ-DEPEND=CL:452097 BUG= chromium:699436 TEST=manually checked log-in to new/existing accounts. Change-Id: I8ae4d1bc77fdac95d332481c129f464ed01dad43 Reviewed-on: https://chromium-review.googlesource.com/452117 Commit-Ready: Kazuhiro Inaba <kinaba@chromium.org> Tested-by: Kazuhiro Inaba <kinaba@chromium.org> Reviewed-by: Ryo Hashimoto <hashimoto@chromium.org> [modify] https://crrev.com/17f9ea4fc88f34cd58ce24375dfb46b5fa0874f3/cryptohome/service.cc
,
Mar 16 2017
,
Mar 21 2017
,
Mar 22 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform2/+/46b030f7e44f77f9c22dde9ee341217da3d164c3 commit 46b030f7e44f77f9c22dde9ee341217da3d164c3 Author: Kazuhiro Inaba <kinaba@chromium.org> Date: Wed Mar 22 15:21:00 2017 cryptohome: PREVIOUS_MIGRATION_INCOMPLETE error when both directories found. When both the old vault/ directory for ecryptfs and the new mount/ directory is ext4 encryption key set are found, regard it as an incomplete migration and raises an error. BUG= chromium:699436 TEST=cros_workon_make --board=samus-cheets cryptohome --test TEST=Manually checked 3 types of situations. Change-Id: Ida253a334b92a7e7935b10fb6a84169dc62e2ff4 Reviewed-on: https://chromium-review.googlesource.com/456671 Commit-Ready: Kazuhiro Inaba <kinaba@chromium.org> Tested-by: Kazuhiro Inaba <kinaba@chromium.org> Reviewed-by: Ryo Hashimoto <hashimoto@chromium.org> [modify] https://crrev.com/46b030f7e44f77f9c22dde9ee341217da3d164c3/cryptohome/mount.h [modify] https://crrev.com/46b030f7e44f77f9c22dde9ee341217da3d164c3/cryptohome/mount.cc [modify] https://crrev.com/46b030f7e44f77f9c22dde9ee341217da3d164c3/cryptohome/mount_unittest.cc
,
Mar 23 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform2/+/7ac52416e8a23c717b1c17d23cef1ae0462842c8 commit 7ac52416e8a23c717b1c17d23cef1ae0462842c8 Author: Kazuhiro Inaba <kinaba@chromium.org> Date: Thu Mar 23 13:38:00 2017 cryptohome: OLD_ENCRYPTION error when mounting ecryptfs with force_dircrypto. BUG= chromium:699436 TEST=cros_workon_make --board=samus-cheets cryptohome --test TEST=Manually checked mounting both types of cryptohome. Change-Id: I2440d6cc62fe843341830bba64617796c5c00209 Reviewed-on: https://chromium-review.googlesource.com/458317 Commit-Ready: Kazuhiro Inaba <kinaba@chromium.org> Tested-by: Kazuhiro Inaba <kinaba@chromium.org> Reviewed-by: Ryo Hashimoto <hashimoto@chromium.org> [modify] https://crrev.com/7ac52416e8a23c717b1c17d23cef1ae0462842c8/cryptohome/mount.cc [modify] https://crrev.com/7ac52416e8a23c717b1c17d23cef1ae0462842c8/cryptohome/mount_unittest.cc
,
Mar 23 2017
The option, corresponding error codes, as well as the implementation to return the error codes in necessary situation has all landed. Closing.
,
Mar 28 2017
,
Mar 29 2017
,
Jan 22 2018
|
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by kinaba@chromium.org
, Mar 8 2017