Skip to content

Commit 299da4c

Browse files
committed
dynamic properties update for 2.0 branch
1 parent 42f4cac commit 299da4c

File tree

2 files changed

+14
-11
lines changed

2 files changed

+14
-11
lines changed

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
},
2424
"require": {
2525
"php": ">=5.6.1",
26-
"phpseclib/phpseclib": "^3.0"
26+
"phpseclib/phpseclib": ">=3.0.12 <4.0.0"
2727
},
2828
"require-dev": {
2929
"phpunit/phpunit": "^5.7|^6.0|^9.4"

lib/mcrypt.php

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@ function phpseclib_set_key(Base $td, $key)
180180
*/
181181
function phpseclib_set_iv(Base $td, $iv)
182182
{
183-
if ($td->mode != Base::MODE_ECB && $td->mode != Base::MODE_STREAM) {
183+
if ($td->getMode() != 'ecb' && $td->getMode() != 'stream') {
184184
$length = $td->getBlockLength() >> 3;
185185
$iv = str_pad(substr($iv, 0, $length), $length, "\0");
186186
$td->setIV($iv);
@@ -565,13 +565,16 @@ function phpseclib_mcrypt_enc_get_algorithms_name(Base $td)
565565
*/
566566
function phpseclib_mcrypt_enc_get_modes_name(Base $td)
567567
{
568-
if (!isset($td->mcrypt_mode)) {
569-
return false;
568+
$mode = $td->getMode();
569+
switch ($mode) {
570+
case 'cfb':
571+
case 'ofb';
572+
return 'n' . strtoupper($mode);
573+
case 'cfb8':
574+
return strtoupper(substr($mode, 0, 3));
575+
default:
576+
return strtoupper($mode);
570577
}
571-
$mode = strtoupper($td->mcrypt_mode);
572-
return $mode[0] == 'N' ?
573-
'n' . substr($mode, 1) :
574-
$mode;
575578
}
576579

577580
/**
@@ -585,7 +588,7 @@ function phpseclib_mcrypt_enc_get_modes_name(Base $td)
585588
*/
586589
function phpseclib_mcrypt_enc_is_block_algorithm_mode(Base $td)
587590
{
588-
return $td->mcrypt_mode != 'stream';
591+
return $td->getMode() != 'stream';
589592
}
590593

591594
/**
@@ -613,7 +616,7 @@ function phpseclib_mcrypt_enc_is_block_algorithm(Base $td)
613616
*/
614617
function phpseclib_mcrypt_enc_is_block_mode(Base $td)
615618
{
616-
return $td->mcrypt_mode == 'ecb' || $td->mcrypt_mode == 'cbc';
619+
return $td->getMode() == 'ecb' || $td->getMode() == 'cbc';
617620
}
618621

619622
/**
@@ -642,7 +645,7 @@ function phpseclib_mcrypt_enc_self_test(Base $td)
642645
function phpseclib_mcrypt_generic_init(Base $td, $key, $iv)
643646
{
644647
$iv_size = phpseclib_mcrypt_enc_get_iv_size($td);
645-
if (strlen($iv) != $iv_size && $td->mode != Base::MODE_ECB) {
648+
if (strlen($iv) != $iv_size && $td->getMode() != 'ecb') {
646649
trigger_error('mcrypt_generic_init(): Iv size incorrect; supplied length: ' . strlen($iv) . ', needed: ' . $iv_size, E_USER_WARNING);
647650
}
648651
if (!strlen($key)) {

0 commit comments

Comments
 (0)