summaryrefslogtreecommitdiff
path: root/Zend/tests
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2021-02-22 10:09:28 +0100
committerNikita Popov <nikita.ppv@gmail.com>2021-02-22 10:11:14 +0100
commitb3f4a3105c7a577baacd25ac7b76a32aa96cd7ca (patch)
tree6f1e100c6b1cfbb96acb888abb4e615d7b7b2762 /Zend/tests
parentde03bc8eb717657262c63152d52bd63bf715b096 (diff)
downloadphp-git-b3f4a3105c7a577baacd25ac7b76a32aa96cd7ca.tar.gz
Don't resolve special class names
Adjust zend_resolve_class_name() to not resolve special class names. This avoids the need to only call this function after a preliminary check for non-default fetch types. Doing so is somewhat fragile when dynamic class names are involved. Fixes oss-fuzz #31139.
Diffstat (limited to 'Zend/tests')
-rw-r--r--Zend/tests/invalid_const_class_name.phpt8
1 files changed, 8 insertions, 0 deletions
diff --git a/Zend/tests/invalid_const_class_name.phpt b/Zend/tests/invalid_const_class_name.phpt
new file mode 100644
index 0000000000..bedd74e1df
--- /dev/null
+++ b/Zend/tests/invalid_const_class_name.phpt
@@ -0,0 +1,8 @@
+--TEST--
+Invalid constant class name in nested class constant access
+--FILE--
+<?php
+[]::X::X;
+?>
+--EXPECTF--
+Fatal error: Illegal class name in %s on line %d