Last Modified: May 29, 2024
Affected Product(s):
BIG-IP LTM
Known Affected Versions:
12.1.3, 12.1.3.1, 12.1.3.2, 12.1.3.3, 12.1.3.4, 12.1.3.5, 12.1.3.6, 12.1.3.7, 12.1.4, 12.1.4.1, 12.1.5, 12.1.5.1, 12.1.5.2, 12.1.5.3, 12.1.6, 13.0.0, 13.0.0 HF1, 13.0.0 HF2, 13.0.0 HF3, 13.0.1, 13.1.0, 13.1.0.1, 13.1.0.2, 13.1.0.3, 13.1.0.4, 13.1.0.5, 13.1.0.6, 13.1.0.7, 14.0.1.1, 14.1.0.5, 15.0.0, 15.0.1, 15.0.1.1, 15.0.1.2, 15.0.1.3, 15.0.1.4, 15.1.0, 15.1.0.1, 15.1.0.2, 15.1.0.3, 15.1.0.4, 15.1.0.5, 15.1.1, 15.1.2, 15.1.2.1, 16.0.0, 16.0.0.1, 16.0.1, 16.0.1.1
Fixed In:
16.1.0, 16.0.1.2, 15.1.3, 14.1.0.6, 13.1.0.8
Opened: Nov 29, 2017 Severity: 3-Major
BIG-IP systems provide a client-side HTTP/2 Gateway protocol implementation in conjunction with HTTP 1.x on a server side. A response can be cached on the BIG-IP system with a web acceleration profile. Sometimes a response served from cache is prematurely marked with END_STREAM flag, causing the client to ignore the rest of the response body.
Some clients' browsers do not retry a resource, causing incorrect rendering of an HTML page.
BIG-IP system has a virtual server for which HTTP/2 and Web Acceleration profiles are configured.
Adding the following iRule causes the body to be displayed: when HTTP_RESPONSE_RELEASE { set con_len [string trim [HTTP::header value Content-Length]] HTTP::header remove Content-Length HTTP::header insert Content-Length "$con_len" }
With provided fix, HTTP/2 end users no longer experience the problem of incorrect page rendering due to this issue.