From 7a75adf6f1be3421bfa66e983851235b3f3584aa Mon Sep 17 00:00:00 2001 From: Kevin Decherf Date: Tue, 10 Jun 2014 23:24:49 +0200 Subject: [PATCH] [HttpFoundation] Basic auth in url is broken when using PHP CGI/FPM Request#getUser() and Request#getPassword() introduced in aecfd0a8917370edd237120352749141ffa85362 do not handle the lack of PHP_AUTH_USER and PHP_AUTH_PW in $this->server when using PHP-FPM. Use $this->headers instead. Furthermore, the test of empty password now expects an empty string instead of NULL according to a450d002f253e32e77d5c2bd3e490435c68a8c09. --- src/Symfony/Component/HttpFoundation/Request.php | 4 ++-- src/Symfony/Component/HttpFoundation/Tests/RequestTest.php | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Symfony/Component/HttpFoundation/Request.php b/src/Symfony/Component/HttpFoundation/Request.php index 9d57aef119..622338e935 100644 --- a/src/Symfony/Component/HttpFoundation/Request.php +++ b/src/Symfony/Component/HttpFoundation/Request.php @@ -949,7 +949,7 @@ class Request */ public function getUser() { - return $this->server->get('PHP_AUTH_USER'); + return $this->headers->get('PHP_AUTH_USER'); } /** @@ -959,7 +959,7 @@ class Request */ public function getPassword() { - return $this->server->get('PHP_AUTH_PW'); + return $this->headers->get('PHP_AUTH_PW'); } /** diff --git a/src/Symfony/Component/HttpFoundation/Tests/RequestTest.php b/src/Symfony/Component/HttpFoundation/Tests/RequestTest.php index 3b1a8906b9..111cb9e745 100644 --- a/src/Symfony/Component/HttpFoundation/Tests/RequestTest.php +++ b/src/Symfony/Component/HttpFoundation/Tests/RequestTest.php @@ -209,7 +209,7 @@ class RequestTest extends \PHPUnit_Framework_TestCase $this->assertEquals(80, $request->getPort()); $this->assertEquals('test.com', $request->getHttpHost()); $this->assertEquals('testnopass', $request->getUser()); - $this->assertNull($request->getPassword()); + $this->assertSame('',$request->getPassword()); $this->assertFalse($request->isSecure()); $request = Request::create('http://test.com/?foo');