/
vshmidt
/
php
Обзор
Документация
Войти
/
vshmidt
/
php
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
ext/filter/tests/048.phpt
41 строка
958 B
Nikita Popov
Migrate SKIPIF -> EXTENSIONS (#7138)
11 июн 2021, 12:57
Не верифицирован
11 июн 2021, 12:57
7485978
Код
Авторство
О чём код?
--TEST-- Hex integer overflow --EXTENSIONS-- filter --FILE-- <?php function hex_inc($s) { $len = strlen($s); while ($len > 0) { $len--; if ($s[$len] != 'f') { if ($s[$len] == '9') { $s[$len] = 'a'; } else { $s[$len] = $s[$len] + 1; } return $s; } $s[$len] = '0'; } return '1'.$s; } $s = sprintf("%x", PHP_INT_MAX); var_dump(is_long(filter_var('0x'.$s, FILTER_VALIDATE_INT, array("flags"=>FILTER_FLAG_ALLOW_HEX)))); $s = hex_inc($s); var_dump(is_long(filter_var('0x'.$s, FILTER_VALIDATE_INT, array("flags"=>FILTER_FLAG_ALLOW_HEX)))); $s = sprintf("%x", ~0); var_dump(is_long(filter_var('0x'.$s, FILTER_VALIDATE_INT, array("flags"=>FILTER_FLAG_ALLOW_HEX)))); $s = hex_inc($s); var_dump(filter_var('0x'.$s, FILTER_VALIDATE_INT, array("flags"=>FILTER_FLAG_ALLOW_HEX))); ?> --EXPECT-- bool(true) bool(true) bool(true) bool(false)