Attachments with filenames, longer than 76 char symbols, are not being processed.
Current behavior
Currently, Laminas\Mail successfully identifies long names and successfully splits them into multiple variables in \Laminas\Mail\Header\ContentDisposition::getFieldValue().
However, the multiple variables do not get recognized in Laminas\Mime\Decode::splitHeaderField() due to this check
strcasecmp($name, $wantedPart)
i.e. it compares "filename*0" with "filename"
How to reproduce
Try to process an email with an attachment with long name, for example
"This___is____long__name.txt"
Expected behavior
It should not compare with strcasecmp, but rather with a regex. Then if it is a multiple value, it should concatenate the values
Bug Report
Summary
Attachments with filenames, longer than 76 char symbols, are not being processed.
Current behavior
Currently, Laminas\Mail successfully identifies long names and successfully splits them into multiple variables in \Laminas\Mail\Header\ContentDisposition::getFieldValue(). However, the multiple variables do not get recognized in Laminas\Mime\Decode::splitHeaderField() due to this check
strcasecmp($name, $wantedPart)
i.e. it compares "filename*0" with "filename"How to reproduce
Try to process an email with an attachment with long name, for example "This___is____long__name.txt"
Expected behavior
It should not compare with strcasecmp, but rather with a regex. Then if it is a multiple value, it should concatenate the values