Files
cryptsetup/tokens/libcryptsetup-token.sym
Milan Broz beef8e325a Fix clang undefined version error for ssh token
We use common libcryptsetup-token.sym version script that contain
all symbols, but some of them are optional.

As clang linker treats missing symbols as errors, the linker
phase for ssh token fails as optional cryptsetup_token_buffer_free
is not defined.
(Most of distros has this option still disabled, though).

As the sym file is also example for token authors, removing symbols
there is not an option. For clang, we can use --undefined-version option,
but it is not supported by other linkers, so it requires non-trivial
checks for usable LDFLAGS (for both autoconf and meson).

Instead, fix it by simply defining the symbol in ssh token, which
duplicates the internal libcryptsetup functionality.

Fixes: #830
2024-09-01 00:38:57 +02:00

14 lines
270 B
Plaintext

CRYPTSETUP_TOKEN_1.0 {
global:
/* Mandatory functions */
cryptsetup_token_open;
cryptsetup_token_version;
/* Optional functions */
cryptsetup_token_open_pin;
cryptsetup_token_buffer_free;
cryptsetup_token_validate;
cryptsetup_token_dump;
local: *;
};