diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2020-01-01 19:45:48 +0000 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2020-01-01 19:46:31 +0000 |
commit | 00c9ae4c698cd63b9ab7cb155d5c342f50281cd6 (patch) | |
tree | 1c2d6df4fa608fc7f0154482707f89a920d6e676 /src/lua/lua_common.c | |
parent | 81b57286eee68cb0f61769b9860ad36b75e4fc05 (diff) | |
download | rspamd-00c9ae4c698cd63b9ab7cb155d5c342f50281cd6.tar.gz rspamd-00c9ae4c698cd63b9ab7cb155d5c342f50281cd6.zip |
[Minor] Move function to the common routines
Diffstat (limited to 'src/lua/lua_common.c')
-rw-r--r-- | src/lua/lua_common.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/lua/lua_common.c b/src/lua/lua_common.c index 80a9423d9..248f1dbc3 100644 --- a/src/lua/lua_common.c +++ b/src/lua/lua_common.c @@ -2346,4 +2346,35 @@ rspamd_lua_push_words (lua_State *L, GArray *words, } return 1; +} + +gchar * +rspamd_lua_get_module_name (lua_State *L) +{ + lua_Debug d; + gchar *p; + gchar func_buf[128]; + + if (lua_getstack (L, 1, &d) == 1) { + (void) lua_getinfo (L, "Sl", &d); + if ((p = strrchr (d.short_src, '/')) == NULL) { + p = d.short_src; + } + else { + p++; + } + + if (strlen (p) > 20) { + rspamd_snprintf (func_buf, sizeof (func_buf), "%10s...]:%d", p, + d.currentline); + } + else { + rspamd_snprintf (func_buf, sizeof (func_buf), "%s:%d", p, + d.currentline); + } + + return g_strdup (func_buf); + } + + return NULL; }
\ No newline at end of file |