diff options
Diffstat (limited to 'modules/luci-base/luasrc/util.lua')
-rw-r--r-- | modules/luci-base/luasrc/util.lua | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/modules/luci-base/luasrc/util.lua b/modules/luci-base/luasrc/util.lua index 2956aadcf..d614a6c79 100644 --- a/modules/luci-base/luasrc/util.lua +++ b/modules/luci-base/luasrc/util.lua @@ -636,6 +636,23 @@ function libpath() return require "nixio.fs".dirname(ldebug.__file__) end +function checklib(fullpathexe, wantedlib) + local fs = require "nixio.fs" + local haveldd = fs.access('/usr/bin/ldd') + if not haveldd then + return -1 + end + local libs = exec("/usr/bin/ldd " .. fullpathexe) + if not libs then + return 0 + end + for k, v in ipairs(split(libs)) do + if v:find(wantedlib) then + return 1 + end + end + return 0 +end -- -- Coroutine safe xpcall and pcall versions modified for Luci |