]> git.ipfire.org Git - thirdparty/rspamd.git/commitdiff
[Minor] Firther relax href parsing
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Mon, 16 Mar 2020 17:08:07 +0000 (17:08 +0000)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Mon, 16 Mar 2020 17:08:07 +0000 (17:08 +0000)
src/libserver/url.c

index bae3ebd4fe9e6d1902c1e89feab3710c1d3aa726..73272799a1d12547b96f32ad8f050d44d998e7f8 100644 (file)
@@ -1386,7 +1386,7 @@ rspamd_web_parse (struct http_parser_url *u, const gchar *str, gsize len,
                                c = p + 1;
                                st = parse_part;
                        }
-                       else if (is_url_end (t)) {
+                       else if (!(parse_flags & RSPAMD_URL_PARSE_HREF) && is_url_end (t)) {
                                goto set;
                        }
                        else if (is_lwsp (t)) {
@@ -1410,7 +1410,7 @@ rspamd_web_parse (struct http_parser_url *u, const gchar *str, gsize len,
                                c = p + 1;
                                st = parse_part;
                        }
-                       else if (is_url_end (t)) {
+                       else if (!(parse_flags & RSPAMD_URL_PARSE_HREF) && is_url_end (t)) {
                                goto set;
                        }
                        else if (is_lwsp (t)) {
@@ -1427,7 +1427,7 @@ rspamd_web_parse (struct http_parser_url *u, const gchar *str, gsize len,
                        p++;
                        break;
                case parse_part:
-                       if (is_url_end (t)) {
+                       if (!(parse_flags & RSPAMD_URL_PARSE_HREF) && is_url_end (t)) {
                                goto set;
                        }
                        else if (is_lwsp (t)) {