FA-76675 / Email MIME structure / Member archive
Reassemble RFC 2231 style filename parameter continuations: single extended precedence · case 05
Continuation segments override a complete filename* value.
Case contract
params are [name, value] pairs; names are case-insensitive. "filename*" (a single extended value charset'lang'text) wins over everything. Otherwise segments "filename*<n>" (plain) and "filename*<n>*" (percent-encoded) with decimal n without leading zeros ("0" allowed) are joined in numeric order from 0, stopping at the first gap; only an encoded segment 0 carries the charset'lang' prefix. Bytes of all segments are concatenated before decoding with the charset (utf-8, iso-8859-1 or us-ascii; others decode as utf-8; undecodable bytes become U+FFFD). Without a segment 0 the plain "filename" value (or None) is returned.
Why this case matters
Long or non-ASCII attachment names are split into continuations; reassembly errors garble or truncate names.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| single extended value wins | "seg" | "na\u00efve5.txt" | Failed |
MEMBER ARCHIVE
The complete case is available to members.
This record includes three runnable implementations, regression fixtures, execution results, and source hashes.
Member access is invitation-based. Sign in with your invited account to inspect the sources.
Sign in to the archive ↗