diff options
author | cinlin <cinlin@google.com> | 2023-07-13 13:43:53 -0700 |
---|---|---|
committer | Copybara-Service <copybara-worker@google.com> | 2023-07-13 13:44:47 -0700 |
commit | 0bbdfd84df04e7b8fe7da3217627bb9a9febb163 (patch) | |
tree | 2027105a64e77c9e0b27589845ea9cc95a1a9b11 | |
parent | d26ed0209a33cd88a951ed9c2e17dd330baa9696 (diff) | |
download | tink-0bbdfd84df04e7b8fe7da3217627bb9a9febb163.tar.gz |
Move KeyGen/ConfigGlobalRegistry to public API. #tinkApiChange
PiperOrigin-RevId: 547908174
-rw-r--r-- | cc/BUILD.bazel | 2 | ||||
-rw-r--r-- | cc/CMakeLists.txt | 2 | ||||
-rw-r--r-- | cc/config/BUILD.bazel | 28 | ||||
-rw-r--r-- | cc/config/CMakeLists.txt | 29 | ||||
-rw-r--r-- | cc/config/global_registry.cc (renamed from cc/config/internal/global_registry.cc) | 8 | ||||
-rw-r--r-- | cc/config/global_registry.h (renamed from cc/config/internal/global_registry.h) | 11 | ||||
-rw-r--r-- | cc/config/global_registry_test.cc (renamed from cc/config/internal/global_registry_test.cc) | 8 | ||||
-rw-r--r-- | cc/config/internal/BUILD.bazel | 31 | ||||
-rw-r--r-- | cc/config/internal/CMakeLists.txt | 28 | ||||
-rw-r--r-- | cc/core/keyset_handle_test.cc | 30 |
10 files changed, 77 insertions, 100 deletions
diff --git a/cc/BUILD.bazel b/cc/BUILD.bazel index c88dd8e14..b5a192f86 100644 --- a/cc/BUILD.bazel +++ b/cc/BUILD.bazel @@ -853,9 +853,9 @@ cc_test( "//aead:aead_wrapper", "//aead:aes_gcm_key_manager", "//config:fips_140_2", + "//config:global_registry", "//config:key_gen_fips_140_2", "//config:tink_config", - "//config/internal:global_registry", "//internal:fips_utils", "//internal:key_gen_configuration_impl", "//proto:aes_gcm_siv_cc_proto", diff --git a/cc/CMakeLists.txt b/cc/CMakeLists.txt index 1cd07e4d1..4b158a623 100644 --- a/cc/CMakeLists.txt +++ b/cc/CMakeLists.txt @@ -799,9 +799,9 @@ tink_cc_test( tink::aead::aead_wrapper tink::aead::aes_gcm_key_manager tink::config::fips_140_2 + tink::config::global_registry tink::config::key_gen_fips_140_2 tink::config::tink_config - tink::config::internal::global_registry tink::internal::fips_utils tink::internal::key_gen_configuration_impl tink::signature::ecdsa_sign_key_manager diff --git a/cc/config/BUILD.bazel b/cc/config/BUILD.bazel index a760eea84..3f179c15b 100644 --- a/cc/config/BUILD.bazel +++ b/cc/config/BUILD.bazel @@ -53,6 +53,20 @@ cc_library( ) cc_library( + name = "global_registry", + srcs = ["global_registry.cc"], + hdrs = ["global_registry.h"], + include_prefix = "tink/config", + deps = [ + "//:configuration", + "//:key_gen_configuration", + "//internal:configuration_impl", + "//internal:key_gen_configuration_impl", + "@com_google_absl//absl/log:check", + ], +) + +cc_library( name = "fips_140_2", srcs = ["fips_140_2.cc"], hdrs = ["fips_140_2.h"], @@ -246,6 +260,20 @@ cc_test( ) cc_test( + name = "global_registry_test", + srcs = ["global_registry_test.cc"], + deps = [ + ":global_registry", + "//:keyset_handle", + "//proto:aes_gcm_cc_proto", + "//proto:tink_cc_proto", + "//util:test_matchers", + "@com_google_absl//absl/status", + "@com_google_googletest//:gtest_main", + ], +) + +cc_test( name = "fips_140_2_test", srcs = ["fips_140_2_test.cc"], deps = [ diff --git a/cc/config/CMakeLists.txt b/cc/config/CMakeLists.txt index 58e9f5435..652a84d58 100644 --- a/cc/config/CMakeLists.txt +++ b/cc/config/CMakeLists.txt @@ -1,7 +1,5 @@ tink_module(config) -add_subdirectory(internal) - tink_cc_library( NAME tink_config SRCS @@ -43,6 +41,19 @@ tink_cc_library( ) tink_cc_library( + NAME global_registry + SRCS + global_registry.cc + global_registry.h + DEPS + absl::check + tink::core::configuration + tink::core::key_gen_configuration + tink::internal::configuration_impl + tink::internal::key_gen_configuration_impl +) + +tink_cc_library( NAME fips_140_2 SRCS fips_140_2.cc @@ -228,6 +239,20 @@ tink_cc_test( ) tink_cc_test( + NAME global_registry_test + SRCS + global_registry_test.cc + DEPS + tink::config::global_registry + gmock + absl::status + tink::core::keyset_handle + tink::util::test_matchers + tink::proto::aes_gcm_cc_proto + tink::proto::tink_cc_proto +) + +tink_cc_test( NAME fips_140_2_test SRCS fips_140_2_test.cc diff --git a/cc/config/internal/global_registry.cc b/cc/config/global_registry.cc index e6b34fe27..b8f8109bd 100644 --- a/cc/config/internal/global_registry.cc +++ b/cc/config/global_registry.cc @@ -14,7 +14,7 @@ // //////////////////////////////////////////////////////////////////////////////// -#include "tink/config/internal/global_registry.h" +#include "tink/config/global_registry.h" #include "absl/log/check.h" #include "tink/configuration.h" @@ -24,12 +24,11 @@ namespace crypto { namespace tink { -namespace internal { const Configuration& ConfigGlobalRegistry() { static const Configuration* instance = [] { static Configuration* config = new Configuration(); - CHECK_OK(ConfigurationImpl::SetGlobalRegistryMode(*config)); + CHECK_OK(internal::ConfigurationImpl::SetGlobalRegistryMode(*config)); return config; }(); return *instance; @@ -38,12 +37,11 @@ const Configuration& ConfigGlobalRegistry() { const KeyGenConfiguration& KeyGenConfigGlobalRegistry() { static const KeyGenConfiguration* instance = [] { static KeyGenConfiguration* config = new KeyGenConfiguration(); - CHECK_OK(KeyGenConfigurationImpl::SetGlobalRegistryMode(*config)); + CHECK_OK(internal::KeyGenConfigurationImpl::SetGlobalRegistryMode(*config)); return config; }(); return *instance; } -} // namespace internal } // namespace tink } // namespace crypto diff --git a/cc/config/internal/global_registry.h b/cc/config/global_registry.h index 422b8bcbe..ddd9010c1 100644 --- a/cc/config/internal/global_registry.h +++ b/cc/config/global_registry.h @@ -14,23 +14,20 @@ // //////////////////////////////////////////////////////////////////////////////// -#ifndef TINK_CONFIG_INTERNAL_GLOBAL_REGISTRY_H_ -#define TINK_CONFIG_INTERNAL_GLOBAL_REGISTRY_H_ +#ifndef TINK_CONFIG_GLOBAL_REGISTRY_H_ +#define TINK_CONFIG_GLOBAL_REGISTRY_H_ #include "tink/configuration.h" #include "tink/key_gen_configuration.h" namespace crypto { namespace tink { -namespace internal { -// TODO(b/265705174): Move to public API after API review. -// Used to generate keys using the global crypto::tink::Registry. +// Used to generate primitives and keys using the global crypto::tink::Registry. const crypto::tink::Configuration& ConfigGlobalRegistry(); const crypto::tink::KeyGenConfiguration& KeyGenConfigGlobalRegistry(); -} // namespace internal } // namespace tink } // namespace crypto -#endif // TINK_CONFIG_INTERNAL_GLOBAL_REGISTRY_H_ +#endif // TINK_CONFIG_GLOBAL_REGISTRY_H_ diff --git a/cc/config/internal/global_registry_test.cc b/cc/config/global_registry_test.cc index 0de5a1028..1180f2d60 100644 --- a/cc/config/internal/global_registry_test.cc +++ b/cc/config/global_registry_test.cc @@ -14,7 +14,7 @@ // //////////////////////////////////////////////////////////////////////////////// -#include "tink/config/internal/global_registry.h" +#include "tink/config/global_registry.h" #include <memory> #include <string> @@ -29,7 +29,6 @@ namespace crypto { namespace tink { -namespace internal { namespace { using ::crypto::tink::test::IsOk; @@ -107,7 +106,7 @@ class FakePrimitiveWrapper } }; -TEST(GlobalRegistryTest, KeyGenConfigGlobalRegistry) { +TEST(GlobalRegistryTest, GenerateNewKeysetHandleFromKeyGenConfig) { Registry::Reset(); KeyTemplate templ; @@ -127,7 +126,7 @@ TEST(GlobalRegistryTest, KeyGenConfigGlobalRegistry) { IsOk()); } -TEST(GlobalRegistryTest, ConfigGlobalRegistry) { +TEST(GlobalRegistryTest, GetPrimitiveFromConfig) { Registry::Reset(); ASSERT_THAT( Registry::RegisterKeyTypeManager(absl::make_unique<FakeKeyTypeManager>(), @@ -158,6 +157,5 @@ TEST(GlobalRegistryTest, ConfigGlobalRegistry) { } } // namespace -} // namespace internal } // namespace tink } // namespace crypto diff --git a/cc/config/internal/BUILD.bazel b/cc/config/internal/BUILD.bazel deleted file mode 100644 index 620bd3c18..000000000 --- a/cc/config/internal/BUILD.bazel +++ /dev/null @@ -1,31 +0,0 @@ -package(default_visibility = ["//:__subpackages__"]) - -licenses(["notice"]) - -cc_library( - name = "global_registry", - srcs = ["global_registry.cc"], - hdrs = ["global_registry.h"], - include_prefix = "tink/config/internal", - deps = [ - "//:configuration", - "//:key_gen_configuration", - "//internal:configuration_impl", - "//internal:key_gen_configuration_impl", - "@com_google_absl//absl/log:check", - ], -) - -cc_test( - name = "global_registry_test", - srcs = ["global_registry_test.cc"], - deps = [ - ":global_registry", - "//:keyset_handle", - "//proto:aes_gcm_cc_proto", - "//proto:tink_cc_proto", - "//util:test_matchers", - "@com_google_absl//absl/status", - "@com_google_googletest//:gtest_main", - ], -) diff --git a/cc/config/internal/CMakeLists.txt b/cc/config/internal/CMakeLists.txt deleted file mode 100644 index 5e72ac69a..000000000 --- a/cc/config/internal/CMakeLists.txt +++ /dev/null @@ -1,28 +0,0 @@ -tink_module(config::internal) - -tink_cc_library( - NAME global_registry - SRCS - global_registry.cc - global_registry.h - DEPS - absl::check - tink::core::configuration - tink::core::key_gen_configuration - tink::internal::configuration_impl - tink::internal::key_gen_configuration_impl -) - -tink_cc_test( - NAME global_registry_test - SRCS - global_registry_test.cc - DEPS - tink::config::internal::global_registry - gmock - absl::status - tink::core::keyset_handle - tink::util::test_matchers - tink::proto::aes_gcm_cc_proto - tink::proto::tink_cc_proto -) diff --git a/cc/core/keyset_handle_test.cc b/cc/core/keyset_handle_test.cc index 539dc2c77..91aad8eff 100644 --- a/cc/core/keyset_handle_test.cc +++ b/cc/core/keyset_handle_test.cc @@ -34,7 +34,7 @@ #include "tink/binary_keyset_writer.h" #include "tink/cleartext_keyset_handle.h" #include "tink/config/fips_140_2.h" -#include "tink/config/internal/global_registry.h" +#include "tink/config/global_registry.h" #include "tink/config/key_gen_fips_140_2.h" #include "tink/config/tink_config.h" #include "tink/core/key_manager_impl.h" @@ -581,12 +581,11 @@ TEST_F(KeysetHandleTest, GenerateNew) { &AeadKeyTemplates::Aes128CtrHmacSha256(), &AeadKeyTemplates::Aes256CtrHmacSha256(), }; - KeyGenConfiguration config; - ASSERT_THAT(internal::KeyGenConfigurationImpl::SetGlobalRegistryMode(config), - IsOk()); for (auto templ : templates) { EXPECT_THAT(KeysetHandle::GenerateNew(*templ).status(), IsOk()); - EXPECT_THAT(KeysetHandle::GenerateNew(*templ, config).status(), IsOk()); + EXPECT_THAT(KeysetHandle::GenerateNew(*templ, KeyGenConfigGlobalRegistry()) + .status(), + IsOk()); } } @@ -605,10 +604,8 @@ TEST_F(KeysetHandleTest, GenerateNewWithBespokeConfig) { } TEST_F(KeysetHandleTest, GenerateNewWithGlobalRegistryConfig) { - KeyGenConfiguration config; - ASSERT_THAT(internal::KeyGenConfigurationImpl::SetGlobalRegistryMode(config), - IsOk()); - EXPECT_THAT(KeysetHandle::GenerateNew(AeadKeyTemplates::Aes128Gcm(), config), + EXPECT_THAT(KeysetHandle::GenerateNew(AeadKeyTemplates::Aes128Gcm(), + KeyGenConfigGlobalRegistry()), IsOk()); } @@ -622,12 +619,9 @@ TEST_F(KeysetHandleTest, GenerateNewWithAnnotations) { ASSERT_THAT(handle, IsOk()); // `config_handle` uses a config that depends on the global registry. - KeyGenConfiguration config; - ASSERT_THAT(internal::KeyGenConfigurationImpl::SetGlobalRegistryMode(config), - IsOk()); util::StatusOr<std::unique_ptr<KeysetHandle>> config_handle = - KeysetHandle::GenerateNew(AeadKeyTemplates::Aes128Gcm(), config, - kAnnotations); + KeysetHandle::GenerateNew(AeadKeyTemplates::Aes128Gcm(), + KeyGenConfigGlobalRegistry(), kAnnotations); ASSERT_THAT(config_handle, IsOk()); for (KeysetHandle h : {**handle, **config_handle}) { @@ -853,14 +847,10 @@ TEST_F(KeysetHandleTest, GetPrimitiveWithBespokeConfigFailsIfEmpty) { TEST_F(KeysetHandleTest, GetPrimitiveWithGlobalRegistryConfig) { util::StatusOr<std::unique_ptr<KeysetHandle>> handle = KeysetHandle::GenerateNew(AeadKeyTemplates::Aes128Gcm(), - internal::KeyGenConfigGlobalRegistry()); + KeyGenConfigGlobalRegistry()); ASSERT_THAT(handle, IsOk()); - // TODO(b/265705174): Replace with ConfigGlobalRegistry instance. - Configuration config; - ASSERT_THAT(internal::ConfigurationImpl::SetGlobalRegistryMode(config), - IsOk()); - EXPECT_THAT((*handle)->GetPrimitive<Aead>(config), IsOk()); + EXPECT_THAT((*handle)->GetPrimitive<Aead>(ConfigGlobalRegistry()), IsOk()); } TEST_F(KeysetHandleTest, GetPrimitiveWithConfigFips1402) { |