Browse Source

[Fix] Some more fixes for urls parser

tags/1.2.4
Vsevolod Stakhov 8 years ago
parent
commit
590fea4d3f
2 changed files with 6 additions and 4 deletions
  1. 4
    3
      src/libserver/url.c
  2. 2
    1
      src/libutil/multipattern.c

+ 4
- 3
src/libserver/url.c View File

@@ -416,8 +416,6 @@ rspamd_url_add_static_matchers (struct url_match_scanner *sc)
{
gint n = G_N_ELEMENTS (static_matchers), i;

g_array_append_vals (sc->matchers, static_matchers, n);

for (i = 0; i < n; i++) {
if (static_matchers[i].flags & URL_FLAG_REGEXP) {
rspamd_multipattern_add_pattern (url_scanner->search_trie,
@@ -432,6 +430,8 @@ rspamd_url_add_static_matchers (struct url_match_scanner *sc)

static_matchers[i].patlen = strlen (static_matchers[i].pattern);
}

g_array_append_vals (sc->matchers, static_matchers, n);
}

void
@@ -2003,6 +2003,7 @@ static gboolean
rspamd_url_trie_is_match (struct url_matcher *matcher, const gchar *pos,
const gchar *end)
{
#ifndef WITH_HYPERSCAN
if (matcher->flags & URL_FLAG_TLD_MATCH) {
/* Immediately check pos for valid chars */
if (pos < end) {
@@ -2024,7 +2025,7 @@ rspamd_url_trie_is_match (struct url_matcher *matcher, const gchar *pos,
}
}
}
#endif
return TRUE;
}


+ 2
- 1
src/libutil/multipattern.c View File

@@ -17,6 +17,7 @@
#include "config.h"
#include "libutil/multipattern.h"
#include "libutil/str_util.h"
#include "logger.h"

#ifdef WITH_HYPERSCAN
#include "hs.h"
@@ -398,7 +399,7 @@ rspamd_multipattern_add_pattern (struct rspamd_multipattern *mp,
fl |= HS_FLAG_CASELESS;
}
if (mp->flags & RSPAMD_MULTIPATTERN_UTF8) {
fl |= HS_FLAG_UTF8;
fl |= HS_FLAG_UTF8|HS_FLAG_UCP;
}

g_array_append_val (mp->hs_flags, fl);

Loading…
Cancel
Save