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

Sudheer Vinukonda commented on TS-3693:
---------------------------------------

AFAIK, a mere successful parsing of the request doesn't mean the request has 
passed the proxy's request header validation. Further validation happens in 
*HttpTransact::is_request_valid()*. Check out

https://github.com/apache/trafficserver/blob/master/proxy/http/HttpTransact.cc

I've seen a number of requests in production returning "400, Invalid HTTP 
Request"/ "400, Host Header Required" etc. None of these errors are obviously 
caught at the time of parsing the request. All such requests would now return a 
"100 CONT" before returning 400 error.

Example (from prod, hiding the actual request url)

"1436288265.913 0 171.6.146.57 ERR_INVALID_REQ 400 0 GET http://xxxxxxx?xxxxxx 
- NONE/- - http://xxxxxxx f1 f2 f3 f4"

Can the specific plugin try to send the "100 CONT" directly? I'm concerned 
that, for a specific plugin's requirement, the general behavior of the core is 
made poorer.

> Move 100-continue logic to read client header for intercept plugins
> -------------------------------------------------------------------
>
>                 Key: TS-3693
>                 URL: https://issues.apache.org/jira/browse/TS-3693
>             Project: Traffic Server
>          Issue Type: Improvement
>          Components: HTTP
>            Reporter: Bryan Call
>            Assignee: Bryan Call
>              Labels: yahoo
>             Fix For: 6.1.0
>
>
> From https://github.com/apache/trafficserver/pull/216 :
> Currently, ATS handles "Expect: 100-continue" header in 
> HttpSM::state_send_server_request_header. In intercept plugin case, ATS may 
> have no chance to run into this logic, it handles the header in a later point 
> - HttpSM::state_send_server_request_header. I did not take this into account 
> when I wrote the first patch. Now we have an intercept plugin use case in 
> yahoo, and I think we need to move the handle logic some earlier, right after 
> finish parsing the client request header.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to