bug69972.phpt 715 B

12345678910111213141516171819202122232425262728
  1. --TEST--
  2. Bug #69972 (Use-after-free vulnerability in sqlite3SafetyCheckSickOrOk())
  3. --SKIPIF--
  4. <?php
  5. if (!extension_loaded('sqlite3')) die('skip');
  6. ?>
  7. --FILE--
  8. <?php
  9. $db = new SQLite3(':memory:');
  10. echo "SELECTING from invalid table\n";
  11. $result = $db->query("SELECT * FROM non_existent_table");
  12. echo "Closing database\n";
  13. var_dump($db->close());
  14. echo "Done\n";
  15. // Trigger the use-after-free
  16. echo "Error Code: " . $db->lastErrorCode() . "\n";
  17. echo "Error Msg: " . $db->lastErrorMsg() . "\n";
  18. ?>
  19. --EXPECTF--
  20. SELECTING from invalid table
  21. Warning: SQLite3::query(): Unable to prepare statement: 1, no such table: non_existent_table in %sbug69972.php on line %d
  22. Closing database
  23. bool(true)
  24. Done
  25. Error Code: 0
  26. Error Msg: