Last Modified: Apr 28, 2025
Affected Product(s):
BIG-IP APM
Known Affected Versions:
11.3.0, 11.6.0, 11.6.0 HF1, 11.6.0 HF2, 11.6.0 HF3, 11.6.0 HF4, 11.6.0 HF5, 11.6.0 HF6, 11.6.0 HF7, 11.6.0 HF8, 11.6.1, 11.6.1 HF1, 11.6.1 HF2, 11.6.2, 11.6.2 HF1, 11.6.3, 11.6.3.1, 11.6.3.2, 11.6.3.3, 11.6.3.4, 11.6.4, 11.6.5, 11.6.5.1, 11.6.5.2, 11.6.5.3, 12.0.0, 12.0.0 HF1, 12.0.0 HF2, 12.0.0 HF3, 12.0.0 HF4
Fixed In:
12.1.0
Opened: Jun 20, 2015 Severity: 3-Major
There is a known issue of IE10+ where it could randomly replace all function definitions in dynamic window. Our internal function F5_isNative tries to compare functions with the copy we saved at window initialization, and this stops working when browser replaces old functions with new ones. In Bug473579 this test was fixed for IE10 and IE11 in Edge mode. But now it seems that the problem is also reproducible in all compatibility modes up to X-UA-Compatible=IE8.
Attached file cannot be loaded while under portal access provided rewritten content
Checking with native functions can fail in compatibility mode for IE10+.
--- when HTTP_REQUEST { # ID478654 - [Portal Access] Support rewriting of parameters for saved copies of 'interesting' functions # F5's form submit handler is not working for UCF_Form because the underlying form # don't have original 'submit' method. # Force rewriting of form action with reassignment of its value. if { [HTTP::path] ends_with "classes/Form.js" } { # log local0. "Patching script for ID478654: [HTTP::path]" set bug478654 1 if { [HTTP::version] eq "1.1" } { if { [HTTP::header is_keepalive] } { HTTP::header replace "Connection" "Keep-Alive" } HTTP::version "1.0" } } elseif { [info exists bug478654] } { unset bug478654 } } when HTTP_RESPONSE { if { [info exists bug478654] } { if { [HTTP::header exists "Content-Length"] and \ [HTTP::header "Content-Length"] > 0 and \ [HTTP::header "Content-Length"] <= 1048576 } { HTTP::collect [HTTP::header Content-Length] } else { HTTP::collect 1048576 } } } when HTTP_RESPONSE_DATA { if { [info exists bug478654] } { unset bug478654 set location [string first {this.oDomRef['_SAP_UCF_oldHandlerSubmit_']} \ [HTTP::payload]] if { $location > 0 && \ $location < [expr {[HTTP::payload length] - 42}] } { HTTP::payload replace $location 0 {this.oDomRef.action=this.oDomRef.action;} } unset location } } ---
Now simplified check for native functions is used for Internet Explorer to avoid problems with context replacing in Internet Explorer 10+ even in compatibility mode.