OXIESEC PANEL
- Current Dir:
/
/
var
/
www
/
cream
/
old_sendy
/
includes
/
helpers
/
random_compat
/
lib
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
05/19/2025 10:07:16 AM
rwxr-xr-x
📄
byte_safe_strings.php
6.17 KB
05/19/2025 10:07:16 AM
rw-r--r--
📄
cast_to_int.php
2.66 KB
05/19/2025 10:07:16 AM
rw-r--r--
📄
error_polyfill.php
1.62 KB
05/19/2025 10:07:16 AM
rw-r--r--
📄
random.php
7.76 KB
05/19/2025 10:07:16 AM
rw-r--r--
📄
random_bytes_com_dotnet.php
2.94 KB
05/19/2025 10:07:16 AM
rw-r--r--
📄
random_bytes_dev_urandom.php
6.3 KB
05/19/2025 10:07:16 AM
rw-r--r--
📄
random_bytes_libsodium.php
2.88 KB
05/19/2025 10:07:16 AM
rw-r--r--
📄
random_bytes_libsodium_legacy.php
2.86 KB
05/19/2025 10:07:16 AM
rw-r--r--
📄
random_bytes_mcrypt.php
2.54 KB
05/19/2025 10:07:16 AM
rw-r--r--
📄
random_int.php
6.56 KB
05/19/2025 10:07:16 AM
rw-r--r--
Editing: cast_to_int.php
Close
<?php /** * Random_* Compatibility Library * for using the new PHP 7 random_* API in PHP 5 projects * * The MIT License (MIT) * * Copyright (c) 2015 - 2018 Paragon Initiative Enterprises * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ if (!is_callable('RandomCompat_intval')) { /** * Cast to an integer if we can, safely. * * If you pass it a float in the range (~PHP_INT_MAX, PHP_INT_MAX) * (non-inclusive), it will sanely cast it to an int. If you it's equal to * ~PHP_INT_MAX or PHP_INT_MAX, we let it fail as not an integer. Floats * lose precision, so the <= and => operators might accidentally let a float * through. * * @param int|float $number The number we want to convert to an int * @param bool $fail_open Set to true to not throw an exception * * @return float|int * @psalm-suppress InvalidReturnType * * @throws TypeError */ function RandomCompat_intval($number, $fail_open = false) { if (is_int($number) || is_float($number)) { $number += 0; } elseif (is_numeric($number)) { /** @psalm-suppress InvalidOperand */ $number += 0; } /** @var int|float $number */ if ( is_float($number) && $number > ~PHP_INT_MAX && $number < PHP_INT_MAX ) { $number = (int) $number; } if (is_int($number)) { return (int) $number; } elseif (!$fail_open) { throw new TypeError( 'Expected an integer.' ); } return $number; } }