Bug #5316
closedsmtp: PreProcessCommands does not handle all the edge cases
Description
Issue
An edge case where <CRLF> came in fragmented for a line was not handled. This resulted in <CR> being treated as regular data byte and not as a part of the line end sequence. This particularly led to issues when base64 encoded data was processed by MIME and it could not handle the <CR> char as it relied on only receiving correct data from SMTP parser making file sizes different and inconsistent.
Context
As per RFC 2821 (SMTP),
a. Bare `CR` and `LF` have a long history of problems w mail implementations and applications.
b. An ideal SMTP client MUST NOT transmit `CR` and `LF` chars except when they are intended as line terminators and then also as `<CRLF>` sequence ONLY.
c. We should tolerate trailing `SP` before the terminating `<CRLF>`
Updated by Jeff Lucovsky over 2 years ago
- Copied to Bug #5338: smtp: PreProcessCommands does not handle all the edge cases (6.0.x backport) added
Updated by Jeff Lucovsky over 2 years ago
- Copied to Bug #5339: PreProcessCommands does not handle all the edge cases (5.0.x backport) added
Updated by Shivani Bhardwaj over 2 years ago
- Status changed from Assigned to In Review
Updated by Victor Julien over 2 years ago
- Status changed from In Review to Closed
Updated by Victor Julien over 2 years ago
- Label deleted (
Needs backport to 5.0, Needs backport to 6.0)