xref: /aosp_15_r20/external/tink/cc/mac/CMakeLists.txt (revision e7b1675dde1b92d52ec075b0a92829627f2c52a5)
1tink_module(mac)
2
3add_subdirectory(internal)
4
5tink_cc_library(
6  NAME mac_wrapper
7  SRCS
8    mac_wrapper.cc
9    mac_wrapper.h
10  DEPS
11    absl::status
12    absl::strings
13    tink::core::crypto_format
14    tink::core::mac
15    tink::core::primitive_set
16    tink::core::primitive_wrapper
17    tink::internal::monitoring_util
18    tink::internal::registry_impl
19    tink::internal::util
20    tink::monitoring::monitoring
21    tink::util::status
22    tink::util::statusor
23    tink::proto::tink_cc_proto
24)
25
26tink_cc_library(
27  NAME mac_config
28  SRCS
29    mac_config.cc
30    mac_config.h
31  DEPS
32    tink::mac::aes_cmac_key_manager
33    tink::mac::aes_cmac_proto_serialization
34    tink::mac::hmac_key_manager
35    tink::mac::hmac_proto_serialization
36    tink::mac::mac_wrapper
37    absl::core_headers
38    absl::memory
39    tink::core::registry
40    tink::config::config_util
41    tink::config::tink_fips
42    tink::mac::internal::chunked_mac_wrapper
43    tink::util::status
44    tink::proto::config_cc_proto
45)
46
47tink_cc_library(
48  NAME mac_factory
49  SRCS
50    mac_factory.cc
51    mac_factory.h
52  DEPS
53    tink::mac::mac_wrapper
54    absl::core_headers
55    tink::core::key_manager
56    tink::core::keyset_handle
57    tink::core::mac
58    tink::core::registry
59    tink::util::status
60    tink::util::statusor
61)
62
63tink_cc_library(
64  NAME mac_key_templates
65  SRCS
66    mac_key_templates.cc
67    mac_key_templates.h
68  DEPS
69    tink::proto::aes_cmac_cc_proto
70    tink::proto::common_cc_proto
71    tink::proto::hmac_cc_proto
72    tink::proto::tink_cc_proto
73)
74
75tink_cc_library(
76  NAME aes_cmac_key_manager
77  SRCS
78    aes_cmac_key_manager.h
79  DEPS
80    absl::memory
81    absl::status
82    absl::strings
83    tink::core::chunked_mac
84    tink::core::key_type_manager
85    tink::core::key_manager
86    tink::core::mac
87    tink::mac::internal::chunked_mac_impl
88    tink::subtle::aes_cmac_boringssl
89    tink::subtle::random
90    tink::util::constants
91    tink::util::errors
92    tink::util::protobuf_helper
93    tink::util::secret_data
94    tink::util::status
95    tink::util::statusor
96    tink::util::validation
97    tink::proto::aes_cmac_cc_proto
98    tink::proto::tink_cc_proto
99)
100
101tink_cc_library(
102  NAME hmac_key_manager
103  SRCS
104    hmac_key_manager.cc
105    hmac_key_manager.h
106  DEPS
107    absl::memory
108    absl::status
109    absl::strings
110    tink::core::chunked_mac
111    tink::core::key_type_manager
112    tink::core::mac
113    tink::mac::internal::chunked_mac_impl
114    tink::subtle::hmac_boringssl
115    tink::subtle::random
116    tink::util::constants
117    tink::util::enums
118    tink::util::errors
119    tink::util::input_stream_util
120    tink::util::protobuf_helper
121    tink::util::secret_data
122    tink::util::status
123    tink::util::statusor
124    tink::util::validation
125    tink::proto::common_cc_proto
126    tink::proto::hmac_cc_proto
127    tink::proto::tink_cc_proto
128)
129
130tink_cc_library(
131  NAME mac_parameters
132  SRCS
133    mac_parameters.h
134  DEPS
135    tink::core::parameters
136)
137
138tink_cc_library(
139  NAME mac_key
140  SRCS
141    mac_key.h
142  DEPS
143    tink::mac::mac_parameters
144    tink::core::key
145    tink::util::statusor
146)
147
148tink_cc_library(
149  NAME failing_mac
150  SRCS
151    failing_mac.cc
152    failing_mac.h
153  DEPS
154    absl::strings
155    tink::core::mac
156  TESTONLY
157)
158
159tink_cc_library(
160  NAME aes_cmac_parameters
161  SRCS
162    aes_cmac_parameters.cc
163    aes_cmac_parameters.h
164  DEPS
165    tink::mac::mac_parameters
166    absl::log
167    tink::core::crypto_format
168    tink::internal::util
169    tink::util::status
170    tink::util::statusor
171)
172
173tink_cc_library(
174  NAME aes_cmac_key
175  SRCS
176    aes_cmac_key.cc
177    aes_cmac_key.h
178  DEPS
179    tink::mac::aes_cmac_parameters
180    tink::mac::mac_key
181    absl::core_headers
182    absl::strings
183    absl::str_format
184    absl::optional
185    crypto
186    tink::core::partial_key_access_token
187    tink::core::restricted_data
188    tink::subtle::subtle_util
189    tink::util::status
190    tink::util::statusor
191)
192
193tink_cc_library(
194  NAME aes_cmac_proto_serialization
195  SRCS
196    aes_cmac_proto_serialization.cc
197    aes_cmac_proto_serialization.h
198  DEPS
199    tink::mac::aes_cmac_key
200    tink::mac::aes_cmac_parameters
201    absl::status
202    absl::optional
203    tink::core::partial_key_access
204    tink::core::restricted_data
205    tink::core::secret_key_access_token
206    tink::internal::key_parser
207    tink::internal::key_serializer
208    tink::internal::mutable_serialization_registry
209    tink::internal::parameters_parser
210    tink::internal::parameters_serializer
211    tink::internal::proto_key_serialization
212    tink::internal::proto_parameters_serialization
213    tink::util::status
214    tink::util::statusor
215    tink::proto::aes_cmac_cc_proto
216    tink::proto::tink_cc_proto
217)
218
219tink_cc_library(
220  NAME hmac_parameters
221  SRCS
222    hmac_parameters.cc
223    hmac_parameters.h
224  DEPS
225    tink::mac::mac_parameters
226    absl::log
227    tink::core::crypto_format
228    tink::internal::util
229    tink::util::status
230    tink::util::statusor
231)
232
233tink_cc_library(
234  NAME hmac_key
235  SRCS
236    hmac_key.cc
237    hmac_key.h
238  DEPS
239    tink::mac::hmac_parameters
240    tink::mac::mac_key
241    absl::core_headers
242    absl::strings
243    absl::str_format
244    absl::optional
245    tink::core::partial_key_access_token
246    tink::core::restricted_data
247    tink::subtle::subtle_util
248    tink::util::status
249    tink::util::statusor
250)
251
252tink_cc_library(
253  NAME hmac_proto_serialization
254  SRCS
255    hmac_proto_serialization.cc
256    hmac_proto_serialization.h
257  DEPS
258    tink::mac::hmac_key
259    tink::mac::hmac_parameters
260    absl::status
261    absl::optional
262    tink::core::partial_key_access
263    tink::core::restricted_data
264    tink::core::secret_key_access_token
265    tink::internal::key_parser
266    tink::internal::key_serializer
267    tink::internal::mutable_serialization_registry
268    tink::internal::parameters_parser
269    tink::internal::parameters_serializer
270    tink::internal::proto_key_serialization
271    tink::internal::proto_parameters_serialization
272    tink::util::status
273    tink::util::statusor
274    tink::proto::common_cc_proto
275    tink::proto::hmac_cc_proto
276    tink::proto::tink_cc_proto
277)
278
279# tests
280
281tink_cc_test(
282  NAME mac_wrapper_test
283  SRCS
284    mac_wrapper_test.cc
285  DEPS
286    tink::mac::failing_mac
287    tink::mac::mac_wrapper
288    gmock
289    absl::strings
290    tink::core::crypto_format
291    tink::core::mac
292    tink::core::primitive_set
293    tink::internal::registry_impl
294    tink::monitoring::monitoring
295    tink::monitoring::monitoring_client_mocks
296    tink::util::status
297    tink::util::test_matchers
298    tink::util::test_util
299    tink::proto::tink_cc_proto
300)
301
302tink_cc_test(
303  NAME mac_config_test
304  SRCS
305    mac_config_test.cc
306  DEPS
307    tink::mac::aes_cmac_key
308    tink::mac::aes_cmac_key_manager
309    tink::mac::aes_cmac_parameters
310    tink::mac::hmac_key
311    tink::mac::hmac_key_manager
312    tink::mac::hmac_parameters
313    tink::mac::mac_config
314    tink::mac::mac_key_templates
315    gmock
316    absl::status
317    crypto
318    tink::core::chunked_mac
319    tink::core::insecure_secret_key_access
320    tink::core::keyset_handle
321    tink::core::mac
322    tink::core::partial_key_access
323    tink::core::registry
324    tink::internal::fips_utils
325    tink::internal::mutable_serialization_registry
326    tink::internal::proto_key_serialization
327    tink::internal::proto_parameters_serialization
328    tink::util::status
329    tink::util::test_matchers
330    tink::util::test_util
331    tink::proto::common_cc_proto
332    tink::proto::tink_cc_proto
333)
334
335tink_cc_test(
336  NAME mac_factory_test
337  SRCS
338    mac_factory_test.cc
339  DEPS
340    tink::mac::hmac_key_manager
341    tink::mac::mac_config
342    tink::mac::mac_factory
343    gmock
344    tink::core::crypto_format
345    tink::core::keyset_handle
346    tink::core::mac
347    tink::internal::key_info
348    tink::util::status
349    tink::util::test_keyset_handle
350    tink::util::test_util
351    tink::proto::common_cc_proto
352    tink::proto::hmac_cc_proto
353    tink::proto::tink_cc_proto
354)
355
356tink_cc_test(
357  NAME mac_key_templates_test
358  SRCS
359    mac_key_templates_test.cc
360  DEPS
361    tink::mac::aes_cmac_key_manager
362    tink::mac::hmac_key_manager
363    tink::mac::mac_key_templates
364    gmock
365    tink::core::key_manager_impl
366    tink::util::test_matchers
367    tink::proto::aes_cmac_cc_proto
368    tink::proto::common_cc_proto
369    tink::proto::hmac_cc_proto
370    tink::proto::tink_cc_proto
371)
372
373tink_cc_test(
374  NAME aes_cmac_key_manager_test
375  SRCS
376    aes_cmac_key_manager_test.cc
377  DEPS
378    tink::mac::aes_cmac_key_manager
379    gmock
380    tink::core::chunked_mac
381    tink::core::mac
382    tink::util::status
383    tink::util::statusor
384    tink::util::test_matchers
385    tink::proto::aes_cmac_cc_proto
386)
387
388tink_cc_test(
389  NAME hmac_key_manager_test
390  SRCS
391    hmac_key_manager_test.cc
392  DEPS
393    tink::mac::hmac_key_manager
394    gmock
395    absl::status
396    tink::core::chunked_mac
397    tink::core::key_manager_impl
398    tink::core::mac
399    tink::util::istream_input_stream
400    tink::util::secret_data
401    tink::util::status
402    tink::util::statusor
403    tink::util::test_matchers
404    tink::proto::hmac_cc_proto
405)
406
407tink_cc_test(
408  NAME failing_mac_test
409  SRCS
410    failing_mac_test.cc
411  DEPS
412    tink::mac::failing_mac
413    gmock
414    absl::status
415    tink::util::test_matchers
416)
417
418tink_cc_test(
419  NAME aes_cmac_parameters_test
420  SRCS
421    aes_cmac_parameters_test.cc
422  DEPS
423    tink::mac::aes_cmac_parameters
424    gmock
425    tink::util::statusor
426    tink::util::test_matchers
427)
428
429tink_cc_test(
430  NAME aes_cmac_key_test
431  SRCS
432    aes_cmac_key_test.cc
433  DEPS
434    tink::mac::aes_cmac_key
435    tink::mac::aes_cmac_parameters
436    gmock
437    absl::optional
438    tink::core::partial_key_access
439    tink::core::restricted_data
440    tink::util::statusor
441    tink::util::test_matchers
442)
443
444tink_cc_test(
445  NAME aes_cmac_proto_serialization_test
446  SRCS
447    aes_cmac_proto_serialization_test.cc
448  DEPS
449    tink::mac::aes_cmac_key
450    tink::mac::aes_cmac_parameters
451    tink::mac::aes_cmac_proto_serialization
452    gmock
453    tink::core::insecure_secret_key_access
454    tink::core::partial_key_access
455    tink::core::restricted_data
456    tink::internal::mutable_serialization_registry
457    tink::internal::proto_key_serialization
458    tink::internal::proto_parameters_serialization
459    tink::subtle::random
460    tink::util::test_matchers
461    tink::proto::aes_cmac_cc_proto
462    tink::proto::tink_cc_proto
463)
464
465tink_cc_test(
466  NAME hmac_parameters_test
467  SRCS
468    hmac_parameters_test.cc
469  DEPS
470    tink::mac::hmac_parameters
471    gmock
472    tink::util::statusor
473    tink::util::test_matchers
474)
475
476tink_cc_test(
477  NAME hmac_key_test
478  SRCS
479    hmac_key_test.cc
480  DEPS
481    tink::mac::hmac_key
482    tink::mac::hmac_parameters
483    gmock
484    absl::optional
485    tink::core::partial_key_access
486    tink::core::restricted_data
487    tink::util::statusor
488    tink::util::test_matchers
489)
490
491tink_cc_test(
492  NAME hmac_proto_serialization_test
493  SRCS
494    hmac_proto_serialization_test.cc
495  DEPS
496    tink::mac::hmac_key
497    tink::mac::hmac_parameters
498    tink::mac::hmac_proto_serialization
499    gmock
500    tink::core::insecure_secret_key_access
501    tink::core::partial_key_access
502    tink::core::restricted_data
503    tink::internal::mutable_serialization_registry
504    tink::internal::proto_key_serialization
505    tink::internal::proto_parameters_serialization
506    tink::subtle::random
507    tink::util::test_matchers
508    tink::proto::common_cc_proto
509    tink::proto::hmac_cc_proto
510    tink::proto::tink_cc_proto
511)
512