On Aug 14, 2009, at 7:15 PM, WJCarpenter wrote:
Step 4) Figure out if base64-encoded attachments can be decoded in
a way that allows re-encoding them back to the exact original encoding.
If so, save the attachment decoded and add the necessary encoding info the
dbox metadata.Although you might like to do that for some sort of tidiness or
whatever, I don't think there's an actual requirement to restore it
to base64 (or q-p or whatever). Those are just transfer encodings,
and intermediate MTAs might in theory have transformed them (though
in practice that's doubtful). The one use case for an exact
reconstruction might be some older digital signature schemes (which
were not so robust and probably lost if an intermediate MTA messed
with things).
I was thinking things like: upper vs. lowercase characters, different
line wrapping lengths, possibly some other weird stuff.. I'd think
that all digital signatures break if any of those change? Or do they
really parse the headers and do calculate the signatures using the
decoded base64?
Another issue is that the MIME structure (MIME part sizes, offsets)
must match what got saved into dovecot's cache file, but that could be
fixed with some extra code.