diff --git a/src/Symfony/Bridge/PhpUnit/ClassExistsMock.php b/src/Symfony/Bridge/PhpUnit/ClassExistsMock.php index fbd0a4fa4d..e8ca4ac940 100644 --- a/src/Symfony/Bridge/PhpUnit/ClassExistsMock.php +++ b/src/Symfony/Bridge/PhpUnit/ClassExistsMock.php @@ -30,17 +30,17 @@ class ClassExistsMock public static function class_exists($name, $autoload = true) { - return (bool) (self::$classes[ltrim($name, '\\')] ?? class_exists($name, $autoload)); + return (bool) (self::$classes[ltrim($name, '\\')] ?? \class_exists($name, $autoload)); } public static function interface_exists($name, $autoload = true) { - return (bool) (self::$classes[ltrim($name, '\\')] ?? interface_exists($name, $autoload)); + return (bool) (self::$classes[ltrim($name, '\\')] ?? \interface_exists($name, $autoload)); } public static function trait_exists($name, $autoload = true) { - return (bool) (self::$classes[ltrim($name, '\\')] ?? trait_exists($name, $autoload)); + return (bool) (self::$classes[ltrim($name, '\\')] ?? \trait_exists($name, $autoload)); } public static function register($class) diff --git a/src/Symfony/Component/Security/Core/Encoder/SodiumPasswordEncoder.php b/src/Symfony/Component/Security/Core/Encoder/SodiumPasswordEncoder.php index 313f3e94c4..0cdfea718d 100644 --- a/src/Symfony/Component/Security/Core/Encoder/SodiumPasswordEncoder.php +++ b/src/Symfony/Component/Security/Core/Encoder/SodiumPasswordEncoder.php @@ -48,11 +48,15 @@ final class SodiumPasswordEncoder implements PasswordEncoderInterface, SelfSalti public static function isSupported(): bool { + if (\extension_loaded('libsodium') || \function_exists('sodium_crypto_pwhash_str')) { + return true; + } + if (class_exists('ParagonIE_Sodium_Compat') && method_exists('ParagonIE_Sodium_Compat', 'crypto_pwhash_is_available')) { return \ParagonIE_Sodium_Compat::crypto_pwhash_is_available(); } - return \function_exists('sodium_crypto_pwhash_str') || \extension_loaded('libsodium'); + return false; } /**