prepare_tpm.h 918 B

123456789101112131415161718192021222324
  1. // Copyright 2020 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #ifndef ASH_COMPONENTS_TPM_PREPARE_TPM_H_
  5. #define ASH_COMPONENTS_TPM_PREPARE_TPM_H_
  6. #include "base/callback.h"
  7. #include "base/component_export.h"
  8. namespace ash {
  9. // Asynchronously prepares TPM. To be specific, attempts to clear owner
  10. // password if TPM is owned to make sure the owner password is cleared if no
  11. // longer needed; otherwise if TPM is not owned, which can happen due to
  12. // interrupted TPM initialization triggered upon showing EULA screen, triggers
  13. // TPM initialization process. When the preparation process is done, invoke
  14. // `preparation_finished_callback`.
  15. void COMPONENT_EXPORT(ASH_COMPONENTS_TPM)
  16. PrepareTpm(base::OnceClosure preparation_finished_callback);
  17. } // namespace ash
  18. #endif // ASH_COMPONENTS_TPM_PREPARE_TPM_H_