mimetypes like:
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
This mimetypes contains 'xml', but is unfortunately not an xml file.
xml2enc processes these files (in particular, when mod_proxy_html is
used), typically resulting in them being corrupted as it seems to
attempt to perform a ISO-8859-1 to UTF-8 conversion on them.
* modules/filters/mod_xml2enc.c (xml2enc_ffunc): Restrict test for XML
types to matching "+xml".
Submitted by: Joseph Heenan <joseph.heenan fintechlabs.io>
PR: 64339
Github: closes #150
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@
1884505 13f79535-47bb-0310-9956-
ffa450edef68
--- /dev/null
+ *) mod_xml2enc: Update check to match MIME types matching
+ "+xml" rather than anything containing "xml", avoiding
+ corruption of Microsoft OOXML formats. PR 64339.
+ [Joseph Heenan <joseph.heenan fintechlabs.io>]
if (isupper(*p))
*p = tolower(*p);
- /* only act if starts-with "text/" or contains "xml" */
- if (strncmp(ctype, "text/", 5) && !strstr(ctype, "xml")) {
+ /* only act if starts-with "text/" or contains "+xml" */
+ if (strncmp(ctype, "text/", 5) && !strstr(ctype, "+xml")) {
ap_remove_output_filter(f);
return ap_pass_brigade(f->next, bb) ;
}