Creating test case using base program. Added an environment variable read to get a filename to read in the file contents using an fread operation within the function Completed injection. UNSPECIFIED UNSPECIFIED $SS_TC_ROOT/$SS_TC_INSTALL/bin/grep ./configure --prefix="$SS_TC_ROOT/$SS_TC_INSTALL" --exec-prefix="$SS_TC_ROOT/$SS_TC_INSTALL" --with-included-regex make V=1 CC="$SS_CC" CCLD="$SS_LNK" make V=1 install CC="$SS_CC" CCLD="$SS_LNK" all words beginning with e or x, case sensitive Malloc a buffer. Copy the input string to the buffer. Search for 'e' in the string. Upon finding 'e', free the buffer, using a pointer that points to that 'e'. If 'e' is the first character in the buffer, everything is OK. However, if e is not the first character in the buffer, this will seg fault. NONE /opt/stonesoup/workspace/testData/anthomyiidae_leonardo/airplays_glyptograph.txt eAAA $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-c.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so 1 ^[ex] input/dict.txt STDOUT-01 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-01/std-out.txt DOES_NOT_RETURN CONTROLLED_EXIT find BIRMINGHAM, ignore case, recursive Malloc a buffer. Copy the input string to the buffer. Search for 'e' in the string. Upon finding 'e', free the buffer, using a pointer that points to that 'e'. If 'e' is the first character in the buffer, everything is OK. However, if e is not the first character in the buffer, this will seg fault. NONE /opt/stonesoup/workspace/testData/anthomyiidae_leonardo/airplays_glyptograph.txt e12345 Hello world! $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-c.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so 1 -r -i BIRMINGHAM input/zip/ STDOUT-02 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-02/std-out.txt DOES_NOT_RETURN CONTROLLED_EXIT read extented regular expressions from file Malloc a buffer. Copy the input string to the buffer. Search for 'e' in the string. Upon finding 'e', free the buffer, using a pointer that points to that 'e'. If 'e' is the first character in the buffer, everything is OK. However, if e is not the first character in the buffer, this will seg fault. NONE /opt/stonesoup/workspace/testData/anthomyiidae_leonardo/airplays_glyptograph.txt e This string begins with an e $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-c.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so 1 -E -f input/grep-good-03-expr.txt input/mktsymbols.txt STDOUT-03 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-03/std-out.txt DOES_NOT_RETURN CONTROLLED_EXIT search for entire words matching a specific pattern Malloc a buffer. Copy the input string to the buffer. Search for 'e' in the string. Upon finding 'e', free the buffer, using a pointer that points to that 'e'. If 'e' is the first character in the buffer, everything is OK. However, if e is not the first character in the buffer, this will seg fault. NONE /opt/stonesoup/workspace/testData/anthomyiidae_leonardo/airplays_glyptograph.txt eAAA $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-c.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so 1 -w -f input/grep-good-04-expr.txt input/mktsymbols.txt STDOUT-04 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-04/std-out.txt DOES_NOT_RETURN CONTROLLED_EXIT use mmap(), find NASDAQ in file Malloc a buffer. Copy the input string to the buffer. Search for 'e' in the string. Upon finding 'e', free the buffer, using a pointer that points to that 'e'. If 'e' is the first character in the buffer, everything is OK. However, if e is not the first character in the buffer, this will seg fault. NONE /opt/stonesoup/workspace/testData/anthomyiidae_leonardo/airplays_glyptograph.txt e12345 Hello world! $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-c.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so 1 --mmap NASDAQ input/mktsymbols.txt STDOUT-05 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-05/std-out.txt DOES_NOT_RETURN CONTROLLED_EXIT match lines not containing NASDAQ, ignore case, count Malloc a buffer. Copy the input string to the buffer. Search for 'e' in the string. Upon finding 'e', free the buffer, using a pointer that points to that 'e'. If 'e' is the first character in the buffer, everything is OK. However, if e is not the first character in the buffer, this will seg fault. NONE /opt/stonesoup/workspace/testData/anthomyiidae_leonardo/airplays_glyptograph.txt e This string begins with an e $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-c.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so 1 -v -i -c NASDAQ input/mktsymbols.txt STDOUT-06 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-06/std-out.txt DOES_NOT_RETURN CONTROLLED_EXIT grep stdin (a device), match words beginning w/ D, P, or Z, redirect file into stdin Malloc a buffer. Copy the input string to the buffer. Search for 'e' in the string. Upon finding 'e', free the buffer, using a pointer that points to that 'e'. If 'e' is the first character in the buffer, everything is OK. However, if e is not the first character in the buffer, this will seg fault. NONE /opt/stonesoup/workspace/testData/anthomyiidae_leonardo/airplays_glyptograph.txt eAAA $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-c.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so 1 -D read -e ^[DPZ] /dev/stdin < input/mktsymbols.txt STDOUT-07 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-07/std-out.txt DOES_NOT_RETURN CONTROLLED_EXIT extended grep, print number of lines of context Malloc a buffer. Copy the input string to the buffer. Search for 'e' in the string. Upon finding 'e', free the buffer, using a pointer that points to that 'e'. If 'e' is the first character in the buffer, everything is OK. However, if e is not the first character in the buffer, this will seg fault. NONE /opt/stonesoup/workspace/testData/anthomyiidae_leonardo/airplays_glyptograph.txt e12345 Hello world! $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-c.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so 1 -E -C 15 ^[BRT] input/mktsymbols.txt STDOUT-08 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-08/std-out.txt DOES_NOT_RETURN CONTROLLED_EXIT lines not beginning w/ B, R or T Malloc a buffer. Copy the input string to the buffer. Search for 'e' in the string. Upon finding 'e', free the buffer, using a pointer that points to that 'e'. If 'e' is the first character in the buffer, everything is OK. However, if e is not the first character in the buffer, this will seg fault. NONE /opt/stonesoup/workspace/testData/anthomyiidae_leonardo/airplays_glyptograph.txt e This string begins with an e $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-c.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so 1 -v ^[BRT] input/mktsymbols.txt STDOUT-09 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-09/std-out.txt DOES_NOT_RETURN CONTROLLED_EXIT count lines not beginning w/ B, R or T Malloc a buffer. Copy the input string to the buffer. Search for 'e' in the string. Upon finding 'e', free the buffer, using a pointer that points to that 'e'. If 'e' is the first character in the buffer, everything is OK. However, if e is not the first character in the buffer, this will seg fault. NONE /opt/stonesoup/workspace/testData/anthomyiidae_leonardo/airplays_glyptograph.txt eAAA $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-c.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so 1 -c -v ^[BRT] input/mktsymbols.txt STDOUT-10 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT good-10/std-out.txt DOES_NOT_RETURN CONTROLLED_EXIT Malloc a buffer. Copy the input string to the buffer. Search for 'e' in the string. Upon finding 'e', free the buffer, using a pointer that points to that 'e'. If 'e' is the first character in the buffer, everything is OK. However, if e is not the first character in the buffer, this will seg fault. DOS_UNCONTROLLED_EXIT /opt/stonesoup/workspace/testData/anthomyiidae_leonardo/airplays_glyptograph.txt aaa $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-c.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so 1 -v -i -c NASDAQ input/mktsymbols.txt weakness_started_DnEtavTtUOv7QNWmYRj9 AND ((NOT PERFORMER AND (segfault_code_JckIJ9slzR OR segfault_code_N4IJoG8DQu OR segfault_code_nLkDSbH3wy OR segfault_code_U0vk669X6a OR segfault_code_SYrna2SMNl OR segfault_msg_ai8Txpp4Is OR illegal_inst_msg_APpUSlHyZr OR segfault_glibc_c0EI28ue8G) AND NOT timeout_PakMl3lBwC) or (PERFORMER AND NOT ((segfault_code_JckIJ9slzR OR segfault_code_N4IJoG8DQu OR segfault_code_nLkDSbH3wy OR segfault_code_U0vk669X6a OR segfault_code_SYrna2SMNl OR segfault_msg_ai8Txpp4Is OR illegal_inst_msg_APpUSlHyZr OR segfault_glibc_c0EI28ue8G) OR timeout_PakMl3lBwC))) (NOT PERFORMER AND (segfault_code_JckIJ9slzR OR segfault_code_N4IJoG8DQu OR segfault_code_nLkDSbH3wy OR segfault_code_U0vk669X6a OR segfault_code_SYrna2SMNl OR segfault_msg_ai8Txpp4Is OR illegal_inst_msg_APpUSlHyZr OR segfault_glibc_c0EI28ue8G) AND NOT timeout_PakMl3lBwC) or (PERFORMER AND NOT ((segfault_code_JckIJ9slzR OR segfault_code_N4IJoG8DQu OR segfault_code_nLkDSbH3wy OR segfault_code_U0vk669X6a OR segfault_code_SYrna2SMNl OR segfault_msg_ai8Txpp4Is OR illegal_inst_msg_APpUSlHyZr OR segfault_glibc_c0EI28ue8G) OR timeout_PakMl3lBwC)) DOES_NOT_RETURN CONTROLLED_EXIT CONTINUED_EXECUTION None 132 None 134 None 135 None 136 None 139 None Segmentation fault None Illegal instruction None glibc detected None stonesoup_trace:weakness_start Malloc a buffer. Copy the input string to the buffer. Search for 'e' in the string. Upon finding 'e', free the buffer, using a pointer that points to that 'e'. If 'e' is the first character in the buffer, everything is OK. However, if e is not the first character in the buffer, this will seg fault. DOS_UNCONTROLLED_EXIT /opt/stonesoup/workspace/testData/anthomyiidae_leonardo/airplays_glyptograph.txt this string has doe not begin with an e $SS_TC_ROOT/logs/execute/lttng $SS_TC_DEPS/lib64/liblttng-stonesoup-c.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so 1 -E -C 15 ^[BRT] input/mktsymbols.txt weakness_started_JBQJXM1k0RNW0NdNYnG4 AND ((NOT PERFORMER AND (segfault_code_qBaUdHETNV OR segfault_code_vyXkBl4cjZ OR segfault_code_yAw1XpflS8 OR segfault_code_5aYFWk3Ak1 OR segfault_code_8vPI6RlxV2 OR segfault_msg_dTKVujeOc6 OR illegal_inst_msg_ktlRm2AZCy OR segfault_glibc_y4VdjJD5CU) AND NOT timeout_91brE8kfWV) or (PERFORMER AND NOT ((segfault_code_qBaUdHETNV OR segfault_code_vyXkBl4cjZ OR segfault_code_yAw1XpflS8 OR segfault_code_5aYFWk3Ak1 OR segfault_code_8vPI6RlxV2 OR segfault_msg_dTKVujeOc6 OR illegal_inst_msg_ktlRm2AZCy OR segfault_glibc_y4VdjJD5CU) OR timeout_91brE8kfWV))) (NOT PERFORMER AND (segfault_code_qBaUdHETNV OR segfault_code_vyXkBl4cjZ OR segfault_code_yAw1XpflS8 OR segfault_code_5aYFWk3Ak1 OR segfault_code_8vPI6RlxV2 OR segfault_msg_dTKVujeOc6 OR illegal_inst_msg_ktlRm2AZCy OR segfault_glibc_y4VdjJD5CU) AND NOT timeout_91brE8kfWV) or (PERFORMER AND NOT ((segfault_code_qBaUdHETNV OR segfault_code_vyXkBl4cjZ OR segfault_code_yAw1XpflS8 OR segfault_code_5aYFWk3Ak1 OR segfault_code_8vPI6RlxV2 OR segfault_msg_dTKVujeOc6 OR illegal_inst_msg_ktlRm2AZCy OR segfault_glibc_y4VdjJD5CU) OR timeout_91brE8kfWV)) DOES_NOT_RETURN CONTROLLED_EXIT CONTINUED_EXECUTION None 132 None 134 None 135 None 136 None 139 None Segmentation fault None Illegal instruction None glibc detected None stonesoup_trace:weakness_start