xref: /aosp_15_r20/external/tink/cc/hybrid/internal/BUILD.bazel (revision e7b1675dde1b92d52ec075b0a92829627f2c52a5)
1package(default_visibility = ["//:__subpackages__"])
2
3licenses(["notice"])
4
5cc_library(
6    name = "hpke_context",
7    srcs = ["hpke_context.cc"],
8    hdrs = ["hpke_context.h"],
9    include_prefix = "tink/hybrid/internal",
10    tags = ["requires_boringcrypto_update"],
11    visibility = ["//visibility:public"],
12    deps = [
13        ":hpke_context_boringssl",
14        ":hpke_util",
15        "//util:secret_data",
16        "//util:status",
17        "//util:statusor",
18        "@com_google_absl//absl/status",
19        "@com_google_absl//absl/strings",
20    ],
21)
22
23cc_library(
24    name = "hpke_context_boringssl",
25    srcs = ["hpke_context_boringssl.cc"],
26    hdrs = ["hpke_context_boringssl.h"],
27    include_prefix = "tink/hybrid/internal",
28    tags = ["requires_boringcrypto_update"],
29    deps = [
30        ":hpke_util",
31        ":hpke_util_boringssl",
32        "//internal:ssl_unique_ptr",
33        "//subtle:subtle_util",
34        "//util:secret_data",
35        "//util:statusor",
36        "@boringssl//:crypto",
37        "@com_google_absl//absl/strings",
38    ],
39)
40
41cc_library(
42    name = "hpke_decrypt",
43    srcs = ["hpke_decrypt.cc"],
44    hdrs = ["hpke_decrypt.h"],
45    include_prefix = "tink/hybrid/internal",
46    tags = ["requires_boringcrypto_update"],
47    deps = [
48        ":hpke_context",
49        ":hpke_util",
50        "//:hybrid_decrypt",
51        "//proto:hpke_cc_proto",
52        "//util:secret_data",
53        "//util:status",
54        "//util:statusor",
55        "@com_google_absl//absl/status",
56    ],
57)
58
59cc_library(
60    name = "hpke_decrypt_boringssl",
61    srcs = ["hpke_decrypt_boringssl.cc"],
62    hdrs = ["hpke_decrypt_boringssl.h"],
63    include_prefix = "tink/hybrid/internal",
64    tags = ["requires_boringcrypto_update"],
65    deps = [
66        ":hpke_key_boringssl",
67        ":hpke_util_boringssl",
68        "//proto:hpke_cc_proto",
69        "//subtle:subtle_util",
70        "//util:status",
71        "//util:statusor",
72        "@boringssl//:crypto",
73        "@com_google_absl//absl/base:core_headers",
74        "@com_google_absl//absl/status",
75        "@com_google_absl//absl/strings",
76    ],
77)
78
79cc_library(
80    name = "hpke_encrypt",
81    srcs = ["hpke_encrypt.cc"],
82    hdrs = ["hpke_encrypt.h"],
83    include_prefix = "tink/hybrid/internal",
84    tags = ["requires_boringcrypto_update"],
85    deps = [
86        ":hpke_context",
87        ":hpke_util",
88        "//:hybrid_encrypt",
89        "//proto:hpke_cc_proto",
90        "//util:statusor",
91        "@com_google_absl//absl/status",
92    ],
93)
94
95cc_library(
96    name = "hpke_encrypt_boringssl",
97    srcs = ["hpke_encrypt_boringssl.cc"],
98    hdrs = ["hpke_encrypt_boringssl.h"],
99    include_prefix = "tink/hybrid/internal",
100    tags = ["requires_boringcrypto_update"],
101    deps = [
102        ":hpke_util_boringssl",
103        "//proto:hpke_cc_proto",
104        "//subtle:subtle_util",
105        "//util:status",
106        "//util:statusor",
107        "@boringssl//:crypto",
108        "@com_google_absl//absl/algorithm:container",
109        "@com_google_absl//absl/base:core_headers",
110        "@com_google_absl//absl/status",
111        "@com_google_absl//absl/strings",
112    ],
113)
114
115cc_library(
116    name = "hpke_key_boringssl",
117    srcs = ["hpke_key_boringssl.cc"],
118    hdrs = ["hpke_key_boringssl.h"],
119    include_prefix = "tink/hybrid/internal",
120    tags = ["requires_boringcrypto_update"],
121    deps = [
122        ":hpke_util_boringssl",
123        "//proto:hpke_cc_proto",
124        "//util:status",
125        "//util:statusor",
126        "@boringssl//:crypto",
127        "@com_google_absl//absl/base:core_headers",
128        "@com_google_absl//absl/status",
129    ],
130)
131
132cc_library(
133    name = "hpke_key_manager_util",
134    srcs = ["hpke_key_manager_util.cc"],
135    hdrs = ["hpke_key_manager_util.h"],
136    include_prefix = "tink/hybrid/internal",
137    deps = [
138        "//proto:hpke_cc_proto",
139        "//util:status",
140        "//util:validation",
141        "@com_google_absl//absl/status",
142    ],
143)
144
145cc_library(
146    name = "hpke_private_key_manager",
147    srcs = ["hpke_private_key_manager.cc"],
148    hdrs = ["hpke_private_key_manager.h"],
149    include_prefix = "tink/hybrid/internal",
150    tags = ["requires_boringcrypto_update"],
151    deps = [
152        ":hpke_decrypt",
153        ":hpke_key_manager_util",
154        "//:core/key_type_manager",
155        "//:core/private_key_type_manager",
156        "//:hybrid_decrypt",
157        "//:key_manager",
158        "//internal:ec_util",
159        "//proto:hpke_cc_proto",
160        "//proto:tink_cc_proto",
161        "//util:constants",
162        "//util:status",
163        "//util:statusor",
164        "//util:validation",
165        "@com_google_absl//absl/status",
166    ],
167)
168
169cc_library(
170    name = "hpke_public_key_manager",
171    srcs = ["hpke_public_key_manager.cc"],
172    hdrs = ["hpke_public_key_manager.h"],
173    include_prefix = "tink/hybrid/internal",
174    tags = ["requires_boringcrypto_update"],
175    deps = [
176        ":hpke_encrypt",
177        ":hpke_key_manager_util",
178        "//:core/key_type_manager",
179        "//:hybrid_encrypt",
180        "//:key_manager",
181        "//proto:hpke_cc_proto",
182        "//proto:tink_cc_proto",
183        "//util:constants",
184        "//util:errors",
185        "//util:protobuf_helper",
186        "//util:status",
187        "//util:statusor",
188        "@com_google_absl//absl/memory",
189        "@com_google_absl//absl/strings",
190    ],
191)
192
193cc_library(
194    name = "hpke_test_util",
195    testonly = 1,
196    srcs = ["hpke_test_util.cc"],
197    hdrs = ["hpke_test_util.h"],
198    include_prefix = "tink/hybrid/internal",
199    deps = [
200        ":hpke_util",
201        "//proto:hpke_cc_proto",
202        "//util:status",
203        "//util:statusor",
204        "@com_google_absl//absl/status",
205        "@com_google_absl//absl/strings",
206    ],
207)
208
209cc_library(
210    name = "hpke_util",
211    srcs = ["hpke_util.cc"],
212    hdrs = ["hpke_util.h"],
213    include_prefix = "tink/hybrid/internal",
214    deps = [
215        "//internal:ec_util",
216        "//proto:hpke_cc_proto",
217        "//subtle:common_enums",
218        "//util:statusor",
219        "@com_google_absl//absl/strings",
220    ],
221)
222
223cc_library(
224    name = "hpke_util_boringssl",
225    srcs = ["hpke_util_boringssl.cc"],
226    hdrs = ["hpke_util_boringssl.h"],
227    include_prefix = "tink/hybrid/internal",
228    tags = ["requires_boringcrypto_update"],
229    deps = [
230        ":hpke_util",
231        "//proto:hpke_cc_proto",
232        "//util:status",
233        "//util:statusor",
234        "@boringssl//:crypto",
235        "@com_google_absl//absl/status",
236        "@com_google_absl//absl/strings",
237    ],
238)
239
240cc_library(
241    name = "test_hpke_context_boringssl",
242    testonly = 1,
243    srcs = ["test_hpke_context_boringssl.cc"],
244    hdrs = ["test_hpke_context_boringssl.h"],
245    include_prefix = "tink/hybrid/internal",
246    tags = ["requires_boringcrypto_update"],
247    deps = [
248        ":hpke_context_boringssl",
249        ":hpke_util",
250        ":hpke_util_boringssl",
251        "//internal:ssl_unique_ptr",
252        "//util:statusor",
253        "@boringssl//:crypto",
254        "@com_google_absl//absl/strings",
255    ],
256)
257
258# tests
259
260cc_test(
261    name = "hpke_context_test",
262    size = "small",
263    srcs = ["hpke_context_test.cc"],
264    tags = ["requires_boringcrypto_update"],
265    deps = [
266        ":hpke_context",
267        ":hpke_test_util",
268        ":hpke_util",
269        "//util:secret_data",
270        "//util:statusor",
271        "//util:test_matchers",
272        "@com_google_googletest//:gtest_main",
273    ],
274)
275
276cc_test(
277    name = "hpke_context_boringssl_test",
278    size = "small",
279    srcs = ["hpke_context_boringssl_test.cc"],
280    tags = ["requires_boringcrypto_update"],
281    deps = [
282        ":hpke_context_boringssl",
283        ":hpke_test_util",
284        ":hpke_util",
285        ":test_hpke_context_boringssl",
286        "//util:secret_data",
287        "//util:test_matchers",
288        "@boringssl//:crypto",
289        "@com_google_absl//absl/status",
290        "@com_google_googletest//:gtest_main",
291    ],
292)
293
294cc_test(
295    name = "hpke_decrypt_boringssl_test",
296    size = "small",
297    srcs = ["hpke_decrypt_boringssl_test.cc"],
298    tags = ["requires_boringcrypto_update"],
299    deps = [
300        ":hpke_decrypt_boringssl",
301        ":hpke_test_util",
302        "//proto:hpke_cc_proto",
303        "//util:status",
304        "//util:test_matchers",
305        "//util:test_util",
306        "@boringssl//:crypto",
307        "@com_google_absl//absl/status",
308        "@com_google_absl//absl/strings",
309        "@com_google_googletest//:gtest_main",
310    ],
311)
312
313cc_test(
314    name = "hpke_decrypt_test",
315    size = "small",
316    srcs = ["hpke_decrypt_test.cc"],
317    tags = ["requires_boringcrypto_update"],
318    deps = [
319        ":hpke_decrypt",
320        ":hpke_encrypt",
321        ":hpke_test_util",
322        "//proto:hpke_cc_proto",
323        "//util:statusor",
324        "//util:test_matchers",
325        "@com_google_absl//absl/status",
326        "@com_google_absl//absl/strings",
327        "@com_google_googletest//:gtest_main",
328    ],
329)
330
331cc_test(
332    name = "hpke_encrypt_boringssl_test",
333    size = "small",
334    srcs = ["hpke_encrypt_boringssl_test.cc"],
335    tags = ["requires_boringcrypto_update"],
336    deps = [
337        ":hpke_encrypt_boringssl",
338        ":hpke_test_util",
339        "//proto:hpke_cc_proto",
340        "//util:status",
341        "//util:test_matchers",
342        "//util:test_util",
343        "@boringssl//:crypto",
344        "@com_google_absl//absl/status",
345        "@com_google_absl//absl/strings",
346        "@com_google_googletest//:gtest_main",
347    ],
348)
349
350cc_test(
351    name = "hpke_encrypt_test",
352    size = "small",
353    srcs = ["hpke_encrypt_test.cc"],
354    tags = ["requires_boringcrypto_update"],
355    deps = [
356        ":hpke_encrypt",
357        ":hpke_test_util",
358        ":hpke_util",
359        "//proto:hpke_cc_proto",
360        "//util:test_matchers",
361        "@com_google_absl//absl/status",
362        "@com_google_absl//absl/strings",
363        "@com_google_googletest//:gtest_main",
364    ],
365)
366
367cc_test(
368    name = "hpke_key_boringssl_test",
369    size = "small",
370    srcs = ["hpke_key_boringssl_test.cc"],
371    tags = ["requires_boringcrypto_update"],
372    deps = [
373        ":hpke_key_boringssl",
374        ":hpke_test_util",
375        "//proto:hpke_cc_proto",
376        "//util:status",
377        "//util:test_matchers",
378        "//util:test_util",
379        "@boringssl//:crypto",
380        "@com_google_absl//absl/status",
381        "@com_google_absl//absl/strings",
382        "@com_google_googletest//:gtest_main",
383    ],
384)
385
386cc_test(
387    name = "hpke_key_manager_util_test",
388    size = "small",
389    srcs = ["hpke_key_manager_util_test.cc"],
390    deps = [
391        ":hpke_key_manager_util",
392        ":hpke_test_util",
393        "//util:status",
394        "//util:test_matchers",
395        "@com_google_absl//absl/status",
396        "@com_google_googletest//:gtest_main",
397    ],
398)
399
400cc_test(
401    name = "hpke_private_key_manager_test",
402    size = "small",
403    srcs = ["hpke_private_key_manager_test.cc"],
404    tags = ["requires_boringcrypto_update"],
405    deps = [
406        ":hpke_encrypt",
407        ":hpke_private_key_manager",
408        "//:hybrid_encrypt",
409        "//proto:hpke_cc_proto",
410        "//proto:tink_cc_proto",
411        "//subtle:hybrid_test_util",
412        "//util:status",
413        "//util:statusor",
414        "//util:test_matchers",
415        "//util:test_util",
416        "@com_google_absl//absl/status",
417        "@com_google_googletest//:gtest_main",
418    ],
419)
420
421cc_test(
422    name = "hpke_public_key_manager_test",
423    size = "small",
424    srcs = ["hpke_public_key_manager_test.cc"],
425    tags = ["requires_boringcrypto_update"],
426    deps = [
427        ":hpke_public_key_manager",
428        ":hpke_test_util",
429        "//proto:hpke_cc_proto",
430        "//util:test_matchers",
431        "//util:test_util",
432        "@com_google_absl//absl/status",
433        "@com_google_googletest//:gtest_main",
434    ],
435)
436
437cc_test(
438    name = "hpke_util_boringssl_test",
439    size = "small",
440    srcs = ["hpke_util_boringssl_test.cc"],
441    tags = ["requires_boringcrypto_update"],
442    deps = [
443        ":hpke_test_util",
444        ":hpke_util",
445        ":hpke_util_boringssl",
446        "//proto:hpke_cc_proto",
447        "//util:test_matchers",
448        "//util:test_util",
449        "@boringssl//:crypto",
450        "@com_google_googletest//:gtest_main",
451    ],
452)
453
454cc_test(
455    name = "hpke_util_test",
456    size = "small",
457    srcs = ["hpke_util_test.cc"],
458    deps = [
459        ":hpke_test_util",
460        ":hpke_util",
461        "//proto:hpke_cc_proto",
462        "//util:test_matchers",
463        "@com_google_googletest//:gtest_main",
464    ],
465)
466