From 0bf5450365934c39ed0bb480712adaab2fa54386 Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Sun, 26 Jan 2020 23:14:53 +0200 Subject: pluginloader: add test for PluginLoader::verify --- src/browser.cpp | 8 +++++++- src/main.cpp | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/browser.cpp b/src/browser.cpp index 61cd2c6..86d8f13 100644 --- a/src/browser.cpp +++ b/src/browser.cpp @@ -130,7 +130,13 @@ QPluginLoader *Browser::addPlugin(const QString &path) if(path.isEmpty()) return nullptr; - auto *loader = new PluginLoader(path, PluginLoader::SignatureMatchIfAvailable, this); + Configuration conf; + const PluginLoader::SignatureState state( + conf.value("plugins.signature.ignored").value(), + conf.value("plugins.signature.checked").value(), + conf.value("plugins.signature.enforced").value()); + + auto *loader = new PluginLoader(path, state, this); const bool loaded = loader->load(); spdlog::info("Loading plugin [{}]: {}", qUtf8Printable(path), loaded ? "passed" : "failed"); diff --git a/src/main.cpp b/src/main.cpp index 98e8ef9..3394a84 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -105,8 +105,14 @@ int main(int argc, char **argv) [&]() { Configuration conf; spdlog::debug("plugins.path={}", conf.value("plugins.path").value()); + + const PluginLoader::SignatureState state( + conf.value("plugins.signature.ignored").value(), + conf.value("plugins.signature.checked").value(), + conf.value("plugins.signature.enforced").value()); + for(const QString &path : Util::files(conf.value("plugins.path").value(), { "*.so", "*.dll" })) { - auto *loader = new PluginLoader(path); + auto *loader = new PluginLoader(path, state); const bool loaded = loader->load(); spdlog::info("{} plugin {}", loaded ? "Loaded" : "Failed to load", qUtf8Printable(path)); -- cgit v1.2.1