summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicolas Grekas <nicolas.grekas@gmail.com>2015-08-01 08:48:35 +0200
committerNicolas Grekas <nicolas.grekas@gmail.com>2015-08-01 08:48:35 +0200
commit9df5f9dbab8f8c8b6777dbd45e07bd78b8729bc3 (patch)
tree5e62f7133076644f567d756b3325ff7828e30b75
parent365eb182a78b1688d8f0d2b97843cd38432963fa (diff)
parent64e5aa5963622bfcf7d036e2aabfd8b99e8bba4e (diff)
downloadsymfony-security-9df5f9dbab8f8c8b6777dbd45e07bd78b8729bc3.zip
symfony-security-9df5f9dbab8f8c8b6777dbd45e07bd78b8729bc3.tar.gz
symfony-security-9df5f9dbab8f8c8b6777dbd45e07bd78b8729bc3.tar.bz2
Merge branch '2.8'
* 2.8: (63 commits) [Debug] Deprecate ExceptionHandler::createResponse [Debug] cleanup ExceptionHandlerTest Reordered the toolbar elements via service priorities bumped Symfony version to 2.7.4 Increased the z-index of .sf-toolbar-info Removed an unused media query updated VERSION for 2.7.3 updated CHANGELOG for 2.7.3 Redesigned "abbr" elements Restored the old behavior for toolbars with lots of elements Tweaks and bug fixes Added some upgrade notes about the new toolbar design fixed typo in translation keys Fix the return value on error for intl methods returning arrays Removed an useless CSS class and added styles for <hr> Added a new profiler_markup_version to improve BC of the new toolbar Fix merge Removed an unused import Reverted the feature to display different toolbar versions Minor JavaScript optimizations ... Conflicts: CHANGELOG-2.7.md UPGRADE-2.8.md src/Symfony/Bundle/FrameworkBundle/Resources/config/collectors.xml src/Symfony/Component/Debug/composer.json src/Symfony/Component/HttpKernel/HttpCache/HttpCache.php
-rw-r--r--Core/Authorization/AccessDecisionManager.php8
-rw-r--r--Http/Firewall/ExceptionListener.php8
2 files changed, 7 insertions, 9 deletions
diff --git a/Core/Authorization/AccessDecisionManager.php b/Core/Authorization/AccessDecisionManager.php
index 61debe3..e021cc7 100644
--- a/Core/Authorization/AccessDecisionManager.php
+++ b/Core/Authorization/AccessDecisionManager.php
@@ -150,7 +150,6 @@ class AccessDecisionManager implements AccessDecisionManagerInterface
{
$grant = 0;
$deny = 0;
- $abstain = 0;
foreach ($this->voters as $voter) {
$result = $voter->vote($token, $object, $attributes);
@@ -164,11 +163,6 @@ class AccessDecisionManager implements AccessDecisionManagerInterface
++$deny;
break;
-
- default:
- ++$abstain;
-
- break;
}
}
@@ -180,7 +174,7 @@ class AccessDecisionManager implements AccessDecisionManagerInterface
return false;
}
- if ($grant == $deny && $grant != 0) {
+ if ($grant > 0) {
return $this->allowIfEqualGrantedDeniedDecisions;
}
diff --git a/Http/Firewall/ExceptionListener.php b/Http/Firewall/ExceptionListener.php
index 6d1f27d..a1cae2a 100644
--- a/Http/Firewall/ExceptionListener.php
+++ b/Http/Firewall/ExceptionListener.php
@@ -47,8 +47,9 @@ class ExceptionListener
private $errorPage;
private $logger;
private $httpUtils;
+ private $stateless;
- public function __construct(TokenStorageInterface $tokenStorage, AuthenticationTrustResolverInterface $trustResolver, HttpUtils $httpUtils, $providerKey, AuthenticationEntryPointInterface $authenticationEntryPoint = null, $errorPage = null, AccessDeniedHandlerInterface $accessDeniedHandler = null, LoggerInterface $logger = null)
+ public function __construct(TokenStorageInterface $tokenStorage, AuthenticationTrustResolverInterface $trustResolver, HttpUtils $httpUtils, $providerKey, AuthenticationEntryPointInterface $authenticationEntryPoint = null, $errorPage = null, AccessDeniedHandlerInterface $accessDeniedHandler = null, LoggerInterface $logger = null, $stateless = false)
{
$this->tokenStorage = $tokenStorage;
$this->accessDeniedHandler = $accessDeniedHandler;
@@ -58,6 +59,7 @@ class ExceptionListener
$this->authenticationTrustResolver = $trustResolver;
$this->errorPage = $errorPage;
$this->logger = $logger;
+ $this->stateless = $stateless;
}
/**
@@ -185,7 +187,9 @@ class ExceptionListener
$this->logger->debug('Calling Authentication entry point.');
}
- $this->setTargetPath($request);
+ if (!$this->stateless) {
+ $this->setTargetPath($request);
+ }
if ($authException instanceof AccountStatusException) {
// remove the security token to prevent infinite redirect loops