| // Copyright 2015 The Chromium OS Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef SYSTEM_API_DBUS_CRYPTOHOME_DBUS_CONSTANTS_H_ |
| #define SYSTEM_API_DBUS_CRYPTOHOME_DBUS_CONSTANTS_H_ |
| |
| namespace cryptohome { |
| |
| // Interface exposed by the cryptohome daemon. |
| |
| const char kCryptohomeInterface[] = "org.chromium.CryptohomeInterface"; |
| const char kCryptohomeServicePath[] = "/org/chromium/Cryptohome"; |
| const char kCryptohomeServiceName[] = "org.chromium.Cryptohome"; |
| |
| // Methods of the |kCryptohomeInterface| interface: |
| const char kCryptohomeMigrateKey[] = "MigrateKey"; |
| const char kCryptohomeMigrateKeyEx[] = "MigrateKeyEx"; |
| const char kCryptohomeRemoveEx[] = "RemoveEx"; |
| const char kCryptohomeGetSystemSalt[] = "GetSystemSalt"; |
| const char kCryptohomeGetSanitizedUsername[] = "GetSanitizedUsername"; |
| const char kCryptohomeIsMounted[] = "IsMounted"; |
| const char kCryptohomeMount[] = "Mount"; |
| const char kCryptohomeMountGuest[] = "MountGuest"; |
| const char kCryptohomeMountGuestEx[] = "MountGuestEx"; |
| const char kCryptohomeUnmount[] = "Unmount"; |
| const char kCryptohomeTpmIsReady[] = "TpmIsReady"; |
| const char kCryptohomeTpmIsEnabled[] = "TpmIsEnabled"; |
| const char kCryptohomeTpmIsOwned[] = "TpmIsOwned"; |
| const char kCryptohomeTpmIsBeingOwned[] = "TpmIsBeingOwned"; |
| const char kCryptohomeTpmGetPassword[] = "TpmGetPassword"; |
| const char kCryptohomeTpmCanAttemptOwnership[] = "TpmCanAttemptOwnership"; |
| const char kCryptohomeTpmClearStoredPassword[] = "TpmClearStoredPassword"; |
| const char kCryptohomePkcs11GetTpmTokenInfo[] = "Pkcs11GetTpmTokenInfo"; |
| const char kCryptohomePkcs11GetTpmTokenInfoForUser[] = |
| "Pkcs11GetTpmTokenInfoForUser"; |
| const char kCryptohomePkcs11IsTpmTokenReady[] = "Pkcs11IsTpmTokenReady"; |
| const char kCryptohomePkcs11IsTpmTokenReadyForUser[] = |
| "Pkcs11IsTpmTokenReadyForUser"; |
| const char kCryptohomeAsyncMigrateKey[] = "AsyncMigrateKey"; |
| const char kCryptohomeAsyncMount[] = "AsyncMount"; |
| const char kCryptohomeAsyncMountGuest[] = "AsyncMountGuest"; |
| const char kCryptohomeAsyncRemove[] = "AsyncRemove"; |
| const char kCryptohomeGetStatusString[] = "GetStatusString"; |
| const char kCryptohomeRemoveTrackedSubdirectories[] = |
| "RemoveTrackedSubdirectories"; |
| const char kCryptohomeAsyncRemoveTrackedSubdirectories[] = |
| "AsyncRemoveTrackedSubdirectories"; |
| const char kCryptohomeAsyncDoesUsersExist[] = "AsyncDoesUsersExist"; |
| const char kCryptohomeInstallAttributesGet[] = "InstallAttributesGet"; |
| const char kCryptohomeInstallAttributesSet[] = "InstallAttributesSet"; |
| const char kCryptohomeInstallAttributesCount[] = "InstallAttributesCount"; |
| const char kCryptohomeInstallAttributesFinalize[] = |
| "InstallAttributesFinalize"; |
| const char kCryptohomeInstallAttributesIsReady[] = "InstallAttributesIsReady"; |
| const char kCryptohomeInstallAttributesIsSecure[] = |
| "InstallAttributesIsSecure"; |
| const char kCryptohomeInstallAttributesIsInvalid[] = |
| "InstallAttributesIsInvalid"; |
| const char kCryptohomeInstallAttributesIsFirstInstall[] = |
| "InstallAttributesIsFirstInstall"; |
| const char kCryptohomeTpmIsAttestationPrepared[] = "TpmIsAttestationPrepared"; |
| const char kCryptohomeTpmIsAttestationEnrolled[] = "TpmIsAttestationEnrolled"; |
| const char kCryptohomeTpmAttestationCreateEnrollRequest[] = |
| "TpmAttestationCreateEnrollRequest"; |
| const char kCryptohomeAsyncTpmAttestationCreateEnrollRequest[] = |
| "AsyncTpmAttestationCreateEnrollRequest"; |
| const char kCryptohomeAsyncTpmAttestationCreateEnrollRequestNew[] = |
| "AsyncTpmAttestationCreateEnrollRequestNew"; |
| const char kCryptohomeTpmAttestationEnroll[] = "TpmAttestationEnroll"; |
| const char kCryptohomeAsyncTpmAttestationEnroll[] = "AsyncTpmAttestationEnroll"; |
| const char kCryptohomeAsyncTpmAttestationEnrollNew[] = |
| "AsyncTpmAttestationEnrollNew"; |
| const char kCryptohomeTpmAttestationCreateCertRequest[] = |
| "TpmAttestationCreateCertRequest"; |
| const char kCryptohomeAsyncTpmAttestationCreateCertRequest[] = |
| "AsyncTpmAttestationCreateCertRequest"; |
| const char kCryptohomeAsyncTpmAttestationCreateCertRequestByProfile[] = |
| "AsyncTpmAttestationCreateCertRequestByProfile"; |
| const char kCryptohomeTpmAttestationFinishCertRequest[] = |
| "TpmAttestationFinishCertRequest"; |
| const char kCryptohomeAsyncTpmAttestationFinishCertRequest[] = |
| "AsyncTpmAttestationFinishCertRequest"; |
| const char kCryptohomeTpmAttestationDoesKeyExist[] = |
| "TpmAttestationDoesKeyExist"; |
| const char kCryptohomeTpmAttestationGetCertificate[] = |
| "TpmAttestationGetCertificate"; |
| const char kCryptohomeTpmAttestationGetPublicKey[] = |
| "TpmAttestationGetPublicKey"; |
| const char kCryptohomeTpmAttestationRegisterKey[] = "TpmAttestationRegisterKey"; |
| // TODO(crbug.com/789419): Remove this deprecated API. |
| const char kCryptohomeTpmAttestationSignEnterpriseChallenge[] = |
| "TpmAttestationSignEnterpriseChallenge"; |
| const char kCryptohomeTpmAttestationSignEnterpriseVaChallenge[] = |
| "TpmAttestationSignEnterpriseVaChallenge"; |
| const char kCryptohomeTpmAttestationSignSimpleChallenge[] = |
| "TpmAttestationSignSimpleChallenge"; |
| const char kCryptohomeTpmAttestationGetKeyPayload[] = |
| "TpmAttestationGetKeyPayload"; |
| const char kCryptohomeTpmAttestationSetKeyPayload[] = |
| "TpmAttestationSetKeyPayload"; |
| const char kCryptohomeTpmAttestationDeleteKeys[] = |
| "TpmAttestationDeleteKeys"; |
| const char kCryptohomeTpmAttestationGetEnrollmentId[] = |
| "TpmAttestationGetEnrollmentId"; |
| // TODO(isandrk): Deprecated, remove on (or before) 2017/09/21 - after the |
| // Chromium side has been changed to use the new TpmGetVersionStructured. |
| const char kCryptohomeTpmGetVersion[] = "TpmGetVersion"; |
| const char kCryptohomeTpmGetVersionStructured[] = "TpmGetVersionStructured"; |
| const char kCryptohomeGetKeyDataEx[] = "GetKeyDataEx"; |
| const char kCryptohomeCheckKeyEx[] = "CheckKeyEx"; |
| const char kCryptohomeMountEx[] = "MountEx"; |
| const char kCryptohomeAddKeyEx[] = "AddKeyEx"; |
| const char kCryptohomeUpdateKeyEx[] = "UpdateKeyEx"; |
| const char kCryptohomeRemoveKeyEx[] = "RemoveKeyEx"; |
| const char kCryptohomeSignBootLockbox[] = "SignBootLockbox"; |
| const char kCryptohomeVerifyBootLockbox[] = "VerifyBootLockbox"; |
| const char kCryptohomeFinalizeBootLockbox[] = "FinalizeBootLockbox"; |
| const char kCryptohomeGetBootAttribute[] = "GetBootAttribute"; |
| const char kCryptohomeSetBootAttribute[] = "SetBootAttribute"; |
| const char kCryptohomeFlushAndSignBootAttributes[] = |
| "FlushAndSignBootAttributes"; |
| const char kCryptohomeGetLoginStatus[] = "GetLoginStatus"; |
| const char kCryptohomeGetTpmStatus[] = "GetTpmStatus"; |
| const char kCryptohomeGetEndorsementInfo[] = "GetEndorsementInfo"; |
| const char kCryptohomeRenameCryptohome[] = "RenameCryptohome"; |
| const char kCryptohomeGetAccountDiskUsage[] = "GetAccountDiskUsage"; |
| const char kCryptohomeGetFirmwareManagementParameters[] = |
| "GetFirmwareManagementParameters"; |
| const char kCryptohomeSetFirmwareManagementParameters[] = |
| "SetFirmwareManagementParameters"; |
| const char kCryptohomeRemoveFirmwareManagementParameters[] = |
| "RemoveFirmwareManagementParameters"; |
| const char kCryptohomeMigrateToDircrypto[] = "MigrateToDircrypto"; |
| const char kCryptohomeNeedsDircryptoMigration[] = "NeedsDircryptoMigration"; |
| const char kCryptohomeGetSupportedKeyPolicies[] = "GetSupportedKeyPolicies"; |
| const char kCryptohomeIsQuotaSupported[] = "IsQuotaSupported"; |
| const char kCryptohomeGetCurrentSpaceForUid[] = "GetCurrentSpaceForUid"; |
| const char kCryptohomeGetCurrentSpaceForGid[] = "GetCurrentSpaceForGid"; |
| |
| // Signals of the |kCryptohomeInterface| interface: |
| const char kSignalAsyncCallStatus[] = "AsyncCallStatus"; |
| const char kSignalAsyncCallStatusWithData[] = "AsyncCallStatusWithData"; |
| const char kSignalTpmInitStatus[] = "TpmInitStatus"; |
| const char kSignalCleanupUsersRemoved[] = "CleanupUsersRemoved"; |
| const char kSignalLowDiskSpace[] = "LowDiskSpace"; |
| const char kSignalDircryptoMigrationProgress[] = "DircryptoMigrationProgress"; |
| |
| // Error code |
| enum MountError { |
| MOUNT_ERROR_NONE = 0, |
| MOUNT_ERROR_FATAL = 1 << 0, |
| MOUNT_ERROR_KEY_FAILURE = 1 << 1, |
| MOUNT_ERROR_MOUNT_POINT_BUSY = 1 << 2, |
| MOUNT_ERROR_TPM_COMM_ERROR = 1 << 3, |
| MOUNT_ERROR_TPM_DEFEND_LOCK = 1 << 4, |
| MOUNT_ERROR_USER_DOES_NOT_EXIST = 1 << 5, |
| MOUNT_ERROR_TPM_NEEDS_REBOOT = 1 << 6, |
| // Encrypted in old method, need migration before mounting. |
| MOUNT_ERROR_OLD_ENCRYPTION = 1 << 7, |
| // Previous migration attempt was aborted in the middle. Must resume it first. |
| MOUNT_ERROR_PREVIOUS_MIGRATION_INCOMPLETE = 1 << 8, |
| // The operation to remove a key failed. |
| MOUNT_ERROR_REMOVE_FAILED = 1 << 9, |
| MOUNT_ERROR_RECREATED = 1 << 31, |
| }; |
| // Status code signaled from MigrateToDircrypto(). |
| enum DircryptoMigrationStatus { |
| // 0 means a successful completion. |
| DIRCRYPTO_MIGRATION_SUCCESS = 0, |
| // Negative values mean failing completion. |
| // TODO(kinaba,dspaid): Add error codes as needed here. |
| DIRCRYPTO_MIGRATION_FAILED = -1, |
| // Positive values mean intermediate state report for the running migration. |
| // TODO(kinaba,dspaid): Add state codes as needed. |
| DIRCRYPTO_MIGRATION_INITIALIZING = 1, |
| DIRCRYPTO_MIGRATION_IN_PROGRESS = 2, |
| }; |
| |
| // Interface for key delegate service to be used by the cryptohome daemon. |
| |
| const char kCryptohomeKeyDelegateInterface[] = |
| "org.chromium.CryptohomeKeyDelegateInterface"; |
| |
| // Methods of the |kCryptohomeKeyDelegateInterface| interface: |
| const char kCryptohomeKeyDelegateChallengeKey[] = "ChallengeKey"; |
| |
| } // namespace cryptohome |
| |
| #endif // SYSTEM_API_DBUS_CRYPTOHOME_DBUS_CONSTANTS_H_ |