Handle OpenSSL version after 26 patch releases
e.g. https://github.com/openssl/openssl/blob/OpenSSL_0_9_8zh/crypto/opensslv.h#L33pull/4875/head
parent
7117a5775f
commit
e9e2514b5e
|
@ -146,8 +146,18 @@ class PlatformRepository extends ArrayRepository
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'openssl':
|
case 'openssl':
|
||||||
$prettyVersion = preg_replace_callback('{^(?:OpenSSL\s*)?([0-9.]+)([a-z]?).*}', function ($match) {
|
$prettyVersion = preg_replace_callback('{^(?:OpenSSL\s*)?([0-9.]+)([a-z]+).*}', function ($match) {
|
||||||
return $match[1] . (empty($match[2]) ? '' : '.'.(ord($match[2]) - 96));
|
if (empty($match[2])) {
|
||||||
|
return $match[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
// OpenSSL versions add another letter when they reach Z.
|
||||||
|
// e.g. OpenSSL 0.9.8zh 3 Dec 2015
|
||||||
|
$patchVersion = array_sum(array_map(function ($letter) {
|
||||||
|
return ord($letter) - 96;
|
||||||
|
}, str_split($match[2])));
|
||||||
|
|
||||||
|
return $match[1].'.'.$patchVersion;
|
||||||
}, OPENSSL_VERSION_TEXT);
|
}, OPENSSL_VERSION_TEXT);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue