/* SPDX-License-Identifier: LGPL-2.1-or-later */ #pragma once #include #include "cryptsetup-util.h" #include "log.h" #include "time-util.h" #if HAVE_LIBFIDO2 int acquire_fido2_key( const char *volume_name, const char *friendly_name, const char *device, const char *rp_id, const void *cid, size_t cid_size, const char *key_file, size_t key_file_size, uint64_t key_file_offset, const void *key_data, size_t key_data_size, usec_t until, void **ret_decrypted_key, size_t *ret_decrypted_key_size); int find_fido2_auto_data( struct crypt_device *cd, char **ret_rp_id, void **ret_salt, size_t *ret_salt_size, void **ret_cid, size_t *ret_cid_size, int *ret_keyslot); #else static inline int acquire_fido2_key( const char *volume_name, const char *friendly_name, const char *device, const char *rp_id, const void *cid, size_t cid_size, const char *key_file, size_t key_file_size, uint64_t key_file_offset, const void *key_data, size_t key_data_size, usec_t until, void **ret_decrypted_key, size_t *ret_decrypted_key_size) { return log_error_errno(SYNTHETIC_ERRNO(EOPNOTSUPP), "FIDO2 token support not available."); } static inline int find_fido2_auto_data( struct crypt_device *cd, char **ret_rp_id, void **ret_salt, size_t *ret_salt_size, void **ret_cid, size_t *ret_cid_size, int *ret_keyslot) { return log_error_errno(SYNTHETIC_ERRNO(EOPNOTSUPP), "FIDO2 token support not available."); } #endif