aboutsummaryrefslogtreecommitdiffstats
path: root/src/libserver/url.c
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2016-11-24 14:04:10 +0000
committerVsevolod Stakhov <vsevolod@highsecure.ru>2016-11-24 14:04:10 +0000
commit3e2d425eed0a22b386e86b22dee77c7da4601f50 (patch)
treea57c621a519408796b625fc1a975682af88125cd /src/libserver/url.c
parent664eeeca185f4f4c15f0124ade8bc9d6c3c6d537 (diff)
downloadrspamd-3e2d425eed0a22b386e86b22dee77c7da4601f50.tar.gz
rspamd-3e2d425eed0a22b386e86b22dee77c7da4601f50.zip
[Fix] Allow backslashes in http urls
Diffstat (limited to 'src/libserver/url.c')
-rw-r--r--src/libserver/url.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/libserver/url.c b/src/libserver/url.c
index a4f82cd9e..c66728aff 100644
--- a/src/libserver/url.c
+++ b/src/libserver/url.c
@@ -716,7 +716,7 @@ rspamd_web_parse (struct http_parser_url *u, const gchar *str, gsize len,
p++;
break;
case parse_semicolon:
- if (t == '/') {
+ if (t == '/' || t == '\\') {
st = parse_slash;
p++;
}
@@ -725,7 +725,7 @@ rspamd_web_parse (struct http_parser_url *u, const gchar *str, gsize len,
}
break;
case parse_slash:
- if (t == '/') {
+ if (t == '/' || t == '\\') {
st = parse_slash_slash;
}
else {
@@ -735,7 +735,7 @@ rspamd_web_parse (struct http_parser_url *u, const gchar *str, gsize len,
break;
case parse_slash_slash:
- if (t != '/') {
+ if (t != '/' && t != '\\') {
c = p;
st = parse_domain;
slash = p;