fix(userspace/engine): guard lua state into falco engine

Co-authored-by: Lorenzo Fontana <lo@linux.com>
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com>
This commit is contained in:
Leonardo Di Donato 2019-09-30 13:58:02 +00:00 committed by Lorenzo Fontana
parent f0cd3344a2
commit 8a6c0b796c
2 changed files with 6 additions and 6 deletions

View File

@ -21,6 +21,7 @@ limitations under the License.
#include <string>
#include <exception>
#include <mutex>
extern "C" {
#include "lua.h"
@ -94,11 +95,10 @@ public:
protected:
lua_State *m_ls;
std::mutex m_ls_semaphore;
sinsp *m_inspector;
private:
void add_lua_path(std::string &path);
};
};

View File

@ -287,8 +287,8 @@ unique_ptr<falco_engine::rule_result> falco_engine::process_sinsp_event(sinsp_ev
unique_ptr<struct rule_result> res(new rule_result());
std::lock_guard<std::mutex> guard(m_ls_semaphore);
lua_getglobal(m_ls, lua_on_event.c_str());
if(lua_isfunction(m_ls, -1))
{
lua_pushnumber(m_ls, ev->get_check_id());
@ -335,8 +335,8 @@ unique_ptr<falco_engine::rule_result> falco_engine::process_k8s_audit_event(json
unique_ptr<struct rule_result> res(new rule_result());
std::lock_guard<std::mutex> guard(m_ls_semaphore);
lua_getglobal(m_ls, lua_on_event.c_str());
if(lua_isfunction(m_ls, -1))
{
lua_pushnumber(m_ls, ev->get_check_id());