You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by "Benoit Tellier (Jira)" <se...@james.apache.org> on 2026/02/27 08:40:00 UTC
[jira] [Closed] (JAMES-4172) JMAP blob download for message/rfc822 parts returns truncated content due to Content-Length mismatch
[ https://issues.apache.org/jira/browse/JAMES-4172?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Benoit Tellier closed JAMES-4172.
---------------------------------
Resolution: Fixed
I merged the related PR
Thanks for the contribution and the fix.
> JMAP blob download for message/rfc822 parts returns truncated content due to Content-Length mismatch
> ----------------------------------------------------------------------------------------------------
>
> Key: JAMES-4172
> URL: https://issues.apache.org/jira/browse/JAMES-4172
> Project: James Server
> Issue Type: Improvement
> Components: Blob, jpa
> Affects Versions: 3.9.0
> Reporter: omerfarukicen
> Priority: Critical
> Fix For: 3.9.0
>
> Time Spent: 1h 10m
> Remaining Estimate: 0h
>
> In \{{EmailBodyPartBlob}} (DownloadRoutes.scala), the \{{size}} and \{{content}}
> methods use different calculation paths for non-SingleBody parts
> (such as message/rfc822):
> - *size*: Uses \{{SizeUtils.sizeOf(entity)}} which relies on
> \{{SingleBody.size()}} — this returns the *decoded* size
> (since BasicBodyFactory decodes content-transfer-encoding during parsing)
> - *content*: Uses \{{DefaultMessageWriter.writeBody()}} which *re-encodes*
> the content (e.g. base64), producing more bytes than the decoded size
> Steps ReProducce:
> 1. Send an email containing an embedded message/rfc822 part
> (e.g. a KEP signed email with AttachedMimeMessage)
> 2. The inner message should contain multiple base64-encoded attachments
> 3. Use Email/parse on the message/rfc822 blob — attachments are listed correctly
> 4. Download the same blob via /download endpoint using curl
> 5. The downloaded .eml file is truncated — missing attachments and
> closing MIME boundaries
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org