1
0
mirror of https://github.com/php/php-src.git synced 2026-03-26 01:02:25 +01:00
Files
archived-php-src/ext/reflection/tests/bug76737.phpt
Nikita Popov 96da1fe8a9 Fixed bug #76737
Explicitly prohibit serialization and unserialization of reflection
objects.
2018-09-29 14:47:57 +02:00

34 lines
810 B
PHP

--TEST--
Bug #76737: Unserialized reflection objects are broken, they shouldn't be serializable
--FILE--
<?php
try {
$r = new ReflectionClass('stdClass');
var_dump(serialize($r));
} catch (Exception $e) {
echo $e->getMessage(), "\n";
}
try {
$s = 'C:15:"ReflectionClass":0:{}';
var_dump(unserialize($s));
} catch (Exception $e) {
echo $e->getMessage(), "\n";
}
try {
$s = 'O:15:"ReflectionClass":0:{}';
var_dump(unserialize($s));
} catch (Exception $e) {
echo $e->getMessage(), "\n";
}
?>
--EXPECTF--
Serialization of 'ReflectionClass' is not allowed
Unserialization of 'ReflectionClass' is not allowed
Warning: Erroneous data format for unserializing 'ReflectionClass' in %s on line %d
Notice: unserialize(): Error at offset 26 of 27 bytes in %s on line %d
bool(false)