cve-2014-3538-nojit.phpt 731 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. --TEST--
  2. Bug #66731: file: extensive backtracking, with pcre.jit=0
  3. --EXTENSIONS--
  4. fileinfo
  5. --SKIPIF--
  6. <?php
  7. if (defined("PHP_DEBUG") && PHP_DEBUG)
  8. die("skip not suitable for debug build");
  9. if (getenv('SKIP_PERF_SENSITIVE'))
  10. die("skip performance sensitive test");
  11. ?>
  12. --INI--
  13. pcre.jit=0
  14. --FILE--
  15. <?php
  16. $fd = __DIR__.'/cve-2014-3538.data';
  17. file_put_contents($fd,
  18. 'try:' .
  19. str_repeat("\n", 1000000));
  20. $fi = finfo_open(FILEINFO_NONE);
  21. $t = microtime(true);
  22. var_dump(finfo_file($fi, $fd));
  23. $t = microtime(true) - $t;
  24. finfo_close($fi);
  25. if ($t < 1) {
  26. echo "Ok\n";
  27. } else {
  28. printf("Failed, time=%.2f\n", $t);
  29. }
  30. ?>
  31. Done
  32. --CLEAN--
  33. <?php
  34. //@unlink(__DIR__.'/cve-2014-3538.data');
  35. ?>
  36. --EXPECTF--
  37. string(%d) "%s"
  38. Ok
  39. Done