[ 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)