|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull Requests |
|||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sun Oct 26 13:00:02 2025 UTC |
Description: ------------ Testing for LibreSSL and its version number via OPENSSL_VERSION_TEXT is possible but not ideal. Since 2.2.2 LibreSSL defines LIBRESSL_VERSION_NUMBER. I would prefer to use this. Please define LIBRESSL_VERSION_NUMBER as a constant in PHP user space, or provide another way to access it. Test script: --------------- if (defined('OPENSSL_VERSION_TEXT')) { echo 'OPENSSL_VERSION_TEXT is ' . OPENSSL_VERSION_TEXT . "\n"; if (strpos(OPENSSL_VERSION_TEXT, 'LibreSSL') === 0) { echo 'LIBRESSL_VERSION_NUMBER is ' . (defined('LIBRESSL_VERSION_NUMBER') ? dechex(LIBRESSL_VERSION_NUMBER) : 'undefined') . "\n"; } } else { echo "OpenSSL not presentn\n"; } Expected result: ---------------- For example... OPENSSL_VERSION_TEXT is LibreSSL 2.3.1 LIBRESSL_VERSION_NUMBER is 20301000 Actual result: -------------- For example... OPENSSL_VERSION_TEXT is LibreSSL 2.3.1 LIBRESSL_VERSION_NUMBER is undefined