On Wed, Jan 28, 2026 at 10:48:02PM -0500, Kurt Hackenberg wrote:
On Thu, Jan 29, 2026 at 10:04:57AM +0800, Kevin J. McCarthy wrote:The original reverse scanner purpose was to address ticket 433 and the exampes therein.What does the current code recognize as a return path? Why does it fail on #433's bizarre examples? (Two of them look like RFC 822 (which shouldn't be there at all), scrambled.)
It is looking a single whitespace delimited word.However, it handles double quoted or backslash'ed values, and also makes an exception for pipermail styles of "foo at example.com".
I think you proposed to accept anything in the return path field -- whatever is between "From " and the date-time. I guess that's reasonably safe. I'd hate to accept a putative From_ line with nothing there, though, no return path field at all. That feels like a step too far, risky.
Yeah, the problem is the return path is optional. :-( I worry it may be a step too far too.
Perhaps it's better to change my last proposal to: So we could turn on "From " only mode: if expect_from_line || (lax_option_set && has_mbox_sep) turn on "From " only mode else is_from_forward_scan() required to be considered a "From " line.Where the is_from_forward_scan() is the current implementation. This would require Vincent to turn on the lax_option to read his old mbox files, while not increating the risk much for everyone else.
-- Kevin J. McCarthy GPG Fingerprint: 8975 A9B3 3AA3 7910 385C 5308 ADEF 7684 8031 6BDA
signature.asc
Description: PGP signature
