1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
2 #pragma once
3 
4 /* for more information see libcryptsetup.h crypt-tokens section */
5 
6 const char *cryptsetup_token_version(void);
7 
8 int cryptsetup_token_open(struct crypt_device *cd, int token,
9         char **password, size_t *password_len, void *usrptr);
10 
11 int cryptsetup_token_open_pin(struct crypt_device *cd, int token,
12         const char *pin, size_t pin_size,
13         char **password, size_t *password_len, void *usrptr);
14 
15 void cryptsetup_token_dump(struct crypt_device *cd, const char *json);
16 
17 int cryptsetup_token_validate(struct crypt_device *cd, const char *json);
18 
19 void cryptsetup_token_buffer_free(void *buffer, size_t buffer_len);
20