You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Henri Yandell (JIRA)" <ji...@apache.org> on 2007/09/04 13:38:10 UTC

[jira] Updated: (FILEUPLOAD-139) [fileupload] separator of boundary doesnt match rfc1867 examples

     [ https://issues.apache.org/jira/browse/FILEUPLOAD-139?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Henri Yandell updated FILEUPLOAD-139:
-------------------------------------

    Attachment: FILEUPLOAD-139.patch

Attaching a patch which adds a new parse method to ParameterParser that can take multiple separators. It looks for the earliest one that occurs in the string to be parsed, and uses that. 

Unit test also patched, as is the getBoundary method to use this new parse(String, char[]) method.

> [fileupload] separator of boundary doesnt match rfc1867 examples
> ----------------------------------------------------------------
>
>                 Key: FILEUPLOAD-139
>                 URL: https://issues.apache.org/jira/browse/FILEUPLOAD-139
>             Project: Commons FileUpload
>          Issue Type: Bug
>            Reporter: martynas
>            Assignee: Henri Yandell
>             Fix For: 1.2.1
>
>         Attachments: FILEUPLOAD-139.patch
>
>
> [fileupload]
> in class :
> package org.apache.commons.fileupload;
> public abstract class FileUploadBase {
>     protected byte[] getBoundary(String contentType) {
>         ParameterParser parser = new ParameterParser();
>         parser.setLowerCaseNames(true);
>         // Parameter parser can handle null input
>         Map params = parser.parse(contentType, ';');
>         String boundaryStr = (String) params.get("boundary");
>         if (boundaryStr == null) {
>             return null;
>         }
>         byte[] boundary;
>         try {
>             boundary = boundaryStr.getBytes("ISO-8859-1");
>         } catch (UnsupportedEncodingException e) {
>             boundary = boundaryStr.getBytes();
>         }
>         return boundary;
>     }
> }
> String :  Map params = parser.parse(contentType, ';');
> doesn't match http://www.ietf.org/rfc/rfc1867.txt document
> because in all examples:
> Content-type: multipart/form-data , boundary=AaB03x
> Content-type: multipart/form-data, boundary=AaB03x
> Content-type: multipart/mixed, boundary=BbC04y
> boundary separated by comma (but not semicolon)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.