@@ -445,7 +445,7 @@ function isValidEngine($engine)
445445 // quoting https://www.openssl.org/news/openssl-3.0-notes.html, OpenSSL 3.0.1
446446 // "Moved all variations of the EVP ciphers CAST5, BF, IDEA, SEED, RC2, RC4, RC5, and DES to the legacy provider"
447447 // in theory openssl_get_cipher_methods() should catch this but, on GitHub Actions, at least, it does not
448- if (version_compare (preg_replace ('#OpenSSL (\d+\.\d+\.\d+) .*# ' , '$1 ' , OPENSSL_VERSION_TEXT ), '3.0.1 ' , '>= ' )) {
448+ if (defined ( ' OPENSSL_VERSION_TEXT ' ) && version_compare (preg_replace ('#OpenSSL (\d+\.\d+\.\d+) .*# ' , '$1 ' , OPENSSL_VERSION_TEXT ), '3.0.1 ' , '>= ' )) {
449449 return false ;
450450 }
451451 if (version_compare (PHP_VERSION , '5.3.7 ' ) < 0 && $ this ->key_length != 16 ) {
@@ -762,7 +762,7 @@ function _encryptBlock($in)
762762 $ l = $ in [1 ];
763763 $ r = $ in [2 ];
764764
765- list ($ r , $ l ) = CRYPT_BASE_USE_REG_INTVAL ?
765+ list ($ r , $ l ) = PHP_INT_SIZE === 8 ?
766766 $ this ->_encryptBlockHelperFast ($ l , $ r , $ sb_0 , $ sb_1 , $ sb_2 , $ sb_3 , $ p ) :
767767 $ this ->_encryptBlockHelperSlow ($ l , $ r , $ sb_0 , $ sb_1 , $ sb_2 , $ sb_3 , $ p );
768768
@@ -820,25 +820,26 @@ function _encryptBlockHelperFast($x0, $x1, $sbox0, $sbox1, $sbox2, $sbox3, $p)
820820 */
821821 function _encryptBlockHelperSlow ($ x0 , $ x1 , $ sbox0 , $ sbox1 , $ sbox2 , $ sbox3 , $ p )
822822 {
823+ // -16777216 == intval(0xFF000000) on 32-bit PHP installs
823824 $ x0 ^= $ p [0 ];
824- $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x0 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [1 ];
825- $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x1 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [2 ];
826- $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x0 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [3 ];
827- $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x1 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [4 ];
828- $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x0 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [5 ];
829- $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x1 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [6 ];
830- $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x0 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [7 ];
831- $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x1 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [8 ];
832- $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x0 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [9 ];
833- $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x1 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [10 ];
834- $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x0 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [11 ];
835- $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x1 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [12 ];
836- $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x0 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [13 ];
837- $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x1 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [14 ];
838- $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x0 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [15 ];
839- $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [($ x1 & 0xFF000000 ) >> 24 ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [16 ];
840-
841- return array ($ x1 & 0xFFFFFFFF ^ $ p [17 ], $ x0 & 0xFFFFFFFF );
825+ $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x0 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [1 ];
826+ $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x1 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [2 ];
827+ $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x0 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [3 ];
828+ $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x1 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [4 ];
829+ $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x0 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [5 ];
830+ $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x1 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [6 ];
831+ $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x0 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [7 ];
832+ $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x1 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [8 ];
833+ $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x0 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [9 ];
834+ $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x1 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [10 ];
835+ $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x0 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [11 ];
836+ $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x1 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [12 ];
837+ $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x0 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [13 ];
838+ $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x1 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [14 ];
839+ $ x1 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x0 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x0 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x0 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x0 & 0xFF ]) ^ $ p [15 ];
840+ $ x0 ^= $ this ->safe_intval (($ this ->safe_intval ($ sbox0 [(( $ x1 & - 16777216 ) >> 24 ) & 0xFF ] + $ sbox1 [($ x1 & 0xFF0000 ) >> 16 ]) ^ $ sbox2 [($ x1 & 0xFF00 ) >> 8 ]) + $ sbox3 [$ x1 & 0xFF ]) ^ $ p [16 ];
841+
842+ return array ($ x1 ^ $ p [17 ], $ x0 );
842843 }
843844
844845 /**
0 commit comments