return;
}
+ gint visible_part_len = dest->len - href_offset;
+ url->visible_part = rspamd_mempool_alloc0(pool, visible_part_len +1);
+ url->visible_partlen = visible_part_len;
+ gchar *visible_part = g_strndup(dest->data + href_offset, visible_part_len);
+ g_stpcpy(url->visible_part, visible_part);
+
rspamd_html_url_is_phished (pool, url,
dest->data + href_offset,
dest->len - href_offset,
LUA_FUNCTION_DEF (url, get_count);
LUA_FUNCTION_DEF (url, get_tags);
LUA_FUNCTION_DEF (url, add_tag);
+LUA_FUNCTION_DEF (url, get_visible);
LUA_FUNCTION_DEF (url, create);
LUA_FUNCTION_DEF (url, init);
LUA_FUNCTION_DEF (url, all);
LUA_INTERFACE_DEF (url, get_tag),
LUA_INTERFACE_DEF (url, get_tags),
LUA_INTERFACE_DEF (url, add_tag),
+ LUA_INTERFACE_DEF (url, get_visible),
LUA_INTERFACE_DEF (url, get_count),
LUA_INTERFACE_DEF (url, get_flags),
{"get_redirected", lua_url_get_phished},
return 1;
}
+ /***
+* @method url:get_visible()
+* Get visible part of the url with html tags stripped
+* @return {string} url string
+*/
+static gint
+lua_url_get_visible (lua_State *L)
+{
+ LUA_TRACE_POINT;
+ struct rspamd_lua_url *url = lua_check_url (L, 1);
+
+ if (url != NULL) {
+ lua_pushlstring (L, url->url->visible_part, url->url->visible_partlen);
+ }
+ else {
+ lua_pushnil (L);
+ }
+
+return 1;
+}
+
/***
* @method url:to_table()
* Return url as a table with the following fields: