summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2020-07-21 11:53:00 +0200
committerNikita Popov <nikita.ppv@gmail.com>2020-07-21 11:53:00 +0200
commitb3ea6ce720b3811e0c98ba4bdcf9107553d8967a (patch)
tree9696c206609573f70652e938fa5ff550273d1288 /ext
parent3a9036ac54c016a39a101057f29da30cc0c4c475 (diff)
downloadphp-git-b3ea6ce720b3811e0c98ba4bdcf9107553d8967a.tar.gz
Make ReflectionGenerator final
This class is not safe against malicious extension / instantiation.
Diffstat (limited to 'ext')
-rw-r--r--ext/reflection/php_reflection.c1
-rw-r--r--ext/reflection/php_reflection.stub.php2
-rw-r--r--ext/reflection/php_reflection_arginfo.h2
3 files changed, 3 insertions, 2 deletions
diff --git a/ext/reflection/php_reflection.c b/ext/reflection/php_reflection.c
index c751da1281..15237b3511 100644
--- a/ext/reflection/php_reflection.c
+++ b/ext/reflection/php_reflection.c
@@ -6506,6 +6506,7 @@ PHP_MINIT_FUNCTION(reflection) /* {{{ */
INIT_CLASS_ENTRY(_reflection_entry, "ReflectionGenerator", class_ReflectionGenerator_methods);
reflection_init_class_handlers(&_reflection_entry);
reflection_generator_ptr = zend_register_internal_class(&_reflection_entry);
+ reflection_generator_ptr->ce_flags |= ZEND_ACC_FINAL;
INIT_CLASS_ENTRY(_reflection_entry, "ReflectionParameter", class_ReflectionParameter_methods);
reflection_init_class_handlers(&_reflection_entry);
diff --git a/ext/reflection/php_reflection.stub.php b/ext/reflection/php_reflection.stub.php
index 31c08e92b2..b617a644e7 100644
--- a/ext/reflection/php_reflection.stub.php
+++ b/ext/reflection/php_reflection.stub.php
@@ -123,7 +123,7 @@ class ReflectionFunction extends ReflectionFunctionAbstract
public function getClosure() {}
}
-class ReflectionGenerator
+final class ReflectionGenerator
{
public function __construct(Generator $generator) {}
diff --git a/ext/reflection/php_reflection_arginfo.h b/ext/reflection/php_reflection_arginfo.h
index 1d9f730309..38da4b6580 100644
--- a/ext/reflection/php_reflection_arginfo.h
+++ b/ext/reflection/php_reflection_arginfo.h
@@ -1,5 +1,5 @@
/* This is a generated file, edit the .stub.php file instead.
- * Stub hash: 762e9bab89b8edae0b567c1c3926ffa226abe874 */
+ * Stub hash: 330900e4fdcc9691ef971a270d065f859cee47bd */
ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Reflection_getModifierNames, 0, 0, 1)
ZEND_ARG_TYPE_INFO(0, modifiers, IS_LONG, 0)