19 'session.cookie_secure',
20 'session.cookie_httponly',
21 'session.use_cookies',
22 'session.use_only_cookies',
23 'session.referer_check',
25 'session.save_handler',
26 'session.cookie_lifetime',
27 'session.cookie_secure',
35 'eaccelerator.enable',
36 'mime_magic.magicfile',
38 'default_socket_timeout',
39 'pcre.recursion_limit',
47 'serialize_precision',
55 private $whitelistVarsInFiles = [
57 'integration/testsuite/Magento/Swatches/Controller/Adminhtml/Product/AttributeTest.php',
58 'integration/testsuite/Magento/Catalog/Controller/Adminhtml/Product/AttributeTest.php',
70 $deniedDirectives = [];
71 foreach ($this->
getFiles() as $file) {
73 if ($fileDirectives) {
74 $fileDeniedDirectives = array_diff($fileDirectives, $this->allowedDirectives);
75 if ($fileDeniedDirectives) {
76 $deniedDirectivesInFile = array_unique($fileDeniedDirectives);
77 foreach ($deniedDirectivesInFile as $key => $deniedDirective) {
78 if (isset($this->whitelistVarsInFiles[$deniedDirective])) {
79 foreach ($this->whitelistVarsInFiles[$deniedDirective] as $whitelistFile) {
80 if (strpos($file, $whitelistFile) !==
false) {
81 unset($deniedDirectivesInFile[$key]);
86 if ($deniedDirectivesInFile) {
87 $deniedDirectives[$file] = $deniedDirectivesInFile;
92 if ($deniedDirectives) {
123 $pattern =
'/ini_[g|s]et\(\s*[\'|"]([\w\._]+?)[\'|"][\s\w,\'"]*\)/';
126 return $matches ? $matches[1] :
null;
135 $message =
'HHVM-incompatible ini_get/ini_set options were found:';
136 foreach ($deniedDirectives as $file => $fileDeniedDirectives) {
137 $message .=
"\n" . $file .
': [' . implode(
', ', $fileDeniedDirectives) .
']';
const INCLUDE_NON_CLASSES
createMessage($deniedDirectives)
testAllowedIniGetSetDirectives()