---
Fuzzer filename: '/src/coturn/fuzzing/FuzzStun.c'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    fuzz_printable_string
      functionSourceFile: '/src/coturn/fuzzing/FuzzStun.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          95
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - fuzz_byte
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzing/FuzzStun.c:39,41'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:41,30'
          Dst:             fuzz_byte
    - functionName:    fuzz_byte
      functionSourceFile: '/src/coturn/fuzzing/FuzzStun.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      char
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fuzz_u16
      functionSourceFile: '/src/coturn/fuzzing/FuzzStun.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      short
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fuzz_byte
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzing/FuzzStun.c:30,32'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:30,77'
          Dst:             fuzz_byte
    - functionName:    harness_integrity_attr_add
      functionSourceFile: '/src/coturn/fuzzing/FuzzStun.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 593
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          203
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - fuzz_byte
        - fuzz_printable_string
        - stun_attr_add_integrity_by_key_str
        - stun_attr_add_integrity_by_user_short_term_str
        - stun_attr_add_integrity_by_user_str
        - stun_attr_add_integrity_str
        - stun_init_request_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzing/FuzzStun.c:538,37'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:547,3'
          Dst:             fuzz_printable_string
        - Src:             'fuzzing/FuzzStun.c:548,3'
          Dst:             fuzz_printable_string
        - Src:             'fuzzing/FuzzStun.c:549,3'
          Dst:             fuzz_printable_string
        - Src:             'fuzzing/FuzzStun.c:550,3'
          Dst:             fuzz_printable_string
        - Src:             'fuzzing/FuzzStun.c:551,3'
          Dst:             fuzz_printable_string
        - Src:             'fuzzing/FuzzStun.c:570,14'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:575,3'
          Dst:             stun_init_request_str
        - Src:             'fuzzing/FuzzStun.c:576,9'
          Dst:             stun_attr_add_integrity_by_key_str
        - Src:             'fuzzing/FuzzStun.c:579,3'
          Dst:             stun_init_request_str
        - Src:             'fuzzing/FuzzStun.c:580,9'
          Dst:             stun_attr_add_integrity_by_user_str
        - Src:             'fuzzing/FuzzStun.c:583,3'
          Dst:             stun_init_request_str
        - Src:             'fuzzing/FuzzStun.c:584,9'
          Dst:             stun_attr_add_integrity_by_user_short_term_str
        - Src:             'fuzzing/FuzzStun.c:587,3'
          Dst:             stun_init_request_str
        - Src:             'fuzzing/FuzzStun.c:588,9'
          Dst:             stun_attr_add_integrity_str
        - Src:             'fuzzing/FuzzStun.c:591,3'
          Dst:             stun_init_request_str
        - Src:             'fuzzing/FuzzStun.c:592,9'
          Dst:             stun_attr_add_integrity_str
    - functionName:    harness_full_addr_parser
      functionSourceFile: '/src/coturn/fuzzing/FuzzStun.c'
      linkageType:     InternalLinkage
      functionLinenumber: 493
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          182
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - fuzz_byte
        - fuzz_u16
        - make_ioa_addr_from_full_string
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzing/FuzzStun.c:495,33'
          Dst:             fuzz_u16
        - Src:             'fuzzing/FuzzStun.c:496,34'
          Dst:             fuzz_u16
        - Src:             'fuzzing/FuzzStun.c:504,59'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:504,85'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:505,12'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:505,38'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:504,3'
          Dst:             snprintf
        - Src:             'fuzzing/FuzzStun.c:506,70'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:506,96'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:507,12'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:507,39'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:506,3'
          Dst:             snprintf
        - Src:             'fuzzing/FuzzStun.c:508,76'
          Dst:             fuzz_u16
        - Src:             'fuzzing/FuzzStun.c:509,12'
          Dst:             fuzz_u16
        - Src:             'fuzzing/FuzzStun.c:509,38'
          Dst:             fuzz_u16
        - Src:             'fuzzing/FuzzStun.c:508,3'
          Dst:             snprintf
        - Src:             'fuzzing/FuzzStun.c:510,79'
          Dst:             fuzz_u16
        - Src:             'fuzzing/FuzzStun.c:511,12'
          Dst:             fuzz_u16
        - Src:             'fuzzing/FuzzStun.c:511,38'
          Dst:             fuzz_u16
        - Src:             'fuzzing/FuzzStun.c:510,3'
          Dst:             snprintf
        - Src:             'fuzzing/FuzzStun.c:512,66'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:512,93'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:513,12'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:513,39'
          Dst:             fuzz_byte
        - Src:             'fuzzing/FuzzStun.c:512,3'
          Dst:             snprintf
        - Src:             'fuzzing/FuzzStun.c:521,11'
          Dst:             make_ioa_addr_from_full_string
        - Src:             'fuzzing/FuzzStun.c:527,11'
          Dst:             make_ioa_addr_from_full_string
        - Src:             'fuzzing/FuzzStun.c:530,9'
          Dst:             make_ioa_addr_from_full_string
    - functionName:    snprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    34
      BranchProfiles:  []
      Callsites:       []
    - functionName:    harness_challenge_response_builder
      functionSourceFile: '/src/coturn/fuzzing/FuzzStun.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         47
      ICount:          332
      EdgeCount:       60
      CyclomaticComplexity: 15
      functionsReached:
        - stun_attr_add_str
        - stun_init_error_response_str
        - stun_is_challenge_response_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzing/FuzzStun.c:462,5'
          Dst:             stun_init_error_response_str
        - Src:             'fuzzing/FuzzStun.c:465,7'
          Dst:             stun_attr_add_str
        - Src:             'fuzzing/FuzzStun.c:468,7'
          Dst:             stun_attr_add_str
        - Src:             'fuzzing/FuzzStun.c:471,7'
          Dst:             stun_attr_add_str
        - Src:             'fuzzing/FuzzStun.c:480,11'
          Dst:             stun_is_challenge_response_str
        - Src:             'fuzzing/FuzzStun.c:485,11'
          Dst:             stun_is_challenge_response_str
    - functionName:    harness_old_stun
      functionSourceFile: '/src/coturn/fuzzing/FuzzStun.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          118
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - old_stun_is_command_message_str
        - stun_attr_get_first_str
        - stun_attr_get_len
        - stun_attr_get_next_str
        - stun_attr_get_type
        - stun_get_method_str
        - stun_get_msg_type_str
        - stun_is_binding_request_str
        - stun_is_binding_response_str
        - stun_is_command_message_full_check_str
        - stun_is_command_message_str
        - stun_is_error_response_str
        - stun_is_indication_str
        - stun_is_request_str
        - stun_is_success_response_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzing/FuzzStun.c:351,17'
          Dst:             old_stun_is_command_message_str
        - Src:             'fuzzing/FuzzStun.c:352,9'
          Dst:             stun_is_command_message_str
        - Src:             'fuzzing/FuzzStun.c:355,11'
          Dst:             stun_get_msg_type_str
        - Src:             'fuzzing/FuzzStun.c:356,11'
          Dst:             stun_get_method_str
        - Src:             'fuzzing/FuzzStun.c:358,5'
          Dst:             stun_is_request_str
        - Src:             'fuzzing/FuzzStun.c:359,5'
          Dst:             stun_is_indication_str
        - Src:             'fuzzing/FuzzStun.c:360,5'
          Dst:             stun_is_success_response_str
        - Src:             'fuzzing/FuzzStun.c:364,5'
          Dst:             stun_is_error_response_str
        - Src:             'fuzzing/FuzzStun.c:367,5'
          Dst:             stun_is_command_message_full_check_str
        - Src:             'fuzzing/FuzzStun.c:368,5'
          Dst:             stun_is_command_message_full_check_str
        - Src:             'fuzzing/FuzzStun.c:370,5'
          Dst:             stun_is_binding_request_str
        - Src:             'fuzzing/FuzzStun.c:371,5'
          Dst:             stun_is_binding_response_str
        - Src:             'fuzzing/FuzzStun.c:373,25'
          Dst:             stun_attr_get_first_str
        - Src:             'fuzzing/FuzzStun.c:375,13'
          Dst:             stun_attr_get_type
        - Src:             'fuzzing/FuzzStun.c:376,13'
          Dst:             stun_attr_get_len
        - Src:             'fuzzing/FuzzStun.c:377,13'
          Dst:             stun_attr_get_next_str
    - functionName:    harness_attr_add
      functionSourceFile: '/src/coturn/fuzzing/FuzzStun.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          172
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - htonl
        - htons
        - stun_attr_add_addr_str
        - stun_attr_add_address_error_code
        - stun_attr_add_bandwidth_str
        - stun_attr_add_change_request_str
        - stun_attr_add_channel_number_str
        - stun_attr_add_fingerprint_str
        - stun_attr_add_padding_str
        - stun_attr_add_response_port_str
        - stun_attr_add_str
        - stun_is_command_message_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzing/FuzzStun.c:272,8'
          Dst:             stun_is_command_message_str
        - Src:             'fuzzing/FuzzStun.c:277,3'
          Dst:             stun_attr_add_str
        - Src:             'fuzzing/FuzzStun.c:280,3'
          Dst:             stun_attr_add_str
        - Src:             'fuzzing/FuzzStun.c:283,3'
          Dst:             stun_attr_add_str
        - Src:             'fuzzing/FuzzStun.c:286,3'
          Dst:             stun_attr_add_str
        - Src:             'fuzzing/FuzzStun.c:289,3'
          Dst:             stun_attr_add_str
        - Src:             'fuzzing/FuzzStun.c:292,3'
          Dst:             stun_attr_add_str
        - Src:             'fuzzing/FuzzStun.c:295,3'
          Dst:             stun_attr_add_str
        - Src:             'fuzzing/FuzzStun.c:298,3'
          Dst:             stun_attr_add_str
        - Src:             'fuzzing/FuzzStun.c:300,3'
          Dst:             stun_attr_add_str
        - Src:             'fuzzing/FuzzStun.c:302,3'
          Dst:             stun_attr_add_channel_number_str
        - Src:             'fuzzing/FuzzStun.c:304,3'
          Dst:             stun_attr_add_bandwidth_str
        - Src:             'fuzzing/FuzzStun.c:308,23'
          Dst:             htons
        - Src:             'fuzzing/FuzzStun.c:309,30'
          Dst:             htonl
        - Src:             'fuzzing/FuzzStun.c:310,3'
          Dst:             stun_attr_add_addr_str
        - Src:             'fuzzing/FuzzStun.c:311,3'
          Dst:             stun_attr_add_addr_str
        - Src:             'fuzzing/FuzzStun.c:312,3'
          Dst:             stun_attr_add_addr_str
        - Src:             'fuzzing/FuzzStun.c:313,3'
          Dst:             stun_attr_add_addr_str
        - Src:             'fuzzing/FuzzStun.c:317,24'
          Dst:             htons
        - Src:             'fuzzing/FuzzStun.c:319,3'
          Dst:             stun_attr_add_addr_str
        - Src:             'fuzzing/FuzzStun.c:320,3'
          Dst:             stun_attr_add_addr_str
        - Src:             'fuzzing/FuzzStun.c:322,3'
          Dst:             stun_attr_add_address_error_code
        - Src:             'fuzzing/FuzzStun.c:324,3'
          Dst:             stun_attr_add_change_request_str
        - Src:             'fuzzing/FuzzStun.c:325,3'
          Dst:             stun_attr_add_response_port_str
        - Src:             'fuzzing/FuzzStun.c:326,3'
          Dst:             stun_attr_add_padding_str
        - Src:             'fuzzing/FuzzStun.c:333,5'
          Dst:             stun_attr_add_str
        - Src:             'fuzzing/FuzzStun.c:336,3'
          Dst:             stun_attr_add_fingerprint_str
    - functionName:    htons
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htonl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    harness_attr_iter
      functionSourceFile: '/src/coturn/fuzzing/FuzzStun.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         58
      ICount:          368
      EdgeCount:       76
      CyclomaticComplexity: 20
      functionsReached:
        - stun_attr_get_addr_str
        - stun_attr_get_bandwidth
        - stun_attr_get_change_request_str
        - stun_attr_get_channel_number
        - stun_attr_get_even_port
        - stun_attr_get_first_addr_str
        - stun_attr_get_first_by_type_str
        - stun_attr_get_first_channel_number_str
        - stun_attr_get_first_str
        - stun_attr_get_len
        - stun_attr_get_next_str
        - stun_attr_get_padding_len_str
        - stun_attr_get_reservation_token_value
        - stun_attr_get_response_port_str
        - stun_attr_get_type
        - stun_attr_get_value
        - stun_attr_is_addr
        - stun_get_requested_address_family
        - stun_is_challenge_response_str
        - stun_is_command_message_str
        - stun_is_error_response_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzing/FuzzStun.c:156,8'
          Dst:             stun_is_command_message_str
        - Src:             'fuzzing/FuzzStun.c:160,23'
          Dst:             stun_attr_get_first_str
        - Src:             'fuzzing/FuzzStun.c:162,11'
          Dst:             stun_attr_get_type
        - Src:             'fuzzing/FuzzStun.c:163,11'
          Dst:             stun_attr_get_len
        - Src:             'fuzzing/FuzzStun.c:164,11'
          Dst:             stun_attr_get_value
        - Src:             'fuzzing/FuzzStun.c:165,11'
          Dst:             stun_attr_is_addr
        - Src:             'fuzzing/FuzzStun.c:166,11'
          Dst:             stun_attr_get_next_str
        - Src:             'fuzzing/FuzzStun.c:172,11'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'fuzzing/FuzzStun.c:175,7'
          Dst:             stun_attr_get_addr_str
        - Src:             'fuzzing/FuzzStun.c:178,5'
          Dst:             stun_attr_get_first_addr_str
        - Src:             'fuzzing/FuzzStun.c:181,9'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'fuzzing/FuzzStun.c:183,11'
          Dst:             stun_attr_get_channel_number
        - Src:             'fuzzing/FuzzStun.c:185,9'
          Dst:             stun_attr_get_first_channel_number_str
        - Src:             'fuzzing/FuzzStun.c:187,9'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'fuzzing/FuzzStun.c:189,11'
          Dst:             stun_get_requested_address_family
        - Src:             'fuzzing/FuzzStun.c:192,9'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'fuzzing/FuzzStun.c:194,11'
          Dst:             stun_get_requested_address_family
        - Src:             'fuzzing/FuzzStun.c:197,9'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'fuzzing/FuzzStun.c:199,11'
          Dst:             stun_attr_get_even_port
        - Src:             'fuzzing/FuzzStun.c:202,9'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'fuzzing/FuzzStun.c:204,11'
          Dst:             stun_attr_get_bandwidth
        - Src:             'fuzzing/FuzzStun.c:207,9'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'fuzzing/FuzzStun.c:209,11'
          Dst:             stun_attr_get_bandwidth
        - Src:             'fuzzing/FuzzStun.c:212,9'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'fuzzing/FuzzStun.c:214,11'
          Dst:             stun_attr_get_reservation_token_value
        - Src:             'fuzzing/FuzzStun.c:217,9'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'fuzzing/FuzzStun.c:220,5'
          Dst:             stun_attr_get_change_request_str
        - Src:             'fuzzing/FuzzStun.c:223,9'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'fuzzing/FuzzStun.c:225,11'
          Dst:             stun_attr_get_response_port_str
        - Src:             'fuzzing/FuzzStun.c:228,9'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'fuzzing/FuzzStun.c:230,11'
          Dst:             stun_attr_get_padding_len_str
        - Src:             'fuzzing/FuzzStun.c:236,5'
          Dst:             stun_is_error_response_str
        - Src:             'fuzzing/FuzzStun.c:245,5'
          Dst:             stun_is_challenge_response_str
        - Src:             'fuzzing/FuzzStun.c:251,11'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'fuzzing/FuzzStun.c:253,13'
          Dst:             stun_attr_get_type
        - Src:             'fuzzing/FuzzStun.c:254,13'
          Dst:             stun_attr_get_len
        - Src:             'fuzzing/FuzzStun.c:255,13'
          Dst:             stun_attr_get_value
    - functionName:    harness_integrity_multi
      functionSourceFile: '/src/coturn/fuzzing/FuzzStun.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          89
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - stun_check_message_integrity_str
        - stun_is_command_message_full_check_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzing/FuzzStun.c:84,5'
          Dst:             stun_is_command_message_full_check_str
        - Src:             'fuzzing/FuzzStun.c:85,5'
          Dst:             stun_check_message_integrity_str
        - Src:             'fuzzing/FuzzStun.c:88,5'
          Dst:             stun_check_message_integrity_str
    - functionName:    harness_integrity_sha1
      functionSourceFile: '/src/coturn/fuzzing/FuzzStun.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - stun_check_message_integrity_str
        - stun_is_command_message_full_check_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzing/FuzzStun.c:54,3'
          Dst:             stun_is_command_message_full_check_str
        - Src:             'fuzzing/FuzzStun.c:60,3'
          Dst:             stun_check_message_integrity_str
        - Src:             'fuzzing/FuzzStun.c:62,3'
          Dst:             stun_check_message_integrity_str
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/coturn/fuzzing/FuzzStun.c'
      linkageType:     externalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 607
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - harness_attr_add
        - harness_attr_iter
        - harness_challenge_response_builder
        - harness_full_addr_parser
        - harness_integrity_attr_add
        - harness_integrity_multi
        - harness_integrity_sha1
        - harness_old_stun
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzing/FuzzStun.c:599,3'
          Dst:             harness_integrity_sha1
        - Src:             'fuzzing/FuzzStun.c:600,3'
          Dst:             harness_integrity_multi
        - Src:             'fuzzing/FuzzStun.c:601,3'
          Dst:             harness_attr_iter
        - Src:             'fuzzing/FuzzStun.c:602,3'
          Dst:             harness_attr_add
        - Src:             'fuzzing/FuzzStun.c:603,3'
          Dst:             harness_old_stun
        - Src:             'fuzzing/FuzzStun.c:604,3'
          Dst:             harness_challenge_response_builder
        - Src:             'fuzzing/FuzzStun.c:605,3'
          Dst:             harness_full_addr_parser
        - Src:             'fuzzing/FuzzStun.c:606,3'
          Dst:             harness_integrity_attr_add
    - functionName:    seed_addr_mappings
      functionSourceFile: '/src/coturn/fuzzing/FuzzOpenSSLInit.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         13
      ICount:          61
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - ioa_addr_add_mapping
        - make_ioa_addr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzing/FuzzOpenSSLInit.c:35,7'
          Dst:             make_ioa_addr
        - Src:             'fuzzing/FuzzOpenSSLInit.c:36,7'
          Dst:             make_ioa_addr
        - Src:             'fuzzing/FuzzOpenSSLInit.c:37,5'
          Dst:             ioa_addr_add_mapping
        - Src:             'fuzzing/FuzzOpenSSLInit.c:40,7'
          Dst:             make_ioa_addr
        - Src:             'fuzzing/FuzzOpenSSLInit.c:41,7'
          Dst:             make_ioa_addr
        - Src:             'fuzzing/FuzzOpenSSLInit.c:42,5'
          Dst:             ioa_addr_add_mapping
    - functionName:    LLVMFuzzerInitialize
      functionSourceFile: '/src/coturn/fuzzing/FuzzOpenSSLInit.c'
      linkageType:     externalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_init_crypto
        - seed_addr_mappings
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzzing/FuzzOpenSSLInit.c:55,3'
          Dst:             OPENSSL_init_crypto
        - Src:             'fuzzing/FuzzOpenSSLInit.c:58,3'
          Dst:             seed_addr_mappings
    - functionName:    OPENSSL_init_crypto
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    map_addr_from_private_to_public
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 700
      functionLinenumberEnd: 710
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - addr_cpy
        - addr_eq_no_port
        - addr_get_port
        - addr_set_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:703,9'
          Dst:             addr_eq_no_port
        - Src:             'src/client/ns_turn_ioaddr.c:704,7'
          Dst:             addr_cpy
        - Src:             'src/client/ns_turn_ioaddr.c:705,34'
          Dst:             addr_get_port
        - Src:             'src/client/ns_turn_ioaddr.c:705,7'
          Dst:             addr_set_port
        - Src:             'src/client/ns_turn_ioaddr.c:709,3'
          Dst:             addr_cpy
    - functionName:    addr_eq_no_port
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          116
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:194,11'
          Dst:             memcmp
    - functionName:    addr_cpy
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.h'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addr_get_port
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          61
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ntohs
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:423,12'
          Dst:             ntohs
        - Src:             'src/client/ns_turn_ioaddr.c:425,12'
          Dst:             ntohs
    - functionName:    addr_set_port
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 415
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          60
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ntohs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:410,27'
          Dst:             ntohs
        - Src:             'src/client/ns_turn_ioaddr.c:412,28'
          Dst:             ntohs
    - functionName:    ntohs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    map_addr_from_public_to_private
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 688
      functionLinenumberEnd: 698
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - addr_cpy
        - addr_eq_no_port
        - addr_get_port
        - addr_set_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:691,9'
          Dst:             addr_eq_no_port
        - Src:             'src/client/ns_turn_ioaddr.c:692,7'
          Dst:             addr_cpy
        - Src:             'src/client/ns_turn_ioaddr.c:693,35'
          Dst:             addr_get_port
        - Src:             'src/client/ns_turn_ioaddr.c:693,7'
          Dst:             addr_set_port
        - Src:             'src/client/ns_turn_ioaddr.c:697,3'
          Dst:             addr_cpy
    - functionName:    ioa_addr_add_mapping
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 676
      functionLinenumberEnd: 686
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - addr_cpy
        - turn_malloc_impl
        - turn_realloc_impl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:678,31'
          Dst:             turn_realloc_impl
        - Src:             'src/client/ns_turn_ioaddr.c:679,32'
          Dst:             turn_realloc_impl
        - Src:             'src/client/ns_turn_ioaddr.c:680,38'
          Dst:             turn_malloc_impl
        - Src:             'src/client/ns_turn_ioaddr.c:681,39'
          Dst:             turn_malloc_impl
        - Src:             'src/client/ns_turn_ioaddr.c:682,3'
          Dst:             addr_cpy
        - Src:             'src/client/ns_turn_ioaddr.c:683,3'
          Dst:             addr_cpy
    - functionName:    ioa_addr_is_internal_deny_default
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 631
      functionLinenumberEnd: 664
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         32
      ICount:          163
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - ioa_addr_get_embedded_ipv4
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:638,7'
          Dst:             ioa_addr_get_embedded_ipv4
    - functionName:    ioa_addr_get_embedded_ipv4
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 470
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         106
      ICount:          577
      EdgeCount:       152
      CyclomaticComplexity: 48
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ioa_addr_is_zero
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 605
      functionLinenumberEnd: 629
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          109
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - ioa_addr_get_embedded_ipv4
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:611,9'
          Dst:             ioa_addr_get_embedded_ipv4
    - functionName:    ioa_addr_is_loopback
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          124
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - ioa_addr_get_embedded_ipv4
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:576,9'
          Dst:             ioa_addr_get_embedded_ipv4
    - functionName:    ioa_addr_is_multicast
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 568
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          88
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ioa_addr_get_embedded_ipv4
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:555,9'
          Dst:             ioa_addr_get_embedded_ipv4
    - functionName:    ioa_addr_range_cpy
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 541
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          43
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - addr_cpy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:543,5'
          Dst:             addr_cpy
        - Src:             'src/client/ns_turn_ioaddr.c:544,5'
          Dst:             addr_cpy
    - functionName:    ioa_addr_in_range
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 539
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          136
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - addr_any
        - addr_less_eq
        - ioa_addr_get_embedded_ipv4
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:525,38'
          Dst:             ioa_addr_get_embedded_ipv4
        - Src:             'src/client/ns_turn_ioaddr.c:529,9'
          Dst:             addr_any
        - Src:             'src/client/ns_turn_ioaddr.c:529,36'
          Dst:             addr_less_eq
        - Src:             'src/client/ns_turn_ioaddr.c:530,11'
          Dst:             addr_any
        - Src:             'src/client/ns_turn_ioaddr.c:533,16'
          Dst:             addr_less_eq
    - functionName:    addr_any
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          110
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addr_less_eq
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - memcmp
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:457,25'
          Dst:             ntohl
        - Src:             'src/client/ns_turn_ioaddr.c:457,73'
          Dst:             ntohl
        - Src:             'src/client/ns_turn_ioaddr.c:463,14'
          Dst:             memcmp
    - functionName:    ntohl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ioa_addr_range_set
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          61
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - addr_cpy
        - addr_set_any
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:435,7'
          Dst:             addr_cpy
        - Src:             'src/client/ns_turn_ioaddr.c:437,7'
          Dst:             addr_set_any
        - Src:             'src/client/ns_turn_ioaddr.c:440,7'
          Dst:             addr_cpy
        - Src:             'src/client/ns_turn_ioaddr.c:442,7'
          Dst:             addr_set_any
    - functionName:    addr_set_any
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          19
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addr_to_string_no_port
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 389
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          74
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - inet_ntop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:394,7'
          Dst:             inet_ntop
        - Src:             'src/client/ns_turn_ioaddr.c:396,7'
          Dst:             inet_ntop
    - functionName:    inet_ntop
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addr_to_string
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          118
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - addr_get_port
        - inet_ntop
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:366,7'
          Dst:             inet_ntop
        - Src:             'src/client/ns_turn_ioaddr.c:367,11'
          Dst:             addr_get_port
        - Src:             'src/client/ns_turn_ioaddr.c:368,64'
          Dst:             addr_get_port
        - Src:             'src/client/ns_turn_ioaddr.c:368,9'
          Dst:             snprintf
        - Src:             'src/client/ns_turn_ioaddr.c:370,9'
          Dst:             snprintf
        - Src:             'src/client/ns_turn_ioaddr.c:373,7'
          Dst:             inet_ntop
        - Src:             'src/client/ns_turn_ioaddr.c:374,11'
          Dst:             addr_get_port
        - Src:             'src/client/ns_turn_ioaddr.c:375,66'
          Dst:             addr_get_port
        - Src:             'src/client/ns_turn_ioaddr.c:375,9'
          Dst:             snprintf
        - Src:             'src/client/ns_turn_ioaddr.c:377,9'
          Dst:             snprintf
    - functionName:    get_addr_string_and_port
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          179
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - atoi
        - strstr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:309,18'
          Dst:             strstr
        - Src:             'src/client/ns_turn_ioaddr.c:318,17'
          Dst:             atoi
        - Src:             'src/client/ns_turn_ioaddr.c:326,18'
          Dst:             strstr
        - Src:             'src/client/ns_turn_ioaddr.c:330,15'
          Dst:             atoi
    - functionName:    strstr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atoi
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_ioa_addr_from_full_string
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 357
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_addr_string_and_port
        - make_ioa_addr
        - turn_strdup_impl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:347,13'
          Dst:             turn_strdup_impl
        - Src:             'src/client/ns_turn_ioaddr.c:348,14'
          Dst:             get_addr_string_and_port
        - Src:             'src/client/ns_turn_ioaddr.c:353,11'
          Dst:             make_ioa_addr
    - functionName:    make_ioa_addr
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          324
      EdgeCount:       73
      CyclomaticComplexity: 19
      functionsReached:
        - fprintf
        - freeaddrinfo
        - gai_strerror
        - getaddrinfo
        - inet_pton
        - ntohs
        - strlen
        - strncpy
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:209,3'
          Dst:             strncpy
        - Src:             'src/client/ns_turn_ioaddr.c:216,16'
          Dst:             strlen
        - Src:             'src/client/ns_turn_ioaddr.c:227,22'
          Dst:             inet_pton
        - Src:             'src/client/ns_turn_ioaddr.c:232,25'
          Dst:             ntohs
        - Src:             'src/client/ns_turn_ioaddr.c:233,14'
          Dst:             inet_pton
        - Src:             'src/client/ns_turn_ioaddr.c:238,26'
          Dst:             ntohs
        - Src:             'src/client/ns_turn_ioaddr.c:253,11'
          Dst:             getaddrinfo
        - Src:             'src/client/ns_turn_ioaddr.c:255,69'
          Dst:             gai_strerror
        - Src:             'src/client/ns_turn_ioaddr.c:255,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_ioaddr.c:270,31'
          Dst:             ntohs
        - Src:             'src/client/ns_turn_ioaddr.c:278,32'
          Dst:             ntohs
        - Src:             'src/client/ns_turn_ioaddr.c:296,5'
          Dst:             freeaddrinfo
    - functionName:    strncpy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strlen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    31
      BranchProfiles:  []
      Callsites:       []
    - functionName:    inet_pton
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getaddrinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gai_strerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    21
      BranchProfiles:  []
      Callsites:       []
    - functionName:    freeaddrinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addr_eq
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          150
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:171,11'
          Dst:             memcmp
    - functionName:    addr_cpy6
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addr_cpy4
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addr_hash_no_port
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - hash_int32
        - hash_int64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:134,11'
          Dst:             hash_int32
        - Src:             'src/client/ns_turn_ioaddr.c:138,23'
          Dst:             hash_int64
        - Src:             'src/client/ns_turn_ioaddr.c:138,49'
          Dst:             hash_int64
    - functionName:    hash_int32
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_int64
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addr_hash
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - hash_int32
        - hash_int64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_ioaddr.c:118,11'
          Dst:             hash_int32
        - Src:             'src/client/ns_turn_ioaddr.c:122,23'
          Dst:             hash_int64
        - Src:             'src/client/ns_turn_ioaddr.c:122,49'
          Dst:             hash_int64
    - functionName:    addr_any_no_port
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          84
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    turn_write_u64
      functionSourceFile: '/src/coturn/src/ns_turn_defs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _ioa_ntoh64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/ns_turn_defs.h:156,24'
          Dst:             _ioa_ntoh64
    - functionName:    _ioa_ntoh64
      functionSourceFile: '/src/coturn/src/ns_turn_defs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sheadof
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1012
      functionLinenumberEnd: 1025
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          80
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - tolower
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1015,27'
          Dst:             tolower
        - Src:             'src/client/ns_turn_msg.c:1015,60'
          Dst:             tolower
    - functionName:    tolower
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    readable_string
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          54
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - snprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:436,5'
          Dst:             snprintf
    - functionName:    generate_random_nonce
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          48
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - turn_random_number
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:142,33'
          Dst:             turn_random_number
    - functionName:    turn_random_number
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fuzz_prng_next
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:126,15'
          Dst:             fuzz_prng_next
    - functionName:    fuzz_prng_next
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decode_oauth_token_gcm
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2541
      functionLinenumberEnd: 2664
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          414
      EdgeCount:       53
      CyclomaticComplexity: 18
      functionsReached:
        - EVP_CIPHER_CTX_ctrl
        - EVP_CIPHER_CTX_free
        - EVP_CIPHER_CTX_new
        - EVP_CIPHER_CTX_reset
        - EVP_DecryptFinal_ex
        - EVP_DecryptInit_ex
        - fprintf
        - get_cipher_type
        - my_EVP_DecryptUpdate
        - strlen
        - turn_read_u16
        - turn_read_u32
        - turn_read_u64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2544,32'
          Dst:             turn_read_u16
        - Src:             'src/client/ns_turn_msg.c:2547,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2556,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2570,32'
          Dst:             get_cipher_type
        - Src:             'src/client/ns_turn_msg.c:2572,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2576,28'
          Dst:             EVP_CIPHER_CTX_new
        - Src:             'src/client/ns_turn_msg.c:2577,5'
          Dst:             EVP_CIPHER_CTX_reset
        - Src:             'src/client/ns_turn_msg.c:2579,14'
          Dst:             EVP_DecryptInit_ex
        - Src:             'src/client/ns_turn_msg.c:2580,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2581,7'
          Dst:             EVP_CIPHER_CTX_free
        - Src:             'src/client/ns_turn_msg.c:2588,14'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'src/client/ns_turn_msg.c:2589,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2590,7'
          Dst:             EVP_CIPHER_CTX_free
        - Src:             'src/client/ns_turn_msg.c:2595,14'
          Dst:             EVP_DecryptInit_ex
        - Src:             'src/client/ns_turn_msg.c:2596,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2597,7'
          Dst:             EVP_CIPHER_CTX_free
        - Src:             'src/client/ns_turn_msg.c:2603,5'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'src/client/ns_turn_msg.c:2606,27'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:2611,14'
          Dst:             my_EVP_DecryptUpdate
        - Src:             'src/client/ns_turn_msg.c:2612,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2613,7'
          Dst:             EVP_CIPHER_CTX_free
        - Src:             'src/client/ns_turn_msg.c:2616,14'
          Dst:             my_EVP_DecryptUpdate
        - Src:             'src/client/ns_turn_msg.c:2617,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2618,7'
          Dst:             EVP_CIPHER_CTX_free
        - Src:             'src/client/ns_turn_msg.c:2623,9'
          Dst:             EVP_DecryptFinal_ex
        - Src:             'src/client/ns_turn_msg.c:2624,7'
          Dst:             EVP_CIPHER_CTX_free
        - Src:             'src/client/ns_turn_msg.c:2625,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2630,5'
          Dst:             EVP_CIPHER_CTX_free
        - Src:             'src/client/ns_turn_msg.c:2635,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2638,36'
          Dst:             turn_read_u16
        - Src:             'src/client/ns_turn_msg.c:2642,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2648,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2655,35'
          Dst:             turn_read_u64
        - Src:             'src/client/ns_turn_msg.c:2658,34'
          Dst:             turn_read_u32
    - functionName:    turn_read_u16
      functionSourceFile: '/src/coturn/src/ns_turn_defs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'src/ns_turn_defs.h:130,10'
          Dst:             ntohs
    - functionName:    get_cipher_type
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2383
      functionLinenumberEnd: 2396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          40
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - EVP_aes_128_gcm
        - EVP_aes_256_gcm
        - fprintf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:2384,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2387,12'
          Dst:             EVP_aes_128_gcm
        - Src:             'src/client/ns_turn_msg.c:2389,12'
          Dst:             EVP_aes_256_gcm
        - Src:             'src/client/ns_turn_msg.c:2394,3'
          Dst:             fprintf
    - functionName:    EVP_CIPHER_CTX_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_reset
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DecryptInit_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_ctrl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    my_EVP_DecryptUpdate
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2419
      functionLinenumberEnd: 2436
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          105
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - EVP_DecryptUpdate
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2428,21'
          Dst:             EVP_DecryptUpdate
    - functionName:    EVP_DecryptFinal_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    turn_read_u64
      functionSourceFile: '/src/coturn/src/ns_turn_defs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _ioa_ntoh64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/ns_turn_defs.h:142,10'
          Dst:             _ioa_ntoh64
    - functionName:    turn_read_u32
      functionSourceFile: '/src/coturn/src/ns_turn_defs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/ns_turn_defs.h:136,10'
          Dst:             ntohl
    - functionName:    EVP_DecryptUpdate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_128_gcm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_256_gcm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decode_oauth_token
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2694
      functionLinenumberEnd: 2713
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          82
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - decode_oauth_token_gcm
        - fprintf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:2697,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2701,14'
          Dst:             decode_oauth_token_gcm
        - Src:             'src/client/ns_turn_msg.c:2704,7'
          Dst:             fprintf
    - functionName:    encode_oauth_token_gcm
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2440
      functionLinenumberEnd: 2538
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          309
      EdgeCount:       42
      CyclomaticComplexity: 14
      functionsReached:
        - EVP_CIPHER_CTX_ctrl
        - EVP_CIPHER_CTX_free
        - EVP_CIPHER_CTX_new
        - EVP_CIPHER_CTX_reset
        - EVP_CIPHER_CTX_set_padding
        - EVP_EncryptFinal_ex
        - EVP_EncryptInit_ex
        - generate_random_nonce
        - get_cipher_type
        - my_EVP_EncryptUpdate
        - strlen
        - turn_write_u16
        - turn_write_u32
        - turn_write_u64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2450,7'
          Dst:             generate_random_nonce
        - Src:             'src/client/ns_turn_msg.c:2455,5'
          Dst:             turn_write_u16
        - Src:             'src/client/ns_turn_msg.c:2461,5'
          Dst:             turn_write_u16
        - Src:             'src/client/ns_turn_msg.c:2467,5'
          Dst:             turn_write_u64
        - Src:             'src/client/ns_turn_msg.c:2470,5'
          Dst:             turn_write_u32
        - Src:             'src/client/ns_turn_msg.c:2473,32'
          Dst:             get_cipher_type
        - Src:             'src/client/ns_turn_msg.c:2478,28'
          Dst:             EVP_CIPHER_CTX_new
        - Src:             'src/client/ns_turn_msg.c:2479,5'
          Dst:             EVP_CIPHER_CTX_reset
        - Src:             'src/client/ns_turn_msg.c:2482,14'
          Dst:             EVP_EncryptInit_ex
        - Src:             'src/client/ns_turn_msg.c:2483,7'
          Dst:             EVP_CIPHER_CTX_free
        - Src:             'src/client/ns_turn_msg.c:2487,5'
          Dst:             EVP_CIPHER_CTX_set_padding
        - Src:             'src/client/ns_turn_msg.c:2490,14'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'src/client/ns_turn_msg.c:2491,7'
          Dst:             EVP_CIPHER_CTX_free
        - Src:             'src/client/ns_turn_msg.c:2496,14'
          Dst:             EVP_EncryptInit_ex
        - Src:             'src/client/ns_turn_msg.c:2497,7'
          Dst:             EVP_CIPHER_CTX_free
        - Src:             'src/client/ns_turn_msg.c:2502,27'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:2507,14'
          Dst:             my_EVP_EncryptUpdate
        - Src:             'src/client/ns_turn_msg.c:2508,7'
          Dst:             EVP_CIPHER_CTX_free
        - Src:             'src/client/ns_turn_msg.c:2519,14'
          Dst:             my_EVP_EncryptUpdate
        - Src:             'src/client/ns_turn_msg.c:2520,7'
          Dst:             EVP_CIPHER_CTX_free
        - Src:             'src/client/ns_turn_msg.c:2525,5'
          Dst:             EVP_EncryptFinal_ex
        - Src:             'src/client/ns_turn_msg.c:2528,5'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'src/client/ns_turn_msg.c:2533,5'
          Dst:             EVP_CIPHER_CTX_free
    - functionName:    turn_write_u16
      functionSourceFile: '/src/coturn/src/ns_turn_defs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'src/ns_turn_defs.h:146,24'
          Dst:             ntohs
    - functionName:    turn_write_u32
      functionSourceFile: '/src/coturn/src/ns_turn_defs.h'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/ns_turn_defs.h:151,24'
          Dst:             ntohl
    - functionName:    EVP_EncryptInit_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_set_padding
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    my_EVP_EncryptUpdate
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2399
      functionLinenumberEnd: 2416
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          105
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - EVP_EncryptUpdate
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2408,21'
          Dst:             EVP_EncryptUpdate
    - functionName:    EVP_EncryptFinal_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_EncryptUpdate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encode_oauth_token
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2671
      functionLinenumberEnd: 2691
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          89
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - encode_oauth_token_gcm
        - fprintf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:2675,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2679,14'
          Dst:             encode_oauth_token_gcm
        - Src:             'src/client/ns_turn_msg.c:2682,7'
          Dst:             fprintf
    - functionName:    calculate_key
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2283
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       5
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    normalize_algorithm
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2240
      functionLinenumberEnd: 2251
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_spaces
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2212
      functionLinenumberEnd: 2238
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          120
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    convert_oauth_key_data
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2291
      functionLinenumberEnd: 2378
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          345
      EdgeCount:       62
      CyclomaticComplexity: 17
      functionsReached:
        - calculate_auth_key_length
        - calculate_enc_key_length
        - calculate_key
        - fprintf
        - normalize_algorithm
        - remove_spaces
        - snprintf
        - strcmp
        - strncpy
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2301,9'
          Dst:             snprintf
        - Src:             'src/client/ns_turn_msg.c:2305,5'
          Dst:             remove_spaces
        - Src:             'src/client/ns_turn_msg.c:2307,5'
          Dst:             remove_spaces
        - Src:             'src/client/ns_turn_msg.c:2309,5'
          Dst:             normalize_algorithm
        - Src:             'src/client/ns_turn_msg.c:2313,9'
          Dst:             snprintf
        - Src:             'src/client/ns_turn_msg.c:2315,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2321,5'
          Dst:             strncpy
        - Src:             'src/client/ns_turn_msg.c:2330,24'
          Dst:             time
        - Src:             'src/client/ns_turn_msg.c:2339,10'
          Dst:             strcmp
        - Src:             'src/client/ns_turn_msg.c:2343,17'
          Dst:             strcmp
        - Src:             'src/client/ns_turn_msg.c:2351,9'
          Dst:             snprintf
        - Src:             'src/client/ns_turn_msg.c:2353,7'
          Dst:             fprintf
        - Src:             'src/client/ns_turn_msg.c:2359,26'
          Dst:             calculate_auth_key_length
        - Src:             'src/client/ns_turn_msg.c:2361,12'
          Dst:             calculate_key
        - Src:             'src/client/ns_turn_msg.c:2366,27'
          Dst:             calculate_enc_key_length
        - Src:             'src/client/ns_turn_msg.c:2367,10'
          Dst:             calculate_key
    - functionName:    time
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    calculate_auth_key_length
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2268
      functionLinenumberEnd: 2280
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          28
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:2269,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    calculate_enc_key_length
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2254
      functionLinenumberEnd: 2265
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          23
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:2255,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    stun_attr_add_padding_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2201
      functionLinenumberEnd: 2205
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stun_attr_add_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2205,10'
          Dst:             stun_attr_add_str
    - functionName:    stun_attr_add_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1660
      functionLinenumberEnd: 1697
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          146
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - stun_get_command_message_len_str
        - stun_set_command_message_len_str
        - turn_write_u16
      functionUses:    38
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1669,20'
          Dst:             stun_get_command_message_len_str
        - Src:             'src/client/ns_turn_msg.c:1684,3'
          Dst:             stun_set_command_message_len_str
        - Src:             'src/client/ns_turn_msg.c:1687,3'
          Dst:             turn_write_u16
        - Src:             'src/client/ns_turn_msg.c:1688,3'
          Dst:             turn_write_u16
    - functionName:    stun_get_command_message_len_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 523
      functionLinenumberEnd: 535
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - turn_read_u16
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:529,34'
          Dst:             turn_read_u16
    - functionName:    stun_set_command_message_len_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 543
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - turn_write_u16
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:541,3'
          Dst:             turn_write_u16
    - functionName:    stun_attr_get_padding_len_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2193
      functionLinenumberEnd: 2199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - stun_attr_get_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2194,19'
          Dst:             stun_attr_get_len
    - functionName:    stun_attr_get_len
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1485
      functionLinenumberEnd: 1490
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - turn_read_u16
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1487,17'
          Dst:             turn_read_u16
    - functionName:    stun_attr_add_response_port_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2186
      functionLinenumberEnd: 2190
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stun_attr_add_str
        - turn_write_u16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2188,3'
          Dst:             turn_write_u16
        - Src:             'src/client/ns_turn_msg.c:2190,10'
          Dst:             stun_attr_add_str
    - functionName:    stun_attr_get_response_port_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2176
      functionLinenumberEnd: 2184
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - stun_attr_get_len
        - stun_attr_get_value
        - turn_read_u16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2177,7'
          Dst:             stun_attr_get_len
        - Src:             'src/client/ns_turn_msg.c:2178,28'
          Dst:             stun_attr_get_value
        - Src:             'src/client/ns_turn_msg.c:2180,14'
          Dst:             turn_read_u16
    - functionName:    stun_attr_get_value
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1492
      functionLinenumberEnd: 1501
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          45
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - turn_read_u16
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1494,26'
          Dst:             turn_read_u16
    - functionName:    stun_attr_add_change_request_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2160
      functionLinenumberEnd: 2173
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          60
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - stun_attr_add_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2173,10'
          Dst:             stun_attr_add_str
    - functionName:    stun_attr_get_change_request_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2148
      functionLinenumberEnd: 2158
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - stun_attr_get_len
        - stun_attr_get_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2149,7'
          Dst:             stun_attr_get_len
        - Src:             'src/client/ns_turn_msg.c:2150,28'
          Dst:             stun_attr_get_value
    - functionName:    stun_check_message_integrity_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2132
      functionLinenumberEnd: 2144
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strncpy
        - stun_check_message_integrity_by_key_str
        - stun_produce_integrity_key_str
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2137,5'
          Dst:             strncpy
        - Src:             'src/client/ns_turn_msg.c:2139,15'
          Dst:             stun_produce_integrity_key_str
        - Src:             'src/client/ns_turn_msg.c:2143,10'
          Dst:             stun_check_message_integrity_by_key_str
    - functionName:    stun_produce_integrity_key_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          225
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - ERR_clear_error
        - EVP_DigestFinal
        - EVP_DigestInit
        - EVP_DigestInit_ex
        - EVP_DigestUpdate
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_default_properties_enable_fips
        - EVP_default_properties_is_fips_enabled
        - EVP_md5
        - EVP_sha256
        - EVP_sha384
        - EVP_sha512
        - strlen
        - strncpy
        - turn_malloc_impl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:343,3'
          Dst:             ERR_clear_error
        - Src:             'src/client/ns_turn_msg.c:346,23'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:347,23'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:348,23'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:351,29'
          Dst:             turn_malloc_impl
        - Src:             'src/client/ns_turn_msg.c:353,3'
          Dst:             strncpy
        - Src:             'src/client/ns_turn_msg.c:355,3'
          Dst:             strncpy
        - Src:             'src/client/ns_turn_msg.c:357,3'
          Dst:             strncpy
        - Src:             'src/client/ns_turn_msg.c:363,23'
          Dst:             EVP_MD_CTX_new
        - Src:             'src/client/ns_turn_msg.c:364,25'
          Dst:             EVP_sha256
        - Src:             'src/client/ns_turn_msg.c:364,5'
          Dst:             EVP_DigestInit
        - Src:             'src/client/ns_turn_msg.c:365,5'
          Dst:             EVP_DigestUpdate
        - Src:             'src/client/ns_turn_msg.c:366,5'
          Dst:             EVP_DigestFinal
        - Src:             'src/client/ns_turn_msg.c:367,5'
          Dst:             EVP_MD_CTX_free
        - Src:             'src/client/ns_turn_msg.c:376,23'
          Dst:             EVP_MD_CTX_new
        - Src:             'src/client/ns_turn_msg.c:377,25'
          Dst:             EVP_sha384
        - Src:             'src/client/ns_turn_msg.c:377,5'
          Dst:             EVP_DigestInit
        - Src:             'src/client/ns_turn_msg.c:378,5'
          Dst:             EVP_DigestUpdate
        - Src:             'src/client/ns_turn_msg.c:379,5'
          Dst:             EVP_DigestFinal
        - Src:             'src/client/ns_turn_msg.c:380,5'
          Dst:             EVP_MD_CTX_free
        - Src:             'src/client/ns_turn_msg.c:389,23'
          Dst:             EVP_MD_CTX_new
        - Src:             'src/client/ns_turn_msg.c:390,25'
          Dst:             EVP_sha512
        - Src:             'src/client/ns_turn_msg.c:390,5'
          Dst:             EVP_DigestInit
        - Src:             'src/client/ns_turn_msg.c:391,5'
          Dst:             EVP_DigestUpdate
        - Src:             'src/client/ns_turn_msg.c:392,5'
          Dst:             EVP_DigestFinal
        - Src:             'src/client/ns_turn_msg.c:393,5'
          Dst:             EVP_MD_CTX_free
        - Src:             'src/client/ns_turn_msg.c:402,23'
          Dst:             EVP_MD_CTX_new
        - Src:             'src/client/ns_turn_msg.c:403,9'
          Dst:             EVP_default_properties_is_fips_enabled
        - Src:             'src/client/ns_turn_msg.c:404,7'
          Dst:             EVP_default_properties_enable_fips
        - Src:             'src/client/ns_turn_msg.c:406,28'
          Dst:             EVP_md5
        - Src:             'src/client/ns_turn_msg.c:406,5'
          Dst:             EVP_DigestInit_ex
        - Src:             'src/client/ns_turn_msg.c:407,5'
          Dst:             EVP_DigestUpdate
        - Src:             'src/client/ns_turn_msg.c:408,5'
          Dst:             EVP_DigestFinal
        - Src:             'src/client/ns_turn_msg.c:409,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    stun_check_message_integrity_by_key_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2041
      functionLinenumberEnd: 2126
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          250
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - CRYPTO_memcmp
        - get_hmackey_size
        - strlen
        - stun_attr_get_first_by_type_str
        - stun_attr_get_len
        - stun_attr_get_value
        - stun_calculate_hmac
        - stun_get_command_message_len_str
        - stun_set_command_message_len_str
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:2048,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2042,23'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'src/client/ns_turn_msg.c:2048,11'
          Dst:             stun_attr_get_len
        - Src:             'src/client/ns_turn_msg.c:2077,24'
          Dst:             stun_get_command_message_len_str
        - Src:             'src/client/ns_turn_msg.c:2087,8'
          Dst:             stun_set_command_message_len_str
        - Src:             'src/client/ns_turn_msg.c:2094,71'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:2094,10'
          Dst:             stun_calculate_hmac
        - Src:             'src/client/ns_turn_msg.c:2101,71'
          Dst:             get_hmackey_size
        - Src:             'src/client/ns_turn_msg.c:2101,10'
          Dst:             stun_calculate_hmac
        - Src:             'src/client/ns_turn_msg.c:2109,3'
          Dst:             stun_set_command_message_len_str
        - Src:             'src/client/ns_turn_msg.c:2114,29'
          Dst:             stun_attr_get_value
        - Src:             'src/client/ns_turn_msg.c:2121,12'
          Dst:             CRYPTO_memcmp
    - functionName:    stun_attr_get_first_by_type_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1598
      functionLinenumberEnd: 1608
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - stun_attr_get_first_str
        - stun_attr_get_next_str
        - stun_attr_get_type
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1599,24'
          Dst:             stun_attr_get_first_str
        - Src:             'src/client/ns_turn_msg.c:1601,9'
          Dst:             stun_attr_get_type
        - Src:             'src/client/ns_turn_msg.c:1604,12'
          Dst:             stun_attr_get_next_str
    - functionName:    stun_calculate_hmac
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          128
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - ERR_clear_error
        - EVP_sha1
        - EVP_sha256
        - EVP_sha384
        - EVP_sha512
        - HMAC
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:175,3'
          Dst:             ERR_clear_error
        - Src:             'src/client/ns_turn_msg.c:180,15'
          Dst:             EVP_sha256
        - Src:             'src/client/ns_turn_msg.c:180,10'
          Dst:             HMAC
        - Src:             'src/client/ns_turn_msg.c:189,15'
          Dst:             EVP_sha384
        - Src:             'src/client/ns_turn_msg.c:189,10'
          Dst:             HMAC
        - Src:             'src/client/ns_turn_msg.c:198,15'
          Dst:             EVP_sha512
        - Src:             'src/client/ns_turn_msg.c:198,10'
          Dst:             HMAC
        - Src:             'src/client/ns_turn_msg.c:205,20'
          Dst:             EVP_sha1
        - Src:             'src/client/ns_turn_msg.c:205,15'
          Dst:             HMAC
    - functionName:    get_hmackey_size
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1944
      functionLinenumberEnd: 1955
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          40
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CRYPTO_memcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ERR_clear_error
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_sha256
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    HMAC
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_sha384
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_sha512
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_sha1
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stun_attr_get_first_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1631
      functionLinenumberEnd: 1639
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - stun_attr_check_valid
        - stun_get_command_message_len_str
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1632,22'
          Dst:             stun_get_command_message_len_str
        - Src:             'src/client/ns_turn_msg.c:1635,12'
          Dst:             stun_attr_check_valid
    - functionName:    stun_attr_get_type
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1478
      functionLinenumberEnd: 1483
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - turn_read_u16
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1480,17'
          Dst:             turn_read_u16
    - functionName:    stun_attr_get_next_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1641
      functionLinenumberEnd: 1658
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          102
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - stun_attr_check_valid
        - stun_attr_get_first_str
        - stun_attr_get_len
        - stun_get_command_message_len_str
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1643,12'
          Dst:             stun_attr_get_first_str
        - Src:             'src/client/ns_turn_msg.c:1645,32'
          Dst:             stun_get_command_message_len_str
        - Src:             'src/client/ns_turn_msg.c:1646,19'
          Dst:             stun_attr_get_len
        - Src:             'src/client/ns_turn_msg.c:1654,14'
          Dst:             stun_attr_check_valid
    - functionName:    stun_attr_check_valid
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1610
      functionLinenumberEnd: 1629
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - stun_attr_get_len
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1613,22'
          Dst:             stun_attr_get_len
    - functionName:    EVP_MD_CTX_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestInit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestUpdate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestFinal
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_MD_CTX_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_default_properties_is_fips_enabled
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_default_properties_enable_fips
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_md5
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestInit_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stun_attr_add_integrity_by_user_short_term_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2028
      functionLinenumberEnd: 2035
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strlen
        - stun_attr_add_integrity_str
        - stun_attr_add_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2029,72'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:2029,7'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:2034,10'
          Dst:             stun_attr_add_integrity_str
    - functionName:    stun_attr_add_integrity_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1966
      functionLinenumberEnd: 1996
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          117
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - get_hmackey_size
        - strlen
        - stun_attr_add_str
        - stun_calculate_hmac
      functionUses:    4
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:1971,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1985,8'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:1990,62'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:1990,12'
          Dst:             stun_calculate_hmac
        - Src:             'src/client/ns_turn_msg.c:1993,62'
          Dst:             get_hmackey_size
        - Src:             'src/client/ns_turn_msg.c:1993,12'
          Dst:             stun_calculate_hmac
    - functionName:    stun_attr_add_integrity_by_user_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2017
      functionLinenumberEnd: 2025
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - stun_attr_add_integrity_by_key_str
        - stun_produce_integrity_key_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2020,8'
          Dst:             stun_produce_integrity_key_str
        - Src:             'src/client/ns_turn_msg.c:2024,10'
          Dst:             stun_attr_add_integrity_by_key_str
    - functionName:    stun_attr_add_integrity_by_key_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1999
      functionLinenumberEnd: 2014
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - strlen
        - stun_attr_add_integrity_str
        - stun_attr_add_str
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:2000,73'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:2000,8'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:2004,70'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:2004,8'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:2008,70'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:2008,8'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:2013,10'
          Dst:             stun_attr_add_integrity_str
    - functionName:    print_bin_func
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1957
      functionLinenumberEnd: 1963
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          50
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - printf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1958,3'
          Dst:             printf
        - Src:             'src/client/ns_turn_msg.c:1960,5'
          Dst:             printf
        - Src:             'src/client/ns_turn_msg.c:1962,3'
          Dst:             printf
    - functionName:    printf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SASLprep
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1902
      functionLinenumberEnd: 1940
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          117
      EdgeCount:       26
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:1913,7'
          Branch Sides:    []
      Callsites:       []
    - functionName:    stun_attr_add_fingerprint_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1843
      functionLinenumberEnd: 1851
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ns_crc32
        - stun_attr_add_str
        - turn_write_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1845,8'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:1848,11'
          Dst:             ns_crc32
        - Src:             'src/client/ns_turn_msg.c:1849,3'
          Dst:             turn_write_u32
    - functionName:    ns_crc32
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1890
      functionLinenumberEnd: 1895
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          41
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stun_attr_get_first_channel_number_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1825
      functionLinenumberEnd: 1839
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          75
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - stun_attr_get_channel_number
        - stun_attr_get_first_str
        - stun_attr_get_next_str
        - stun_attr_get_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1827,24'
          Dst:             stun_attr_get_first_str
        - Src:             'src/client/ns_turn_msg.c:1829,9'
          Dst:             stun_attr_get_type
        - Src:             'src/client/ns_turn_msg.c:1830,28'
          Dst:             stun_attr_get_channel_number
        - Src:             'src/client/ns_turn_msg.c:1835,12'
          Dst:             stun_attr_get_next_str
    - functionName:    stun_attr_get_channel_number
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1521
      functionLinenumberEnd: 1532
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          74
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - stun_attr_get_len
        - stun_attr_get_value
        - turn_read_u16
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1523,28'
          Dst:             stun_attr_get_value
        - Src:             'src/client/ns_turn_msg.c:1524,19'
          Dst:             stun_attr_get_len
        - Src:             'src/client/ns_turn_msg.c:1525,27'
          Dst:             turn_read_u16
    - functionName:    stun_attr_add_address_error_code
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1808
      functionLinenumberEnd: 1822
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_default_reason
        - strlen
        - strncpy
        - stun_attr_add_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1809,27'
          Dst:             get_default_reason
        - Src:             'src/client/ns_turn_msg.c:1816,3'
          Dst:             strncpy
        - Src:             'src/client/ns_turn_msg.c:1820,29'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:1822,10'
          Dst:             stun_attr_add_str
    - functionName:    get_default_reason
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 817
      functionLinenumberEnd: 878
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          107
      EdgeCount:       40
      CyclomaticComplexity: 21
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:820,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    stun_attr_add_bandwidth_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1799
      functionLinenumberEnd: 1805
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
        - stun_attr_add_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1803,20'
          Dst:             ntohl
        - Src:             'src/client/ns_turn_msg.c:1805,10'
          Dst:             stun_attr_add_str
    - functionName:    stun_attr_get_first_addr_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1775
      functionLinenumberEnd: 1788
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          77
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - stun_attr_get_addr_str
        - stun_attr_get_first_str
        - stun_attr_get_next_str
        - stun_attr_get_type
        - stun_attr_is_addr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1776,24'
          Dst:             stun_attr_get_first_str
        - Src:             'src/client/ns_turn_msg.c:1779,9'
          Dst:             stun_attr_is_addr
        - Src:             'src/client/ns_turn_msg.c:1779,50'
          Dst:             stun_attr_get_type
        - Src:             'src/client/ns_turn_msg.c:1780,11'
          Dst:             stun_attr_get_addr_str
        - Src:             'src/client/ns_turn_msg.c:1784,12'
          Dst:             stun_attr_get_next_str
    - functionName:    stun_attr_is_addr
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1555
      functionLinenumberEnd: 1576
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          80
      EdgeCount:       21
      CyclomaticComplexity: 2
      functionsReached:
        - stun_attr_get_type
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:1558,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1558,13'
          Dst:             stun_attr_get_type
    - functionName:    stun_attr_get_addr_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1731
      functionLinenumberEnd: 1772
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          138
      EdgeCount:       28
      CyclomaticComplexity: 7
      functionsReached:
        - addr_any_no_port
        - addr_cpy
        - addr_get_port
        - addr_set_any
        - addr_set_port
        - map_addr_from_public_to_private
        - stun_addr_decode
        - stun_attr_get_len
        - stun_attr_get_type
        - stun_attr_get_value
        - stun_tid_from_message_str
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:1745,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1733,3'
          Dst:             stun_tid_from_message_str
        - Src:             'src/client/ns_turn_msg.c:1736,3'
          Dst:             addr_set_any
        - Src:             'src/client/ns_turn_msg.c:1737,3'
          Dst:             addr_set_any
        - Src:             'src/client/ns_turn_msg.c:1739,25'
          Dst:             stun_attr_get_type
        - Src:             'src/client/ns_turn_msg.c:1754,27'
          Dst:             stun_attr_get_value
        - Src:             'src/client/ns_turn_msg.c:1759,46'
          Dst:             stun_attr_get_len
        - Src:             'src/client/ns_turn_msg.c:1759,7'
          Dst:             stun_addr_decode
        - Src:             'src/client/ns_turn_msg.c:1763,3'
          Dst:             map_addr_from_public_to_private
        - Src:             'src/client/ns_turn_msg.c:1765,23'
          Dst:             addr_any_no_port
        - Src:             'src/client/ns_turn_msg.c:1765,48'
          Dst:             addr_any_no_port
        - Src:             'src/client/ns_turn_msg.c:1766,27'
          Dst:             addr_get_port
        - Src:             'src/client/ns_turn_msg.c:1767,5'
          Dst:             addr_cpy
        - Src:             'src/client/ns_turn_msg.c:1768,5'
          Dst:             addr_set_port
    - functionName:    stun_tid_from_message_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1430
      functionLinenumberEnd: 1433
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          28
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - stun_tid_from_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1432,3'
          Dst:             stun_tid_from_string
    - functionName:    addr_cpy
      functionSourceFile: '/src/coturn/src/client/ns_turn_ioaddr.h'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stun_tid_from_string
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1424
      functionLinenumberEnd: 1428
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stun_attr_get_next_covered_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1590
      functionLinenumberEnd: 1596
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - stun_attr_get_next_str
        - stun_attr_get_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1592,15'
          Dst:             stun_attr_get_type
        - Src:             'src/client/ns_turn_msg.c:1595,10'
          Dst:             stun_attr_get_next_str
    - functionName:    stun_attr_get_even_port
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1578
      functionLinenumberEnd: 1588
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          52
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - stun_attr_get_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1580,28'
          Dst:             stun_attr_get_value
    - functionName:    stun_attr_get_reservation_token_value
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1545
      functionLinenumberEnd: 1553
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          52
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - stun_attr_get_len
        - stun_attr_get_value
        - turn_read_u64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1547,28'
          Dst:             stun_attr_get_value
        - Src:             'src/client/ns_turn_msg.c:1548,19'
          Dst:             stun_attr_get_len
        - Src:             'src/client/ns_turn_msg.c:1549,14'
          Dst:             turn_read_u64
    - functionName:    stun_attr_get_bandwidth
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1534
      functionLinenumberEnd: 1543
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          57
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - stun_attr_get_len
        - stun_attr_get_value
        - turn_read_u32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1536,28'
          Dst:             stun_attr_get_value
        - Src:             'src/client/ns_turn_msg.c:1537,19'
          Dst:             stun_attr_get_len
        - Src:             'src/client/ns_turn_msg.c:1538,28'
          Dst:             turn_read_u32
    - functionName:    stun_get_requested_address_family
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1503
      functionLinenumberEnd: 1519
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - turn_read_u16
      functionUses:    2
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:1510,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1505,26'
          Dst:             turn_read_u16
    - functionName:    stun_adjust_allocate_lifetime
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1459
      functionLinenumberEnd: 1473
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          69
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    turn_random_tid_size
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          51
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - turn_random_number
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:159,36'
          Dst:             turn_random_number
    - functionName:    stun_tid_generate
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1441
      functionLinenumberEnd: 1445
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - turn_random_tid_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1443,5'
          Dst:             turn_random_tid_size
    - functionName:    stun_tid_string_cpy
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1418
      functionLinenumberEnd: 1422
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stun_tid_cpy
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1411
      functionLinenumberEnd: 1416
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          34
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stun_tid_equals
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1396
      functionLinenumberEnd: 1409
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          75
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stun_is_binding_response_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1385
      functionLinenumberEnd: 1392
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - stun_get_method_str
        - stun_is_command_message_str
        - stun_is_response_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1386,7'
          Dst:             stun_is_command_message_str
        - Src:             'src/client/ns_turn_msg.c:1386,49'
          Dst:             stun_get_method_str
        - Src:             'src/client/ns_turn_msg.c:1387,9'
          Dst:             stun_is_response_str
    - functionName:    stun_is_command_message_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 575
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          116
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - turn_read_u16
        - turn_read_u32
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:577,10'
          Dst:             turn_read_u16
        - Src:             'src/client/ns_turn_msg.c:577,10'
          Dst:             turn_read_u16
        - Src:             'src/client/ns_turn_msg.c:579,13'
          Dst:             turn_read_u32
        - Src:             'src/client/ns_turn_msg.c:580,32'
          Dst:             turn_read_u16
    - functionName:    stun_get_method_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 552
      functionLinenumberEnd: 560
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - turn_read_u16
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:557,23'
          Dst:             turn_read_u16
    - functionName:    stun_is_response_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 753
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - is_channel_msg_str
        - stun_get_msg_type_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:743,7'
          Dst:             is_channel_msg_str
        - Src:             'src/client/ns_turn_msg.c:746,7'
          Dst:             stun_get_msg_type_str
        - Src:             'src/client/ns_turn_msg.c:749,7'
          Dst:             stun_get_msg_type_str
    - functionName:    is_channel_msg_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 569
      functionLinenumberEnd: 570
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - turn_read_u16
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:570,31'
          Dst:             turn_read_u16
        - Src:             'src/client/ns_turn_msg.c:570,31'
          Dst:             turn_read_u16
    - functionName:    stun_get_msg_type_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 567
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - turn_read_u16
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:566,11'
          Dst:             turn_read_u16
    - functionName:    stun_is_binding_request_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1372
      functionLinenumberEnd: 1383
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          72
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - stun_get_method_str
        - stun_is_command_message_str
        - stun_is_request_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1376,9'
          Dst:             stun_is_command_message_str
        - Src:             'src/client/ns_turn_msg.c:1377,11'
          Dst:             stun_is_request_str
        - Src:             'src/client/ns_turn_msg.c:1377,45'
          Dst:             stun_get_method_str
    - functionName:    stun_is_request_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 643
      functionLinenumberEnd: 648
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_channel_msg_str
        - stun_get_msg_type_str
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:644,7'
          Dst:             is_channel_msg_str
        - Src:             'src/client/ns_turn_msg.c:647,10'
          Dst:             stun_get_msg_type_str
    - functionName:    stun_set_binding_response_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1340
      functionLinenumberEnd: 1370
      functionDepth:   0
      returnType:      bool
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - bool
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          162
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - old_stun_init_error_response_str
        - old_stun_init_success_response_str
        - stun_attr_add_addr_str
        - stun_init_error_response_str
        - stun_init_success_response_str
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1343,7'
          Dst:             stun_init_success_response_str
        - Src:             'src/client/ns_turn_msg.c:1345,7'
          Dst:             old_stun_init_success_response_str
        - Src:             'src/client/ns_turn_msg.c:1348,12'
          Dst:             stun_attr_add_addr_str
        - Src:             'src/client/ns_turn_msg.c:1358,12'
          Dst:             stun_attr_add_addr_str
        - Src:             'src/client/ns_turn_msg.c:1363,5'
          Dst:             stun_init_error_response_str
        - Src:             'src/client/ns_turn_msg.c:1365,5'
          Dst:             old_stun_init_error_response_str
    - functionName:    stun_init_success_response_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 803
      functionLinenumberEnd: 808
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - stun_init_command_str
        - stun_make_success_response
        - stun_tid_message_cpy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:804,25'
          Dst:             stun_make_success_response
        - Src:             'src/client/ns_turn_msg.c:804,3'
          Dst:             stun_init_command_str
        - Src:             'src/client/ns_turn_msg.c:806,5'
          Dst:             stun_tid_message_cpy
    - functionName:    old_stun_init_success_response_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 810
      functionLinenumberEnd: 815
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - old_stun_init_command_str
        - stun_make_success_response
        - stun_tid_message_cpy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:811,29'
          Dst:             stun_make_success_response
        - Src:             'src/client/ns_turn_msg.c:811,3'
          Dst:             old_stun_init_command_str
        - Src:             'src/client/ns_turn_msg.c:813,5'
          Dst:             stun_tid_message_cpy
    - functionName:    stun_attr_add_addr_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1699
      functionLinenumberEnd: 1728
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - map_addr_from_private_to_public
        - stun_addr_encode
        - stun_attr_add_str
        - stun_tid_from_message_str
      functionUses:    13
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:1705,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1702,3'
          Dst:             stun_tid_from_message_str
        - Src:             'src/client/ns_turn_msg.c:1715,3'
          Dst:             map_addr_from_private_to_public
        - Src:             'src/client/ns_turn_msg.c:1719,7'
          Dst:             stun_addr_encode
        - Src:             'src/client/ns_turn_msg.c:1723,8'
          Dst:             stun_attr_add_str
    - functionName:    stun_init_error_response_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 925
      functionLinenumberEnd: 930
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stun_init_command_str
        - stun_init_error_response_common_str
        - stun_make_error_response
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:927,25'
          Dst:             stun_make_error_response
        - Src:             'src/client/ns_turn_msg.c:927,3'
          Dst:             stun_init_command_str
        - Src:             'src/client/ns_turn_msg.c:929,3'
          Dst:             stun_init_error_response_common_str
    - functionName:    old_stun_init_error_response_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 917
      functionLinenumberEnd: 922
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - old_stun_init_command_str
        - stun_init_error_response_common_str
        - stun_make_error_response
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:919,29'
          Dst:             stun_make_error_response
        - Src:             'src/client/ns_turn_msg.c:919,3'
          Dst:             old_stun_init_command_str
        - Src:             'src/client/ns_turn_msg.c:921,3'
          Dst:             stun_init_error_response_common_str
    - functionName:    stun_make_error_response
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 768
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stun_make_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:768,61'
          Dst:             stun_make_type
    - functionName:    old_stun_init_command_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 786
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stun_init_buffer_str
        - stun_tid_generate_in_message_str
        - turn_write_u16
        - turn_write_u32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:787,3'
          Dst:             stun_init_buffer_str
        - Src:             'src/client/ns_turn_msg.c:789,3'
          Dst:             turn_write_u16
        - Src:             'src/client/ns_turn_msg.c:790,3'
          Dst:             turn_write_u16
        - Src:             'src/client/ns_turn_msg.c:791,3'
          Dst:             turn_write_u32
        - Src:             'src/client/ns_turn_msg.c:792,3'
          Dst:             stun_tid_generate_in_message_str
    - functionName:    stun_init_error_response_common_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 882
      functionLinenumberEnd: 913
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          150
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - get_default_reason
        - strcmp
        - strlen
        - strncpy
        - stun_attr_add_str
        - stun_tid_message_cpy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:884,45'
          Dst:             strcmp
        - Src:             'src/client/ns_turn_msg.c:885,14'
          Dst:             get_default_reason
        - Src:             'src/client/ns_turn_msg.c:895,5'
          Dst:             strncpy
        - Src:             'src/client/ns_turn_msg.c:898,23'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:909,3'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:911,5'
          Dst:             stun_tid_message_cpy
    - functionName:    stun_tid_message_cpy
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1435
      functionLinenumberEnd: 1439
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          37
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - stun_tid_string_cpy
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1437,5'
          Dst:             stun_tid_string_cpy
    - functionName:    stun_init_buffer_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 772
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stun_tid_generate_in_message_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1447
      functionLinenumberEnd: 1454
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - stun_tid_generate
        - stun_tid_message_cpy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1452,3'
          Dst:             stun_tid_generate
        - Src:             'src/client/ns_turn_msg.c:1453,3'
          Dst:             stun_tid_message_cpy
    - functionName:    stun_make_type
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 549
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stun_init_command_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 777
      functionLinenumberEnd: 784
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stun_init_buffer_str
        - stun_tid_generate_in_message_str
        - turn_write_u16
        - turn_write_u32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:778,3'
          Dst:             stun_init_buffer_str
        - Src:             'src/client/ns_turn_msg.c:780,3'
          Dst:             turn_write_u16
        - Src:             'src/client/ns_turn_msg.c:781,3'
          Dst:             turn_write_u16
        - Src:             'src/client/ns_turn_msg.c:782,3'
          Dst:             turn_write_u32
        - Src:             'src/client/ns_turn_msg.c:783,3'
          Dst:             stun_tid_generate_in_message_str
    - functionName:    stun_make_success_response
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 766
      functionLinenumberEnd: 766
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stun_make_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:766,63'
          Dst:             stun_make_type
    - functionName:    stun_set_binding_request_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1334
      functionLinenumberEnd: 1334
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stun_init_request_str
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1334,64'
          Dst:             stun_init_request_str
    - functionName:    stun_init_request_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 795
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stun_init_command_str
        - stun_make_request
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:796,25'
          Dst:             stun_make_request
        - Src:             'src/client/ns_turn_msg.c:796,3'
          Dst:             stun_init_command_str
    - functionName:    stun_make_request
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stun_make_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:762,54'
          Dst:             stun_make_type
    - functionName:    stun_set_channel_bind_response_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1324
      functionLinenumberEnd: 1330
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - stun_init_error_response_str
        - stun_init_success_response_str
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1326,5'
          Dst:             stun_init_success_response_str
        - Src:             'src/client/ns_turn_msg.c:1328,5'
          Dst:             stun_init_error_response_str
    - functionName:    stun_attr_add_channel_number_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1790
      functionLinenumberEnd: 1796
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - stun_attr_add_str
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1793,14'
          Dst:             ntohs
        - Src:             'src/client/ns_turn_msg.c:1796,10'
          Dst:             stun_attr_add_str
    - functionName:    stun_set_channel_bind_request_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1295
      functionLinenumberEnd: 1321
      functionDepth:   0
      returnType:      short
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          100
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - stun_attr_add_addr_str
        - stun_attr_add_channel_number_str
        - stun_init_request_str
        - turn_random_number
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1298,54'
          Dst:             turn_random_number
        - Src:             'src/client/ns_turn_msg.c:1301,3'
          Dst:             stun_init_request_str
        - Src:             'src/client/ns_turn_msg.c:1303,8'
          Dst:             stun_attr_add_channel_number_str
        - Src:             'src/client/ns_turn_msg.c:1311,10'
          Dst:             stun_attr_add_addr_str
        - Src:             'src/client/ns_turn_msg.c:1315,10'
          Dst:             stun_attr_add_addr_str
    - functionName:    stun_set_allocate_response_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1237
      functionLinenumberEnd: 1290
      functionDepth:   0
      returnType:      bool
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          217
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - _ioa_ntoh64
        - ntohl
        - strlen
        - stun_attr_add_addr_str
        - stun_attr_add_str
        - stun_init_error_response_str
        - stun_init_success_response_str
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1241,5'
          Dst:             stun_init_success_response_str
        - Src:             'src/client/ns_turn_msg.c:1244,12'
          Dst:             stun_attr_add_addr_str
        - Src:             'src/client/ns_turn_msg.c:1250,12'
          Dst:             stun_attr_add_addr_str
        - Src:             'src/client/ns_turn_msg.c:1256,12'
          Dst:             stun_attr_add_addr_str
        - Src:             'src/client/ns_turn_msg.c:1262,27'
          Dst:             _ioa_ntoh64
        - Src:             'src/client/ns_turn_msg.c:1263,7'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:1273,24'
          Dst:             ntohl
        - Src:             'src/client/ns_turn_msg.c:1274,12'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:1280,99'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:1280,12'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:1286,5'
          Dst:             stun_init_error_response_str
    - functionName:    stun_set_allocate_request_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1148
      functionLinenumberEnd: 1232
      functionDepth:   0
      returnType:      bool
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - bool
        - char
        - bool
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          257
      EdgeCount:       62
      CyclomaticComplexity: 19
      functionsReached:
        - ntohl
        - stun_attr_add_str
        - stun_init_request_str
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1150,3'
          Dst:             stun_init_request_str
        - Src:             'src/client/ns_turn_msg.c:1159,10'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:1169,22'
          Dst:             ntohl
        - Src:             'src/client/ns_turn_msg.c:1170,10'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:1177,10'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:1184,10'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:1192,5'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:1203,12'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:1214,12'
          Dst:             stun_attr_add_str
        - Src:             'src/client/ns_turn_msg.c:1225,12'
          Dst:             stun_attr_add_str
    - functionName:    stun_get_message_len_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1085
      functionLinenumberEnd: 1143
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          259
      EdgeCount:       69
      CyclomaticComplexity: 20
      functionsReached:
        - is_http
        - turn_read_u16
        - turn_read_u32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1089,12'
          Dst:             turn_read_u16
        - Src:             'src/client/ns_turn_msg.c:1089,12'
          Dst:             turn_read_u16
        - Src:             'src/client/ns_turn_msg.c:1091,15'
          Dst:             turn_read_u32
        - Src:             'src/client/ns_turn_msg.c:1097,38'
          Dst:             turn_read_u16
        - Src:             'src/client/ns_turn_msg.c:1112,28'
          Dst:             is_http
        - Src:             'src/client/ns_turn_msg.c:1121,28'
          Dst:             turn_read_u16
        - Src:             'src/client/ns_turn_msg.c:1127,40'
          Dst:             turn_read_u16
    - functionName:    is_http
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1056
      functionLinenumberEnd: 1083
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          184
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - __isoc23_strtoul
        - findstr
        - has_prefix
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1058,9'
          Dst:             has_prefix
        - Src:             'src/client/ns_turn_msg.c:1058,47'
          Dst:             has_prefix
        - Src:             'src/client/ns_turn_msg.c:1059,9'
          Dst:             has_prefix
        - Src:             'src/client/ns_turn_msg.c:1059,50'
          Dst:             has_prefix
        - Src:             'src/client/ns_turn_msg.c:1060,24'
          Dst:             findstr
        - Src:             'src/client/ns_turn_msg.c:1065,16'
          Dst:             findstr
        - Src:             'src/client/ns_turn_msg.c:1069,30'
          Dst:             findstr
        - Src:             'src/client/ns_turn_msg.c:1071,55'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:1071,42'
          Dst:             __isoc23_strtoul
    - functionName:    has_prefix
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1047
      functionLinenumberEnd: 1054
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          63
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - sheadof
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1052,29'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:1053,34'
          Dst:             sheadof
    - functionName:    findstr
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1027
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          105
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - sheadof
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:1031,25'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:1036,13'
          Dst:             sheadof
    - functionName:    __isoc23_strtoul
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stun_is_channel_message_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 956
      functionLinenumberEnd: 1008
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          194
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - turn_read_u16
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:964,24'
          Dst:             turn_read_u16
        - Src:             'src/client/ns_turn_msg.c:976,20'
          Dst:             turn_read_u16
    - functionName:    stun_init_channel_message_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 934
      functionLinenumberEnd: 954
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          107
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - turn_write_u16
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:940,3'
          Dst:             turn_write_u16
        - Src:             'src/client/ns_turn_msg.c:941,3'
          Dst:             turn_write_u16
    - functionName:    stun_init_indication_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 799
      functionLinenumberEnd: 801
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stun_init_command_str
        - stun_make_indication
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:800,25'
          Dst:             stun_make_indication
        - Src:             'src/client/ns_turn_msg.c:800,3'
          Dst:             stun_init_command_str
    - functionName:    stun_make_indication
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 764
      functionLinenumberEnd: 764
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stun_make_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:764,57'
          Dst:             stun_make_type
    - functionName:    stun_is_indication_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 755
      functionLinenumberEnd: 760
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_channel_msg_str
        - stun_get_msg_type_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:756,7'
          Dst:             is_channel_msg_str
        - Src:             'src/client/ns_turn_msg.c:759,10'
          Dst:             stun_get_msg_type_str
    - functionName:    stun_is_challenge_response_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 689
      functionLinenumberEnd: 740
      functionDepth:   0
      returnType:      bool
      argCount:        9
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          264
      EdgeCount:       62
      CyclomaticComplexity: 17
      functionsReached:
        - stun_attr_get_first_by_type_str
        - stun_attr_get_len
        - stun_attr_get_value
        - stun_is_error_response_str
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:690,20'
          Dst:             stun_is_error_response_str
        - Src:             'src/client/ns_turn_msg.c:693,25'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'src/client/ns_turn_msg.c:697,30'
          Dst:             stun_attr_get_value
        - Src:             'src/client/ns_turn_msg.c:699,31'
          Dst:             stun_attr_get_len
        - Src:             'src/client/ns_turn_msg.c:704,17'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'src/client/ns_turn_msg.c:706,21'
          Dst:             stun_attr_get_value
        - Src:             'src/client/ns_turn_msg.c:708,30'
          Dst:             stun_attr_get_len
        - Src:             'src/client/ns_turn_msg.c:721,15'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'src/client/ns_turn_msg.c:723,19'
          Dst:             stun_attr_get_value
        - Src:             'src/client/ns_turn_msg.c:725,28'
          Dst:             stun_attr_get_len
    - functionName:    stun_is_error_response_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 657
      functionLinenumberEnd: 685
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          155
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - is_channel_msg_str
        - stun_attr_get_first_by_type_str
        - stun_attr_get_len
        - stun_attr_get_value
        - stun_get_msg_type_str
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:658,7'
          Dst:             is_channel_msg_str
        - Src:             'src/client/ns_turn_msg.c:661,7'
          Dst:             stun_get_msg_type_str
        - Src:             'src/client/ns_turn_msg.c:663,27'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'src/client/ns_turn_msg.c:665,13'
          Dst:             stun_attr_get_len
        - Src:             'src/client/ns_turn_msg.c:666,49'
          Dst:             stun_attr_get_value
        - Src:             'src/client/ns_turn_msg.c:670,17'
          Dst:             stun_attr_get_len
        - Src:             'src/client/ns_turn_msg.c:671,32'
          Dst:             stun_attr_get_len
    - functionName:    stun_is_success_response_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 655
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_channel_msg_str
        - stun_get_msg_type_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:651,7'
          Dst:             is_channel_msg_str
        - Src:             'src/client/ns_turn_msg.c:654,10'
          Dst:             stun_get_msg_type_str
    - functionName:    stun_is_command_message_full_check_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 641
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          144
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - ns_crc32
        - stun_attr_get_first_by_type_str
        - stun_attr_get_len
        - stun_attr_get_value
        - stun_get_method_str
        - stun_is_command_message_str
        - turn_read_u32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:615,8'
          Dst:             stun_is_command_message_str
        - Src:             'src/client/ns_turn_msg.c:618,23'
          Dst:             stun_attr_get_first_by_type_str
        - Src:             'src/client/ns_turn_msg.c:623,9'
          Dst:             stun_get_method_str
        - Src:             'src/client/ns_turn_msg.c:628,7'
          Dst:             stun_attr_get_len
        - Src:             'src/client/ns_turn_msg.c:631,32'
          Dst:             stun_attr_get_value
        - Src:             'src/client/ns_turn_msg.c:636,21'
          Dst:             turn_read_u32
        - Src:             'src/client/ns_turn_msg.c:636,52'
          Dst:             ns_crc32
    - functionName:    old_stun_is_command_message_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 593
      functionLinenumberEnd: 611
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          124
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - turn_read_u16
        - turn_read_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:595,10'
          Dst:             turn_read_u16
        - Src:             'src/client/ns_turn_msg.c:595,10'
          Dst:             turn_read_u16
        - Src:             'src/client/ns_turn_msg.c:597,37'
          Dst:             turn_read_u32
        - Src:             'src/client/ns_turn_msg.c:599,32'
          Dst:             turn_read_u16
    - functionName:    const_time_str_equal
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - CRYPTO_memcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:500,21'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:501,13'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:504,10'
          Dst:             CRYPTO_memcmp
    - functionName:    encrypted_password
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          121
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - __isoc23_strtoul
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:480,7'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:488,34'
          Dst:             __isoc23_strtoul
    - functionName:    check_password_equal
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - const_time_str_equal
        - encrypted_password
        - generate_enc_password
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:509,8'
          Dst:             encrypted_password
        - Src:             'src/client/ns_turn_msg.c:510,12'
          Dst:             const_time_str_equal
        - Src:             'src/client/ns_turn_msg.c:513,3'
          Dst:             generate_enc_password
        - Src:             'src/client/ns_turn_msg.c:514,10'
          Dst:             const_time_str_equal
    - functionName:    generate_enc_password
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          90
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EVP_DigestFinal
        - EVP_DigestInit
        - EVP_DigestUpdate
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_sha256
        - generate_random_nonce
        - readable_string
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:444,5'
          Dst:             generate_random_nonce
        - Src:             'src/client/ns_turn_msg.c:450,3'
          Dst:             readable_string
        - Src:             'src/client/ns_turn_msg.c:458,23'
          Dst:             EVP_MD_CTX_new
        - Src:             'src/client/ns_turn_msg.c:460,25'
          Dst:             EVP_sha256
        - Src:             'src/client/ns_turn_msg.c:460,5'
          Dst:             EVP_DigestInit
        - Src:             'src/client/ns_turn_msg.c:464,5'
          Dst:             EVP_DigestUpdate
        - Src:             'src/client/ns_turn_msg.c:465,32'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:465,5'
          Dst:             EVP_DigestUpdate
        - Src:             'src/client/ns_turn_msg.c:469,7'
          Dst:             EVP_DigestFinal
        - Src:             'src/client/ns_turn_msg.c:470,7'
          Dst:             readable_string
        - Src:             'src/client/ns_turn_msg.c:472,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    generate_new_enc_password
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - generate_enc_password
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:476,65'
          Dst:             generate_enc_password
    - functionName:    turn_check_stateless_nonce
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          280
      EdgeCount:       70
      CyclomaticComplexity: 20
      functionsReached:
        - stateless_nonce_mac
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:288,7'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:311,8'
          Dst:             stateless_nonce_mac
    - functionName:    stateless_nonce_mac
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          121
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - addr_to_string
        - snprintf
        - strlen
        - stun_calculate_hmac
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:223,3'
          Dst:             addr_to_string
        - Src:             'src/client/ns_turn_msg.c:224,23'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:225,3'
          Dst:             snprintf
        - Src:             'src/client/ns_turn_msg.c:227,50'
          Dst:             strlen
        - Src:             'src/client/ns_turn_msg.c:227,8'
          Dst:             stun_calculate_hmac
    - functionName:    turn_generate_stateless_nonce
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          94
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - snprintf
        - stateless_nonce_mac
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:270,3'
          Dst:             snprintf
        - Src:             'src/client/ns_turn_msg.c:273,8'
          Dst:             stateless_nonce_mac
        - Src:             'src/client/ns_turn_msg.c:277,3'
          Dst:             snprintf
    - functionName:    turn_derive_stateless_nonce_key
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          124
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - ERR_clear_error
        - EVP_DigestFinal
        - EVP_DigestInit
        - EVP_DigestUpdate
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_sha256
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:249,3'
          Dst:             ERR_clear_error
        - Src:             'src/client/ns_turn_msg.c:250,21'
          Dst:             EVP_MD_CTX_new
        - Src:             'src/client/ns_turn_msg.c:255,40'
          Dst:             EVP_sha256
        - Src:             'src/client/ns_turn_msg.c:255,20'
          Dst:             EVP_DigestInit
        - Src:             'src/client/ns_turn_msg.c:255,64'
          Dst:             EVP_DigestUpdate
        - Src:             'src/client/ns_turn_msg.c:256,20'
          Dst:             EVP_DigestUpdate
        - Src:             'src/client/ns_turn_msg.c:256,72'
          Dst:             EVP_DigestFinal
        - Src:             'src/client/ns_turn_msg.c:258,3'
          Dst:             EVP_MD_CTX_free
    - functionName:    stun_method_str
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          97
      EdgeCount:       18
      CyclomaticComplexity: 2
      functionsReached:
        - strncpy
      functionUses:    0
      BranchProfiles:
        - Branch String:   'src/client/ns_turn_msg.c:63,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/client/ns_turn_msg.c:99,5'
          Dst:             strncpy
    - functionName:    stun_addr_decode
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg_addr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          308
      EdgeCount:       63
      CyclomaticComplexity: 18
      functionsReached:
        - ntohl
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg_addr.c:161,26'
          Dst:             ntohs
        - Src:             'src/client/ns_turn_msg_addr.c:162,33'
          Dst:             ntohl
        - Src:             'src/client/ns_turn_msg_addr.c:184,24'
          Dst:             ntohl
        - Src:             'src/client/ns_turn_msg_addr.c:187,27'
          Dst:             ntohs
    - functionName:    stun_addr_encode
      functionSourceFile: '/src/coturn/src/client/ns_turn_msg_addr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          291
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - ntohl
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/client/ns_turn_msg_addr.c:60,49'
          Dst:             ntohs
        - Src:             'src/client/ns_turn_msg_addr.c:64,56'
          Dst:             ntohl
        - Src:             'src/client/ns_turn_msg_addr.c:92,24'
          Dst:             ntohl
        - Src:             'src/client/ns_turn_msg_addr.c:95,48'
          Dst:             ntohs
    - functionName:    sighup_callback_handler
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          19
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    turn_atomic_load_u32
      functionSourceFile: '/src/coturn/src/ns_turn_atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_date
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - localtime
        - strftime
        - time
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:325,11'
          Dst:             time
        - Src:             'src/apps/common/ns_turn_utils.c:326,13'
          Dst:             localtime
        - Src:             'src/apps/common/ns_turn_utils.c:328,3'
          Dst:             strftime
    - functionName:    localtime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strftime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_secure_string
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 853
      functionLinenumberEnd: 873
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          144
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - strdup
        - strstr
        - tolower
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:856,42'
          Dst:             strdup
        - Src:             'src/apps/common/ns_turn_utils.c:859,27'
          Dst:             tolower
        - Src:             'src/apps/common/ns_turn_utils.c:863,9'
          Dst:             strstr
        - Src:             'src/apps/common/ns_turn_utils.c:863,35'
          Dst:             strstr
        - Src:             'src/apps/common/ns_turn_utils.c:863,62'
          Dst:             strstr
        - Src:             'src/apps/common/ns_turn_utils.c:863,88'
          Dst:             strstr
        - Src:             'src/apps/common/ns_turn_utils.c:864,9'
          Dst:             strstr
        - Src:             'src/apps/common/ns_turn_utils.c:864,36'
          Dst:             strstr
        - Src:             'src/apps/common/ns_turn_utils.c:864,63'
          Dst:             strstr
        - Src:             'src/apps/common/ns_turn_utils.c:866,31'
          Dst:             strstr
        - Src:             'src/apps/common/ns_turn_utils.c:866,61'
          Dst:             strstr
    - functionName:    strdup
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_canonic_origin
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 848
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          272
      EdgeCount:       58
      CyclomaticComplexity: 17
      functionsReached:
        - evhttp_uri_free
        - evhttp_uri_get_host
        - evhttp_uri_get_port
        - evhttp_uri_get_scheme
        - evhttp_uri_parse
        - get_default_protocol_port
        - snprintf
        - strlen
        - strncpy
        - tolower
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:795,30'
          Dst:             evhttp_uri_parse
        - Src:             'src/apps/common/ns_turn_utils.c:797,28'
          Dst:             evhttp_uri_get_scheme
        - Src:             'src/apps/common/ns_turn_utils.c:799,31'
          Dst:             strlen
        - Src:             'src/apps/common/ns_turn_utils.c:801,30'
          Dst:             evhttp_uri_get_host
        - Src:             'src/apps/common/ns_turn_utils.c:810,37'
          Dst:             tolower
        - Src:             'src/apps/common/ns_turn_utils.c:815,24'
          Dst:             evhttp_uri_get_port
        - Src:             'src/apps/common/ns_turn_utils.c:817,22'
          Dst:             get_default_protocol_port
        - Src:             'src/apps/common/ns_turn_utils.c:820,15'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:822,15'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:828,37'
          Dst:             tolower
        - Src:             'src/apps/common/ns_turn_utils.c:833,13'
          Dst:             strncpy
        - Src:             'src/apps/common/ns_turn_utils.c:839,7'
          Dst:             evhttp_uri_free
        - Src:             'src/apps/common/ns_turn_utils.c:843,7'
          Dst:             strncpy
    - functionName:    evhttp_uri_parse
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    evhttp_uri_get_scheme
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    evhttp_uri_get_host
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    evhttp_uri_get_port
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_default_protocol_port
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 788
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         48
      ICount:          223
      EdgeCount:       65
      CyclomaticComplexity: 19
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/apps/common/ns_turn_utils.c:724,5'
          Branch Sides:    []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:726,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:729,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:732,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:735,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:740,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:743,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:746,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:749,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:752,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:757,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:760,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:763,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:766,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:771,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:774,12'
          Dst:             memcmp
        - Src:             'src/apps/common/ns_turn_utils.c:779,12'
          Dst:             memcmp
    - functionName:    evhttp_uri_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    turn_strdup_impl
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 709
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strdup
        - strlen
        - turn_out_of_memory
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:713,15'
          Dst:             strdup
        - Src:             'src/apps/common/ns_turn_utils.c:715,46'
          Dst:             strlen
        - Src:             'src/apps/common/ns_turn_utils.c:715,5'
          Dst:             turn_out_of_memory
    - functionName:    turn_out_of_memory
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 680
      functionLinenumberEnd: 682
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - turn_log_func_default
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:680,3'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:682,3'
          Dst:             abort
    - functionName:    turn_log_func_default
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 667
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          259
      EdgeCount:       40
      CyclomaticComplexity: 9
      functionsReached:
        - fflush
        - fprintf
        - fwrite
        - get_syslog_level
        - localtime
        - log_lock
        - log_time
        - log_unlock
        - reset_rtpprintf
        - set_rtpfile
        - snprintf
        - strftime
        - syscall
        - syslog
        - time
        - vsnprintf
      functionUses:    28
      BranchProfiles:
        - Branch String:   'src/apps/common/ns_turn_utils.c:622,3'
          Branch Sides:    []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:608,24'
          Dst:             time
        - Src:             'src/apps/common/ns_turn_utils.c:609,65'
          Dst:             localtime
        - Src:             'src/apps/common/ns_turn_utils.c:609,15'
          Dst:             strftime
        - Src:             'src/apps/common/ns_turn_utils.c:611,62'
          Dst:             log_time
        - Src:             'src/apps/common/ns_turn_utils.c:611,15'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:615,102'
          Dst:             syscall
        - Src:             'src/apps/common/ns_turn_utils.c:615,13'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:619,15'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:624,15'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:627,15'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:630,15'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:633,15'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:636,13'
          Dst:             vsnprintf
        - Src:             'src/apps/common/ns_turn_utils.c:642,5'
          Dst:             fwrite
        - Src:             'src/apps/common/ns_turn_utils.c:652,30'
          Dst:             get_syslog_level
        - Src:             'src/apps/common/ns_turn_utils.c:652,5'
          Dst:             syslog
        - Src:             'src/apps/common/ns_turn_utils.c:656,5'
          Dst:             log_lock
        - Src:             'src/apps/common/ns_turn_utils.c:657,5'
          Dst:             set_rtpfile
        - Src:             'src/apps/common/ns_turn_utils.c:658,9'
          Dst:             fprintf
        - Src:             'src/apps/common/ns_turn_utils.c:659,7'
          Dst:             reset_rtpprintf
        - Src:             'src/apps/common/ns_turn_utils.c:660,16'
          Dst:             fflush
        - Src:             'src/apps/common/ns_turn_utils.c:661,7'
          Dst:             reset_rtpprintf
        - Src:             'src/apps/common/ns_turn_utils.c:663,5'
          Dst:             log_unlock
    - functionName:    abort
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log_time
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - time
        - turn_atomic_load_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:76,22'
          Dst:             time
        - Src:             'src/apps/common/ns_turn_utils.c:79,25'
          Dst:             turn_atomic_load_u32
        - Src:             'src/apps/common/ns_turn_utils.c:84,11'
          Dst:             time
    - functionName:    syscall
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vsnprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fwrite
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_syslog_level
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 582
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       10
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'src/apps/common/ns_turn_utils.c:572,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    syslog
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log_lock
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - turn_mutex_init_recursive
        - turn_mutex_lock
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:314,5'
          Dst:             turn_mutex_init_recursive
        - Src:             'src/apps/common/ns_turn_utils.c:316,3'
          Dst:             turn_mutex_lock
    - functionName:    set_rtpfile
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         67
      ICount:          315
      EdgeCount:       87
      CyclomaticComplexity: 22
      functionsReached:
        - fopen
        - fprintf
        - getpid
        - printf
        - reset_rtpprintf
        - set_log_file_name_func
        - sighup_callback_handler
        - signal
        - snprintf
        - strcmp
        - strncpy
        - turn_log_func_default
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:420,5'
          Dst:             printf
        - Src:             'src/apps/common/ns_turn_utils.c:421,5'
          Dst:             reset_rtpprintf
        - Src:             'src/apps/common/ns_turn_utils.c:430,5'
          Dst:             signal
        - Src:             'src/apps/common/ns_turn_utils.c:430,5'
          Dst:             sighup_callback_handler
        - Src:             'src/apps/common/ns_turn_utils.c:434,12'
          Dst:             strcmp
        - Src:             'src/apps/common/ns_turn_utils.c:437,19'
          Dst:             strcmp
        - Src:             'src/apps/common/ns_turn_utils.c:437,53'
          Dst:             strcmp
        - Src:             'src/apps/common/ns_turn_utils.c:441,9'
          Dst:             set_log_file_name_func
        - Src:             'src/apps/common/ns_turn_utils.c:442,20'
          Dst:             fopen
        - Src:             'src/apps/common/ns_turn_utils.c:444,11'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:448,9'
          Dst:             fprintf
        - Src:             'src/apps/common/ns_turn_utils.c:462,7'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:464,56'
          Dst:             getpid
        - Src:             'src/apps/common/ns_turn_utils.c:464,7'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:467,9'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:468,7'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:471,5'
          Dst:             set_log_file_name_func
        - Src:             'src/apps/common/ns_turn_utils.c:473,16'
          Dst:             fopen
        - Src:             'src/apps/common/ns_turn_utils.c:475,7'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:477,11'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:478,9'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:481,7'
          Dst:             set_log_file_name_func
        - Src:             'src/apps/common/ns_turn_utils.c:482,18'
          Dst:             fopen
        - Src:             'src/apps/common/ns_turn_utils.c:484,9'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:486,13'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:487,11'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:490,9'
          Dst:             set_log_file_name_func
        - Src:             'src/apps/common/ns_turn_utils.c:491,20'
          Dst:             fopen
        - Src:             'src/apps/common/ns_turn_utils.c:493,11'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:495,15'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:496,13'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:498,11'
          Dst:             set_log_file_name_func
        - Src:             'src/apps/common/ns_turn_utils.c:499,22'
          Dst:             fopen
        - Src:             'src/apps/common/ns_turn_utils.c:501,13'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:503,13'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:504,13'
          Dst:             set_log_file_name_func
        - Src:             'src/apps/common/ns_turn_utils.c:505,24'
          Dst:             fopen
        - Src:             'src/apps/common/ns_turn_utils.c:507,15'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:517,5'
          Dst:             strncpy
        - Src:             'src/apps/common/ns_turn_utils.c:518,5'
          Dst:             strncpy
    - functionName:    reset_rtpprintf
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          36
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - fclose
        - log_lock
        - log_unlock
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:345,3'
          Dst:             log_lock
        - Src:             'src/apps/common/ns_turn_utils.c:348,7'
          Dst:             fclose
        - Src:             'src/apps/common/ns_turn_utils.c:352,3'
          Dst:             log_unlock
    - functionName:    fflush
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log_unlock
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - turn_mutex_unlock
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:319,32'
          Dst:             turn_mutex_unlock
    - functionName:    turn_mutex_unlock
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          70
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - printf
        - pthread_mutex_unlock
        - strerror
        - turn_log_func_default
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:108,11'
          Dst:             pthread_mutex_unlock
        - Src:             'src/apps/common/ns_turn_utils.c:110,7'
          Dst:             __errno_location
        - Src:             'src/apps/common/ns_turn_utils.c:110,7'
          Dst:             strerror
        - Src:             'src/apps/common/ns_turn_utils.c:110,7'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:114,5'
          Dst:             printf
    - functionName:    pthread_mutex_unlock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __errno_location
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fclose
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    signal
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_log_file_name_func
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          240
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - get_date
        - snprintf
        - strdup
        - strlen
        - strncpy
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:359,5'
          Dst:             strncpy
        - Src:             'src/apps/common/ns_turn_utils.c:364,16'
          Dst:             strdup
        - Src:             'src/apps/common/ns_turn_utils.c:366,3'
          Dst:             get_date
        - Src:             'src/apps/common/ns_turn_utils.c:368,17'
          Dst:             strdup
        - Src:             'src/apps/common/ns_turn_utils.c:370,18'
          Dst:             strlen
        - Src:             'src/apps/common/ns_turn_utils.c:381,14'
          Dst:             strlen
        - Src:             'src/apps/common/ns_turn_utils.c:388,14'
          Dst:             strdup
        - Src:             'src/apps/common/ns_turn_utils.c:390,11'
          Dst:             strlen
        - Src:             'src/apps/common/ns_turn_utils.c:392,16'
          Dst:             strdup
        - Src:             'src/apps/common/ns_turn_utils.c:399,14'
          Dst:             strlen
        - Src:             'src/apps/common/ns_turn_utils.c:401,5'
          Dst:             snprintf
        - Src:             'src/apps/common/ns_turn_utils.c:403,5'
          Dst:             snprintf
    - functionName:    fopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getpid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    turn_mutex_init_recursive
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          100
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - pthread_mutex_init
        - pthread_mutexattr_destroy
        - pthread_mutexattr_init
        - pthread_mutexattr_settype
        - strerror
        - turn_log_func_default
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:147,7'
          Dst:             pthread_mutexattr_init
        - Src:             'src/apps/common/ns_turn_utils.c:148,5'
          Dst:             __errno_location
        - Src:             'src/apps/common/ns_turn_utils.c:148,5'
          Dst:             strerror
        - Src:             'src/apps/common/ns_turn_utils.c:148,5'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:152,7'
          Dst:             pthread_mutexattr_settype
        - Src:             'src/apps/common/ns_turn_utils.c:153,5'
          Dst:             __errno_location
        - Src:             'src/apps/common/ns_turn_utils.c:153,5'
          Dst:             strerror
        - Src:             'src/apps/common/ns_turn_utils.c:153,5'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:159,5'
          Dst:             __errno_location
        - Src:             'src/apps/common/ns_turn_utils.c:159,5'
          Dst:             strerror
        - Src:             'src/apps/common/ns_turn_utils.c:159,5'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:163,7'
          Dst:             pthread_mutex_init
        - Src:             'src/apps/common/ns_turn_utils.c:164,5'
          Dst:             __errno_location
        - Src:             'src/apps/common/ns_turn_utils.c:164,5'
          Dst:             strerror
        - Src:             'src/apps/common/ns_turn_utils.c:164,5'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:170,3'
          Dst:             pthread_mutexattr_destroy
    - functionName:    turn_mutex_lock
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          70
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - printf
        - pthread_mutex_lock
        - strerror
        - turn_log_func_default
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:94,11'
          Dst:             pthread_mutex_lock
        - Src:             'src/apps/common/ns_turn_utils.c:96,7'
          Dst:             __errno_location
        - Src:             'src/apps/common/ns_turn_utils.c:96,7'
          Dst:             strerror
        - Src:             'src/apps/common/ns_turn_utils.c:96,7'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:100,5'
          Dst:             printf
    - functionName:    pthread_mutex_lock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_mutexattr_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_mutexattr_settype
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_mutex_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_mutexattr_destroy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    turn_realloc_impl
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 701
      functionLinenumberEnd: 706
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          48
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - realloc
        - turn_out_of_memory
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:702,18'
          Dst:             realloc
        - Src:             'src/apps/common/ns_turn_utils.c:704,5'
          Dst:             turn_out_of_memory
    - functionName:    realloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    turn_calloc_impl
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 693
      functionLinenumberEnd: 698
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - calloc
        - turn_out_of_memory
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:694,15'
          Dst:             calloc
        - Src:             'src/apps/common/ns_turn_utils.c:696,5'
          Dst:             turn_out_of_memory
    - functionName:    calloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    turn_malloc_impl
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 685
      functionLinenumberEnd: 690
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          45
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - turn_out_of_memory
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:688,5'
          Dst:             turn_out_of_memory
    - functionName:    rollover_logfile
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 568
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         29
      ICount:          125
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - fclose
        - fopen
        - fprintf
        - log_lock
        - log_unlock
        - reset_rtpprintf
        - set_log_file_name_func
        - strcmp
        - strncpy
        - turn_log_func_default
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:535,15'
          Dst:             fopen
        - Src:             'src/apps/common/ns_turn_utils.c:537,7'
          Dst:             fprintf
        - Src:             'src/apps/common/ns_turn_utils.c:538,7'
          Dst:             reset_rtpprintf
        - Src:             'src/apps/common/ns_turn_utils.c:539,7'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:542,7'
          Dst:             fclose
        - Src:             'src/apps/common/ns_turn_utils.c:550,3'
          Dst:             log_lock
        - Src:             'src/apps/common/ns_turn_utils.c:554,5'
          Dst:             set_log_file_name_func
        - Src:             'src/apps/common/ns_turn_utils.c:555,9'
          Dst:             strcmp
        - Src:             'src/apps/common/ns_turn_utils.c:556,7'
          Dst:             fclose
        - Src:             'src/apps/common/ns_turn_utils.c:558,18'
          Dst:             fopen
        - Src:             'src/apps/common/ns_turn_utils.c:560,9'
          Dst:             strncpy
        - Src:             'src/apps/common/ns_turn_utils.c:561,9'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:567,3'
          Dst:             log_unlock
    - functionName:    set_simple_log
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 524
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_log_to_syslog
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 522
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_log_file_line
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_logfile
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          59
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - log_lock
        - log_unlock
        - reset_rtpprintf
        - strcmp
        - strncpy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:333,5'
          Dst:             log_lock
        - Src:             'src/apps/common/ns_turn_utils.c:334,9'
          Dst:             strcmp
        - Src:             'src/apps/common/ns_turn_utils.c:335,7'
          Dst:             reset_rtpprintf
        - Src:             'src/apps/common/ns_turn_utils.c:336,7'
          Dst:             strncpy
        - Src:             'src/apps/common/ns_turn_utils.c:338,5'
          Dst:             log_unlock
    - functionName:    addr_debug_print
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          121
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - addr_any_no_port
        - inet_ntop
        - ntohs
        - turn_log_func_default
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:274,7'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:281,9'
          Dst:             inet_ntop
        - Src:             'src/apps/common/ns_turn_utils.c:281,9'
          Dst:             ntohs
        - Src:             'src/apps/common/ns_turn_utils.c:281,9'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:284,9'
          Dst:             inet_ntop
        - Src:             'src/apps/common/ns_turn_utils.c:284,9'
          Dst:             ntohs
        - Src:             'src/apps/common/ns_turn_utils.c:284,9'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:287,13'
          Dst:             addr_any_no_port
        - Src:             'src/apps/common/ns_turn_utils.c:288,11'
          Dst:             ntohs
        - Src:             'src/apps/common/ns_turn_utils.c:288,11'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:290,11'
          Dst:             turn_log_func_default
    - functionName:    set_log_min_level
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          59
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strcasecmp
        - turn_log_func_default
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:259,10'
          Dst:             strcasecmp
        - Src:             'src/apps/common/ns_turn_utils.c:264,3'
          Dst:             turn_log_func_default
    - functionName:    strcasecmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_turn_log_timestamp_format
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strncpy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:243,3'
          Dst:             strncpy
    - functionName:    set_no_stdout_log
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_to_syslog_facility
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:208,10'
          Dst:             strcasecmp
    - functionName:    set_syslog_facility
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          40
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - str_to_syslog_facility
        - turn_log_func_default
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:220,19'
          Dst:             str_to_syslog_facility
        - Src:             'src/apps/common/ns_turn_utils.c:222,5'
          Dst:             turn_log_func_default
    - functionName:    turn_mutex_destroy
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          66
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - pthread_mutex_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:179,11'
          Dst:             pthread_mutex_destroy
    - functionName:    pthread_mutex_destroy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    turn_mutex_init
      functionSourceFile: '/src/coturn/src/apps/common/ns_turn_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          72
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - pthread_mutex_init
        - strerror
        - turn_log_func_default
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'src/apps/common/ns_turn_utils.c:126,5'
          Dst:             __errno_location
        - Src:             'src/apps/common/ns_turn_utils.c:126,5'
          Dst:             strerror
        - Src:             'src/apps/common/ns_turn_utils.c:126,5'
          Dst:             turn_log_func_default
        - Src:             'src/apps/common/ns_turn_utils.c:130,7'
          Dst:             pthread_mutex_init
        - Src:             'src/apps/common/ns_turn_utils.c:131,5'
          Dst:             __errno_location
        - Src:             'src/apps/common/ns_turn_utils.c:131,5'
          Dst:             strerror
        - Src:             'src/apps/common/ns_turn_utils.c:131,5'
          Dst:             turn_log_func_default
...
