Skip to content
Snippets Groups Projects
CMakeLists.txt 21.6 KiB
Newer Older
tink_module(subtle)

przydatek's avatar
przydatek committed

set(TINK_SUBTLE_PUBLIC_APIS
  common_enums.h
  aes_gcm_boringssl.h
  encrypt_then_authenticate.h
  hmac_boringssl.h
  hkdf.h
  ind_cpa_cipher.h
  random.h
)

tink_cc_library(
  NAME subtle
  SRCS ${TINK_SUBTLE_PUBLIC_APIS}
  DEPS
    tink::subtle::aes_gcm_boringssl
    tink::subtle::common_enums
    tink::subtle::encrypt_then_authenticate
    tink::subtle::hkdf
    tink::subtle::hmac_boringssl
    tink::subtle::random
    tink::core::aead
    tink::core::hybrid_decrypt
    tink::core::hybrid_encrypt
    tink::core::mac
    tink::core::public_key_sign
    tink::core::public_key_verify
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
  PUBLIC
)

add_library(tink::subtle ALIAS tink_subtle_subtle)

tink_cc_library(
  NAME ind_cpa_cipher
  SRCS ind_cpa_cipher.h
  DEPS
    tink::util::statusor
    absl::strings
)

tink_cc_library(
  NAME ecies_hkdf_recipient_kem_boringssl
  SRCS
    ecies_hkdf_recipient_kem_boringssl.cc
    ecies_hkdf_recipient_kem_boringssl.h
  DEPS
    tink::subtle::common_enums
    tink::subtle::hkdf
    tink::subtle::subtle_util_boringssl
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::memory
    absl::strings
)

tink_cc_library(
  NAME ecies_hkdf_sender_kem_boringssl
  SRCS
    ecies_hkdf_sender_kem_boringssl.cc
    ecies_hkdf_sender_kem_boringssl.h
  DEPS
    tink::subtle::common_enums
    tink::subtle::hkdf
    tink::subtle::subtle_util_boringssl
    tink::util::status
    tink::util::statusor
    crypto
    absl::memory
    absl::strings
)

tink_cc_library(
  NAME ec_util
  SRCS
    ec_util.cc
    ec_util.h
  DEPS
    tink::subtle::common_enums
    tink::subtle::subtle_util_boringssl
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME ed25519_sign_boringssl
  SRCS
    ed25519_sign_boringssl.cc
    ed25519_sign_boringssl.h
  DEPS
    tink::subtle::subtle_util_boringssl
    tink::core::public_key_sign
    tink::util::errors
    tink::util::statusor
    crypto
    absl::strings
    absl::str_format
)

tink_cc_library(
  NAME ed25519_verify_boringssl
  SRCS
    ed25519_verify_boringssl.cc
    ed25519_verify_boringssl.h
  DEPS
    tink::subtle::subtle_util_boringssl
    tink::core::public_key_verify
    tink::util::errors
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME hkdf
  SRCS
    hkdf.cc
    hkdf.h
  DEPS
    tink::subtle::common_enums
    tink::subtle::subtle_util_boringssl
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME aes_cmac_boringssl
  SRCS
    aes_cmac_boringssl.cc
    aes_cmac_boringssl.h
  DEPS
    tink::subtle::common_enums
    tink::subtle::subtle_util_boringssl
    tink::core::mac
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME hmac_boringssl
  SRCS
    hmac_boringssl.cc
    hmac_boringssl.h
  DEPS
    tink::subtle::common_enums
    tink::subtle::subtle_util_boringssl
    tink::core::mac
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME ecdsa_sign_boringssl
  SRCS
    ecdsa_sign_boringssl.cc
    ecdsa_sign_boringssl.h
  DEPS
    tink::subtle::common_enums
    tink::subtle::subtle_util_boringssl
    tink::core::public_key_sign
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME ecdsa_verify_boringssl
  SRCS
    ecdsa_verify_boringssl.cc
    ecdsa_verify_boringssl.h
  DEPS
    tink::subtle::common_enums
    tink::subtle::subtle_util_boringssl
    tink::core::public_key_verify
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME rsa_ssa_pss_verify_boringssl
  SRCS
    rsa_ssa_pss_verify_boringssl.cc
    rsa_ssa_pss_verify_boringssl.h
  DEPS
    tink::subtle::common_enums
    tink::subtle::subtle_util_boringssl
    tink::core::public_key_verify
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME rsa_ssa_pss_sign_boringssl
  SRCS
    rsa_ssa_pss_sign_boringssl.cc
    rsa_ssa_pss_sign_boringssl.h
  DEPS
    tink::subtle::common_enums
    tink::subtle::subtle_util_boringssl
    tink::core::public_key_sign
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME rsa_ssa_pkcs1_verify_boringssl
  SRCS
    rsa_ssa_pkcs1_verify_boringssl.cc
    rsa_ssa_pkcs1_verify_boringssl.h
  DEPS
    tink::subtle::common_enums
    tink::subtle::subtle_util_boringssl
    tink::core::public_key_verify
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME rsa_ssa_pkcs1_sign_boringssl
  SRCS
    rsa_ssa_pkcs1_sign_boringssl.cc
    rsa_ssa_pkcs1_sign_boringssl.h
  DEPS
    tink::subtle::common_enums
    tink::subtle::subtle_util_boringssl
    tink::core::public_key_sign
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME aes_gcm_boringssl
  SRCS
    aes_gcm_boringssl.cc
    aes_gcm_boringssl.h
  DEPS
    tink::subtle::random
    tink::subtle::subtle_util_boringssl
    tink::core::aead
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME aes_gcm_hkdf_stream_segment_decrypter
  SRCS
    aes_gcm_hkdf_stream_segment_decrypter.cc
    aes_gcm_hkdf_stream_segment_decrypter.h
  DEPS
    tink::subtle::aes_gcm_hkdf_stream_segment_encrypter
    tink::subtle::common_enums
    tink::subtle::hkdf
    tink::subtle::random
    tink::subtle::stream_segment_decrypter
    tink::subtle::subtle_util_boringssl
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME aes_gcm_hkdf_stream_segment_encrypter
  SRCS
    aes_gcm_hkdf_stream_segment_encrypter.cc
    aes_gcm_hkdf_stream_segment_encrypter.h
  DEPS
    tink::subtle::random
    tink::subtle::stream_segment_encrypter
    tink::subtle::subtle_util_boringssl
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME aes_gcm_hkdf_streaming
  SRCS
    aes_gcm_hkdf_streaming.cc
    aes_gcm_hkdf_streaming.h
  DEPS
    tink::subtle::aes_gcm_hkdf_stream_segment_decrypter
    tink::subtle::aes_gcm_hkdf_stream_segment_encrypter
    tink::subtle::common_enums
    tink::subtle::hkdf
    tink::subtle::nonce_based_streaming_aead
    tink::subtle::random
    tink::subtle::stream_segment_decrypter
    tink::subtle::stream_segment_encrypter
    tink::subtle::subtle_util_boringssl
    tink::core::input_stream
    tink::core::output_stream
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME aes_ctr_hmac_stream_segment_encrypter
  SRCS
    aes_ctr_hmac_stream_segment_encrypter.cc
    aes_ctr_hmac_stream_segment_encrypter.h
  DEPS
    tink::subtle::random
    tink::subtle::stream_segment_encrypter
    tink::subtle::common_enums
    tink::subtle::hmac_boringssl
    tink::subtle::subtle_util
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::memory
)

tink_cc_library(
  NAME aes_eax_boringssl
  SRCS
    aes_eax_boringssl.cc
    aes_eax_boringssl.h
  DEPS
    tink::subtle::random
    tink::subtle::subtle_util_boringssl
    tink::core::aead
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME encrypt_then_authenticate
  SRCS
    encrypt_then_authenticate.cc
    encrypt_then_authenticate.h
  DEPS
    tink::subtle::aes_ctr_boringssl
    tink::subtle::ind_cpa_cipher
    tink::subtle::subtle_util_boringssl
    tink::core::aead
    tink::core::mac
    tink::util::errors
    tink::util::status
    tink::util::statusor
    absl::strings
)

tink_cc_library(
  NAME aes_ctr_boringssl
  SRCS
    aes_ctr_boringssl.cc
    aes_ctr_boringssl.h
  DEPS
    tink::subtle::ind_cpa_cipher
    tink::subtle::random
    tink::subtle::subtle_util_boringssl
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME random
  SRCS
    random.cc
    random.h
  DEPS
    crypto
)

tink_cc_library(
  NAME xchacha20_poly1305_boringssl
  SRCS
    xchacha20_poly1305_boringssl.cc
    xchacha20_poly1305_boringssl.h
  DEPS
    tink::subtle::common_enums
    tink::subtle::random
    tink::subtle::subtle_util_boringssl
    tink::core::aead
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME aes_siv_boringssl
  SRCS
    aes_siv_boringssl.cc
    aes_siv_boringssl.h
  DEPS
    tink::subtle::random
    tink::subtle::subtle_util_boringssl
    tink::core::deterministic_aead
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME aes_gcm_siv_boringssl
  SRCS
    aes_gcm_siv_boringssl.cc
    aes_gcm_siv_boringssl.h
  DEPS
    tink::subtle::random
    tink::subtle::subtle_util_boringssl
    tink::core::aead
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME common_enums
  SRCS
    common_enums.cc
    common_enums.h
)

tink_cc_library(
  NAME subtle_util
  SRCS
    subtle_util.cc
    subtle_util.h
)

tink_cc_library(
  NAME subtle_util_boringssl
  SRCS
    subtle_util_boringssl.cc
    subtle_util_boringssl.h
  DEPS
    tink::subtle::common_enums
    tink::util::errors
    tink::util::status
    tink::util::statusor
    crypto
    absl::strings
)

tink_cc_library(
  NAME wycheproof_util
  SRCS
    wycheproof_util.cc
    wycheproof_util.h
  DEPS
    tink::subtle::common_enums
    tink::util::status
    tink::util::statusor
    absl::strings
    rapidjson
)

tink_cc_library(
  NAME stream_segment_decrypter
  SRCS stream_segment_decrypter.h
  DEPS tink::util::status
)

tink_cc_library(
  NAME stream_segment_encrypter
  SRCS stream_segment_encrypter.h
  DEPS tink::util::status
)

tink_cc_library(
  NAME streaming_aead_decrypting_stream
  SRCS
    streaming_aead_decrypting_stream.cc
    streaming_aead_decrypting_stream.h
  DEPS
    tink::subtle::stream_segment_decrypter
    tink::core::input_stream
    tink::util::status
    tink::util::statusor
    absl::memory
)

tink_cc_library(
  NAME streaming_aead_encrypting_stream
  SRCS
    streaming_aead_encrypting_stream.cc
    streaming_aead_encrypting_stream.h
  DEPS
    tink::subtle::stream_segment_encrypter
    tink::core::output_stream
    tink::util::statusor
    absl::memory
)

tink_cc_library(
  NAME nonce_based_streaming_aead
  SRCS
    nonce_based_streaming_aead.cc
    nonce_based_streaming_aead.h
  DEPS
    tink::subtle::stream_segment_decrypter
    tink::subtle::stream_segment_encrypter
    tink::subtle::streaming_aead_decrypting_stream
    tink::subtle::streaming_aead_encrypting_stream
    tink::core::input_stream
    tink::core::output_stream
    tink::core::random_access_stream
    tink::core::streaming_aead
    tink::util::statusor
    absl::strings
)

tink_cc_library(
  NAME test_util
  SRCS
    test_util.cc
    test_util.h
  DEPS
    tink::subtle::stream_segment_decrypter
    tink::subtle::stream_segment_encrypter
    tink::core::input_stream
    tink::core::output_stream
    tink::util::status
    tink::util::statusor
    absl::memory
    absl::strings
)

tholenst's avatar
tholenst committed
tink_cc_library(
  NAME streaming_aead_test_util
  SRCS
    streaming_aead_test_util.cc
    streaming_aead_test_util.h
  DEPS
    absl::strings
    tink::core::streaming_aead
    tink::util::test_util
    tink::util::ostream_output_stream
    tink::util::istream_input_stream
    tink::util::status
)

# tests

tink_cc_test(
  NAME ecies_hkdf_recipient_kem_boringssl_test
  SRCS ecies_hkdf_recipient_kem_boringssl_test.cc
  DEPS
    tink::subtle::common_enums
    tink::subtle::ecies_hkdf_recipient_kem_boringssl
    tink::util::status
    tink::util::statusor
    tink::util::test_util
)

tink_cc_test(
  NAME ecies_hkdf_sender_kem_boringssl_test
  SRCS ecies_hkdf_sender_kem_boringssl_test.cc
  DEPS
    tink::subtle::common_enums
    tink::subtle::ecies_hkdf_recipient_kem_boringssl
    tink::subtle::ecies_hkdf_sender_kem_boringssl
    tink::subtle::subtle_util_boringssl
    tink::util::status
    tink::util::statusor
    tink::util::test_util
)

tink_cc_test(
  NAME ec_util_test
  SRCS ec_util_test.cc
  DEPS
    tink::subtle::ec_util
    tink::util::status
    tink::util::statusor
    tink::util::test_util
)

tink_cc_test(
  NAME hkdf_test
  SRCS hkdf_test.cc
  DEPS
    tink::subtle::common_enums
    tink::subtle::hkdf
    tink::util::status
    tink::util::statusor
    tink::util::test_util
)

tink_cc_test(
  NAME aes_cmac_boringssl_test
  SRCS aes_cmac_boringssl_test.cc
  DEPS
    tink::subtle::common_enums
    tink::subtle::aes_cmac_boringssl
    tink::core::mac
    tink::util::status
    tink::util::statusor
    tink::util::test_util
)

tink_cc_test(
  NAME hmac_boringssl_test
  SRCS hmac_boringssl_test.cc
  DEPS
    tink::subtle::common_enums
    tink::subtle::hmac_boringssl
    tink::core::mac
    tink::util::status
    tink::util::statusor
    tink::util::test_util
)

tink_cc_test(
  NAME aes_gcm_boringssl_test
  SRCS aes_gcm_boringssl_test.cc
  DATA wycheproof::testvectors
  DEPS
    tink::subtle::aes_gcm_boringssl
    tink::subtle::wycheproof_util
    tink::core::aead
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    absl::strings
    rapidjson
)

tink_cc_test(
  NAME aes_gcm_hkdf_stream_segment_decrypter_test
  SRCS aes_gcm_hkdf_stream_segment_decrypter_test.cc
  DEPS
    tink::subtle::aes_gcm_hkdf_stream_segment_decrypter
    tink::subtle::aes_gcm_hkdf_stream_segment_encrypter
    tink::subtle::common_enums
    tink::subtle::hkdf
    tink::subtle::random
    tink::subtle::stream_segment_decrypter
    tink::subtle::stream_segment_encrypter
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    absl::memory
    absl::strings
)

tink_cc_test(
  NAME aes_gcm_hkdf_stream_segment_encrypter_test
  SRCS aes_gcm_hkdf_stream_segment_encrypter_test.cc
  DEPS
    tink::subtle::aes_gcm_hkdf_stream_segment_encrypter
    tink::subtle::random
    tink::subtle::stream_segment_encrypter
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    absl::strings
)

tink_cc_test(
  NAME aes_gcm_hkdf_streaming_test
  SRCS aes_gcm_hkdf_streaming_test.cc
  DEPS
    tink::subtle::aes_gcm_hkdf_streaming
    tink::subtle::common_enums
    tink::subtle::random
    tink::subtle::test_util
    tink::core::output_stream
    tink::util::ostream_output_stream
    tink::util::istream_input_stream
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    absl::strings
)

tink_cc_test(
  NAME aes_ctr_hmac_stream_segment_encrypter_test
  SRCS aes_ctr_hmac_stream_segment_encrypter_test.cc
  DEPS
    tink::subtle::aes_ctr_hmac_stream_segment_encrypter
    tink::subtle::random
    tink::subtle::stream_segment_encrypter
    tink::subtle::common_enums
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    tink::util::test_matchers
    absl::memory
    absl::strings
)

tink_cc_test(
  NAME aes_eax_boringssl_test
  SRCS aes_eax_boringssl_test.cc
  DATA wycheproof::testvectors
  DEPS
    tink::subtle::aes_eax_boringssl
    tink::subtle::common_enums
    tink::subtle::wycheproof_util
    tink::core::aead
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    absl::strings
    rapidjson
)

tink_cc_test(
  NAME encrypt_then_authenticate_test
  SRCS encrypt_then_authenticate_test.cc
  DEPS
    tink::subtle::aes_ctr_boringssl
    tink::subtle::common_enums
    tink::subtle::encrypt_then_authenticate
    tink::subtle::hmac_boringssl
    tink::subtle::random
    tink::core::aead
    tink::core::mac
    tink::util::status
    tink::util::statusor
    tink::util::test_util
)

tink_cc_test(
  NAME aes_ctr_boringssl_test
  SRCS aes_ctr_boringssl_test.cc
  DEPS
    tink::subtle::aes_ctr_boringssl
    tink::subtle::random
    tink::util::status
    tink::util::statusor
    tink::util::test_util
)

tink_cc_test(
  NAME aes_siv_boringssl_test
  SRCS aes_siv_boringssl_test.cc
  DATA wycheproof::testvectors
  DEPS
    tink::subtle::aes_siv_boringssl
    tink::subtle::common_enums
    tink::subtle::wycheproof_util
    tink::core::deterministic_aead
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    absl::strings
    rapidjson
)

tink_cc_test(
  NAME ecdsa_sign_boringssl_test
  SRCS ecdsa_sign_boringssl_test.cc
  DEPS
    tink::subtle::common_enums
    tink::subtle::ec_util
    tink::subtle::ecdsa_sign_boringssl
    tink::subtle::ecdsa_verify_boringssl
    tink::core::public_key_sign
    tink::core::public_key_verify
    tink::util::status
    tink::util::statusor
    tink::util::test_util
)

tink_cc_test(
  NAME ecdsa_verify_boringssl_test
  SRCS ecdsa_verify_boringssl_test.cc
  DATA wycheproof::testvectors
  DEPS
    tink::subtle::common_enums
    tink::subtle::ecdsa_sign_boringssl
    tink::subtle::ecdsa_verify_boringssl
    tink::subtle::wycheproof_util
    tink::core::public_key_sign
    tink::core::public_key_verify
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    absl::strings
    rapidjson
)

tink_cc_test(
  NAME ed25519_sign_boringssl_test
  SRCS ed25519_sign_boringssl_test.cc
  DEPS
    tink::subtle::ed25519_sign_boringssl
    tink::subtle::ed25519_verify_boringssl
    tink::subtle::random
    tink::subtle::subtle_util_boringssl
    tink::core::public_key_sign
    tink::core::public_key_verify
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    crypto
    absl::strings
)

tink_cc_test(
  NAME ed25519_verify_boringssl_test
  SRCS ed25519_verify_boringssl_test.cc
  DEPS
    tink::subtle::ed25519_sign_boringssl
    tink::subtle::ed25519_verify_boringssl
    tink::subtle::subtle_util_boringssl
    tink::subtle::wycheproof_util
    tink::core::public_key_sign
    tink::core::public_key_verify
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    crypto
    absl::strings
)

tink_cc_test(
  NAME rsa_ssa_pss_verify_boringssl_test
  SRCS rsa_ssa_pss_verify_boringssl_test.cc
  DATA wycheproof::testvectors
  DEPS
    tink::subtle::common_enums
    tink::subtle::rsa_ssa_pss_verify_boringssl
    tink::subtle::wycheproof_util
    tink::core::public_key_sign
    tink::core::public_key_verify
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    absl::strings
    rapidjson
)

tink_cc_test(
  NAME rsa_ssa_pss_sign_boringssl_test
  SRCS rsa_ssa_pss_sign_boringssl_test.cc
  DEPS
    tink::subtle::rsa_ssa_pss_sign_boringssl
    tink::subtle::rsa_ssa_pss_verify_boringssl
    tink::subtle::subtle_util_boringssl
    tink::util::test_matchers
    absl::strings
)

tink_cc_test(
  NAME rsa_ssa_pkcs1_verify_boringssl_test
  SRCS rsa_ssa_pkcs1_verify_boringssl_test.cc
  DEPS
    tink::subtle::common_enums
    tink::subtle::rsa_ssa_pkcs1_verify_boringssl
    tink::subtle::wycheproof_util
    tink::core::public_key_sign
    tink::core::public_key_verify
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    absl::strings
    rapidjson
)

tink_cc_test(
  NAME rsa_ssa_pkcs1_sign_boringssl_test
  SRCS rsa_ssa_pkcs1_sign_boringssl_test.cc
  DEPS
    tink::subtle::rsa_ssa_pkcs1_sign_boringssl
    tink::subtle::rsa_ssa_pkcs1_verify_boringssl
    tink::subtle::subtle_util_boringssl
    tink::util::test_matchers
    absl::strings
)

tink_cc_test(
  NAME aes_gcm_siv_boringssl_test
  SRCS aes_gcm_siv_boringssl_test.cc
  DATA wycheproof::testvectors
  DEPS
    tink::subtle::aes_gcm_siv_boringssl
    tink::subtle::common_enums
    tink::subtle::wycheproof_util
    tink::core::aead
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    crypto
    absl::strings
    rapidjson
)

tink_cc_test(
  NAME random_test
  SRCS random_test.cc
  DEPS tink::subtle::random
)

tink_cc_test(
  NAME common_enums_test
  SRCS common_enums_test.cc
  DEPS tink::subtle::common_enums
)

tink_cc_test(
  NAME subtle_util_test
  SRCS subtle_util_test
  DEPS tink::subtle::subtle_util
)

tink_cc_test(
  NAME subtle_util_boringssl_test
  SRCS subtle_util_boringssl_test.cc
  DATA wycheproof::testvectors
  DEPS
    tink::subtle::ec_util
    tink::subtle::subtle_util_boringssl
    tink::subtle::wycheproof_util
    tink::util::status
    tink::util::statusor
    tink::util::test_matchers
    tink::util::test_util
    crypto
    absl::strings
    rapidjson
)

tink_cc_test(
  NAME xchacha20_poly1305_boringssl_test
  SRCS xchacha20_poly1305_boringssl_test.cc
  DEPS
    tink::subtle::xchacha20_poly1305_boringssl
    tink::core::aead
    tink::util::status
    tink::util::statusor
    tink::util::test_util
    crypto
    absl::strings
)

tink_cc_test(
  NAME streaming_aead_decrypting_stream_test
  SRCS streaming_aead_decrypting_stream_test.cc
  DEPS
    tink::subtle::random
    tink::subtle::stream_segment_decrypter
    tink::subtle::streaming_aead_decrypting_stream
    tink::subtle::test_util