[ 
https://issues.apache.org/jira/browse/KNOX-80?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13805402#comment-13805402
 ] 

Kevin Minder commented on KNOX-80:
----------------------------------

Ideally Knox should only be removing the request Content-Length header if it 
knows that the request body is being rewritten.  This will be rare in the cases 
where request body content is large and these are the most important cases 
where Content-Length should be preserved.

> Knox should not set HTTP request content length as -1
> -----------------------------------------------------
>
>                 Key: KNOX-80
>                 URL: https://issues.apache.org/jira/browse/KNOX-80
>             Project: Apache Knox
>          Issue Type: Bug
>          Components: Server
>    Affects Versions: 0.3.0
>            Reporter: Dilli Arumugam
>
> I see gateway-provider-identity-assertion-  
> pseudo/src/main/java/org/apache/hadoop/gateway/filter/IdentityAssertionHttpServletRequestWrapper.java
> is returning -1 as Content-Length  if contentType.startsWith( 
> "application/x-www-form-urlencoded" ).
> This not standard compatible and I believe is error prone.
> Please see http 1.1 specs at 
> http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.13
> Quoting from the specs:
> Any Content-Length greater than or equal to zero is a valid value. Section 
> 4.4 describes how to determine the length of a message-body if a 
> Content-Length is not given.
> So, we should not return content-length value as -1.
> If we rewrite the content and change the entity length in the process, we 
> have to compute and set the correct content-length or try to leverage chunked 
> encoding where you do not specify the content-length header.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to