Skip to content

Files

tests

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Oct 26, 2022
Mar 1, 2024
Oct 25, 2021
Jun 7, 2022
Jul 26, 2022
Jun 7, 2022
Jun 7, 2022
Jul 25, 2022
Jul 25, 2022
Jun 7, 2022
Jun 7, 2022
Jul 26, 2022
Jun 7, 2022

Description of the SPP functionality tests & helper files

  • common.h: Implements the print_pass_flag and print_fail_flag helper functions to determine the correct execution of the tests.
  • free_tx_abort.cpp: should NOT crash | Accesses a PM object in-bounds after an aborted attempt to free it within a transaction which is a valid operation.
  • overflow_ntx.cpp: should crash | PM object overflow access. Invalid operation -- therefore it should crash.
  • overflow_persistence_helper.cpp: Helper function that has 2 stages. In stage 1 it creates the pool and the root object. In stage 2 it attempts to perform an overflown access to the object. The stage is given as a cmdline argument. We have this test to show the ability of SPP to detect overflows even after program restarts. To see how to invoke this test, see here.
  • overflow_persistence.sh: should crash | Script to run the overflow_persistence_helper.cpp. It triggers an overflow in the Stage 2 of the run -- therefore it should crash.
  • overflow.cpp: should crash | PM object overflow access. Invalid operation -- therefore it should crash.
  • root_overflow.cpp: should crash | Root object overflow access. Invalid operation -- therefore it should crash.
  • root_underflow.cpp: should NOT crash | Root object underflow. SPP does not detect underflows -- therefore, it's normal that it does not crash.
  • tx_add_overflow.cpp: should crash | PM buffer overflow on the snapshotting process of an object. It should crash.
  • type_overflow.cpp: should crash | Contains a memcpy that overflows the buffer based on the type. Invalid operation -- therefore it should crash.
  • zalloc.cpp: should NOT crash | Contains valid PM object allocations and frees.