Fuzz introspector
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Project functions overview

The following table shows data about each function in the project. The functions included in this table correspond to all functions that exist in the executables of the fuzzers. As such, there may be functions that are from third-party libraries.

For further technical details on the meaning of columns in the below table, please see the Glossary .

Func name Functions filename Args Function call depth Reached by Fuzzers Runtime reached by Fuzzers Combined reached by Fuzzers Fuzzers runtime hit Func lines hit % I Count BB Count Cyclomatic complexity Functions reached Reached by functions Accumulated cyclomatic complexity Undiscovered complexity

Fuzzer details

Fuzzer: fuzz-crypto

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 9 10.9%
gold [1:9] 0 0.0%
yellow [10:29] 0 0.0%
greenyellow [30:49] 4 4.87%
lawngreen 50+ 69 84.1%
All colors 82 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
3 34 md5_differential call site: 00034 pj_memcpy
1 17 encode_base64_differential call site: 00017 abort
1 19 encode_base64_differential call site: 00019 abort
1 28 encode_base64_differential call site: 00028 abort
1 52 md5_differential call site: 00052 abort
1 73 sha1_differential call site: 00073 abort
1 80 crc32_differential call site: 00080 abort

Runtime coverage analysis

Covered functions
27
Functions that are reachable but not covered
16
Reachable functions
43
Percentage of reachable functions covered
62.79%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
tests/fuzz/fuzz-crypto.c 6
pjlib-util/build/../src/pjlib-util/base64.c 6
pjlib-util/build/../src/pjlib-util/md5.c 4
pjlib-util/build/../../pjlib/include/pj/string.h 3
pjlib-util/build/../src/pjlib-util/sha1.c 4
pjlib-util/build/../src/pjlib-util/crc32.c 4

Fuzzer: fuzz-xml

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 47 15.7%
gold [1:9] 72 24.1%
yellow [10:29] 4 1.34%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 175 58.7%
All colors 298 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
7 164 pj_throw_exception_ call site: 00164 pj_log_1
5 37 pj_ansi_strxcpy call site: 00037 pj_ansi_strxcpy
4 49 pj_thread_this call site: 00049 pj_thread_get_name
4 288 reset_pool call site: 00288 pj_log_4
3 264 xml_parse_node call site: 00264 pj_log_4
2 7 pj_log_init call site: 00007 pj_thread_local_free
2 11 pj_log_init call site: 00011 pj_thread_local_free
2 22 pj_thread_local_get call site: 00022 pj_log_4
1 32 pj_gettimeofday call site: 00032 __errno_location
1 35 pj_time_decode call site: 00035 pj_ansi_strxcpy
1 47 pj_log call site: 00047 pj_thread_this
1 57 log_get_raw_indent call site: 00057 pj_memset

Runtime coverage analysis

Covered functions
103
Functions that are reachable but not covered
38
Reachable functions
130
Percentage of reachable functions covered
70.77%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
tests/fuzz/fuzz-xml.c 2
pjlib/build/../src/pj/os_core_unix.c 16
pjlib/build/../src/pj/log.c 14
pjlib/build/../include/pj/string_i.h 2
pjlib/build/../src/pj/os_time_unix.c 1
pjlib/build/../src/pj/os_time_common.c 1
pjlib/build/../src/pj/string.c 3
pjlib/build/../include/pj/string.h 4
pjlib/build/../src/pj/except.c 6
pjlib/build/../src/pj/guid_simple.c 2
pjlib/build/../src/pj/rand.c 1
pjlib/build/../src/pj/os_timestamp_posix.c 1
pjlib/build/../src/pj/pool_caching.c 2
pjlib/build/../include/pj/list.h 1
pjlib/build/../src/pj/pool_buf.c 3
pjlib/build/../src/pj/pool.c 6
pjlib/build/../include/pj/list_i.h 4
pjlib/build/../src/pj/lock.c 4
pjlib/build/../include/pj/pool_i.h 7
pjlib-util/build/../src/pjlib-util/xml.c 7
pjlib-util/build/../src/pjlib-util/scanner.c 10
pjlib-util/build/../include/pjlib-util/scanner.h 2
pjlib-util/build/../../pjlib/include/pj/string.h 2
pjlib-util/build/../../pjlib/include/pj/pool.h 1
pjlib-util/build/../../pjlib/include/pj/list.h 2
pjlib/include/pj/pool.h 1

Fuzzer: fuzz-url

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 62 24.0%
gold [1:9] 85 32.9%
yellow [10:29] 5 1.93%
greenyellow [30:49] 4 1.55%
lawngreen 50+ 102 39.5%
All colors 258 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
10 242 LLVMFuzzerTestOneInput call site: 00242 pj_log_4
8 139 pj_pool_alloc_from_block call site: 00139 pj_pool_allocate_find
7 163 pj_throw_exception_ call site: 00163 pj_log_1
5 37 pj_ansi_strxcpy call site: 00037 pj_ansi_strxcpy
4 49 pj_thread_this call site: 00049 pj_thread_get_name
2 7 pj_log_init call site: 00007 pj_thread_local_free
2 11 pj_log_init call site: 00011 pj_thread_local_free
2 22 pj_thread_local_get call site: 00022 pj_log_4
2 217 pj_http_req_parse_url call site: 00217 pj_scan_skip_whitespace
1 32 pj_gettimeofday call site: 00032 __errno_location
1 35 pj_time_decode call site: 00035 pj_ansi_strxcpy
1 47 pj_log call site: 00047 pj_thread_this

Runtime coverage analysis

Covered functions
84
Functions that are reachable but not covered
44
Reachable functions
125
Percentage of reachable functions covered
64.8%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
tests/fuzz/fuzz-url.c 2
pjlib/build/../src/pj/os_core_unix.c 16
pjlib/build/../src/pj/log.c 14
pjlib/build/../include/pj/string_i.h 4
pjlib/build/../src/pj/os_time_unix.c 1
pjlib/build/../src/pj/os_time_common.c 1
pjlib/build/../src/pj/string.c 4
pjlib/build/../include/pj/string.h 4
pjlib/build/../src/pj/except.c 6
pjlib/build/../src/pj/guid_simple.c 2
pjlib/build/../src/pj/rand.c 1
pjlib/build/../src/pj/os_timestamp_posix.c 1
pjlib/build/../src/pj/pool_caching.c 2
pjlib/build/../include/pj/list.h 1
pjlib/build/../src/pj/pool_buf.c 3
pjlib/build/../src/pj/pool.c 6
pjlib/build/../include/pj/list_i.h 3
pjlib/build/../src/pj/lock.c 4
pjlib/build/../include/pj/pool_i.h 3
pjlib-util/build/../src/pjlib-util/http_client.c 4
pjlib-util/build/../../pjlib/include/pj/string.h 4
pjlib-util/build/../src/pjlib-util/scanner.c 9
pjlib-util/build/../include/pjlib-util/scanner.h 1
pjlib/build/../include/pj/ctype.h 1

Fuzzer: fuzz-vpx

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 51 27.2%
gold [1:9] 65 34.7%
yellow [10:29] 0 0.0%
greenyellow [30:49] 44 23.5%
lawngreen 50+ 27 14.4%
All colors 187 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
8 139 pj_pool_alloc_from_block call site: 00139 pj_pool_allocate_find
8 161 pjmedia_vpx_packetizer_create call site: 00161 pj_pool_zalloc
5 37 pj_ansi_strxcpy call site: 00037 pj_ansi_strxcpy
5 176 pj_pool_destroy_int call site: 00176 pj_log_4
4 49 pj_thread_this call site: 00049 pj_thread_get_name
2 7 pj_log_init call site: 00007 pj_thread_local_free
2 11 pj_log_init call site: 00011 pj_thread_local_free
2 22 pj_thread_local_get call site: 00022 pj_log_4
1 32 pj_gettimeofday call site: 00032 __errno_location
1 35 pj_time_decode call site: 00035 pj_ansi_strxcpy
1 47 pj_log call site: 00047 pj_thread_this
1 57 log_get_raw_indent call site: 00057 pj_memset

Runtime coverage analysis

Covered functions
76
Functions that are reachable but not covered
35
Reachable functions
99
Percentage of reachable functions covered
64.65%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
tests/fuzz/fuzz-vpx.c 2
pjlib/build/../src/pj/os_core_unix.c 16
pjlib/build/../src/pj/log.c 13
pjlib/build/../include/pj/string_i.h 1
pjlib/build/../src/pj/os_time_unix.c 1
pjlib/build/../src/pj/os_time_common.c 1
pjlib/build/../src/pj/string.c 3
pjlib/build/../include/pj/string.h 4
pjlib/build/../src/pj/except.c 1
pjlib/build/../src/pj/guid_simple.c 2
pjlib/build/../src/pj/rand.c 1
pjlib/build/../src/pj/os_timestamp_posix.c 1
pjlib/build/../src/pj/pool_caching.c 2
pjlib/build/../include/pj/list.h 1
pjlib/build/../src/pj/pool_buf.c 3
pjlib/build/../src/pj/pool.c 6
pjlib/build/../include/pj/list_i.h 3
pjlib/build/../src/pj/lock.c 4
pjlib/build/../include/pj/pool_i.h 7
pjlib/include/pj/string.h 1
pjmedia/build/../src/pjmedia-codec/vpx_packetizer.c 3
pjmedia/build/../../pjlib/include/pj/pool.h 1
pjmedia/build/../../pjlib/include/pj/string.h 2

Fuzzer: fuzz-http

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 47 17.9%
gold [1:9] 71 27.0%
yellow [10:29] 1 0.38%
greenyellow [30:49] 9 3.43%
lawngreen 50+ 134 51.1%
All colors 262 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
7 168 pj_throw_exception_ call site: 00168 pj_log_1
5 37 pj_ansi_strxcpy call site: 00037 pj_ansi_strxcpy
4 49 pj_thread_this call site: 00049 pj_thread_get_name
4 252 reset_pool call site: 00252 pj_log_4
2 7 pj_log_init call site: 00007 pj_thread_local_free
2 11 pj_log_init call site: 00011 pj_thread_local_free
2 22 pj_thread_local_get call site: 00022 pj_log_4
1 32 pj_gettimeofday call site: 00032 __errno_location
1 35 pj_time_decode call site: 00035 pj_ansi_strxcpy
1 47 pj_log call site: 00047 pj_thread_this
1 57 log_get_raw_indent call site: 00057 pj_memset
1 59 pj_log call site: 00059 snprintf

Runtime coverage analysis

Covered functions
100
Functions that are reachable but not covered
38
Reachable functions
126
Percentage of reachable functions covered
69.84%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
tests/fuzz/fuzz-http.c 2
pjlib/build/../src/pj/os_core_unix.c 16
pjlib/build/../src/pj/log.c 14
pjlib/build/../include/pj/string_i.h 5
pjlib/build/../src/pj/os_time_unix.c 1
pjlib/build/../src/pj/os_time_common.c 1
pjlib/build/../src/pj/string.c 4
pjlib/build/../include/pj/string.h 5
pjlib/build/../src/pj/except.c 6
pjlib/build/../src/pj/guid_simple.c 2
pjlib/build/../src/pj/rand.c 1
pjlib/build/../src/pj/os_timestamp_posix.c 1
pjlib/build/../src/pj/pool_caching.c 2
pjlib/build/../include/pj/list.h 1
pjlib/build/../src/pj/pool_buf.c 3
pjlib/build/../src/pj/pool.c 6
pjlib/build/../include/pj/list_i.h 3
pjlib/build/../src/pj/lock.c 4
pjlib/build/../include/pj/pool_i.h 6
tests/fuzz/./../../pjlib-util/src/pjlib-util/http_client.c 4
pjlib/include/pj/string.h 2
pjlib-util/build/../src/pjlib-util/scanner.c 7
pjlib-util/build/../../pjlib/include/pj/string.h 1
pjlib-util/build/../include/pjlib-util/scanner.h 1
pjlib/build/../include/pj/ctype.h 1
pjlib-util/include/pjlib-util/scanner.h 1

Fuzzer: fuzz-h264

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 47 24.1%
gold [1:9] 65 33.3%
yellow [10:29] 0 0.0%
greenyellow [30:49] 4 2.05%
lawngreen 50+ 79 40.5%
All colors 195 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
8 140 pj_pool_alloc_from_block call site: 00140 pj_pool_allocate_find
5 38 pj_ansi_strxcpy call site: 00038 pj_ansi_strxcpy
5 184 pj_pool_destroy_int call site: 00184 pj_log_4
4 50 pj_thread_this call site: 00050 pj_thread_get_name
2 8 pj_log_init call site: 00008 pj_thread_local_free
2 12 pj_log_init call site: 00012 pj_thread_local_free
2 23 pj_thread_local_get call site: 00023 pj_log_4
1 33 pj_gettimeofday call site: 00033 __errno_location
1 36 pj_time_decode call site: 00036 pj_ansi_strxcpy
1 48 pj_log call site: 00048 pj_thread_this
1 58 log_get_raw_indent call site: 00058 pj_memset
1 60 pj_log call site: 00060 snprintf

Runtime coverage analysis

Covered functions
79
Functions that are reachable but not covered
31
Reachable functions
98
Percentage of reachable functions covered
68.37%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
tests/fuzz/fuzz-h264.c 2
pjlib/build/../src/pj/os_core_unix.c 16
pjlib/build/../src/pj/log.c 13
pjlib/build/../include/pj/string_i.h 1
pjlib/build/../src/pj/os_time_unix.c 1
pjlib/build/../src/pj/os_time_common.c 1
pjlib/build/../src/pj/string.c 3
pjlib/build/../include/pj/string.h 4
pjlib/build/../src/pj/except.c 1
pjlib/build/../src/pj/guid_simple.c 2
pjlib/build/../src/pj/rand.c 1
pjlib/build/../src/pj/os_timestamp_posix.c 1
pjlib/build/../src/pj/pool_caching.c 2
pjlib/build/../include/pj/list.h 1
pjlib/build/../src/pj/pool_buf.c 3
pjlib/build/../src/pj/pool.c 6
pjlib/build/../include/pj/list_i.h 3
pjlib/build/../src/pj/lock.c 4
pjlib/build/../include/pj/pool_i.h 7
pjlib/include/pj/string.h 1
pjmedia/build/../src/pjmedia-codec/h264_packetizer.c 2
pjmedia/build/../../pjlib/include/pj/pool.h 1
pjmedia/build/../../pjlib/include/pj/string.h 1

Fuzzer: fuzz-json

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 51 15.9%
gold [1:9] 70 21.8%
yellow [10:29] 4 1.25%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 195 60.9%
All colors 320 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
7 166 pj_throw_exception_ call site: 00166 pj_log_1
5 37 pj_ansi_strxcpy call site: 00037 pj_ansi_strxcpy
4 49 pj_thread_this call site: 00049 pj_thread_get_name
4 227 pj_strtoul2 call site: 00227 pj_isxdigit
4 310 reset_pool call site: 00310 pj_log_4
2 7 pj_log_init call site: 00007 pj_thread_local_free
2 11 pj_log_init call site: 00011 pj_thread_local_free
2 22 pj_thread_local_get call site: 00022 pj_log_4
1 32 pj_gettimeofday call site: 00032 __errno_location
1 35 pj_time_decode call site: 00035 pj_ansi_strxcpy
1 47 pj_log call site: 00047 pj_thread_this
1 57 log_get_raw_indent call site: 00057 pj_memset

Runtime coverage analysis

Covered functions
128
Functions that are reachable but not covered
37
Reachable functions
155
Percentage of reachable functions covered
76.13%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
tests/fuzz/fuzz-json.c 2
pjlib/build/../src/pj/os_core_unix.c 16
pjlib/build/../src/pj/log.c 14
pjlib/build/../include/pj/string_i.h 1
pjlib/build/../src/pj/os_time_unix.c 1
pjlib/build/../src/pj/os_time_common.c 1
pjlib/build/../src/pj/string.c 7
pjlib/build/../include/pj/string.h 5
pjlib/build/../src/pj/except.c 6
pjlib/build/../src/pj/guid_simple.c 2
pjlib/build/../src/pj/rand.c 1
pjlib/build/../src/pj/os_timestamp_posix.c 1
pjlib/build/../src/pj/pool_caching.c 2
pjlib/build/../include/pj/list.h 1
pjlib/build/../src/pj/pool_buf.c 3
pjlib/build/../src/pj/pool.c 6
pjlib/build/../include/pj/list_i.h 4
pjlib/build/../src/pj/lock.c 4
pjlib/build/../include/pj/pool_i.h 6
pjlib-util/build/../src/pjlib-util/json.c 18
pjlib-util/build/../../pjlib/include/pj/string.h 5
pjlib-util/build/../src/pjlib-util/scanner.c 12
pjlib-util/build/../src/pjlib-util/scanner_cis_bitwise.c 2
pjlib-util/build/../include/pjlib-util/scanner.h 3
pjlib/build/../include/pj/ctype.h 3
pjlib-util/build/../../pjlib/include/pj/ctype.h 3
pjlib-util/build/../../pjlib/include/pj/list.h 3

Fuzzer: fuzz-stun

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 141 36.3%
gold [1:9] 68 17.5%
yellow [10:29] 0 0.0%
greenyellow [30:49] 1 0.25%
lawngreen 50+ 178 45.8%
All colors 388 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
25 283 pj_stun_create_key call site: 00283 pj_strdup
23 191 pj_stun_msg_decode call site: 00191 pj_stun_msg_create_response
13 356 pj_stun_authenticate_request call site: 00356 create_challenge
8 223 pj_stun_msg_decode call site: 00223 pj_log
6 260 pj_stun_msg_decode call site: 00260 pj_log_4
5 37 pj_ansi_strxcpy call site: 00037 pj_ansi_strxcpy
5 248 pjlib_error call site: 00248 platform_strerror
5 316 pj_stun_authenticate_request call site: 00316 pj_strcmp
4 49 pj_thread_this call site: 00049 pj_thread_get_name
4 311 pj_stun_authenticate_request call site: 00311 pj_stun_create_key
4 378 reset_pool call site: 00378 pj_log_4
3 217 pj_strdup call site: 00217 pj_stun_msg_add_attr

Runtime coverage analysis

Covered functions
131
Functions that are reachable but not covered
57
Reachable functions
155
Percentage of reachable functions covered
63.23%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
tests/fuzz/fuzz-stun.c 2
pjlib/build/../src/pj/os_core_unix.c 17
pjlib/build/../src/pj/log.c 14
pjlib/build/../include/pj/string_i.h 4
pjlib/build/../src/pj/os_time_unix.c 1
pjlib/build/../src/pj/os_time_common.c 1
pjlib/build/../src/pj/string.c 3
pjlib/build/../include/pj/string.h 5
pjlib/build/../src/pj/except.c 1
pjlib/build/../src/pj/guid_simple.c 2
pjlib/build/../src/pj/rand.c 1
pjlib/build/../src/pj/os_timestamp_posix.c 1
pjlib/build/../src/pj/pool_caching.c 2
pjlib/build/../include/pj/list.h 1
pjlib/build/../src/pj/pool_buf.c 3
pjlib/build/../src/pj/pool.c 6
pjlib/build/../include/pj/list_i.h 3
pjlib/build/../src/pj/lock.c 4
pjlib/build/../include/pj/pool_i.h 7
pjnath/build/../src/pjnath/stun_msg.c 21
pjlib-util/build/../src/pjlib-util/crc32.c 4
pjnath/build/../../pjlib/include/pj/pool.h 1
pjnath/build/../../pjlib/include/pj/string.h 4
pjlib/build/../src/pj/sock_bsd.c 2
pjlib/build/../src/pj/errno.c 2
pjlib/build/../src/pj/os_error_unix.c 1
pjlib/include/pj/string.h 1
pjnath/build/../src/pjnath/stun_auth.c 5
pjlib-util/build/../src/pjlib-util/md5.c 4
pjlib-util/build/../../pjlib/include/pj/string.h 3
pjlib-util/build/../src/pjlib-util/hmac_sha1.c 3
pjlib-util/build/../src/pjlib-util/sha1.c 4

Fuzzer: fuzz-sdp

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 97 18.1%
gold [1:9] 92 17.2%
yellow [10:29] 13 2.43%
greenyellow [30:49] 5 0.93%
lawngreen 50+ 326 61.1%
All colors 533 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
9 207 pj_sem_wait call site: 00207 pjmedia_event_mgr_destroy
7 266 pj_throw_exception_ call site: 00266 pj_log_1
5 37 pj_ansi_strxcpy call site: 00037 pj_ansi_strxcpy
5 336 pjlib_error call site: 00336 platform_strerror
4 49 pj_thread_this call site: 00049 pj_thread_get_name
4 365 pj_strtoul4 call site: 00365 pj_isxdigit
4 523 reset_pool call site: 00523 pj_log_4
3 179 pj_thread_create call site: 00179 pj_mutex_create_simple
3 193 thread_main call site: 00193 pj_mutex_lock
3 402 pj_strtoul3 call site: 00402 pj_isxdigit
3 509 pj_strtoul2 call site: 00509 pj_isxdigit
2 7 pj_log_init call site: 00007 pj_thread_local_free

Runtime coverage analysis

Covered functions
156
Functions that are reachable but not covered
53
Reachable functions
198
Percentage of reachable functions covered
73.23%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
tests/fuzz/fuzz-sdp.c 2
pjlib/build/../src/pj/os_core_unix.c 29
pjlib/build/../src/pj/log.c 14
pjlib/build/../include/pj/string_i.h 3
pjlib/build/../src/pj/os_time_unix.c 1
pjlib/build/../src/pj/os_time_common.c 1
pjlib/build/../src/pj/string.c 7
pjlib/build/../include/pj/string.h 6
pjlib/build/../src/pj/except.c 6
pjlib/build/../src/pj/guid_simple.c 2
pjlib/build/../src/pj/rand.c 1
pjlib/build/../src/pj/os_timestamp_posix.c 1
pjlib/build/../src/pj/pool_caching.c 2
pjlib/build/../include/pj/list.h 1
pjlib/build/../src/pj/pool_buf.c 3
pjlib/build/../src/pj/pool.c 6
pjlib/build/../include/pj/list_i.h 3
pjlib/build/../src/pj/lock.c 4
pjlib/build/../include/pj/pool_i.h 7
pjmedia/build/../src/pjmedia/event.c 5
pjmedia/build/../../pjlib/include/pj/pool.h 1
pjmedia/build/../../pjlib/include/pj/list.h 1
pjlib/build/../include/pj/pool.h 1
pjmedia/build/../src/pjmedia/sdp.c 21
pjlib-util/build/../src/pjlib-util/scanner_cis_bitwise.c 2
pjlib-util/build/../../pjlib/include/pj/string.h 3
pjlib-util/build/../src/pjlib-util/scanner.c 15
pjmedia/build/../../pjlib-util/include/pjlib-util/scanner.h 2
pjlib-util/build/../include/pjlib-util/scanner.h 2
pjlib/build/../src/pj/errno.c 6
pjlib/build/../src/pj/os_error_unix.c 1
pjlib/build/../include/pj/ctype.h 3
pjlib/build/../src/pj/array.c 1
pjmedia/build/../../pjlib/include/pj/ctype.h 1

Fuzzer: fuzz-dns

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 37 15.2%
gold [1:9] 65 26.7%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 141 58.0%
All colors 243 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
5 37 pj_ansi_strxcpy call site: 00037 pj_ansi_strxcpy
4 49 pj_thread_this call site: 00049 pj_thread_get_name
4 233 reset_pool call site: 00233 pj_log_4
2 7 pj_log_init call site: 00007 pj_thread_local_free
2 11 pj_log_init call site: 00011 pj_thread_local_free
2 22 pj_thread_local_get call site: 00022 pj_log_4
1 32 pj_gettimeofday call site: 00032 __errno_location
1 35 pj_time_decode call site: 00035 pj_ansi_strxcpy
1 47 pj_log call site: 00047 pj_thread_this
1 57 log_get_raw_indent call site: 00057 pj_memset
1 59 pj_log call site: 00059 snprintf
1 68 pj_thread_register call site: 00068 snprintf

Runtime coverage analysis

Covered functions
87
Functions that are reachable but not covered
32
Reachable functions
107
Percentage of reachable functions covered
70.09%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
tests/fuzz/fuzz-dns.c 2
pjlib/build/../src/pj/os_core_unix.c 16
pjlib/build/../src/pj/log.c 13
pjlib/build/../include/pj/string_i.h 1
pjlib/build/../src/pj/os_time_unix.c 1
pjlib/build/../src/pj/os_time_common.c 1
pjlib/build/../src/pj/string.c 3
pjlib/build/../include/pj/string.h 4
pjlib/build/../src/pj/except.c 1
pjlib/build/../src/pj/guid_simple.c 2
pjlib/build/../src/pj/rand.c 1
pjlib/build/../src/pj/os_timestamp_posix.c 1
pjlib/build/../src/pj/pool_caching.c 2
pjlib/build/../include/pj/list.h 1
pjlib/build/../src/pj/pool_buf.c 3
pjlib/build/../src/pj/pool.c 6
pjlib/build/../include/pj/list_i.h 3
pjlib/build/../src/pj/lock.c 4
pjlib/build/../include/pj/pool_i.h 7
pjlib-util/build/../src/pjlib-util/dns.c 5
pjlib-util/build/../../pjlib/include/pj/pool.h 1
pjlib-util/build/../../pjlib/include/pj/string.h 1
pjlib/build/../src/pj/sock_bsd.c 3

Fuzzer: fuzz-uri

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 363 42.7%
gold [1:9] 68 8.00%
yellow [10:29] 10 1.17%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 408 48.0%
All colors 849 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
42 668 init_parser call site: 00668 int_parse_via_param
30 719 pj_pool_calloc call site: 00719 int_parse_hdr_authorization
30 760 pjsip_auth_init_parser call site: 00760 int_parse_hdr_authenticate
22 477 int_parse_uri_or_name_addr call site: 00477 int_parse_contact_param
15 586 init_parser call site: 00586 parse_hdr_rr_route
14 512 init_parser call site: 00512 int_parse_param
14 625 init_parser call site: 00625 strtoi_validate
13 554 init_parser call site: 00554 parse_hdr_fromto
11 529 init_parser call site: 00529 strtoi_validate
10 410 on_syntax_error call site: 00410 parse_hdr_end
10 604 init_parser call site: 00604 parse_hdr_rr_route
9 440 init_parser call site: 00440 int_parse_uri_or_name_addr

Runtime coverage analysis

Covered functions
153
Functions that are reachable but not covered
132
Reachable functions
272
Percentage of reachable functions covered
51.47%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
tests/fuzz/fuzz-uri.c 2
pjlib/build/../src/pj/os_core_unix.c 16
pjlib/build/../src/pj/log.c 14
pjlib/build/../include/pj/string_i.h 3
pjlib/build/../src/pj/os_time_unix.c 1
pjlib/build/../src/pj/os_time_common.c 1
pjlib/build/../src/pj/string.c 8
pjlib/build/../include/pj/string.h 4
pjlib/build/../src/pj/except.c 7
pjlib/build/../src/pj/guid_simple.c 2
pjlib/build/../src/pj/rand.c 1
pjlib/build/../src/pj/os_timestamp_posix.c 1
pjlib/build/../src/pj/pool_caching.c 2
pjlib/build/../include/pj/list.h 1
pjlib/build/../src/pj/pool_buf.c 3
pjlib/build/../src/pj/pool.c 6
pjlib/build/../include/pj/list_i.h 4
pjlib/build/../src/pj/lock.c 4
pjlib/build/../include/pj/pool_i.h 7
pjsip/build/..sip_parser.c 57
pjlib-util/build/../src/pjlib-util/scanner_cis_bitwise.c 3
pjlib-util/build/../../pjlib/include/pj/string.h 4
pjlib-util/build/../src/pjlib-util/scanner.c 18
pjlib-util/build/../include/pjlib-util/scanner.h 2
pjsip/build/..sip_uri.c 5
pjsip/build/../../pjlib/include/pj/string.h 5
pjsip/build/../../pjlib/include/pj/list.h 2
pjlib-util/build/../src/pjlib-util/string.c 1
pjlib-util/build/../../pjlib/include/pj/ctype.h 2
pjlib/build/../include/pj/ctype.h 4
pjsip/build/../../pjlib-util/include/pjlib-util/scanner.h 2
pjlib/build/../src/pj/hash.c 1
pjsip/build/../../pjlib/include/pj/ctype.h 1
pjsip/build/..sip_msg.c 39
pjsip/build/../include/pjsip/print_util.h 1
pjsip/build/..sip_auth_parser.c 11
pjsip/build/..sip_auth_msg.c 4
pjsip/build/../../pjlib/include/pj/pool.h 1

Fuzzer: fuzz-rtcp

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 84 22.4%
gold [1:9] 62 16.5%
yellow [10:29] 0 0.0%
greenyellow [30:49] 0 0.0%
lawngreen 50+ 228 60.9%
All colors 374 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
9 207 pj_sem_wait call site: 00207 pjmedia_event_mgr_destroy
6 314 pjlib_error call site: 00314 platform_strerror
5 37 pj_ansi_strxcpy call site: 00037 pj_ansi_strxcpy
4 49 pj_thread_this call site: 00049 pj_thread_get_name
4 286 pjmedia_rtcp_get_ntp_time call site: 00286 pj_log_5
4 337 pjmedia_event_publish call site: 00337 event_queue_add_event
4 364 reset_pool call site: 00364 pj_log_4
3 179 pj_thread_create call site: 00179 pj_mutex_create_simple
3 193 thread_main call site: 00193 pj_mutex_lock
2 7 pj_log_init call site: 00007 pj_thread_local_free
2 11 pj_log_init call site: 00011 pj_thread_local_free
2 22 pj_thread_local_get call site: 00022 pj_log_4

Runtime coverage analysis

Covered functions
122
Functions that are reachable but not covered
47
Reachable functions
158
Percentage of reachable functions covered
70.25%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
tests/fuzz/fuzz-rtcp.c 2
pjlib/build/../src/pj/os_core_unix.c 29
pjlib/build/../src/pj/log.c 14
pjlib/build/../include/pj/string_i.h 1
pjlib/build/../src/pj/os_time_unix.c 1
pjlib/build/../src/pj/os_time_common.c 1
pjlib/build/../src/pj/string.c 3
pjlib/build/../include/pj/string.h 4
pjlib/build/../src/pj/except.c 1
pjlib/build/../src/pj/guid_simple.c 2
pjlib/build/../src/pj/rand.c 1
pjlib/build/../src/pj/os_timestamp_posix.c 2
pjlib/build/../src/pj/pool_caching.c 2
pjlib/build/../include/pj/list.h 1
pjlib/build/../src/pj/pool_buf.c 3
pjlib/build/../src/pj/pool.c 6
pjlib/build/../include/pj/list_i.h 3
pjlib/build/../src/pj/lock.c 4
pjlib/build/../include/pj/pool_i.h 7
pjmedia/build/../src/pjmedia/event.c 8
pjmedia/build/../../pjlib/include/pj/pool.h 1
pjmedia/build/../../pjlib/include/pj/list.h 1
pjlib/build/../include/pj/pool.h 1
pjmedia/build/../src/pjmedia/rtcp.c 9
pjmedia/build/../../pjlib/include/pj/string.h 3
pjlib/build/../src/pj/sock_bsd.c 4
pjmedia/build/../../pjlib/include/pj/math.h 2
pjlib/build/../src/pj/errno.c 5
pjlib/build/../src/pj/os_error_unix.c 1
pjmedia/build/../src/pjmedia/rtcp_fb.c 2
pjmedia/build/../include/pjmedia/types.h 1

Fuzzer: fuzz-sip

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 665 34.4%
gold [1:9] 42 2.17%
yellow [10:29] 1 0.05%
greenyellow [30:49] 2 0.10%
lawngreen 50+ 1221 63.2%
All colors 1931 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
87 244 pjsip_endpt_create call site: 00244 pjsip_get_status_text
62 1329 pjsip_tpmgr_destroy call site: 01329 tx_data_destroy
61 1159 pjsip_endpt_create call site: 01159 pjsip_endpt_process_rx_data
60 1832 pjsip_endpt_destroy call site: 01832 pj_dns_resolver_destroy
51 1551 pj_push_exception_handler_ call site: 01551 pjsip_parse_rdata
30 952 pjsip_auth_init_parser call site: 00952 int_parse_hdr_authenticate
20 1775 int_parse_msg call site: 01775 pjsip_endpt_cancel_timer
14 820 init_parser call site: 00820 strtoi_validate
14 1276 unlock_timer_heap call site: 01276 cancel
13 50 pj_thread_this call site: 00050 resume_logging
11 38 pj_ansi_strxcpy call site: 00038 pj_ansi_strxcpy
10 1526 loop_transport_worker_thread call site: 01526 pjsip_tpmgr_receive_packet

Runtime coverage analysis

Covered functions
338
Functions that are reachable but not covered
181
Reachable functions
502
Percentage of reachable functions covered
63.94%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
tests/fuzz/fuzz-sip.c 2
pjlib/build/../src/pj/log.c 21
pjlib/build/../src/pj/os_core_unix.c 39
pjlib/build/../include/pj/string_i.h 12
pjlib/build/../src/pj/os_time_unix.c 1
pjlib/build/../src/pj/os_time_common.c 1
pjlib/build/../src/pj/string.c 9
pjlib/build/../include/pj/string.h 5
pjlib/build/../src/pj/except.c 7
pjlib/build/../src/pj/guid_simple.c 2
pjlib/build/../src/pj/rand.c 1
pjlib/build/../src/pj/os_timestamp_posix.c 2
pjlib-util/build/../src/pjlib-util/errno.c 2
pjlib/build/../src/pj/errno.c 7
pjlib/build/../src/pj/config.c 1
pjlib/build/../src/pj/ioqueue_select.c 7
pjlib/build/../src/pj/pool_caching.c 2
pjlib/build/../include/pj/list.h 2
pjlib/build/../src/pj/pool_buf.c 3
pjlib/build/../src/pj/pool.c 7
pjlib/build/../include/pj/list_i.h 8
pjlib/build/../src/pj/lock.c 19
pjlib/build/../include/pj/pool_i.h 7
pjsip/build/..sip_endpoint.c 16
pjsip/build/..sip_errno.c 1
pjsip/build/..sip_msg.c 49
pjsip/build/../../pjlib/include/pj/string.h 9
pjsip/build/../../pjlib/include/pj/pool.h 1
pjsip/build/../../pjlib/include/pj/list.h 3
pjsip/build/..sip_parser.c 68
pjlib-util/build/../src/pjlib-util/scanner_cis_bitwise.c 3
pjlib-util/build/../../pjlib/include/pj/string.h 5
pjlib-util/build/../src/pjlib-util/scanner.c 21
pjlib-util/build/../include/pjlib-util/scanner.h 2
pjsip/build/..sip_uri.c 7
pjlib-util/build/../src/pjlib-util/string.c 1
pjlib-util/build/../../pjlib/include/pj/ctype.h 2
pjlib/build/../include/pj/ctype.h 5
pjsip/build/../../pjlib-util/include/pjlib-util/scanner.h 3
pjlib/build/../src/pj/hash.c 11
pjsip/build/../../pjlib/include/pj/ctype.h 2
pjsip/build/../include/pjsip/print_util.h 1
pjsip/build/..sip_auth_parser.c 11
pjsip/build/..sip_auth_msg.c 4
pjsip/build/..sip_tel_uri.c 3
pjlib/build/../src/pj/sock_bsd.c 2
pjsip/build/../include/pjsip/sip_config.h 1
pjlib/build/../src/pj/timer.c 22
pjlib/build/../include/pj/pool.h 1
pjlib/build/../src/pj/ioqueue_common_abs.c 6
pjlib/build/../src/pj/sock_select.c 3
pjsip/build/..sip_transport.c 21
pjlib/build/../src/pj/os_error_unix.c 3
pjsip/build/..sip_resolve.c 2
pjlib/build/../src/pj/os_timestamp_common.c 4
pjlib/build/../include/pj/os.h 1
pjlib/build/../src/pj/types.c 1
pjsip/build/..sip_transaction.c 2
pjsip/build/..sip_transport_loop.c 2
pjsip/build/..sip_multipart.c 5
pjlib/build/../src/pj/guid.c 1
pjlib/include/pj/list.h 1
pjlib-util/build/../src/pjlib-util/resolver.c 2

Analyses and suggestions

Optimal target analysis

Remaining optimal interesting functions

The following table shows a list of functions that are optimal targets. Optimal targets are identified by finding the functions that in combination, yield a high code coverage.

Func name Functions filename Arg count Args Function depth hitcount instr count bb count cyclomatic complexity Reachable functions Incoming references total cyclomatic complexity Unreached complexity
tsx_on_state_calling /src/pjsip/pjsip/build/../src/pjsip/sip_transaction.c 2 ['N/A', 'N/A'] 24 0 250 41 12 341 0 1910 1161
http_on_data_read /src/pjsip/pjlib-util/build/../src/pjlib-util/http_client.c 5 ['N/A', 'N/A', 'size_t', 'int', 'N/A'] 15 0 791 121 46 253 1 1339 451
pjmedia_endpt_create_sdp /src/pjsip/pjmedia/build/../src/pjmedia/endpoint.c 5 ['N/A', 'N/A', 'int', 'N/A', 'N/A'] 10 0 215 42 14 89 0 524 210
pjmedia_endpt_create2 /src/pjsip/pjmedia/build/../src/pjmedia/endpoint.c 4 ['N/A', 'N/A', 'int', 'N/A'] 10 0 319 63 18 159 0 724 196
pjsip_endpt_respond /src/pjsip/pjsip/build/../src/pjsip/sip_util_statefull.c 8 ['N/A', 'N/A', 'N/A', 'int', 'N/A', 'N/A', 'N/A', 'N/A'] 19 0 224 41 14 203 0 898 168
pjsip_tpmgr_find_local_addr /src/pjsip/pjsip/build/../src/pjsip/sip_transport.c 6 ['N/A', 'N/A', 'int', 'N/A', 'N/A', 'N/A'] 14 0 61 6 3 162 0 857 129
pjmedia_rtcp_fb_encode_sdp /src/pjsip/pjmedia/build/../src/pjmedia/rtcp_fb.c 6 ['N/A', 'N/A', 'N/A', 'N/A', 'int', 'N/A'] 9 0 373 73 21 117 0 574 118
on_read_complete /src/pjsip/pjlib-util/build/../src/pjlib-util/resolver.c 3 ['N/A', 'N/A', 'size_t'] 10 0 489 69 19 153 0 738 105
pjsip_authorization_hdr_print /src/pjsip/pjsip/build/../src/pjsip/sip_auth_msg.c 3 ['N/A', 'N/A', 'size_t'] 4 0 282 41 12 12 0 116 75
pjsip_url_print /src/pjsip/pjsip/build/../src/pjsip/sip_uri.c 4 ['int', 'N/A', 'N/A', 'size_t'] 3 0 1270 190 61 13 0 107 61

Implementing fuzzers that target the above functions will improve reachability such that it becomes:

Functions statically reachable by fuzzers
61.0%
904 / 1491
Cyclomatic complexity statically reachable by fuzzers
64.0%
6222 / 9789

All functions overview

If you implement fuzzers for these functions, the status of all functions in the project will be:

Func name Functions filename Args Function call depth Reached by Fuzzers Runtime reached by Fuzzers Combined reached by Fuzzers Fuzzers runtime hit Func lines hit % I Count BB Count Cyclomatic complexity Functions reached Reached by functions Accumulated cyclomatic complexity Undiscovered complexity

Fuzz engine guidance

This sections provides heuristics that can be used as input to a fuzz engine when running a given fuzz target. The current focus is on providing input that is usable by libFuzzer.

tests/fuzz/fuzz-crypto.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['md5_differential', 'encode_base64_differential', 'sha1_differential', 'crc32_differential']

tests/fuzz/fuzz-xml.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['pj_throw_exception_', 'pj_ansi_strxcpy', 'pj_thread_this', 'reset_pool', 'xml_parse_node', 'pj_log_init', 'pj_thread_local_get', 'pj_gettimeofday', 'pj_time_decode']

tests/fuzz/fuzz-url.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['LLVMFuzzerTestOneInput', 'pj_pool_alloc_from_block', 'pj_throw_exception_', 'pj_ansi_strxcpy', 'pj_thread_this', 'pj_log_init', 'pj_thread_local_get', 'pj_http_req_parse_url', 'pj_gettimeofday']

tests/fuzz/fuzz-vpx.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['pj_pool_alloc_from_block', 'pjmedia_vpx_packetizer_create', 'pj_ansi_strxcpy', 'pj_pool_destroy_int', 'pj_thread_this', 'pj_log_init', 'pj_thread_local_get', 'pj_gettimeofday', 'pj_time_decode']

tests/fuzz/fuzz-http.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['pj_throw_exception_', 'pj_ansi_strxcpy', 'pj_thread_this', 'reset_pool', 'pj_log_init', 'pj_thread_local_get', 'pj_gettimeofday', 'pj_time_decode', 'pj_log']

tests/fuzz/fuzz-h264.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['pj_pool_alloc_from_block', 'pj_ansi_strxcpy', 'pj_pool_destroy_int', 'pj_thread_this', 'pj_log_init', 'pj_thread_local_get', 'pj_gettimeofday', 'pj_time_decode', 'pj_log']

tests/fuzz/fuzz-json.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['pj_throw_exception_', 'pj_ansi_strxcpy', 'pj_thread_this', 'pj_strtoul2', 'reset_pool', 'pj_log_init', 'pj_thread_local_get', 'pj_gettimeofday', 'pj_time_decode']

tests/fuzz/fuzz-stun.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['pj_stun_create_key', 'pj_stun_msg_decode', 'pj_stun_authenticate_request', 'pj_ansi_strxcpy', 'pjlib_error', 'pj_thread_this']

tests/fuzz/fuzz-sdp.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['pj_sem_wait', 'pj_throw_exception_', 'pj_ansi_strxcpy', 'pjlib_error', 'pj_thread_this', 'pj_strtoul4', 'reset_pool', 'pj_thread_create', 'thread_main', 'pj_strtoul3']

tests/fuzz/fuzz-dns.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['pj_ansi_strxcpy', 'pj_thread_this', 'reset_pool', 'pj_log_init', 'pj_thread_local_get', 'pj_gettimeofday', 'pj_time_decode', 'pj_log', 'log_get_raw_indent']

tests/fuzz/fuzz-uri.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['init_parser', 'pj_pool_calloc', 'pjsip_auth_init_parser', 'int_parse_uri_or_name_addr', 'on_syntax_error']

tests/fuzz/fuzz-rtcp.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['pj_sem_wait', 'pjlib_error', 'pj_ansi_strxcpy', 'pj_thread_this', 'pjmedia_rtcp_get_ntp_time', 'pjmedia_event_publish', 'reset_pool', 'pj_thread_create', 'thread_main', 'pj_log_init']

tests/fuzz/fuzz-sip.c

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['pjsip_endpt_create', 'pjsip_tpmgr_destroy', 'pjsip_endpt_destroy', 'pj_push_exception_handler_', 'pjsip_auth_init_parser', 'int_parse_msg', 'init_parser', 'unlock_timer_heap', 'pj_thread_this']

Files and Directories in report

This section shows which files and directories are considered in this report. The main reason for showing this is fuzz introspector may include more code in the reasoning than is desired. This section helps identify if too many files/directories are included, e.g. third party code, which may be irrelevant for the threat model. In the event too much is included, fuzz introspector supports a configuration file that can exclude data from the report. See the following link for more information on how to create a config file: link

Files in report

Source file Reached by Covered by
[] []
/src/pjsip/pjlib/build/../src/pj/pool_buf.c ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjmedia/build/../../pjlib-util/include/pjlib-util/scanner.h ['fuzz-sdp'] []
/src/pjsip/tests/fuzz/fuzz-xml.c ['fuzz-xml'] ['fuzz-xml']
/src/pjsip/pjlib/build/../src/pj/ip_helper_generic.c [] []
/src/pjsip/pjlib/build/../src/pj/ioqueue_common_abs.c ['fuzz-sip'] []
/src/pjsip/pjlib/build/../include/pj/ctype.h ['fuzz-url', 'fuzz-http', 'fuzz-json', 'fuzz-sdp', 'fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjmedia/build/../include/pjmedia/types.h ['fuzz-rtcp'] []
/src/pjsip/pjlib/build/../src/pj/pool.c ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjlib-util/build/../src/pjlib-util/resolver.c ['fuzz-sip'] []
/src/pjsip/pjlib/build/../src/pj/addr_resolv_sock.c [] []
/src/pjsip/pjlib-util/build/../src/pjlib-util/dns.c ['fuzz-dns'] []
/src/pjsip/pjlib/build/../src/pj/except.c ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjmedia/build/../src/pjmedia/types.c [] []
/src/pjsip/pjmedia/build/../src/pjmedia/rtcp.c ['fuzz-rtcp'] []
/src/pjsip/pjmedia/build/../src/pjmedia/sdp.c ['fuzz-sdp'] []
/src/pjsip/pjsip/build/../include/pjsip/sip_uri.h [] []
/src/pjsip/pjsip/build/../include/pjsip/sip_config.h ['fuzz-sip'] []
/src/pjsip/pjlib-util/build/../../pjlib/include/pj/ctype.h ['fuzz-json', 'fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjlib/build/../src/pj/rand.c ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjsip/build/../src/pjsip/sip_config.c [] []
/src/pjsip/tests/fuzz/fuzz-vpx.c ['fuzz-vpx'] ['fuzz-vpx']
/src/pjsip/pjlib-util/build/../src/pjlib-util/srv_resolver.c [] []
/src/pjsip/pjlib/build/../src/pj/os_timestamp_common.c ['fuzz-sip'] []
/src/pjsip/pjlib-util/build/../src/pjlib-util/string.c ['fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjlib-util/build/../src/pjlib-util/http_client.c ['fuzz-url'] []
/src/pjsip/pjlib/build/../src/pj/sock_bsd.c ['fuzz-stun', 'fuzz-dns', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjmedia/build/../src/pjmedia/rtcp_fb.c ['fuzz-rtcp'] []
/src/pjsip/pjsip/build/../src/pjsip/sip_endpoint.c ['fuzz-sip'] []
/src/pjsip/pjsip/build/../src/pjsip/sip_msg.c ['fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjmedia/build/../../pjlib/include/pj/math.h ['fuzz-rtcp'] []
/src/pjsip/tests/fuzz/fuzz-h264.c ['fuzz-h264'] ['fuzz-h264']
/src/pjsip/pjlib-util/build/../src/pjlib-util/scanner_cis_bitwise.c ['fuzz-json', 'fuzz-sdp', 'fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjlib/build/../src/pj/guid_simple.c ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjlib/build/../src/pj/os_core_unix.c ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjlib/build/../src/pj/log_writer_stdout.c [] []
/src/pjsip/pjmedia/build/../src/pjmedia/format.c [] []
/src/pjsip/pjlib-util/build/../include/pjlib-util/scanner.h ['fuzz-xml', 'fuzz-url', 'fuzz-http', 'fuzz-json', 'fuzz-sdp', 'fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjlib/build/../src/pj/errno.c ['fuzz-stun', 'fuzz-sdp', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjlib-util/build/../src/pjlib-util/errno.c ['fuzz-sip'] []
/src/pjsip/pjsip/build/../src/pjsip/sip_tel_uri.c ['fuzz-sip'] []
/src/pjsip/pjlib/build/../src/pj/log.c ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjlib-util/build/../src/pjlib-util/xml.c ['fuzz-xml'] []
/src/pjsip/pjsip/build/../src/pjsip/sip_util.c [] []
/src/pjsip/pjsip/build/../src/pjsip/sip_uri.c ['fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjlib/build/../include/pj/os.h ['fuzz-sip'] []
/src/pjsip/tests/fuzz/fuzz-uri.c ['fuzz-uri'] ['fuzz-uri']
/src/pjsip/pjmedia/build/../src/pjmedia/event.c ['fuzz-sdp', 'fuzz-rtcp'] []
/src/pjsip/pjlib/build/../src/pj/activesock.c [] []
/src/pjsip/pjlib/build/../src/pj/os_time_common.c ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjlib-util/build/../src/pjlib-util/hmac_sha1.c ['fuzz-stun'] []
/src/pjsip/pjmedia/build/../src/pjmedia-codec/vpx_packetizer.c ['fuzz-vpx'] []
/src/pjsip/pjlib-util/build/../src/pjlib-util/md5.c ['fuzz-crypto', 'fuzz-stun'] []
/src/pjsip/pjlib/build/../src/pj/guid.c ['fuzz-sip'] []
/src/pjsip/pjlib/build/../src/pj/os_timestamp_posix.c ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjnath/build/../src/pjnath/stun_auth.c ['fuzz-stun'] []
/src/pjsip/pjsip/build/../src/pjsip/sip_errno.c ['fuzz-sip'] []
/src/pjsip/pjsip/build/../src/pjsip/sip_transport_loop.c ['fuzz-sip'] []
/src/pjsip/pjnath/build/../src/pjnath/stun_msg.c ['fuzz-stun'] []
/src/pjsip/pjlib/build/../src/pj/os_error_unix.c ['fuzz-stun', 'fuzz-sdp', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjlib/include/pj/string.h ['fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-stun'] []
/src/pjsip/pjlib/build/../src/pj/lock.c ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjsip/build/../include/pjsip/print_util.h ['fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjlib/build/../include/pj/string.h ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjsip/build/../src/pjsip/sip_transport.c ['fuzz-sip'] []
/src/pjsip/pjsip/build/../../pjlib-util/include/pjlib-util/scanner.h ['fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjmedia/build/../src/pjmedia/rtp.c [] []
/src/pjsip/tests/fuzz/fuzz-rtcp.c ['fuzz-rtcp'] ['fuzz-rtcp']
/src/pjsip/pjlib-util/build/../../pjlib/include/pj/string.h ['fuzz-crypto', 'fuzz-xml', 'fuzz-url', 'fuzz-http', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjlib/build/../include/pj/pool_i.h ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjlib-util/build/../src/pjlib-util/base64.c ['fuzz-crypto'] []
/src/pjsip/pjlib-util/build/../src/pjlib-util/crc32.c ['fuzz-crypto', 'fuzz-stun'] []
/src/pjsip/pjlib-util/build/../src/pjlib-util/sha1.c ['fuzz-crypto', 'fuzz-stun'] []
/src/pjsip/pjlib/build/../src/pj/config.c ['fuzz-sip'] []
/src/pjsip/pjlib/build/../include/pj/list.h ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjlib/build/../include/pj/pool.h ['fuzz-sdp', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjmedia/build/../src/pjmedia/endpoint.c [] []
/src/pjsip/pjsip/build/../src/pjsip/sip_auth_msg.c ['fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjsip/build/../include/pjsip/sip_msg.h [] []
/src/pjsip/pjsip/build/../../pjlib/include/pj/ctype.h ['fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjmedia/build/../src/pjmedia/codec.c [] []
/src/pjsip/pjlib/build/../src/pj/os_time_unix.c ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjsip/build/../src/pjsip/sip_parser.c ['fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjlib/build/../include/pj/string_i.h ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/tests/fuzz/fuzz-crypto.c ['fuzz-crypto'] ['fuzz-crypto']
/src/pjsip/pjsip/build/../src/pjsip/sip_multipart.c ['fuzz-sip'] []
/src/pjsip/pjlib-util/build/../src/pjlib-util/scanner.c ['fuzz-xml', 'fuzz-url', 'fuzz-http', 'fuzz-json', 'fuzz-sdp', 'fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjmedia/build/../src/pjmedia-codec/h264_packetizer.c ['fuzz-h264'] []
/src/pjsip/pjsip/build/../src/pjsip/sip_util_statefull.c [] []
/src/pjsip/pjlib/build/../include/pj/ip_helper.h [] []
/src/pjsip/pjlib/build/../include/pj/list_i.h ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/tests/fuzz/fuzz-sdp.c ['fuzz-sdp'] ['fuzz-sdp']
/src/pjsip/tests/fuzz/fuzz-dns.c ['fuzz-dns'] ['fuzz-dns']
/src/pjsip/pjsip/build/../src/pjsip/sip_auth_parser.c ['fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjlib/build/../src/pj/sock_common.c [] []
/src/pjsip/pjlib/build/../src/pj/hash.c ['fuzz-uri', 'fuzz-sip'] []
/src/pjsip/tests/fuzz/fuzz-json.c ['fuzz-json'] ['fuzz-json']
/src/pjsip/pjlib/build/../src/pj/types.c ['fuzz-sip'] []
/src/pjsip/tests/fuzz/fuzz-url.c ['fuzz-url'] ['fuzz-url']
/src/pjsip/tests/fuzz/./../../pjlib-util/src/pjlib-util/http_client.c ['fuzz-http'] []
/src/pjsip/pjlib/build/../src/pj/array.c ['fuzz-sdp'] []
/src/pjsip/pjlib/build/../src/pj/string.c ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/tests/fuzz/fuzz-http.c ['fuzz-http'] ['fuzz-http']
/src/pjsip/pjlib/build/../src/pj/sock_select.c ['fuzz-sip'] []
/src/pjsip/pjmedia/build/../../pjlib/include/pj/string.h ['fuzz-vpx', 'fuzz-h264', 'fuzz-rtcp'] []
/src/pjsip/pjsip/build/../src/pjsip/sip_transaction.c ['fuzz-sip'] []
/src/pjsip/pjlib/build/../src/pj/timer.c ['fuzz-sip'] []
/src/pjsip/tests/fuzz/fuzz-sip.c ['fuzz-sip'] ['fuzz-sip']
/src/pjsip/pjlib-util/build/../src/pjlib-util/json.c ['fuzz-json'] []
/src/pjsip/pjmedia/build/../src/pjmedia/vid_codec.c [] []
/src/pjsip/pjsip/build/../src/pjsip/sip_resolve.c ['fuzz-sip'] []
/src/pjsip/pjsip/build/../../pjlib/include/pj/pool.h ['fuzz-uri', 'fuzz-sip'] []
/src/pjsip/pjlib/build/../src/pj/pool_policy_malloc.c [] []
/src/pjsip/tests/fuzz/fuzz-stun.c ['fuzz-stun'] ['fuzz-stun']
/src/pjsip/pjmedia/build/../src/pjmedia/errno.c [] []
/src/pjsip/pjlib/build/../src/pj/ioqueue_select.c ['fuzz-sip'] []
/src/pjsip/pjlib/build/../src/pj/pool_caching.c ['fuzz-xml', 'fuzz-url', 'fuzz-vpx', 'fuzz-http', 'fuzz-h264', 'fuzz-json', 'fuzz-stun', 'fuzz-sdp', 'fuzz-dns', 'fuzz-uri', 'fuzz-rtcp', 'fuzz-sip'] []
/src/pjsip/pjsip/build/../../pjlib/include/pj/string.h ['fuzz-uri', 'fuzz-sip'] []

Directories in report

Directory
/src/pjsip/tests/fuzz/./../../pjlib-util/src/pjlib-util/
/src/pjsip/pjlib/include/pj/
/src/pjsip/pjlib-util/build/../include/pjlib-util/
/src/pjsip/tests/fuzz/
/src/pjsip/pjmedia/build/../src/pjmedia-codec/
/src/pjsip/pjsip/build/../../pjlib-util/include/pjlib-util/
/src/pjsip/pjsip/build/../include/pjsip/
/src/pjsip/pjlib-util/build/../../pjlib/include/pj/
/src/pjsip/pjnath/build/../src/pjnath/
/src/pjsip/pjsip/build/../../pjlib/include/pj/
/src/pjsip/pjlib/build/../src/pj/
/src/pjsip/pjmedia/build/../include/pjmedia/
/src/pjsip/pjlib/build/../include/pj/
/src/pjsip/pjmedia/build/../../pjlib-util/include/pjlib-util/
/src/pjsip/pjsip/build/../src/pjsip/
/src/pjsip/pjmedia/build/../../pjlib/include/pj/
/src/pjsip/pjmedia/build/../src/pjmedia/
/src/pjsip/pjlib-util/build/../src/pjlib-util/