about summary refs log tree commit diff
path: root/VIOLATIONS.md
diff options
context:
space:
mode:
authorLeah Neukirchen <leah@vuxu.org>2017-06-29 13:36:05 +0200
committerLeah Neukirchen <leah@vuxu.org>2017-06-29 13:36:41 +0200
commit862d6b24e414e780c5f641bab9586b102ba908e9 (patch)
tree5cd437d0f09e5bf5b064b20918b33a3d9b243b1d /VIOLATIONS.md
parent1fc0b1adc360ee30f519f19ecb3ddcfc56c1afee (diff)
downloadmblaze-862d6b24e414e780c5f641bab9586b102ba908e9.tar.gz
mblaze-862d6b24e414e780c5f641bab9586b102ba908e9.tar.xz
mblaze-862d6b24e414e780c5f641bab9586b102ba908e9.zip
VIOLATIONS.md: add list of known standard violations and our workarounds
Diffstat (limited to 'VIOLATIONS.md')
-rw-r--r--VIOLATIONS.md25
1 files changed, 25 insertions, 0 deletions
diff --git a/VIOLATIONS.md b/VIOLATIONS.md
new file mode 100644
index 0000000..d178e17
--- /dev/null
+++ b/VIOLATIONS.md
@@ -0,0 +1,25 @@
+# Standard-violations detected in the wild during development of mblaze
+
+This list is probably not complete.
+
+* RFC5322 assumes CRLF line endings throughout, but Maildir messages
+  are generally using Unix line endings.  mblaze accepts both, and
+  only uses CRLF when required (e.g. for signing).
+
+* Backslashes in atoms (RFC 5322, 3.2.3) are parsed as if they were
+  inside quoted strings.
+
+* Return-path is accepted without angle-addr (RFC5322, 3.6.7).
+
+* Encoded words within quoted strings (RFC2047, 5.3) are decoded for
+  header printing.
+
+* Encoded words within MIME parameters (RFC2047, 5.3) are NOT decoded.
+
+* Empty encoded words are decoded as empty string (RFC2047, 2).
+
+* Split multi-octet characters between encoded words (RFC2047, 5.3)
+  are reassembled if the encodings agree.
+
+* Date parsing is strict, obsolete timezone and two-digit years are
+  not parsed (RFC5322, 4.3).