Roll src/third_party/WebKit d9c6159:8139f33 (svn 201974:201975)
[chromium-blink-merge.git] / chromeos / cryptohome / cryptohome_util.h
blobbc4762598c318264caa8a56cf725c05b41d57717
1 // Copyright 2013 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.
5 #ifndef CHROMEOS_CRYPTOHOME_CRYPTOHOME_UTIL_H_
6 #define CHROMEOS_CRYPTOHOME_CRYPTOHOME_UTIL_H_
8 #include <string>
10 #include "chromeos/chromeos_export.h"
12 namespace chromeos {
14 // Wrappers of the D-Bus method calls for working with Tpm. Note that all of
15 // these are blocking and thus must not be called on the UI thread!
16 namespace cryptohome_util {
18 // Returns whether Tpm is presented and enabled.
19 CHROMEOS_EXPORT bool TpmIsEnabled();
21 // Returns whether device has already been owned.
22 CHROMEOS_EXPORT bool TpmIsOwned();
24 // Returns whether device is being owned (Tpm password is generating).
25 CHROMEOS_EXPORT bool TpmIsBeingOwned();
27 CHROMEOS_EXPORT bool InstallAttributesGet(const std::string& name,
28 std::string* value);
29 CHROMEOS_EXPORT bool InstallAttributesSet(const std::string& name,
30 const std::string& value);
31 CHROMEOS_EXPORT bool InstallAttributesFinalize();
32 CHROMEOS_EXPORT bool InstallAttributesIsInvalid();
33 CHROMEOS_EXPORT bool InstallAttributesIsFirstInstall();
35 } // namespace cryptohome_util
36 } // namespace chromeos
38 #endif // CHROMEOS_CRYPTOHOME_CRYPTOHOME_UTIL_H_