[ https://issues.apache.org/jira/browse/TS-3073?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Susan Hinrichs updated TS-3073: ------------------------------- Attachment: ts-3084.patch This appears to be very similar to the problem fixed in ts-3073. The ATS logic really doesn't like it when the client closes a connection before the server finishes sending a response. This patch is built upon the patch for ts-3073. But that patch addressed a ts-pass case and this is addressing an HTTP post case. Again using the half_open flag to track that a client has already sent a FIN and check the flag after all the data has been read to do a shutdown(IO_READ) to send the FIN along to the origin server. > tr-pass: non-http request gets blocked with error message instead of being > tunnelled to the origin server > --------------------------------------------------------------------------------------------------------- > > Key: TS-3073 > URL: https://issues.apache.org/jira/browse/TS-3073 > Project: Traffic Server > Issue Type: Bug > Components: Core, HTTP > Reporter: Nikolai Gorchilov > Assignee: Susan Hinrichs > Fix For: 5.2.0 > > Attachments: bypass.request, tr-pass-client-close.patch, ts-3084.patch > > > ATS breaks RIFF Box JTAG Manager software that is using proprietary protocol > over port 80 even with tr-pass enabled. > Instead of creating a tunnel, ATS returns "bad request" error. > Managed to capture the request that triggers the issue (to be attached as > bypass.request). Here's a simple command to reproduce the problem: > #$ netcat 93.191.132.28 80 < bypass.request > Direct request returns a simple exclamation mark '!', but passing it via ATS > results in: > {noformat} > <HTML> > <HEAD> > <TITLE>Bad Request</TITLE> > </HEAD> > <BODY BGCOLOR="white" FGCOLOR="black"> > <H1>Bad Request</H1> > <HR> > <FONT FACE="Helvetica,Arial"><B> > Description: Could not process this request. > </B></FONT> > <HR> > </BODY> > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)