diff options
author | wconner <wconner@google.com> | 2022-10-13 15:22:15 -0700 |
---|---|---|
committer | Copybara-Service <copybara-worker@google.com> | 2022-10-13 15:23:27 -0700 |
commit | 3380ad110bb063391ae1ced45f14a41844926e96 (patch) | |
tree | c5ff6d9532b8825fa8d2eccf232ab9ba3f9b324c /cc/key_status.h | |
parent | e495ec976c37aecb4a83d9bbc95fc5ec51cc00ac (diff) | |
download | tink-3380ad110bb063391ae1ced45f14a41844926e96.tar.gz |
Make KeyStatus enum public and add conversion utility functions.
Also, update monitoring library to use moved enum and conversion utilities.
PiperOrigin-RevId: 480997271
Diffstat (limited to 'cc/key_status.h')
-rw-r--r-- | cc/key_status.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/cc/key_status.h b/cc/key_status.h new file mode 100644 index 000000000..8d37cb592 --- /dev/null +++ b/cc/key_status.h @@ -0,0 +1,36 @@ +// Copyright 2022 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +//////////////////////////////////////////////////////////////////////////////// + +#ifndef TINK_KEY_STATUS_H_ +#define TINK_KEY_STATUS_H_ + +namespace crypto { +namespace tink { + +// Enum representation of KeyStatusType in tink/proto/tink.proto. Using an +// enum class prevents unintentional implicit conversions. +enum class KeyStatus : int { + kEnabled = 1, // Can be used for cryptographic operations. + kDisabled = 2, // Cannot be used (but can become kEnabled again). + kDestroyed = 3, // Key data does not exist in this Keyset any more. + // Added to guard from failures that may be caused by future expansions. + kDoNotUseInsteadUseDefaultWhenWritingSwitchStatements = 20, +}; + +} // namespace tink +} // namespace crypto + +#endif // TINK_KEY_STATUS_H_ |