diff --git a/wp-includes/sodium_compat/autoload-php7.php b/wp-includes/sodium_compat/autoload-php7.php new file mode 100644 index 0000000000..482486043b --- /dev/null +++ b/wp-includes/sodium_compat/autoload-php7.php @@ -0,0 +1,31 @@ += 50300) { // Namespaces didn't exist before 5.3.0, so don't even try to use this // unless PHP >= 5.3.0 diff --git a/wp-includes/sodium_compat/lib/php72compat.php b/wp-includes/sodium_compat/lib/php72compat.php index c39ec26a88..fa8c37299f 100644 --- a/wp-includes/sodium_compat/lib/php72compat.php +++ b/wp-includes/sodium_compat/lib/php72compat.php @@ -26,6 +26,10 @@ foreach (array( 'CRYPTO_AEAD_CHACHA20POLY1305_IETF_NSECBYTES', 'CRYPTO_AEAD_CHACHA20POLY1305_IETF_NPUBBYTES', 'CRYPTO_AEAD_CHACHA20POLY1305_IETF_ABYTES', + 'CRYPTO_AEAD_XCHACHA20POLY1305_IETF_KEYBYTES', + 'CRYPTO_AEAD_XCHACHA20POLY1305_IETF_NSECBYTES', + 'CRYPTO_AEAD_XCHACHA20POLY1305_IETF_NPUBBYTES', + 'CRYPTO_AEAD_XCHACHA20POLY1305_IETF_ABYTES', 'CRYPTO_AUTH_BYTES', 'CRYPTO_AUTH_KEYBYTES', 'CRYPTO_BOX_SEALBYTES', @@ -62,6 +66,12 @@ foreach (array( 'CRYPTO_PWHASH_OPSLIMIT_MODERATE', 'CRYPTO_PWHASH_MEMLIMIT_SENSITIVE', 'CRYPTO_PWHASH_OPSLIMIT_SENSITIVE', + 'CRYPTO_PWHASH_SCRYPTSALSA208SHA256_SALTBYTES', + 'CRYPTO_PWHASH_SCRYPTSALSA208SHA256_STRPREFIX', + 'CRYPTO_PWHASH_SCRYPTSALSA208SHA256_MEMLIMIT_INTERACTIVE', + 'CRYPTO_PWHASH_SCRYPTSALSA208SHA256_OPSLIMIT_INTERACTIVE', + 'CRYPTO_PWHASH_SCRYPTSALSA208SHA256_MEMLIMIT_SENSITIVE', + 'CRYPTO_PWHASH_SCRYPTSALSA208SHA256_OPSLIMIT_SENSITIVE', 'CRYPTO_SCALARMULT_BYTES', 'CRYPTO_SCALARMULT_SCALARBYTES', 'CRYPTO_SHORTHASH_BYTES', @@ -84,6 +94,8 @@ foreach (array( 'CRYPTO_SIGN_KEYPAIRBYTES', 'CRYPTO_STREAM_KEYBYTES', 'CRYPTO_STREAM_NONCEBYTES', + 'LIBRARY_MAJOR_VERSION', + 'LIBRARY_MINOR_VERSION', 'LIBRARY_VERSION_MAJOR', 'LIBRARY_VERSION_MINOR', 'VERSION_STRING' diff --git a/wp-includes/sodium_compat/src/Compat.php b/wp-includes/sodium_compat/src/Compat.php index e49133fe05..ff76adbcb0 100644 --- a/wp-includes/sodium_compat/src/Compat.php +++ b/wp-includes/sodium_compat/src/Compat.php @@ -44,6 +44,8 @@ class ParagonIE_Sodium_Compat */ public static $fastMult = false; + const LIBRARY_MAJOR_VERSION = 9; + const LIBRARY_MINOR_VERSION = 1; const LIBRARY_VERSION_MAJOR = 9; const LIBRARY_VERSION_MINOR = 1; const VERSION_STRING = 'polyfill-1.0.8'; @@ -3117,15 +3119,14 @@ class ParagonIE_Sodium_Compat * with (sans pwhash and memzero). * * @return int - * @psalm-suppress MixedInferredReturnType - * @psalm-suppress UndefinedFunction */ public static function library_version_major() { - if (self::useNewSodiumAPI()) { - return sodium_library_version_major(); + if (self::useNewSodiumAPI() && defined('SODIUM_LIBRARY_MAJOR_VERSION')) { + return SODIUM_LIBRARY_MAJOR_VERSION; } if (self::use_fallback('library_version_major')) { + /** @psalm-suppress UndefinedFunction */ return (int) call_user_func('\\Sodium\\library_version_major'); } return self::LIBRARY_VERSION_MAJOR; @@ -3136,15 +3137,14 @@ class ParagonIE_Sodium_Compat * with (sans pwhash and memzero). * * @return int - * @psalm-suppress MixedInferredReturnType - * @psalm-suppress UndefinedFunction */ public static function library_version_minor() { - if (self::useNewSodiumAPI()) { - return sodium_library_version_minor(); + if (self::useNewSodiumAPI() && defined('SODIUM_LIBRARY_MINOR_VERSION')) { + return SODIUM_LIBRARY_MINOR_VERSION; } if (self::use_fallback('library_version_minor')) { + /** @psalm-suppress UndefinedFunction */ return (int) call_user_func('\\Sodium\\library_version_minor'); } return self::LIBRARY_VERSION_MINOR; diff --git a/wp-includes/sodium_compat/src/File.php b/wp-includes/sodium_compat/src/File.php index a28df9ffa9..b4948db36c 100644 --- a/wp-includes/sodium_compat/src/File.php +++ b/wp-includes/sodium_compat/src/File.php @@ -141,7 +141,9 @@ class ParagonIE_Sodium_File extends ParagonIE_Sodium_Core_Util ParagonIE_Sodium_Compat::memzero($nonce); ParagonIE_Sodium_Compat::memzero($ephKeypair); } catch (SodiumException $ex) { - unset($ephKeypair); + if (isset($ephKeypair)) { + unset($ephKeypair); + } } return $res; } @@ -328,7 +330,9 @@ class ParagonIE_Sodium_File extends ParagonIE_Sodium_Core_Util ParagonIE_Sodium_Compat::memzero($nonce); ParagonIE_Sodium_Compat::memzero($ephKeypair); } catch (SodiumException $ex) { - unset($ephKeypair); + if (isset($ephKeypair)) { + unset($ephKeypair); + } } return $res; } diff --git a/wp-includes/version.php b/wp-includes/version.php index c89b4ad65e..089215be4e 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -13,7 +13,7 @@ * * @global string $wp_version */ -$wp_version = '5.6-alpha-49055'; +$wp_version = '5.6-alpha-49056'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.