chromium/chromeos/crosapi/mojom/keystore_error.mojom

// Copyright 2021 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

module crosapi.mojom;

// Status codes for KeystoreService methods.
// Mostly mirrors platform_keys::Status enum.
[Stable, Extensible]
enum KeystoreError {
  // platform_keys errors.
  [Default] kUnknown,
  kAlgorithmNotSupported,
  kAlgorithmNotPermittedByCertificate,
  kCertificateNotFound,
  kCertificateInvalid,
  kInputTooLong,
  kGrantKeyPermissionForExtension,
  kInternal,
  kKeyAttributeRetrievalFailed,
  kKeyAttributeSettingFailed,
  kKeyNotAllowedForSigning,
  kKeyNotFound,
  // An operation was interrupted by shut down.
  kShutDown,
  // kNet* are for errors occurred during net::* operations.
  kNetAddUserCertFailed,
  kNetCertificateDateInvalid,
  kNetCertificateInvalid,
  // Keystore errors.
  kUnsupportedKeystoreType,
  [MinVersion=1]
  kUnsupportedAlgorithmType,
  [MinVersion=2]
  kUnsupportedKeyTag,
  [MinVersion=3]
  kMojoUnavailable,
  [MinVersion=3]
  kUnsupportedKeyType,
};