#include "utils.hpp" #include #include #include #include namespace blobs { namespace fs = std::experimental::filesystem; using namespace phosphor::logging; void loadLibraries(const std::string& path) { void* libHandle = NULL; for (const auto& p : fs::recursive_directory_iterator(path)) { auto ps = p.path().string(); if (!std::regex_match(ps, std::regex(".+\\.so$"))) { continue; } libHandle = dlopen(ps.c_str(), RTLD_NOW); if (!libHandle) { log("ERROR opening", entry("HANDLER=%s", ps.c_str()), entry("ERROR=%s", dlerror())); } } } } // namespace blobs