@@ -42,13 +42,15 @@ public function testTrustedHeadersAreKept()
4242        $ requestheaders ->set ('X-Forwarded-Host ' , 'Good ' );
4343        $ requestheaders ->set ('X-Forwarded-Port ' , '1234 ' );
4444        $ requestheaders ->set ('X-Forwarded-Proto ' , 'https ' );
45+         $ requestheaders ->set ('X-Forwarded-Prefix ' , '/admin ' );
4546
4647        $ kernelnew  TestSubRequestHandlerKernel (function  ($ request$ type$ catch
4748            $ this assertSame ('127.0.0.1 ' , $ requestserver ->get ('REMOTE_ADDR ' ));
4849            $ this assertSame ('10.0.0.2 ' , $ requestgetClientIp ());
4950            $ this assertSame ('Good ' , $ requestheaders ->get ('X-Forwarded-Host ' ));
5051            $ this assertSame ('1234 ' , $ requestheaders ->get ('X-Forwarded-Port ' ));
5152            $ this assertSame ('https ' , $ requestheaders ->get ('X-Forwarded-Proto ' ));
53+             $ this assertSame ('/admin ' , $ requestheaders ->get ('X-Forwarded-Prefix ' ));
5254        });
5355
5456        SubRequestHandler::handle ($ kernel$ requestMAIN_REQUEST , true );
@@ -64,6 +66,7 @@ public function testUntrustedHeadersAreRemoved()
6466        $ requestheaders ->set ('X-Forwarded-Host ' , 'Evil ' );
6567        $ requestheaders ->set ('X-Forwarded-Port ' , '1234 ' );
6668        $ requestheaders ->set ('X-Forwarded-Proto ' , 'http ' );
69+         $ requestheaders ->set ('X-Forwarded-Prefix ' , '/admin ' );
6770        $ requestheaders ->set ('Forwarded ' , 'Evil2 ' );
6871
6972        $ kernelnew  TestSubRequestHandlerKernel (function  ($ request$ type$ catch
@@ -72,6 +75,7 @@ public function testUntrustedHeadersAreRemoved()
7275            $ this assertFalse ($ requestheaders ->has ('X-Forwarded-Host ' ));
7376            $ this assertFalse ($ requestheaders ->has ('X-Forwarded-Port ' ));
7477            $ this assertFalse ($ requestheaders ->has ('X-Forwarded-Proto ' ));
78+             $ this assertFalse ($ requestheaders ->has ('X-Forwarded-Prefix ' ));
7579            $ this assertSame ('for="10.0.0.1";host="localhost";proto=http ' , $ requestheaders ->get ('Forwarded ' ));
7680        });
7781
@@ -112,12 +116,14 @@ public function testTrustedXForwardedForHeader()
112116        $ requestheaders ->set ('X-Forwarded-For ' , '10.0.0.2 ' );
113117        $ requestheaders ->set ('X-Forwarded-Host ' , 'foo.bar ' );
114118        $ requestheaders ->set ('X-Forwarded-Proto ' , 'https ' );
119+         $ requestheaders ->set ('X-Forwarded-Prefix ' , '/admin ' );
115120
116121        $ kernelnew  TestSubRequestHandlerKernel (function  ($ request$ type$ catch
117122            $ this assertSame ('127.0.0.1 ' , $ requestserver ->get ('REMOTE_ADDR ' ));
118123            $ this assertSame ('10.0.0.2 ' , $ requestgetClientIp ());
119124            $ this assertSame ('foo.bar ' , $ requestgetHttpHost ());
120125            $ this assertSame ('https ' , $ requestgetScheme ());
126+             $ this assertSame ('/admin ' , $ requestgetBaseUrl ());
121127        });
122128
123129        SubRequestHandler::handle ($ kernel$ requestMAIN_REQUEST , true );
0 commit comments