diff options
-rw-r--r-- | src/libserver/url.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/libserver/url.c b/src/libserver/url.c index c66728aff..1afde3b6b 100644 --- a/src/libserver/url.c +++ b/src/libserver/url.c @@ -867,6 +867,12 @@ rspamd_web_parse (struct http_parser_url *u, const gchar *str, gsize len, if (is_url_end (t)) { goto set; } + else if (*p == '@' && !user_seen) { + /* We need to fallback and test user */ + p = slash; + user_seen = TRUE; + st = parse_user; + } else if (*p != '.' && *p != '-' && *p != '_' && *p != '%') { uc = g_utf8_get_char_validated (p, last - p); |