9#include <botan/p11_types.h>
11#include <botan/internal/dyn_load.h>
16 if(file_path.empty()) {
17 throw Invalid_Argument(
"PKCS11 no module path specified");
26 m_low_level->C_Finalize(
nullptr,
nullptr);
34 m_low_level->C_Finalize(
nullptr);
36 m_library = std::make_unique<Dynamically_Loaded_Library>(m_file_path);
39 m_low_level->C_Initialize(&init_args);
static InterfaceWrapper latest_p11_interface(Dynamically_Loaded_Library &library)
~Module() noexcept
Calls C_Finalize().
void reload(C_InitializeArgs init_args={ nullptr, nullptr, nullptr, nullptr, static_cast< CK_FLAGS >(Flag::OsLockingOk), nullptr})
BOTAN_FUTURE_EXPLICIT Module(std::string_view file_path, C_InitializeArgs init_args={ nullptr, nullptr, nullptr, nullptr, static_cast< CK_FLAGS >(Flag::OsLockingOk), nullptr})
CK_C_INITIALIZE_ARGS C_InitializeArgs