This commit is contained in:
James Cole 2021-03-24 06:06:18 +01:00
parent 3e73641378
commit a8e9ba3041
No known key found for this signature in database
GPG Key ID: B5669F9493CDE38D
2 changed files with 57 additions and 50 deletions

View File

@ -30,6 +30,8 @@ use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\User;
use Laravel\Passport\Passport;
use Log;
use phpseclib\Crypt\RSA as LegacyRSA;
use phpseclib3\Crypt\RSA;
/**
@ -104,21 +106,7 @@ trait CreateStuff
*/
protected function createOAuthKeys(): void // create stuff
{
// switch on PHP version.
$result = version_compare(phpversion(), '8.0');
Log::info(sprintf('PHP version is %s', $result));
if (-1 === $result) {
Log::info('Will run PHP7 code.');
// PHP 7
$rsa = new \phpseclib\Crypt\RSA;
$keys = $rsa->createKey(4096);
}
if ($result >= 0) {
Log::info('Will run PHP8 code.');
// PHP 8
$keys = \phpseclib3\Crypt\RSA::createKey(4096);
}
[$publicKey, $privateKey] = [
Passport::keyPath('oauth-public.key'),
@ -128,6 +116,22 @@ trait CreateStuff
if (file_exists($publicKey) || file_exists($privateKey)) {
return;
}
// switch on class existence.
Log::info(sprintf('PHP version is %s', phpversion()));
if (class_exists(LegacyRSA::class)) {
// PHP 7
Log::info('Will run PHP7 code.');
$keys = (new LegacyRSA)->createKey(4096);
}
if (!class_exists(LegacyRSA::class)) {
// PHP 8
Log::info('Will run PHP8 code.');
$keys = RSA::createKey(4096);
}
// @codeCoverageIgnoreStart
Log::alert('NO OAuth keys were found. They have been created.');

75
composer.lock generated
View File

@ -1254,22 +1254,22 @@
},
{
"name": "guzzlehttp/guzzle",
"version": "7.2.0",
"version": "7.3.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/guzzle.git",
"reference": "0aa74dfb41ae110835923ef10a9d803a22d50e79"
"reference": "7008573787b430c1c1f650e3722d9bba59967628"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/guzzle/guzzle/zipball/0aa74dfb41ae110835923ef10a9d803a22d50e79",
"reference": "0aa74dfb41ae110835923ef10a9d803a22d50e79",
"url": "https://api.github.com/repos/guzzle/guzzle/zipball/7008573787b430c1c1f650e3722d9bba59967628",
"reference": "7008573787b430c1c1f650e3722d9bba59967628",
"shasum": ""
},
"require": {
"ext-json": "*",
"guzzlehttp/promises": "^1.4",
"guzzlehttp/psr7": "^1.7",
"guzzlehttp/psr7": "^1.7 || ^2.0",
"php": "^7.2.5 || ^8.0",
"psr/http-client": "^1.0"
},
@ -1277,6 +1277,7 @@
"psr/http-client-implementation": "1.0"
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.4.1",
"ext-curl": "*",
"php-http/client-integration-tests": "^3.0",
"phpunit/phpunit": "^8.5.5 || ^9.3.5",
@ -1290,7 +1291,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "7.1-dev"
"dev-master": "7.3-dev"
}
},
"autoload": {
@ -1332,7 +1333,7 @@
],
"support": {
"issues": "https://github.com/guzzle/guzzle/issues",
"source": "https://github.com/guzzle/guzzle/tree/7.2.0"
"source": "https://github.com/guzzle/guzzle/tree/7.3.0"
},
"funding": [
{
@ -1352,7 +1353,7 @@
"type": "github"
}
],
"time": "2020-10-10T11:47:56+00:00"
"time": "2021-03-23T11:33:13+00:00"
},
{
"name": "guzzlehttp/promises",
@ -1411,16 +1412,16 @@
},
{
"name": "guzzlehttp/psr7",
"version": "1.7.0",
"version": "1.8.1",
"source": {
"type": "git",
"url": "https://github.com/guzzle/psr7.git",
"reference": "53330f47520498c0ae1f61f7e2c90f55690c06a3"
"reference": "35ea11d335fd638b5882ff1725228b3d35496ab1"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/guzzle/psr7/zipball/53330f47520498c0ae1f61f7e2c90f55690c06a3",
"reference": "53330f47520498c0ae1f61f7e2c90f55690c06a3",
"url": "https://api.github.com/repos/guzzle/psr7/zipball/35ea11d335fd638b5882ff1725228b3d35496ab1",
"reference": "35ea11d335fd638b5882ff1725228b3d35496ab1",
"shasum": ""
},
"require": {
@ -1480,9 +1481,9 @@
],
"support": {
"issues": "https://github.com/guzzle/psr7/issues",
"source": "https://github.com/guzzle/psr7/tree/1.7.0"
"source": "https://github.com/guzzle/psr7/tree/1.8.1"
},
"time": "2020-09-30T07:37:11+00:00"
"time": "2021-03-21T16:25:00+00:00"
},
{
"name": "jc5/google2fa-laravel",
@ -1641,16 +1642,16 @@
},
{
"name": "laravel/framework",
"version": "v8.33.1",
"version": "v8.34.0",
"source": {
"type": "git",
"url": "https://github.com/laravel/framework.git",
"reference": "354c57b8cb457549114074c500944455a288d6cc"
"reference": "81892ca110795a9c46c7e198cba7763bfd2af0bf"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/framework/zipball/354c57b8cb457549114074c500944455a288d6cc",
"reference": "354c57b8cb457549114074c500944455a288d6cc",
"url": "https://api.github.com/repos/laravel/framework/zipball/81892ca110795a9c46c7e198cba7763bfd2af0bf",
"reference": "81892ca110795a9c46c7e198cba7763bfd2af0bf",
"shasum": ""
},
"require": {
@ -1805,7 +1806,7 @@
"issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework"
},
"time": "2021-03-16T19:42:32+00:00"
"time": "2021-03-23T15:12:51+00:00"
},
{
"name": "laravel/passport",
@ -2077,16 +2078,16 @@
},
{
"name": "lcobucci/jwt",
"version": "4.1.3",
"version": "4.1.4",
"source": {
"type": "git",
"url": "https://github.com/lcobucci/jwt.git",
"reference": "1e66927ea937c199539f8a8a35e284b6667c4f2c"
"reference": "71cf170102c8371ccd933fa4df6252086d144de6"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/lcobucci/jwt/zipball/1e66927ea937c199539f8a8a35e284b6667c4f2c",
"reference": "1e66927ea937c199539f8a8a35e284b6667c4f2c",
"url": "https://api.github.com/repos/lcobucci/jwt/zipball/71cf170102c8371ccd933fa4df6252086d144de6",
"reference": "71cf170102c8371ccd933fa4df6252086d144de6",
"shasum": ""
},
"require": {
@ -2135,7 +2136,7 @@
],
"support": {
"issues": "https://github.com/lcobucci/jwt/issues",
"source": "https://github.com/lcobucci/jwt/tree/4.1.3"
"source": "https://github.com/lcobucci/jwt/tree/4.1.4"
},
"funding": [
{
@ -2147,7 +2148,7 @@
"type": "patreon"
}
],
"time": "2021-03-19T20:58:12+00:00"
"time": "2021-03-23T23:53:08+00:00"
},
{
"name": "league/commonmark",
@ -9551,16 +9552,16 @@
},
{
"name": "phpunit/phpunit",
"version": "9.5.3",
"version": "9.5.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
"reference": "27241ac75fc37ecf862b6e002bf713b6566cbe41"
"reference": "c73c6737305e779771147af66c96ca6a7ed8a741"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/27241ac75fc37ecf862b6e002bf713b6566cbe41",
"reference": "27241ac75fc37ecf862b6e002bf713b6566cbe41",
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/c73c6737305e779771147af66c96ca6a7ed8a741",
"reference": "c73c6737305e779771147af66c96ca6a7ed8a741",
"shasum": ""
},
"require": {
@ -9638,7 +9639,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
"source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.3"
"source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.4"
},
"funding": [
{
@ -9650,7 +9651,7 @@
"type": "github"
}
],
"time": "2021-03-17T07:30:34+00:00"
"time": "2021-03-23T07:16:29+00:00"
},
{
"name": "react/promise",
@ -9708,12 +9709,12 @@
"source": {
"type": "git",
"url": "https://github.com/Roave/SecurityAdvisories.git",
"reference": "11b8a607a59818bb21fc9ffb334f03032a6ce5dc"
"reference": "3dfe1d2b81a55b9c51dc87ce89f1ee2beaaf1093"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/11b8a607a59818bb21fc9ffb334f03032a6ce5dc",
"reference": "11b8a607a59818bb21fc9ffb334f03032a6ce5dc",
"url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/3dfe1d2b81a55b9c51dc87ce89f1ee2beaaf1093",
"reference": "3dfe1d2b81a55b9c51dc87ce89f1ee2beaaf1093",
"shasum": ""
},
"conflict": {
@ -9953,7 +9954,9 @@
"truckersmp/phpwhois": "<=4.3.1",
"twig/twig": "<1.38|>=2,<2.7",
"typo3/cms": ">=6.2,<6.2.30|>=7,<7.6.32|>=8,<8.7.38|>=9,<9.5.25|>=10,<10.4.14|>=11,<11.1.1",
"typo3/cms-core": ">=8,<8.7.38|>=9,<9.5.25|>=10,<10.4.14|>=11,<11.1.1",
"typo3/cms-backend": ">=7,<=7.6.50|>=8,<=8.7.39|>=9,<=9.5.24|>=10,<=10.4.13|>=11,<=11.1",
"typo3/cms-core": ">=6.2,<=6.2.56|>=7,<=7.6.50|>=8,<=8.7.39|>=9,<9.5.25|>=10,<10.4.14|>=11,<11.1.1",
"typo3/cms-form": ">=8,<=8.7.39|>=9,<=9.5.24|>=10,<=10.4.13|>=11,<=11.1",
"typo3/flow": ">=1,<1.0.4|>=1.1,<1.1.1|>=2,<2.0.1|>=2.3,<2.3.16|>=3,<3.0.10|>=3.1,<3.1.7|>=3.2,<3.2.7|>=3.3,<3.3.5",
"typo3/neos": ">=1.1,<1.1.3|>=1.2,<1.2.13|>=2,<2.0.4",
"typo3/phar-stream-wrapper": ">=1,<2.1.1|>=3,<3.1.1",
@ -10032,7 +10035,7 @@
"type": "tidelift"
}
],
"time": "2021-03-19T20:02:32+00:00"
"time": "2021-03-23T02:23:40+00:00"
},
{
"name": "sebastian/cli-parser",