aboutsummaryrefslogtreecommitdiffstats
path: root/src/ragel/smtp_base.rl
diff options
context:
space:
mode:
authorLeftTry <lerest.go@gmail.com>2024-09-29 12:23:55 +0600
committerLeftTry <lerest.go@gmail.com>2024-09-29 12:23:55 +0600
commit36cceb7c02e9d2020239a8b008b234fc4bd26b48 (patch)
treea735c3b60bc8e71f4ec9e8447c68c5bd72b2bd6c /src/ragel/smtp_base.rl
parentc4386c6ab0d649d3b999f0cf98f6fccea9212ce5 (diff)
parent6ed56a333ca7ef1b2a5a007d67fda0759af1a280 (diff)
downloadrspamd-36cceb7c02e9d2020239a8b008b234fc4bd26b48.tar.gz
rspamd-36cceb7c02e9d2020239a8b008b234fc4bd26b48.zip
Merge remote-tracking branch 'origin/master'
Diffstat (limited to 'src/ragel/smtp_base.rl')
-rw-r--r--src/ragel/smtp_base.rl25
1 files changed, 13 insertions, 12 deletions
diff --git a/src/ragel/smtp_base.rl b/src/ragel/smtp_base.rl
index cb4f066bc..eefc430d5 100644
--- a/src/ragel/smtp_base.rl
+++ b/src/ragel/smtp_base.rl
@@ -9,26 +9,27 @@
CRLF = "\r\n" | ("\r" [^\n]) | ([^\r] "\n");
DQUOTE = '"';
+ utf8_cont = 0x80..0xbf;
+ utf8_2c = 0xc0..0xdf utf8_cont;
+ utf8_3c = 0xe0..0xef utf8_cont utf8_cont;
+ utf8_4c = 0xf0..0xf7 utf8_cont utf8_cont utf8_cont;
+ UTF8_non_ascii = utf8_2c | utf8_3c | utf8_4c;
+
# Printable US-ASCII characters not including specials
atext = alpha | digit | "!" | "#" | "$" | "%" | "&" |
"'" | "*" | "+" | "_" | "/" | "=" | "?" | "^" |
- "-" | "`" | "{" | "|" | "}" | "~";
+ "-" | "`" | "{" | "|" | "}" | "~" | UTF8_non_ascii;
# Printable US-ASCII characters not including "[", "]", or "\"
- dtext = 33..90 | 94..126;
+ dtext = 33..90 | 94..126 | UTF8_non_ascii;
# Printable US-ASCII characters not including "(", ")", or "\"
- ctext = 33..39 | 42..91 | 93..126;
+ ctext = 33..39 | 42..91 | 93..126 | UTF8_non_ascii;
- dcontent = 33..90 | 94..126;
- Let_dig = alpha | digit;
- Ldh_str = ( alpha | digit | "_" | "-" )* Let_dig;
+ dcontent = 33..90 | 94..126 | UTF8_non_ascii;
+ Let_dig = alpha | digit | UTF8_non_ascii;
+ Ldh_str = ( Let_dig | "_" | "-" )* Let_dig;
quoted_pairSMTP = "\\" 32..126;
- qtextSMTP = 32..33 | 35..91 | 93..126;
- utf8_cont = 0x80..0xbf;
- utf8_2c = 0xc0..0xdf utf8_cont;
- utf8_3c = 0xe0..0xef utf8_cont utf8_cont;
- utf8_4c = 0xf0..0xf7 utf8_cont utf8_cont utf8_cont;
- textUTF8 = qtextSMTP | utf8_2c | utf8_3c | utf8_4c;
+ qtextSMTP = 32..33 | 35..91 | 93..126 | UTF8_non_ascii;
Atom = atext+;
Dot_string = Atom ("." Atom)*;
dot_atom_text = atext+ ("." atext+)*;