blob: 94b3444ee28d27b3999b0231865d3cf9053d43f4 [file]
# Copyright 2026 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
#
# https://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.
#
load("@rules_cc//cc:cc_library.bzl", "cc_library")
load("@rules_cc//cc:cc_test.bzl", "cc_test")
package(
default_testonly = True,
default_visibility = ["//visibility:public"],
)
cc_library(
name = "test_string_utils",
hdrs = ["test_string_utils.h"],
deps = [
"@riegeli//riegeli/endian:endian_writing",
],
)
cc_library(
name = "mock_cose_verifier",
hdrs = ["mock_cose_verifier.h"],
deps = [
"//cose:verifier",
"//proto:cose_verification_result_cc_proto",
"@abseil-cpp//absl/strings:string_view",
"@googletest//:gtest",
],
)
cc_library(
name = "mock_assertion_validator",
hdrs = ["mock_assertion_validator.h"],
deps = [
"//assertion:validator",
"//jumbf:uri",
"//validator:tracker",
"@abseil-cpp//absl/container:flat_hash_set",
"@googletest//:gtest",
],
)
cc_library(
name = "fake_claim_validator",
hdrs = ["fake_claim_validator.h"],
deps = [
"//claim:validator",
"//constants:status_codes",
"//jumbf:box",
"//validator:tracker",
"@abseil-cpp//absl/container:flat_hash_map",
"@abseil-cpp//absl/strings:string_view",
"@abseil-cpp//absl/types:span",
],
)
cc_test(
name = "fake_claim_validator_test",
srcs = ["fake_claim_validator_test.cc"],
deps = [
":fake_claim_validator",
":proto_test_utils",
":test_validation_tracker",
"//constants:status_codes",
"//jumbf:box",
"//proto:generator_info_cc_proto",
"//proto:manifest_cc_proto",
"@abseil-cpp//absl/types:span",
"@googletest//:gtest_main",
],
)
cc_library(
name = "fake_assertion_validator",
hdrs = ["fake_assertion_validator.h"],
deps = [
"//assertion:validator",
"//constants:status_codes",
"//jumbf:uri",
"//validator:tracker",
"@abseil-cpp//absl/container:flat_hash_map",
"@abseil-cpp//absl/container:flat_hash_set",
"@abseil-cpp//absl/strings",
"@abseil-cpp//absl/strings:string_view",
"@abseil-cpp//absl/types:span",
],
)
cc_test(
name = "fake_assertion_validator_test",
srcs = ["fake_assertion_validator_test.cc"],
deps = [
":fake_assertion_validator",
":proto_test_utils",
":test_validation_tracker",
"//constants:status_codes",
"//jumbf:box",
"//jumbf:uri",
"//proto:assertion_cc_proto",
"//proto:ingredient_assertion_cc_proto",
"//proto:manifest_cc_proto",
"@abseil-cpp//absl/strings:string_view",
"@abseil-cpp//absl/types:span",
"@googletest//:gtest_main",
],
)
cc_library(
name = "crypto_testing",
srcs = ["crypto_testing.cc"],
hdrs = ["crypto_testing.h"],
deps = [
"@abseil-cpp//absl/log:check",
"@abseil-cpp//absl/time",
"@boringssl//:crypto",
],
)
cc_library(
name = "boringssl_utils",
testonly = False,
srcs = ["boringssl_utils.cc"],
hdrs = ["boringssl_utils.h"],
deps = [
"@abseil-cpp//absl/base:nullability",
"@abseil-cpp//absl/log:check",
"@abseil-cpp//absl/log:die_if_null",
"@abseil-cpp//absl/strings:string_view",
"@boringssl//:crypto",
],
)
cc_library(
name = "cbor_utils",
srcs = ["cbor_utils.cc"],
hdrs = ["cbor_utils.h"],
deps = [
"@abseil-cpp//absl/log",
"@abseil-cpp//absl/log:check",
"@abseil-cpp//absl/strings",
"@abseil-cpp//absl/strings:string_view",
"@libcppbor",
"@nlohmann_json//:json",
],
)
cc_test(
name = "cbor_utils_test",
srcs = ["cbor_utils_test.cc"],
deps = [
":cbor_utils",
"//cbor:parse",
"//testing/proto:test_message_cc_proto",
"@abseil-cpp//absl/strings:string_view",
"@googletest//:gtest_main",
"@libcppbor",
"@nlohmann_json//:json",
],
)
cc_library(
name = "pem",
srcs = ["pem.cc"],
hdrs = ["pem.h"],
deps = [
"@abseil-cpp//absl/status",
"@abseil-cpp//absl/status:status_macros",
"@abseil-cpp//absl/status:statusor",
"@abseil-cpp//absl/strings:string_view",
"@boringssl//:crypto",
"@tink_cc//proto:common_cc_proto",
"@tink_cc//tink:cleartext_keyset_handle",
"@tink_cc//tink:keyset_handle",
"@tink_cc//tink:public_key_sign",
"@tink_cc//tink/signature:config_v0",
"@tink_cc//tink/signature:signature_pem_keyset_reader",
],
)
cc_test(
name = "pem_test",
srcs = ["pem_test.cc"],
deps = [
":pem",
"@abseil-cpp//absl/status",
"@abseil-cpp//absl/status:status_macros",
"@abseil-cpp//absl/status:status_matchers",
"@abseil-cpp//absl/strings:string_view",
"@googletest//:gtest_main",
"@tink_cc//tink/signature:signature_pem_keyset_reader",
],
)
cc_library(
name = "cms",
testonly = False,
srcs = ["cms.cc"],
hdrs = ["cms.h"],
deps = [
"//crypto:algorithms",
"//crypto:hash",
"//crypto/default:hasher",
"@abseil-cpp//absl/functional:function_ref",
"@abseil-cpp//absl/status",
"@abseil-cpp//absl/status:status_macros",
"@abseil-cpp//absl/status:statusor",
"@abseil-cpp//absl/strings:string_view",
"@abseil-cpp//absl/time",
"@abseil-cpp//absl/types:span",
"@boringssl//:crypto",
],
)
cc_library(
name = "jumbf_utils",
srcs = ["jumbf_utils.cc"],
hdrs = ["jumbf_utils.h"],
deps = [
"//assertion:assertion_encoder",
"//constants:labels",
"//crypto:hash",
"//crypto/default:hasher",
"//jumbf:box",
"//jumbf:constants",
"//jumbf:parse",
"//jumbf:test_utils",
"//proto:assertion_cc_proto",
"//utils:byte_readers",
"//utils:byte_writers",
"//uuid",
"@abseil-cpp//absl/log:absl_check",
"@abseil-cpp//absl/log:check",
"@abseil-cpp//absl/status",
"@abseil-cpp//absl/status:status_macros",
"@abseil-cpp//absl/status:status_matchers",
"@abseil-cpp//absl/strings:string_view",
"@abseil-cpp//absl/types:span",
],
)
cc_library(
name = "test_validation_tracker",
hdrs = ["test_validation_tracker.h"],
deps = [
"//constants:status_codes",
"//proto:manifest_cc_proto",
"//proto:validation_status_cc_proto",
"//validator:tracker",
"@abseil-cpp//absl/container:flat_hash_set",
"@abseil-cpp//absl/strings",
"@googletest//:gtest",
"@protobuf//:protobuf_lite",
],
)
cc_library(
name = "test_status_tracker",
hdrs = ["test_status_tracker.h"],
deps = [
":test_validation_tracker",
"//constants:status_codes",
"//utils:status_tracker",
"//validator:tracker",
],
)
cc_library(
name = "proto_test_utils",
hdrs = ["proto_test_utils.h"],
deps = [
"@abseil-cpp//absl/log:check",
"@abseil-cpp//absl/strings:string_view",
"@googletest//:gtest",
"@protobuf",
"@protobuf//:differencer",
],
)
cc_library(
name = "test_file_utils",
srcs = ["test_file_utils.cc"],
hdrs = ["test_file_utils.h"],
deps = [
"@abseil-cpp//absl/status",
"@abseil-cpp//absl/status:statusor",
"@abseil-cpp//absl/strings:string_view",
"@bazel_tools//tools/cpp/runfiles",
"@riegeli//riegeli/bytes:cfile_reader",
"@riegeli//riegeli/bytes:reader",
],
)