summaryrefslogtreecommitdiffstats
path: root/Http/Logout
diff options
context:
space:
mode:
authorJohannes M. Schmitt <schmittjoh@gmail.com>2011-02-14 20:24:48 +0100
committerFabien Potencier <fabien.potencier@gmail.com>2011-02-14 20:55:07 +0100
commit8935fffb1d647f46f071c7f1b4b20264240820c9 (patch)
tree08fd4135e82b0879b896f71bdab1416c0e65245a /Http/Logout
parent213a312859e19e391e9f11a35369e3525c54a7d3 (diff)
downloadsymfony-security-8935fffb1d647f46f071c7f1b4b20264240820c9.zip
symfony-security-8935fffb1d647f46f071c7f1b4b20264240820c9.tar.gz
symfony-security-8935fffb1d647f46f071c7f1b4b20264240820c9.tar.bz2
[Security] fixes a bug when clearing cookies on logout
Diffstat (limited to 'Http/Logout')
-rw-r--r--Http/Logout/CookieClearingLogoutHandler.php21
1 files changed, 6 insertions, 15 deletions
diff --git a/Http/Logout/CookieClearingLogoutHandler.php b/Http/Logout/CookieClearingLogoutHandler.php
index ea6bff3..91fdc3d 100644
--- a/Http/Logout/CookieClearingLogoutHandler.php
+++ b/Http/Logout/CookieClearingLogoutHandler.php
@@ -22,24 +22,15 @@ use Symfony\Component\HttpFoundation\Request;
*/
class CookieClearingLogoutHandler implements LogoutHandlerInterface
{
- protected $cookieNames;
+ protected $cookies;
/**
* Constructor
- * @param array $cookieNames An array of cookie names to unset
+ * @param array $cookies An array of cookie names to unset
*/
- public function __construct(array $cookieNames)
+ public function __construct(array $cookies)
{
- $this->cookieNames = $cookieNames;
- }
-
- /**
- * Returns the names of the cookies to unset
- * @return array
- */
- public function getCookieNames()
- {
- return $this->cookieNames;
+ $this->cookies = $cookies;
}
/**
@@ -52,8 +43,8 @@ class CookieClearingLogoutHandler implements LogoutHandlerInterface
*/
public function logout(Request $request, Response $response, TokenInterface $token)
{
- foreach ($this->cookieNames as $cookieName) {
- $response->headers->clearCookie($cookieName);
+ foreach ($this->cookies as $cookieName => $cookieData) {
+ $response->headers->clearCookie($cookieName, $cookieData['path'], $cookieData['domain']);
}
}
}