diff --git a/java/org/apache/coyote/http11/Http11Processor.java b/java/org/apache/coyote/http11/Http11Processor.java index 2881aba0b276..308df04dc2ca 100644 --- a/java/org/apache/coyote/http11/Http11Processor.java +++ b/java/org/apache/coyote/http11/Http11Processor.java @@ -847,6 +847,11 @@ protected final void prepareResponse() throws IOException { (outputFilters[Constants.VOID_FILTER]); entityBody = false; contentDelimitation = true; + if (statusCode == 205) { + // RFC 7231 requires the server to explicitly signal an empty + // response in this case + response.setContentLength(0); + } } MessageBytes methodMB = request.method(); diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index 1805b80fc110..bde8e6a92a7c 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -57,6 +57,10 @@ o.a.c.connector.CoyoteAdapter#parseSessionCookiesId. Patch provided by John Andrew (XUZHOUWANG) via Github. (violetagg) + + 61086: Explicitly signal am empty request body for HTTP 205 + responses. (markt) +