Bug #5338
closedBug #5316: smtp: PreProcessCommands does not handle all the edge cases
smtp: PreProcessCommands does not handle all the edge cases (6.0.x backport)
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 from Bug #5316: smtp: PreProcessCommands does not handle all the edge cases added
Updated by Jeff Lucovsky over 2 years ago
- Subject changed from smtp: PreProcessCommands does not handle all the edge cases to Backport 6.0.x: smtp: PreProcessCommands does not handle all the edge cases
- Parent task set to #5316
Updated by Jeff Lucovsky over 2 years ago
- Subject changed from Backport 6.0.x: smtp: PreProcessCommands does not handle all the edge cases to smtp: PreProcessCommands does not handle all the edge cases (6.0.x backport)
Updated by Victor Julien over 2 years ago
- Status changed from Assigned to In Progress
- Assignee changed from Shivani Bhardwaj to Victor Julien
Updated by Victor Julien over 2 years ago
- Status changed from In Progress to In Review
Updated by Victor Julien over 2 years ago
- Status changed from In Review to Closed