Automatically finalize the boot-lockbox key when a mount occurs.

BUG=chromium:351572
TEST=unit, manual login and guest login

Change-Id: Ia631db7bac29ee54d528f8eaf1f85a629383157a
Reviewed-on: https://chromium-review.googlesource.com/195693
Reviewed-by: Darren Krahn <dkrahn@chromium.org>
Commit-Queue: Darren Krahn <dkrahn@chromium.org>
Tested-by: Darren Krahn <dkrahn@chromium.org>
6 files changed
tree: a3af28d0f5a873a0bbf859685988a4eee0294465
  1. etc/
  2. init/
  3. attestation.cc
  4. attestation.h
  5. attestation.proto
  6. attestation_task.cc
  7. attestation_task.h
  8. attestation_unittest.cc
  9. boot_lockbox.cc
  10. boot_lockbox.h
  11. boot_lockbox_key.proto
  12. boot_lockbox_unittest.cc
  13. chaps_client_factory.cc
  14. chaps_client_factory.h
  15. common.mk
  16. credentials.h
  17. crypto.cc
  18. crypto.h
  19. crypto_unittest.cc
  20. cryptohome-path.cc
  21. cryptohome.cc
  22. cryptohome.xml
  23. cryptohome_common.h
  24. cryptohome_event_source.cc
  25. cryptohome_event_source.h
  26. cryptohome_event_source_unittest.cc
  27. cryptohome_testrunner.cc
  28. cryptohomed.cc
  29. cryptolib.cc
  30. cryptolib.h
  31. dbus_transition.cc
  32. dbus_transition.h
  33. email_to_image
  34. homedirs.cc
  35. homedirs.h
  36. homedirs_unittest.cc
  37. inherit-review-settings-ok
  38. install_attributes.cc
  39. install_attributes.h
  40. install_attributes.proto
  41. install_attributes_unittest.cc
  42. interface.cc
  43. interface.h
  44. keystore.h
  45. LICENSE
  46. lockbox-cache-main.cc
  47. lockbox-cache-tpm.cc
  48. lockbox-cache-tpm.h
  49. lockbox-cache.cc
  50. lockbox-cache.h
  51. lockbox.cc
  52. lockbox.h
  53. lockbox_unittest.cc
  54. make_tests.cc
  55. make_tests.h
  56. make_tests.sh
  57. Makefile
  58. marshal.list
  59. mock_attestation.h
  60. mock_boot_lockbox.h
  61. mock_chaps_client_factory.cc
  62. mock_chaps_client_factory.h
  63. mock_crypto.h
  64. mock_dbus_transition.h
  65. mock_homedirs.cc
  66. mock_homedirs.h
  67. mock_install_attributes.cc
  68. mock_install_attributes.h
  69. mock_keystore.cc
  70. mock_keystore.h
  71. mock_lockbox.cc
  72. mock_lockbox.h
  73. mock_mount.cc
  74. mock_mount.h
  75. mock_mount_factory.h
  76. mock_pkcs11_init.cc
  77. mock_pkcs11_init.h
  78. mock_platform.cc
  79. mock_platform.h
  80. mock_service.cc
  81. mock_service.h
  82. mock_tpm.cc
  83. mock_tpm.h
  84. mock_tpm_init.cc
  85. mock_tpm_init.h
  86. mock_user_oldest_activity_timestamp_cache.cc
  87. mock_user_oldest_activity_timestamp_cache.h
  88. mock_user_session.cc
  89. mock_user_session.h
  90. mock_vault_keyset.cc
  91. mock_vault_keyset.h
  92. mock_vault_keyset_factory.h
  93. mount-encrypted.c
  94. mount-encrypted.h
  95. mount-helpers.c
  96. mount-helpers.h
  97. mount.cc
  98. mount.h
  99. mount_factory.cc
  100. mount_factory.h
  101. mount_stack.cc
  102. mount_stack.h
  103. mount_stack_unittest.cc
  104. mount_task.cc
  105. mount_task.h
  106. mount_task_unittest.cc
  107. mount_unittest.cc
  108. OWNERS
  109. pam_mount.conf.xml
  110. pkcs11_init.cc
  111. pkcs11_init.h
  112. pkcs11_keystore.cc
  113. pkcs11_keystore.h
  114. pkcs11_keystore_unittest.cc
  115. platform.cc
  116. platform.h
  117. README
  118. README.dbus
  119. README.homedirs
  120. README.lockbox
  121. README.tpm
  122. service.cc
  123. service.h
  124. service_unittest.cc
  125. stateful_recovery.cc
  126. stateful_recovery.h
  127. stateful_recovery_unittest.cc
  128. stub_tpm.h
  129. tpm.cc
  130. tpm.h
  131. tpm_init.cc
  132. tpm_init.h
  133. tpm_status.proto
  134. user_oldest_activity_timestamp_cache.cc
  135. user_oldest_activity_timestamp_cache.h
  136. user_oldest_activity_timestamp_cache_unittest.cc
  137. user_session.cc
  138. user_session.h
  139. user_session_unittest.cc
  140. username_passkey.cc
  141. username_passkey.h
  142. username_passkey_unittest.cc
  143. vault_keyset.cc
  144. vault_keyset.h
  145. vault_keyset.proto
  146. vault_keyset_factory.cc
  147. vault_keyset_factory.h
  148. vault_keyset_unittest.cc
  149. WATCHLISTS