예제 #1
0
    include_once FILENAME_PRIVKEY;
    if (!defined('MSGAPI_PRIVATE_KEY')) {
        $errCol->registerError('files', 'privKey', 'Not all constants are defined.');
    } else {
        if (MSGAPI_PRIVATE_KEY == '' || !KeyCheck(MSGAPI_PRIVATE_KEY, 'private:')) {
            $errCol->registerError('files', 'privKey', '\'MSGAPI_PRIVATE_KEY\' is invalid.');
        }
    }
}
//libsodium: private key
$errCol->registerGenericMessages('libsodium', 'state', 'Libsodium is loaded.', 'Libsodium is not loaded.');
$errCol->registerGenericMessages('libsodium', 'version', 'You use a recent version of libsodium.', 'You use an old outdated version of libsodium. It is very much recommend to update it.');
if (extension_loaded('libsodium')) {
    $errCol->registerSuccess('libsodium', 'state');
    if (method_exists('Sodium', 'sodium_version_string')) {
        $errCol->registerWarning('libsodium', 'version', 'Sodium version: ' . Sodium::sodium_version_string());
    } else {
        $errCol->registerSuccess('libsodium', 'version', 'Sodium version: ' . \Sodium\version_string());
    }
} else {
    $errCol->registerWarning('libsodium', 'state', 'It is very much recommend to install and load it.');
    if (PHP_INT_SIZE < 8) {
        $errCol->registerError('libsodium', '64bit', 'To use the SDK without libsodium you have to use a 64bit version of PHP.');
    }
}
//evaluate checks and prepare for an output of the results
$fileCheckResults = $errCol->evaluateChecks('files');
$libsodiumCheckResults = $errCol->evaluateChecks('libsodium', false);
?>

<!DOCTYPE html>
<?php

/**
 * @author rugk
 * @copyright Copyright (c) 2015-2016 rugk
 * @license MIT
 */
// check load state
if (extension_loaded('libsodium')) {
    echo 'libsodium is loaded<br/>';
} else {
    echo 'libsodium is not loaded<br/>';
    exit;
}
// check version
if (method_exists('Sodium', 'sodium_version_string')) {
    echo 'you use an old version of libsodium (<0.2.0)<br/>';
    echo 'Sodium version: ' . Sodium::sodium_version_string();
} else {
    echo 'you use a recent version of libsodium<br/>';
    echo 'Sodium version: ' . \Sodium\version_string();
}
예제 #3
-1
function ShowLibsodiumVersion()
{
    if (method_exists('Sodium', 'sodium_version_string')) {
        echo Sodium::sodium_version_string();
    } else {
        echo \Sodium\version_string();
    }
}