You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
191 lines
9.2 KiB
191 lines
9.2 KiB
// 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_
|