Rspamd complains about Mime-Version header

I received eMails created by Discourse (this one and my own) which have this header in the emails:

Mime-Version: 1.0

and rspamd gives 0.5 negative spam points for this. :frowning:

I think the header should be written like this:

MIME-Version: 1.0

Tell them they’re wrong and they should fix their tool.

rfc5322 : (emphasis mine)

1.2.2. Syntactic Notation This specification uses the Augmented Backus-Naur Form (ABNF) [RFC5234] notation for the formal definitions of the syntax of messages. Characters will be specified either by a decimal value (e.g., the value %d65 for uppercase A and %d97 for lowercase A) or by a case-insensitive literal value enclosed in quotation marks (e.g., “A” for either uppercase or lowercase A).

1 Like

I think the same fight goes for the header Message-ID which is also expected with both uppercase ID chars. Otherwise that one receives bad points too.

Even if they (rspamd) might violate the standard with that expectation it might be reasonable. If more ham-mail has that syntax and spam-mail most times has the other, it might be OK to filter this way.

Just did add that Q&A in rspamd:

1 Like

IMHO it’s the wrong way around to negatively value something ‘that is commonly used in spam’ since that does not take into account if it’s commonly used in general.

Given the fact that every Discourse installation uses the Mime and Id variants, it is obviously commonly used in “ham” mails as well. I would love to see some numbers there.

Of course they’re right in stating that they’re not an RFC validator, but that automatically means they put themselves in the role of a de facto alternative standards body, which might be worse.


And the bad thing is, I (we) as users or administrators of those instances are sitting in between and are not able to decide who is right.

Also it is always possible to see a difference between doing it just right or doing it even better.
I often had the experience that I had to be flexible in technical communication with external systems. They just don’t do it 100% right or at least not in the way I had understood the standards. So there will always be some grey flexibility area around standards.

1 Like

For me it seems like the bigger player writing those headers following those rules:

  • If it is an abbreviation use that part all uppercase
  • If it is a word use first char uppercase, rest lowercase

WIth that pattern MIME and ID makes sense, as does Message or Version.

That is within the standard which says case insensitive and it is just a small hint that it is more standardy as the RFC. In my understanding it doesn’t hurt to go the same way in Discourse when creating mails.