Description
This weakness takes an integer, two file names, and an integer "int file1 file2 int" as an input. The first integer is the size of the array to sort for timing in benign cases without FIFO files as inputs. The two files are used for thread "scheduling", if they are FIFO files in the order "fifo1 fifo2" with respect to the input script the weakness will occur, and if they are in reverse order the weakness will not occur. If the files are given as normal files, the weakness is dependent on the quicksort where a low quicksort value is nondeterministic and a larger value will increase the likelihood that the weakness will not occur. The final integer is the number of Fibonacci values to calculate and print. This weakness uses a singleton class to pass the Fibonacci values between the thread calculating them and the thread printing them. The method of instantiating a singleton used contains a race condition that can lead to multiple instances of the class being instantiated, leading to deadlock.
Metadata
- Base program: Elastic Search
- Source Taint: FILE_CONTENTS
- Data Type: ARRAY
- Data Flow: ADDRESS_AS_FUNCTION_RETURN_VALUE
- Control Flow: INDIRECTLY_RECURSIVE
Flaws
Test Suites
Documentation
Have any comments on this test case? Please, send us an email.