]> granicus.if.org Git - php/commitdiff
Ensure functions have a valid access level
authorZeev Suraski <zeev@php.net>
Sun, 3 Aug 2003 21:06:23 +0000 (21:06 +0000)
committerZeev Suraski <zeev@php.net>
Sun, 3 Aug 2003 21:06:23 +0000 (21:06 +0000)
Zend/zend_API.c

index 4c26d87ffec608979533d0e881a17e07b785c808..6ceb971ba038a5f61a917a28432bc9cc83880ebc 100644 (file)
@@ -1171,6 +1171,9 @@ int zend_register_functions(zend_class_entry *scope, zend_function_entry *functi
                        internal_function->pass_rest_by_reference = 0;
                }
                if (ptr->flags) {
+                       if (!(ptr->flags & ZEND_ACC_PPP_MASK)) {
+                               zend_error(error_type, "Invalid access level for %s() - access must be exactly one of public, protected or private", ptr->fname);
+                       }
                        internal_function->fn_flags = ptr->flags;
                } else {
                        internal_function->fn_flags = ZEND_ACC_PUBLIC;